On Fri, 2019-11-15 at 20:23 -0500, David Malcolm wrote:
> This patch adds support for "in-tree" plugins i.e. GCC plugins that
> live
> in the GCC source tree and are shipped as part of the GCC tarball.
> 
> The patch adds Makefile/configure machinery for handling in-tree GCC
> plugins, adapted from how we support frontends.
> 
> Each in-tree plugin should provide a Make-plugin.in and config-
> plugin.in,
> analogous to the Make-lang.in and config-lang.in provided by a
> frontend;
> they can also supply options via a plugin.opt, analogous to a
> frontend's
> lang.opt.
> 
> The patch adds a --enable-plugins=[LIST OF PLUGIN NAMES] configure
> option,
> analogous to --enable-languages.  The default is for no such plugins
> to be
> enabled.
> 
> ChangeLog:
>       * configure.ac: Handle --enable-plugins.
> 
> gcc/ChangeLog:
>       * Makefile.in (CONFIG_PLUGINS): New.
>       (SUBDIRS, subdirs): Generalize to cover plugins as well as
>       languages.
>       (plugin_opt_files): New.
>       (ALL_OPT_FILES): Add plugin_opt_files.
>       (ALL_HOST_PLUGIN_OBJS): New.
>       (ALL_HOST_OBJS): Add ALL_HOST_PLUGIN_OBJS.
>       (plugin_hooks): New.
>       (PLUGIN_MAKEFRAGS): New; include them.
>       (Makefile): Add dependency on PLUGIN_MAKEFRAGS.
>       (all.cross): Add dependency on plugin.all.cross.
>       (start.encap): Add plugin.start.encap.
>       (rest.encap): Add plugin.rest.encap.
>       (SELFTEST_TARGETS): Add selftest_plugins.
>       (info): Add dependency on lang.info.
>       (dvi): Add dependency on plugin.dvi.
>       (pdf): Add dependency on plugin.pdf.
>       (HTMLS_BUILD): Add plugin.html.
>       (man): Add plugin.man.
>       (mostlyclean): Add plugin.mostlyclean.
>       (clean): Add plugin.clean.
>       (distclean): Update for renaming of Make-hooks to Make-lang-
> hooks;
>       add Make-plugin-hooks.  Add plugin.distclean dependency.
>       (maintainer-clean): Add plugin.maintainer-clean.
>       (install-plugin): Add plugin.install-plugin.
>       (install-common): Add plugin.install-common.
>       (install-info): Add plugin.install-info.
>       (install-pdf): Add plugin.install-pdf.
>       (install-html): Add plugin.install-html.
>       (install-man): Add plugin.install-man.
>       (uninstall): Add plugin.uninstall.
>       (TAGS): Add plugin.tags.
>       * configure.ac (Make-hooks): Rename to Make-lang-hooks.
>       (plugin_opt_files): New.
>       (plugin_specs_files): New.
>       (plugin_tree_files): New.
>       (all_plugins): New.
>       (all_plugin_makefrags): New.
>       (all_selected_plugins): New.
>       (plugin_hooks): New.
>       ("Plugin hooks"): New section.  Iterate through config-
> plugin.in,
>       analogously to config-lang.in.
>       (check_plugins): New.
>       (selftest_plugins): New.
>       (Make-plugin-hooks): Emit.
>       * doc/install.texi (--enable-plugins): New option.
So do we want to push on the concept of in-tree plugins for somethign
like annobin?  If not, given the general desire to not use plugins for
teh analyzer, would we still want this?

jeff


Reply via email to