ping^5: plugin directory

Basile Starynkevitch basile@starynkevitch.net
Mon Mar 15 19:18:00 GMT 2010


Hello All,

As Laurynas kindly hinted me in 
http://gcc.gnu.org/ml/gcc/2010-03/msg00154.html I am pinging for the 
fifth time the attached patch to trunk rev 157458 for inclusion in GCC 
4.5 (which did bootstrap on x86_64-linux). I already proposed that patch 
several times. http://gcc.gnu.org/ml/gcc-patches/2010-02/msg00353.html 
http://gcc.gnu.org/ml/gcc-patches/2010-01/msg00476.html etc.

This patch add the following ability to GCC: Users can invoke 
-fplugin=treehydra instead of 
-fplugin=/some/distribution/specific/path/to/treehydra.so and 
-fplugin=melt instead of 
-fplugin=/some/distribution/specific/path/to/melt.so
provided the plugin/libexec directory contains such commonly used plugins.

For users (and probably also distribution makers), this gives a very 
significant advantage: the same GCC invocation argument can be used on 
several (e.g. Linux) distributions. Also, the -fplugin= argument is shorter.

Without this patch, and assuming some set of commonly used plugins will 
exist, users will have to invoke these plugins with a different & longer 
(& system specific) program argument to GCC.

If this patch is accepted, the same invocation could work on several 
systems.

### gcc/ChangeLog entry ###

2010-03-15  Basile Starynkevitch  <basile@starynkevitch.net>

	* doc/plugins.texi (Loading Plugins): Document short
	-fplugin=foo option.
	(Plugin API): Added mention of plugin_directory_name function.

	* gcc.c (find_file_spec_function): Added new declaration.
	(static_spec_func): Use it for "find-file".
	(find_file_spec_function): Added new function.

	* gcc-plugin.h (plugin_directory_name): Added new declaration.

	* plugin.c (add_new_plugin): Updated comment, and handle short
	plugin name.
	(plugin_directory_name): Added new function.

	* common.opt (iplugindir): New option to set the plugin
	directory.

### gcc/testsuite/ChangeLog entry ####

2010-03-15  Basile Starynkevitch  <basile@starynkevitch.net>

	* gcc.dg/plugin/plugdir_plugin.c: Added new file.
	* gcc.dg/plugin/plugdir-test-1.c: Likewise.
	* gcc.dg/plugin/plugin.exp: Use them both.

############################################################

Ok for trunk?

Cheers
-- 
Basile STARYNKEVITCH         http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mines, sont seulement les miennes} ***
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch-plugindir-r157458.diff
Type: text/x-patch
Size: 9226 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20100315/7e8e7c2c/attachment.bin>


More information about the Gcc-patches mailing list