Building Avogadro with all static plugins

Hi,

I finished off a patch to allow us to dynamically select the plugins
that are built statically, prompted by an earlier suggestion from
Konstantin. I think if we are going to change the static plugin
handling, then it should be dynamic. What I have in the patch series
allows us to populate a list with plugin names that should be static,
or to use the special ALL keyword to indicate all plugins.

http://review.source.kitware.com/#change,1417

There is a dependent commit that fixes up some of the build system and
code to accommodate a fully static build (not tested with Python
enabled yet).

http://review.source.kitware.com/#change,1418

The major bug as I see it right now is that statically compiled tools
lose their icons. I saw this in another project I was working in, and
ended up compiling the RCC source straight into the executable. Other
than that it works well for me in my initial tests, and allows you to
build an Avogadro library that has no plugins to search for. You can
go right back to the other extreme too, and build them all as true
plugins.

I think it will be ready to merge once I figure out the icon issue for
the tools, and there seems to be some energy around having this.
Another drawback as I see it is that we currently force on all
statically compiled in plugins, that may need to change in the future
although most installations should prefer the classic plugins.

Marcus

On Sat, Apr 16, 2011 at 10:39 AM, Marcus D. Hanwell
mhanwell@gmail.com wrote:

The major bug as I see it right now is that statically compiled tools
lose their icons. I saw this in another project I was working in, and
ended up compiling the RCC source straight into the executable. Other
than that it works well for me in my initial tests, and allows you to
build an Avogadro library that has no plugins to search for. You can
go right back to the other extreme too, and build them all as true
plugins.

http://review.source.kitware.com/1435

The above contains the fixes necessary to initialize static resources.
This gives the icons etc in the GUI, it was necessary to rename a
couple of resource files but I think the renames help to make it
immediately clear what plugin they belong to.

Marcus