plugins & howto & generators

Basile STARYNKEVITCH basile@starynkevitch.net
Wed May 27 17:31:00 GMT 2009


Hello All,

We now have plugins and they are somehow documented. 
http://gcc.gnu.org/onlinedocs/gccint/Plugins.html

Perhaps we might document how to build a plugin? (Or should we not bother?)

In particular, I am not entirely sure to understand plugin from a 
"purely" user perspective, for instance the Debian/Sid user in 2010 who 
did install the hypothetical gcc-4.5 & gcc-4.5-dev debian packages 
(which do not exist today AFAIK).

I am specifically thinking of future users who do not compile GCC from 
its source. Those who do compile GCC are able to compile the plugins, 
since we have testcases for that, showing them how to make plugins.

Should we tell them (the other users using the future gcc-4.5-dev Debian 
package) in our documentation how to build a plugin (I mean what are the 
actual commands to run, what kind of Makefile for them, what are the 
required CFLAGS or -I... path, etc..), or should that be left to e.g. 
linux distribution packagers?
 
In addition, I tend to believe that some of the generators currently 
used inside GCC, (i.e. the gen* executables in the gcc/build directory 
of the build tree) could be useful to some (not all) expert plugin 
developers.

In particular, one could imagine that a future version of gengtype (not 
the one currently in the trunk rev.147912) could be enhenced to be 
useable by plugin developers. I am specifically thinking of adding a 
mode to run it for plugins using the  PLUGIN_REGISTER_GGC_ROOTS 
pseudo-event.

I am considering enhancing the gengtype tool so that
  gengtype --plugin yourplugin.c gt-yourplugin.h
would generate the gt-yourplugin.h neede in yourplugin.c

Comments are welcome.

Regards.

-- 
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} ***



More information about the Gcc mailing list