OMIT_KERNEL_PASSES=y
+# On Linux, FORB "components" are normal shared libraries
+forb_shared_LIBRARIES = shared_LIBRARIES
+
########################################
# Setting of compiler
########################################
OMIT_KERNEL_PASSES=y
+# On RTEMS, FORB "components" are static libraries
+forb_shared_LIBRARIES = lib_LIBRARIES
+
########################################
# Setting of compiler
########################################
int
forb_signal_server_ready();
+/**
+ * \def FORB_MAIN(id, orb, argc, argv)
+ *
+ * Introduce the definition of the main forb function i.e. the
+ * function which is called upon loading the FORB "component".
+ *
+ * @param id "C" identifier of the function. On some platforms, it is
+ * used to distinguish multiple FORB_MAIN functions from each other. *
+ *
+ * Example usage: FORB_MAIN(frm_dummy, forb_orb orb, int argc, char *argv[])
+ */
+#ifdef rtems
+#define FORB_MAIN(id, orb, argc, argv) int forb_main_ ## id(orb, argc, argv)
+#else
+#define FORB_MAIN(id, orb, argc, argv) int forb_main(orb, argc, argv)
+#endif
+
#ifdef __cplusplus
} /* extern "C"*/
#endif
default_CONFIG += CONFIG_RESOURCE_DUMMY_VERBOSE=y
LOCAL_CONFIG_H = dummy_config.h
-shared_LIBRARIES = frm_dummy
+$(forb_shared_LIBRARIES) = frm_dummy
frm_dummy_SOURCES = frm_dummy.c dummy_block.c
frm_dummy_CLIENT_IDL = res_dummy_idl.idl
frm_dummy_LIBS = frm forb contract fosa rt ulut fcb_client
-shared_LIBRARIES += fra_dummy
+$(forb_shared_LIBRARIES) += fra_dummy
fra_dummy_SOURCES = fra_dummy.c dummy_block.c
fra_dummy_LIBS = fra
fra_dummy_CLIENT_IDL = res_dummy_idl.idl
include_HEADERS = res_dummy.h
include_GEN_HEADERS = res_dummy_idl.h
-bin_SCRIPTS += frm_dummy
\ No newline at end of file
+bin_SCRIPTS += frm_dummy
printf(" -l, --loglevel <number>|<domain>=<number>,...\n");
}
-int forb_main(forb_orb orb, int argc, char *argv[])
+FORB_MAIN(frm_dummy, forb_orb orb, int argc, char *argv[])
{
int ret;
int opt;