diff options
author | Manuel Bachmann <manuel.bachmann@iot.bzh> | 2015-12-21 06:57:05 +0100 |
---|---|---|
committer | Manuel Bachmann <manuel.bachmann@iot.bzh> | 2015-12-21 07:00:46 +0100 |
commit | 98f5843474dcec55827279b6f42007341c171ae0 (patch) | |
tree | 010c6328cda7ef2b2577eb00ffca14c931dfbc3b /plugins/samples | |
parent | 03bebc12f0fd5006a72e430084146a36d2db7c8d (diff) |
Switch to a plugin model
Each API now compiles to a ".so" file, which gets searched
for in the "${libdir}/afb" directory at startup.
We can now load an arbitrary number of plugins (> 10).
Signed-off-by: Manuel Bachmann <manuel.bachmann@iot.bzh>
Diffstat (limited to 'plugins/samples')
-rw-r--r-- | plugins/samples/CMakeLists.txt | 11 | ||||
-rw-r--r-- | plugins/samples/HelloWorld.c | 4 | ||||
-rw-r--r-- | plugins/samples/SamplePost.c | 4 |
3 files changed, 15 insertions, 4 deletions
diff --git a/plugins/samples/CMakeLists.txt b/plugins/samples/CMakeLists.txt new file mode 100644 index 00000000..ef5b449e --- /dev/null +++ b/plugins/samples/CMakeLists.txt @@ -0,0 +1,11 @@ +INCLUDE_DIRECTORIES(${include_dirs}) + +ADD_LIBRARY(helloWorld-api MODULE HelloWorld.c) +SET_TARGET_PROPERTIES(helloWorld-api PROPERTIES PREFIX "") +INSTALL(TARGETS helloWorld-api + LIBRARY DESTINATION ${plugin_install_dir}) + +ADD_LIBRARY(samplePost-api MODULE SamplePost.c) +SET_TARGET_PROPERTIES(samplePost-api PROPERTIES PREFIX "") +INSTALL(TARGETS samplePost-api + LIBRARY DESTINATION ${plugin_install_dir}) diff --git a/plugins/samples/HelloWorld.c b/plugins/samples/HelloWorld.c index 4117c26a..5638b427 100644 --- a/plugins/samples/HelloWorld.c +++ b/plugins/samples/HelloWorld.c @@ -84,11 +84,11 @@ STATIC AFB_restapi pluginApis[]= { }; -PUBLIC AFB_plugin *helloWorldRegister () { +PUBLIC AFB_plugin *pluginRegister () { AFB_plugin *plugin = malloc (sizeof (AFB_plugin)); plugin->type = AFB_PLUGIN_JSON; plugin->info = "Application Framework Binder Service"; plugin->prefix= "dbus"; plugin->apis = pluginApis; return (plugin); -};
\ No newline at end of file +}; diff --git a/plugins/samples/SamplePost.c b/plugins/samples/SamplePost.c index 85485015..223f74e8 100644 --- a/plugins/samples/SamplePost.c +++ b/plugins/samples/SamplePost.c @@ -165,7 +165,7 @@ STATIC AFB_restapi pluginApis[]= { {NULL} }; -PUBLIC AFB_plugin *samplePostRegister () { +PUBLIC AFB_plugin *pluginRegister () { AFB_plugin *plugin = malloc (sizeof (AFB_plugin)); plugin->type = AFB_PLUGIN_JSON; plugin->info = "Application Framework Binder Service"; @@ -174,4 +174,4 @@ PUBLIC AFB_plugin *samplePostRegister () { plugin->handle= (void*) "What ever you want"; return (plugin); -};
\ No newline at end of file +}; |