Commit graph

58 commits

Author SHA1 Message Date
628be502e5 reordered some files to use the new include and lumiera directories 2008-12-15 13:33:04 +01:00
Christian Thaeter
6169ccaf08 refine the initialization order
* introduce a lumiera_preinit() which does some dirty startup work
 * lumiera_init() and lumiera_shutdown() will do the desired
   DesignProcess/GlobalInitilaization
 * as example, initialize the config interface there
2008-12-15 13:33:04 +01:00
Christian Thaeter
d91c4ee326 build a 'liblumieracore' instead many small libs
This makes some cross dependency things easier, later on the parts which
get included there might be configured and selected with conditionals.
2008-12-15 13:33:04 +01:00
Christian Thaeter
aa92eab301 Provide prelimary config interface declaration and implementation
This exports the 'configuration' system as interface. It is not finally
settled if the filenames shall be *_interface.{c,h} and some details might
be sorted out (so far it works quite well).

This can also serve as example how to implement a slightly more complex
interface (some functions got inline wraped because we dont want to export
internal config system state).
2008-12-15 13:33:03 +01:00
Christian Thaeter
52a4f7743a Passing an interface handle to plugins
Plugins which in turn want to open other interfaces need some way to
access the interfaces system itself. This is realized with a 'interface'
implementing the interface api and passed to the plugins initialization
routine.

A plugin which wishes to open other interfaces must
safe this in a local variable defined by LUMIERA_PLUGIN_INTERFACEHANDLE
with the LUMIERA_PLUGIN_STORE_INTERFACEHANDLE macro.

The LUMIERA_INTERFACE_OPEN and LUMIERA_INTERFACE_CLOSE macros change their
definition depending on compiled as buildin or plugin to account for that.
2008-12-15 13:33:03 +01:00
Christian Thaeter
f5da688c48 some more bits towards a lumiera main 2008-12-15 13:33:03 +01:00
Christian Thaeter
37f56a670e Now converting the tests ..and some missing things
* fixed include paths
 * lots of build system fixes
 * initialization, shutdown, state and nobug flags are factored out into
   a liblumierainit.a to simplify test builds
2008-12-15 13:33:03 +01:00
Christian Thaeter
52a9c7fb27 lumiera is alive...
This starts the proposed changes in
http://www.pipapo.org/pipawiki/Lumiera/DesignProcess/ApplicationStructure

 * Moving all necessary files from src/backend to src/lumiera
 * create a small helloworld main app
 * setup the buildsystem to build it all
 * fix include paths at many places

The testsuite is not yet fixed here, that will be the next commit
2008-12-15 13:33:03 +01:00