LISP ONLY: maintain the emacs lisp plugin generator

Add a generator for CMakeLists.txt, remove autotools input generator.

Add missing extern declarations for node registrations in <plugin-name>.h.

Remove extern from the <plugin-name>_main_t declaration in
<plugin-name>.c, so it won't come up undefined at runtime.

Reposition forward node declaration relative to CLIB_MARCH_VARIANT
conditional, to avoid multiple definition / "<plugin-name>_node
changed size from X to Y" warnings.

Change-Id: I8cc00bca5c40fa3ea00549411a3a9027f97a4826
Signed-off-by: Dave Barach <dave@barachs.net>
diff --git a/extras/emacs/plugin-qsnode-skel.el b/extras/emacs/plugin-qsnode-skel.el
index d3fc908..e892953 100644
--- a/extras/emacs/plugin-qsnode-skel.el
+++ b/extras/emacs/plugin-qsnode-skel.el
@@ -63,10 +63,11 @@
               t->sw_if_index, t->next_index);
   return s;
 }
-#endif /* CLIB_MARCH_VARIANT */
 
 vlib_node_registration_t " plugin-name "_node;
 
+#endif /* CLIB_MARCH_VARIANT */
+
 #define foreach_" plugin-name "_error \\
 _(SWAPPED, \"Mac swap packets processed\")