build-sys: keep generated linker scripts, debug files around.
authorKrisztian Litkey <krisztian.litkey@intel.com>
Fri, 29 Jun 2012 15:59:42 +0000 (18:59 +0300)
committerKrisztian Litkey <krisztian.litkey@intel.com>
Fri, 29 Jun 2012 15:59:42 +0000 (18:59 +0300)
To avoid having a hard compile-time dependency on ctags/etags,
we keep generated linker scripts and debug function info files
in the repository and only regenerate them when required. IOW,
they are required for hacking around in but not for just compiling
murphy...

16 files changed:
configure.ac
src/Makefile.am
src/common-func-info.c [new file with mode: 0644]
src/core-func-info.c [new file with mode: 0644]
src/dbus-func-info.c [new file with mode: 0644]
src/linker-script.common [new file with mode: 0644]
src/linker-script.core [new file with mode: 0644]
src/linker-script.dbus [new file with mode: 0644]
src/linker-script.pulse [new file with mode: 0644]
src/murphy-db/mdb/Makefile.am
src/murphy-db/mdb/linker-script.mdb [new file with mode: 0644]
src/murphy-db/mqi/Makefile.am
src/murphy-db/mqi/linker-script.mqi [new file with mode: 0644]
src/murphy-db/mql/Makefile.am
src/murphy-db/mql/linker-script.mql [new file with mode: 0644]
src/plugin-console-func-info.c [new file with mode: 0644]

index e8f5250..5f2e1b8 100644 (file)
@@ -41,10 +41,11 @@ AM_PROG_LIBTOOL
 AC_PROG_LEX
 AC_PROG_YACC
 
-AC_CHECK_PROG(CTAGS, ctags, "ctags")
-if test "$CTAGS" != "ctags" ; then
-   AC_MSG_ERROR([ctags is required])
-fi
+# Don't require ctags (we keep linker scripts and debug files in the repo now).
+#AC_CHECK_PROG(CTAGS, ctags, "ctags")
+#if test "$CTAGS" != "ctags" ; then
+#   AC_MSG_ERROR([ctags is required])
+#fi
 
 if test "$LEX" != "flex" ; then
    AC_MSG_ERROR([flex is required])
index 88bb932..4854fd6 100644 (file)
@@ -398,5 +398,5 @@ murphy_console_LDFLAGS = -rdynamic -lreadline
 endif
 
 # cleanup
-clean-local:: clean-linker-script clean-func-infos
+clean-local:: clean-linker-script clean-func-infos
        -rm -f *~
diff --git a/src/common-func-info.c b/src/common-func-info.c
new file mode 100644 (file)
index 0000000..5c5fa8f
--- /dev/null
@@ -0,0 +1,353 @@
+#include <stdlib.h>
+#include <murphy/common/debug.h>
+
+/* common/debug.c */
+static mrp_debug_info_t info_0[] = {
+    { .line = 24, .func = "free_rule_cb" },
+    { .line = 32, .func = "init_rules" },
+    { .line = 51, .func = "reset_rules" },
+    { .line = 60, .func = "mrp_debug_reset" },
+    { .line = 67, .func = "mrp_debug_enable" },
+    { .line = 78, .func = "add_rule" },
+    { .line = 134, .func = "del_rule" },
+    { .line = 176, .func = "mrp_debug_set_config" },
+    { .line = 265, .func = "dump_rule_cb" },
+    { .line = 279, .func = "mrp_debug_dump_config" },
+    { .line = 301, .func = "mrp_debug_msg" },
+    { .line = 314, .func = "mrp_debug_check" },
+    { .line = 384, .func = "mrp_debug_register_file" },
+    { .line = 392, .func = "mrp_debug_unregister_file" },
+    { .line = 403, .func = "mrp_debug_site_function" },
+    { .line = 432, .func = "populate_file_table" },
+    { .line = 456, .func = "flush_file_table" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_0 = {
+    .file = "common/debug.c",
+    .info = info_0
+};
+
+/* common/dgram-transport.c */
+static mrp_debug_info_t info_1[] = {
+    { .line = 53, .func = "parse_address" },
+    { .line = 170, .func = "dgrm_resolve" },
+    { .line = 220, .func = "dgrm_open" },
+    { .line = 231, .func = "dgrm_createfrom" },
+    { .line = 260, .func = "dgrm_bind" },
+    { .line = 275, .func = "dgrm_listen" },
+    { .line = 284, .func = "dgrm_close" },
+    { .line = 303, .func = "dgrm_recv_cb" },
+    { .line = 386, .func = "open_socket" },
+    { .line = 423, .func = "dgrm_connect" },
+    { .line = 451, .func = "dgrm_disconnect" },
+    { .line = 467, .func = "dgrm_send" },
+    { .line = 504, .func = "dgrm_sendto" },
+    { .line = 554, .func = "dgrm_sendraw" },
+    { .line = 577, .func = "dgrm_sendrawto" },
+    { .line = 603, .func = "senddatato" },
+    { .line = 654, .func = "dgrm_senddata" },
+    { .line = 663, .func = "dgrm_senddatato" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_1 = {
+    .file = "common/dgram-transport.c",
+    .info = info_1
+};
+
+/* common/file-utils.c */
+static mrp_debug_info_t info_2[] = {
+    { .line = 13, .func = "translate_glob" },
+    { .line = 24, .func = "dirent_type" },
+    { .line = 42, .func = "mrp_scan_dir" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_2 = {
+    .file = "common/file-utils.c",
+    .info = info_2
+};
+
+/* common/hashtbl.c */
+static mrp_debug_info_t info_3[] = {
+    { .line = 39, .func = "calc_buckets" },
+    { .line = 55, .func = "mrp_htbl_create" },
+    { .line = 98, .func = "mrp_htbl_destroy" },
+    { .line = 110, .func = "free_entry" },
+    { .line = 118, .func = "mrp_htbl_reset" },
+    { .line = 138, .func = "mrp_htbl_insert" },
+    { .line = 159, .func = "lookup" },
+    { .line = 180, .func = "mrp_htbl_lookup" },
+    { .line = 192, .func = "delete_from_bucket" },
+    { .line = 232, .func = "mrp_htbl_remove" },
+    { .line = 263, .func = "mrp_htbl_foreach" },
+    { .line = 314, .func = "mrp_htbl_find" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_3 = {
+    .file = "common/hashtbl.c",
+    .info = info_3
+};
+
+/* common/log.c */
+static mrp_debug_info_t info_4[] = {
+    { .line = 14, .func = "mrp_log_parse_levels" },
+    { .line = 55, .func = "mrp_log_parse_target" },
+    { .line = 68, .func = "mrp_log_enable" },
+    { .line = 78, .func = "mrp_log_disable" },
+    { .line = 88, .func = "mrp_log_set_mask" },
+    { .line = 98, .func = "mrp_log_set_target" },
+    { .line = 140, .func = "mrp_log_msgv" },
+    { .line = 176, .func = "mrp_log_msg" },
+    { .line = 197, .func = "set_default_logging" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_4 = {
+    .file = "common/log.c",
+    .info = info_4
+};
+
+/* common/mainloop.c */
+static mrp_debug_info_t info_5[] = {
+    { .line = 183, .func = "add_slave_io_watch" },
+    { .line = 217, .func = "slave_io_events" },
+    { .line = 236, .func = "free_io_watch" },
+    { .line = 257, .func = "mrp_add_io_watch" },
+    { .line = 296, .func = "mrp_del_io_watch" },
+    { .line = 310, .func = "delete_io_watch" },
+    { .line = 364, .func = "time_now" },
+    { .line = 377, .func = "usecs_to_msecs" },
+    { .line = 387, .func = "insert_timer" },
+    { .line = 420, .func = "rearm_timer" },
+    { .line = 428, .func = "find_next_timer" },
+    { .line = 447, .func = "mrp_add_timer" },
+    { .line = 470, .func = "mrp_del_timer" },
+    { .line = 491, .func = "delete_timer" },
+    { .line = 502, .func = "mrp_add_deferred" },
+    { .line = 523, .func = "mrp_del_deferred" },
+    { .line = 537, .func = "delete_deferred" },
+    { .line = 544, .func = "mrp_disable_deferred" },
+    { .line = 551, .func = "disable_deferred" },
+    { .line = 561, .func = "mrp_enable_deferred" },
+    { .line = 577, .func = "delete_sighandler" },
+    { .line = 584, .func = "dispatch_signals" },
+    { .line = 614, .func = "setup_sighandlers" },
+    { .line = 637, .func = "mrp_add_sighandler" },
+    { .line = 662, .func = "recalc_sigmask" },
+    { .line = 680, .func = "mrp_del_sighandler" },
+    { .line = 695, .func = "free_subloop" },
+    { .line = 707, .func = "subloop_event_cb" },
+    { .line = 721, .func = "mrp_add_subloop" },
+    { .line = 757, .func = "mrp_del_subloop" },
+    { .line = 794, .func = "super_io_cb" },
+    { .line = 810, .func = "super_timer_cb" },
+    { .line = 823, .func = "super_work_cb" },
+    { .line = 868, .func = "mrp_set_superloop" },
+    { .line = 912, .func = "mrp_clear_superloop" },
+    { .line = 934, .func = "purge_io_watches" },
+    { .line = 954, .func = "purge_timers" },
+    { .line = 967, .func = "purge_deferred" },
+    { .line = 986, .func = "purge_sighandlers" },
+    { .line = 999, .func = "purge_deleted" },
+    { .line = 1019, .func = "purge_subloops" },
+    { .line = 1032, .func = "mrp_mainloop_create" },
+    { .line = 1066, .func = "mrp_mainloop_destroy" },
+    { .line = 1083, .func = "prepare_subloop" },
+    { .line = 1195, .func = "prepare_subloops" },
+    { .line = 1216, .func = "mrp_mainloop_prepare" },
+    { .line = 1257, .func = "mrp_mainloop_poll" },
+    { .line = 1286, .func = "poll_subloop" },
+    { .line = 1311, .func = "dispatch_deferred" },
+    { .line = 1333, .func = "dispatch_timers" },
+    { .line = 1364, .func = "dispatch_subloops" },
+    { .line = 1383, .func = "dispatch_slaves" },
+    { .line = 1409, .func = "dispatch_poll_events" },
+    { .line = 1441, .func = "mrp_mainloop_dispatch" },
+    { .line = 1462, .func = "mrp_mainloop_iterate" },
+    { .line = 1472, .func = "mrp_mainloop_run" },
+    { .line = 1481, .func = "mrp_mainloop_quit" },
+    { .line = 1493, .func = "dump_pollfds" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_5 = {
+    .file = "common/mainloop.c",
+    .info = info_5
+};
+
+/* common/mm.c */
+static mrp_debug_info_t info_6[] = {
+    { .line = 66, .func = "setup" },
+    { .line = 93, .func = "cleanup" },
+    { .line = 104, .func = "memblk_alloc" },
+    { .line = 131, .func = "memblk_resize" },
+    { .line = 166, .func = "memblk_free" },
+    { .line = 188, .func = "memblk_to_ptr" },
+    { .line = 197, .func = "ptr_to_memblk" },
+    { .line = 216, .func = "__mm_backtrace" },
+    { .line = 228, .func = "__mm_alloc" },
+    { .line = 241, .func = "__mm_realloc" },
+    { .line = 259, .func = "__mm_memalign" },
+    { .line = 276, .func = "__mm_free" },
+    { .line = 296, .func = "__passthru_alloc" },
+    { .line = 307, .func = "__passthru_realloc" },
+    { .line = 318, .func = "__passthru_memalign" },
+    { .line = 329, .func = "__passthru_free" },
+    { .line = 344, .func = "mrp_mm_alloc" },
+    { .line = 350, .func = "mrp_mm_realloc" },
+    { .line = 357, .func = "mrp_mm_strdup" },
+    { .line = 376, .func = "mrp_mm_memalign" },
+    { .line = 383, .func = "mrp_mm_free" },
+    { .line = 389, .func = "mrp_mm_config" },
+    { .line = 417, .func = "mrp_mm_check" },
+    { .line = 502, .func = "mrp_objpool_create" },
+    { .line = 542, .func = "free_object" },
+    { .line = 551, .func = "mrp_objpool_destroy" },
+    { .line = 562, .func = "mrp_objpool_alloc" },
+    { .line = 625, .func = "mrp_objpool_free" },
+    { .line = 676, .func = "mrp_objpool_grow" },
+    { .line = 684, .func = "mrp_objpool_shrink" },
+    { .line = 692, .func = "pool_calc_sizes" },
+    { .line = 775, .func = "pool_grow" },
+    { .line = 796, .func = "pool_shrink" },
+    { .line = 821, .func = "pool_foreach_object" },
+    { .line = 840, .func = "chunk_foreach_object" },
+    { .line = 870, .func = "chunk_empty" },
+    { .line = 893, .func = "chunk_init" },
+    { .line = 923, .func = "chunk_alloc" },
+    { .line = 941, .func = "chunk_free" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_6 = {
+    .file = "common/mm.c",
+    .info = info_6
+};
+
+/* common/msg.c */
+static mrp_debug_info_t info_7[] = {
+    { .line = 20, .func = "destroy_field" },
+    { .line = 54, .func = "create_field" },
+    { .line = 230, .func = "msg_destroy" },
+    { .line = 246, .func = "mrp_msg_create" },
+    { .line = 279, .func = "mrp_msg_ref" },
+    { .line = 288, .func = "mrp_msg_unref" },
+    { .line = 299, .func = "mrp_msg_append" },
+    { .line = 318, .func = "mrp_msg_prepend" },
+    { .line = 337, .func = "mrp_msg_find" },
+    { .line = 352, .func = "field_type_name" },
+    { .line = 405, .func = "mrp_msg_dump" },
+    { .line = 537, .func = "mrp_msg_default_encode" },
+    { .line = 689, .func = "mrp_msg_default_decode" },
+    { .line = 915, .func = "guarded_array_size" },
+    { .line = 954, .func = "counted_array_size" },
+    { .line = 971, .func = "get_array_size" },
+    { .line = 992, .func = "mrp_data_get_array_size" },
+    { .line = 998, .func = "get_blob_size" },
+    { .line = 1025, .func = "mrp_data_get_blob_size" },
+    { .line = 1031, .func = "check_and_init_array_descr" },
+    { .line = 1064, .func = "mrp_msg_register_type" },
+    { .line = 1121, .func = "mrp_msg_find_type" },
+    { .line = 1141, .func = "cleanup_types" },
+    { .line = 1149, .func = "mrp_data_encode" },
+    { .line = 1314, .func = "member_type" },
+    { .line = 1328, .func = "mrp_data_decode" },
+    { .line = 1558, .func = "mrp_data_dump" },
+    { .line = 1673, .func = "mrp_data_free" },
+    { .line = 1708, .func = "mrp_msgbuf_write" },
+    { .line = 1726, .func = "mrp_msgbuf_read" },
+    { .line = 1733, .func = "mrp_msgbuf_cancel" },
+    { .line = 1740, .func = "mrp_msgbuf_ensure" },
+    { .line = 1766, .func = "mrp_msgbuf_reserve" },
+    { .line = 1798, .func = "mrp_msgbuf_pull" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_7 = {
+    .file = "common/msg.c",
+    .info = info_7
+};
+
+/* common/stream-transport.c */
+static mrp_debug_info_t info_8[] = {
+    { .line = 44, .func = "parse_address" },
+    { .line = 162, .func = "strm_resolve" },
+    { .line = 212, .func = "strm_open" },
+    { .line = 222, .func = "strm_createfrom" },
+    { .line = 254, .func = "strm_bind" },
+    { .line = 268, .func = "strm_listen" },
+    { .line = 283, .func = "strm_accept" },
+    { .line = 327, .func = "strm_close" },
+    { .line = 346, .func = "strm_recv_cb" },
+    { .line = 449, .func = "open_socket" },
+    { .line = 486, .func = "strm_connect" },
+    { .line = 522, .func = "strm_disconnect" },
+    { .line = 539, .func = "strm_send" },
+    { .line = 576, .func = "strm_sendraw" },
+    { .line = 599, .func = "strm_senddata" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_8 = {
+    .file = "common/stream-transport.c",
+    .info = info_8
+};
+
+/* common/transport.c */
+static mrp_debug_info_t info_9[] = {
+    { .line = 18, .func = "check_request_callbacks" },
+    { .line = 42, .func = "mrp_transport_register" },
+    { .line = 58, .func = "mrp_transport_unregister" },
+    { .line = 64, .func = "find_transport" },
+    { .line = 79, .func = "check_event_callbacks" },
+    { .line = 104, .func = "mrp_transport_create" },
+    { .line = 140, .func = "mrp_transport_create_from" },
+    { .line = 177, .func = "type_matches" },
+    { .line = 186, .func = "mrp_transport_resolve" },
+    { .line = 210, .func = "mrp_transport_bind" },
+    { .line = 224, .func = "mrp_transport_listen" },
+    { .line = 244, .func = "mrp_transport_accept" },
+    { .line = 274, .func = "purge_destroyed" },
+    { .line = 286, .func = "mrp_transport_destroy" },
+    { .line = 301, .func = "check_destroy" },
+    { .line = 307, .func = "mrp_transport_connect" },
+    { .line = 340, .func = "mrp_transport_disconnect" },
+    { .line = 363, .func = "mrp_transport_send" },
+    { .line = 381, .func = "mrp_transport_sendto" },
+    { .line = 400, .func = "mrp_transport_sendraw" },
+    { .line = 419, .func = "mrp_transport_sendrawto" },
+    { .line = 438, .func = "mrp_transport_senddata" },
+    { .line = 457, .func = "mrp_transport_senddatato" },
+    { .line = 476, .func = "recv_data" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_9 = {
+    .file = "common/transport.c",
+    .info = info_9
+};
+
+/* common/utils.c */
+static mrp_debug_info_t info_10[] = {
+    { .line = 16, .func = "notify_parent" },
+    { .line = 29, .func = "mrp_daemonize" },
+    { .line = 165, .func = "mrp_string_comp" },
+    { .line = 171, .func = "mrp_string_hash" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_10 = {
+    .file = "common/utils.c",
+    .info = info_10
+};
+
+/* table of all files */
+static mrp_debug_file_t *debug_files[] = {
+    &file_0,
+    &file_1,
+    &file_2,
+    &file_3,
+    &file_4,
+    &file_5,
+    &file_6,
+    &file_7,
+    &file_8,
+    &file_9,
+    &file_10,
+    NULL
+};
+
+
+#include <murphy/common/debug-auto-register.c>
diff --git a/src/core-func-info.c b/src/core-func-info.c
new file mode 100644 (file)
index 0000000..bf3041d
--- /dev/null
@@ -0,0 +1,85 @@
+#include <stdlib.h>
+#include <murphy/common/debug.h>
+
+/* core/console.c */
+static mrp_debug_info_t info_0[] = {
+    { .line = 77, .func = "console_setup" },
+    { .line = 86, .func = "console_cleanup" },
+    { .line = 102, .func = "mrp_create_console" },
+    { .line = 155, .func = "purge_destroyed" },
+    { .line = 177, .func = "mrp_destroy_console" },
+    { .line = 199, .func = "check_destroy" },
+    { .line = 205, .func = "mrp_console_printf" },
+    { .line = 218, .func = "mrp_set_console_prompt" },
+    { .line = 245, .func = "find_group" },
+    { .line = 271, .func = "find_command" },
+    { .line = 288, .func = "mrp_console_add_group" },
+    { .line = 299, .func = "mrp_console_del_group" },
+    { .line = 310, .func = "mrp_console_add_core_group" },
+    { .line = 321, .func = "mrp_console_del_core_group" },
+    { .line = 332, .func = "input_evt" },
+    { .line = 476, .func = "disconnected_evt" },
+    { .line = 482, .func = "complete_evt" },
+    { .line = 499, .func = "cookie_write" },
+    { .line = 515, .func = "cookie_close" },
+    { .line = 523, .func = "console_fopen" },
+    { .line = 542, .func = "register_commands" },
+    { .line = 548, .func = "unregister_commands" },
+    { .line = 564, .func = "get_next_line" },
+    { .line = 601, .func = "skip_whitespace" },
+    { .line = 608, .func = "get_next_token" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_0 = {
+    .file = "core/console.c",
+    .info = info_0
+};
+
+/* core/context.c */
+static mrp_debug_info_t info_1[] = {
+    { .line = 7, .func = "mrp_context_create" },
+    { .line = 26, .func = "mrp_context_destroy" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_1 = {
+    .file = "core/context.c",
+    .info = info_1
+};
+
+/* core/plugin.c */
+static mrp_debug_info_t info_2[] = {
+    { .line = 26, .func = "mrp_register_builtin_plugin" },
+    { .line = 48, .func = "mrp_plugin_exists" },
+    { .line = 66, .func = "check_plugin_version" },
+    { .line = 84, .func = "check_plugin_singleton" },
+    { .line = 96, .func = "mrp_load_plugin" },
+    { .line = 216, .func = "load_plugin_cb" },
+    { .line = 238, .func = "mrp_load_all_plugins" },
+    { .line = 260, .func = "mrp_request_plugin" },
+    { .line = 277, .func = "mrp_unload_plugin" },
+    { .line = 323, .func = "mrp_start_plugins" },
+    { .line = 347, .func = "mrp_start_plugin" },
+    { .line = 356, .func = "mrp_stop_plugin" },
+    { .line = 373, .func = "find_plugin_instance" },
+    { .line = 390, .func = "find_plugin" },
+    { .line = 406, .func = "open_dynamic" },
+    { .line = 451, .func = "open_builtin" },
+    { .line = 467, .func = "parse_plugin_arg" },
+    { .line = 517, .func = "parse_plugin_args" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_2 = {
+    .file = "core/plugin.c",
+    .info = info_2
+};
+
+/* table of all files */
+static mrp_debug_file_t *debug_files[] = {
+    &file_0,
+    &file_1,
+    &file_2,
+    NULL
+};
+
+
+#include <murphy/common/debug-auto-register.c>
diff --git a/src/dbus-func-info.c b/src/dbus-func-info.c
new file mode 100644 (file)
index 0000000..26ec6f7
--- /dev/null
@@ -0,0 +1,128 @@
+#include <stdlib.h>
+#include <murphy/common/debug.h>
+
+/* common/dbus.c */
+static mrp_debug_info_t info_0[] = {
+    { .line = 104, .func = "purge_filters" },
+    { .line = 124, .func = "dbus_disconnect" },
+    { .line = 153, .func = "mrp_dbus_connect" },
+    { .line = 266, .func = "mrp_dbus_ref" },
+    { .line = 272, .func = "mrp_dbus_unref" },
+    { .line = 284, .func = "mrp_dbus_acquire_name" },
+    { .line = 305, .func = "mrp_dbus_release_name" },
+    { .line = 316, .func = "mrp_dbus_get_unique_name" },
+    { .line = 321, .func = "name_owner_query_cb" },
+    { .line = 343, .func = "name_owner_change_cb" },
+    { .line = 388, .func = "mrp_dbus_follow_name" },
+    { .line = 423, .func = "mrp_dbus_forget_name" },
+    { .line = 457, .func = "purge_name_trackers" },
+    { .line = 475, .func = "handler_alloc" },
+    { .line = 502, .func = "handler_free" },
+    { .line = 515, .func = "handler_list_alloc" },
+    { .line = 532, .func = "handler_list_free" },
+    { .line = 548, .func = "handler_list_free_cb" },
+    { .line = 556, .func = "handler_specificity" },
+    { .line = 571, .func = "handler_list_insert" },
+    { .line = 592, .func = "handler_list_lookup" },
+    { .line = 614, .func = "handler_list_find" },
+    { .line = 633, .func = "mrp_dbus_export_method" },
+    { .line = 657, .func = "mrp_dbus_remove_method" },
+    { .line = 680, .func = "mrp_dbus_add_signal_handler" },
+    { .line = 713, .func = "mrp_dbus_del_signal_handler" },
+    { .line = 743, .func = "mrp_dbus_subscribe_signal" },
+    { .line = 770, .func = "mrp_dbus_unsubscribe_signal" },
+    { .line = 789, .func = "mrp_dbus_install_filterv" },
+    { .line = 843, .func = "mrp_dbus_install_filter" },
+    { .line = 859, .func = "mrp_dbus_remove_filterv" },
+    { .line = 891, .func = "mrp_dbus_remove_filter" },
+    { .line = 907, .func = "dispatch_method" },
+    { .line = 948, .func = "dispatch_signal" },
+    { .line = 1001, .func = "call_reply_cb" },
+    { .line = 1020, .func = "mrp_dbus_call" },
+    { .line = 1102, .func = "mrp_dbus_send" },
+    { .line = 1183, .func = "mrp_dbus_send_msg" },
+    { .line = 1189, .func = "mrp_dbus_call_cancel" },
+    { .line = 1213, .func = "mrp_dbus_reply" },
+    { .line = 1250, .func = "call_free" },
+    { .line = 1257, .func = "purge_calls" },
+    { .line = 1275, .func = "mrp_dbus_signal" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_0 = {
+    .file = "common/dbus.c",
+    .info = info_0
+};
+
+/* common/dbus-glue.c */
+static mrp_debug_info_t info_1[] = {
+    { .line = 38, .func = "dispatch_watch" },
+    { .line = 64, .func = "watch_freed_cb" },
+    { .line = 76, .func = "add_watch" },
+    { .line = 125, .func = "del_watch" },
+    { .line = 140, .func = "toggle_watch" },
+    { .line = 151, .func = "dispatch_timeout" },
+    { .line = 165, .func = "timeout_freed_cb" },
+    { .line = 178, .func = "add_timeout" },
+    { .line = 209, .func = "del_timeout" },
+    { .line = 224, .func = "toggle_timeout" },
+    { .line = 235, .func = "wakeup_mainloop" },
+    { .line = 245, .func = "glue_free_cb" },
+    { .line = 274, .func = "pump_cb" },
+    { .line = 287, .func = "dispatch_status_cb" },
+    { .line = 310, .func = "mrp_dbus_setup_connection" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_1 = {
+    .file = "common/dbus-glue.c",
+    .info = info_1
+};
+
+/* common/dbus-transport.c */
+static mrp_debug_info_t info_2[] = {
+    { .line = 58, .func = "parse_address" },
+    { .line = 164, .func = "copy_address" },
+    { .line = 217, .func = "check_address" },
+    { .line = 225, .func = "peer_address" },
+    { .line = 267, .func = "dbus_resolve" },
+    { .line = 283, .func = "dbus_open" },
+    { .line = 291, .func = "dbus_createfrom" },
+    { .line = 305, .func = "dbus_bind" },
+    { .line = 381, .func = "dbus_autobind" },
+    { .line = 399, .func = "dbus_close" },
+    { .line = 433, .func = "dbus_msg_cb" },
+    { .line = 476, .func = "dbus_data_cb" },
+    { .line = 519, .func = "dbus_raw_cb" },
+    { .line = 562, .func = "peer_state_cb" },
+    { .line = 596, .func = "dbus_connect" },
+    { .line = 633, .func = "dbus_disconnect" },
+    { .line = 647, .func = "dbus_sendmsgto" },
+    { .line = 685, .func = "dbus_sendmsg" },
+    { .line = 695, .func = "dbus_sendrawto" },
+    { .line = 740, .func = "dbus_sendraw" },
+    { .line = 750, .func = "dbus_senddatato" },
+    { .line = 788, .func = "dbus_senddata" },
+    { .line = 798, .func = "get_array_signature" },
+    { .line = 823, .func = "msg_encode" },
+    { .line = 990, .func = "msg_decode" },
+    { .line = 1199, .func = "data_encode" },
+    { .line = 1372, .func = "member_type" },
+    { .line = 1386, .func = "data_decode" },
+    { .line = 1591, .func = "raw_encode" },
+    { .line = 1630, .func = "raw_decode" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_2 = {
+    .file = "common/dbus-transport.c",
+    .info = info_2
+};
+
+/* table of all files */
+static mrp_debug_file_t *debug_files[] = {
+    &file_0,
+    &file_1,
+    &file_2,
+    NULL
+};
+
+
+#include <murphy/common/debug-auto-register.c>
diff --git a/src/linker-script.common b/src/linker-script.common
new file mode 100644 (file)
index 0000000..06fb460
--- /dev/null
@@ -0,0 +1,110 @@
+{
+    global:
+        mrp_add_deferred;
+        mrp_add_io_watch;
+        mrp_add_sighandler;
+        mrp_add_subloop;
+        mrp_add_timer;
+        mrp_clear_superloop;
+        mrp_daemonize;
+        mrp_data_decode;
+        mrp_data_dump;
+        mrp_data_encode;
+        mrp_data_free;
+        mrp_data_get_array_size;
+        mrp_data_get_blob_size;
+        mrp_debug_check;
+        mrp_debug_dump_config;
+        mrp_debug_enable;
+        mrp_debug_msg;
+        mrp_debug_register_file;
+        mrp_debug_reset;
+        mrp_debug_set_config;
+        mrp_debug_site_function;
+        mrp_debug_stamp;
+        mrp_debug_unregister_file;
+        mrp_del_deferred;
+        mrp_del_io_watch;
+        mrp_del_sighandler;
+        mrp_del_subloop;
+        mrp_del_timer;
+        mrp_disable_deferred;
+        mrp_enable_deferred;
+        mrp_htbl_create;
+        mrp_htbl_destroy;
+        mrp_htbl_find;
+        mrp_htbl_foreach;
+        mrp_htbl_insert;
+        mrp_htbl_lookup;
+        mrp_htbl_remove;
+        mrp_htbl_reset;
+        mrp_log_disable;
+        mrp_log_enable;
+        mrp_log_msg;
+        mrp_log_msgv;
+        mrp_log_parse_levels;
+        mrp_log_parse_target;
+        mrp_log_set_mask;
+        mrp_log_set_target;
+        mrp_mainloop_create;
+        mrp_mainloop_destroy;
+        mrp_mainloop_dispatch;
+        mrp_mainloop_iterate;
+        mrp_mainloop_poll;
+        mrp_mainloop_prepare;
+        mrp_mainloop_quit;
+        mrp_mainloop_run;
+        mrp_mm_alloc;
+        mrp_mm_check;
+        mrp_mm_config;
+        mrp_mm_free;
+        mrp_mm_memalign;
+        mrp_mm_realloc;
+        mrp_mm_strdup;
+        mrp_msg_append;
+        mrp_msgbuf_cancel;
+        mrp_msgbuf_ensure;
+        mrp_msgbuf_pull;
+        mrp_msgbuf_read;
+        mrp_msgbuf_reserve;
+        mrp_msgbuf_write;
+        mrp_msg_create;
+        mrp_msg_default_decode;
+        mrp_msg_default_encode;
+        mrp_msg_dump;
+        mrp_msg_find;
+        mrp_msg_find_type;
+        mrp_msg_prepend;
+        mrp_msg_ref;
+        mrp_msg_register_type;
+        mrp_msg_unref;
+        mrp_objpool_alloc;
+        mrp_objpool_create;
+        mrp_objpool_destroy;
+        mrp_objpool_free;
+        mrp_objpool_grow;
+        mrp_objpool_shrink;
+        mrp_scan_dir;
+        mrp_set_superloop;
+        mrp_string_comp;
+        mrp_string_hash;
+        mrp_transport_accept;
+        mrp_transport_bind;
+        mrp_transport_connect;
+        mrp_transport_create;
+        mrp_transport_create_from;
+        mrp_transport_destroy;
+        mrp_transport_disconnect;
+        mrp_transport_listen;
+        mrp_transport_register;
+        mrp_transport_resolve;
+        mrp_transport_send;
+        mrp_transport_senddata;
+        mrp_transport_senddatato;
+        mrp_transport_sendraw;
+        mrp_transport_sendrawto;
+        mrp_transport_sendto;
+        mrp_transport_unregister;
+    local:
+        *;
+};
diff --git a/src/linker-script.core b/src/linker-script.core
new file mode 100644 (file)
index 0000000..aea027d
--- /dev/null
@@ -0,0 +1,24 @@
+{
+    global:
+        mrp_console_add_core_group;
+        mrp_console_add_group;
+        mrp_console_del_core_group;
+        mrp_console_del_group;
+        mrp_console_printf;
+        mrp_context_create;
+        mrp_context_destroy;
+        mrp_create_console;
+        mrp_destroy_console;
+        mrp_load_all_plugins;
+        mrp_load_plugin;
+        mrp_plugin_exists;
+        mrp_register_builtin_plugin;
+        mrp_request_plugin;
+        mrp_set_console_prompt;
+        mrp_start_plugin;
+        mrp_start_plugins;
+        mrp_stop_plugin;
+        mrp_unload_plugin;
+    local:
+        *;
+};
diff --git a/src/linker-script.dbus b/src/linker-script.dbus
new file mode 100644 (file)
index 0000000..7d68d34
--- /dev/null
@@ -0,0 +1,31 @@
+{
+    global:
+        mrp_dbus_acquire_name;
+        mrp_dbus_add_signal_handler;
+        mrp_dbus_call;
+        mrp_dbus_call_cancel;
+        mrp_dbus_connect;
+        mrp_dbus_del_signal_handler;
+        mrp_dbus_export_method;
+        mrp_dbus_follow_name;
+        mrp_dbus_forget_name;
+        mrp_dbus_get_unique_name;
+        mrp_dbus_install_filter;
+        mrp_dbus_install_filterv;
+        mrp_dbus_ref;
+        mrp_dbus_release_name;
+        mrp_dbus_remove_filter;
+        mrp_dbus_remove_filterv;
+        mrp_dbus_remove_method;
+        mrp_dbus_reply;
+        mrp_dbus_s;
+        mrp_dbus_send;
+        mrp_dbus_send_msg;
+        mrp_dbus_setup_connection;
+        mrp_dbus_signal;
+        mrp_dbus_subscribe_signal;
+        mrp_dbus_unref;
+        mrp_dbus_unsubscribe_signal;
+    local:
+        *;
+};
diff --git a/src/linker-script.pulse b/src/linker-script.pulse
new file mode 100644 (file)
index 0000000..9e315d4
--- /dev/null
@@ -0,0 +1,7 @@
+{
+    global:
+        mrp_mainloop_register_with_pulse;
+        mrp_mainloop_unregister_from_pulse;
+    local:
+        *;
+};
index 8f75a34..fca2041 100644 (file)
@@ -44,5 +44,5 @@ clean-$(LINKER_SCRIPT):
        -rm -f $(LINKER_SCRIPT)
 
 # cleanup
-clean-local:: clean-$(LINKER_SCRIPT)
+clean-local:: clean-$(LINKER_SCRIPT)
        -rm -f *~
diff --git a/src/murphy-db/mdb/linker-script.mdb b/src/murphy-db/mdb/linker-script.mdb
new file mode 100644 (file)
index 0000000..cefa538
--- /dev/null
@@ -0,0 +1,76 @@
+{
+    global:
+        mdb_handle_add;
+        mdb_handle_delete;
+        mdb_handle_get_data;
+        mdb_handle_map_create;
+        mdb_handle_map_destroy;
+        mdb_handle_print;
+        mdb_hash_add;
+        mdb_hash_delete;
+        mdb_hash_function_blob;
+        mdb_hash_function_integer;
+        mdb_hash_function_pointer;
+        mdb_hash_function_string;
+        mdb_hash_function_unsignd;
+        mdb_hash_function_varchar;
+        mdb_hash_get_data;
+        mdb_hash_table_create;
+        mdb_hash_table_destroy;
+        mdb_hash_table_iterate;
+        mdb_hash_table_print;
+        mdb_hash_table_reset;
+        mdb_sequence_add;
+        mdb_sequence_cursor_destroy;
+        mdb_sequence_delete;
+        mdb_sequence_iterate;
+        mdb_sequence_table_create;
+        mdb_sequence_table_destroy;
+        mdb_sequence_table_get_size;
+        mdb_sequence_table_print;
+        mdb_sequence_table_reset;
+        mdb_table_create;
+        mdb_table_create_index;
+        mdb_table_delete;
+        mdb_table_describe;
+        mdb_table_drop;
+        mdb_table_find;
+        mdb_table_get_column_index;
+        mdb_table_get_column_name;
+        mdb_table_get_column_size;
+        mdb_table_get_column_type;
+        mdb_table_get_size;
+        mdb_table_insert;
+        mdb_table_print_rows;
+        mdb_table_register_handle;
+        mdb_table_select;
+        mdb_table_select_by_index;
+        mdb_table_update;
+        mdb_transaction_begin;
+        mdb_transaction_commit;
+        mdb_transaction_get_depth;
+        mdb_transaction_rollback;
+        mdb_trigger_add_column_callback;
+        mdb_trigger_add_row_callback;
+        mdb_trigger_add_table_callback;
+        mdb_trigger_add_transaction_callback;
+        mdb_trigger_delete_column_callback;
+        mdb_trigger_delete_row_callback;
+        mdb_trigger_delete_table_callback;
+        mdb_trigger_delete_transaction_callback;
+        mqi_data_compare_blob;
+        mqi_data_compare_integer;
+        mqi_data_compare_pointer;
+        mqi_data_compare_string;
+        mqi_data_compare_unsignd;
+        mqi_data_compare_varchar;
+        mqi_data_print_blob;
+        mqi_data_print_integer;
+        mqi_data_print_pointer;
+        mqi_data_print_string;
+        mqi_data_print_unsignd;
+        mqi_data_print_varchar;
+        mqi_data_type_str;
+    local:
+        *;
+};
index 906fd2c..141a61e 100644 (file)
@@ -30,5 +30,5 @@ clean-$(LINKER_SCRIPT):
        -rm -f $(LINKER_SCRIPT)
 
 # cleanup
-clean-local:: clean-$(LINKER_SCRIPT)
+clean-local:: clean-$(LINKER_SCRIPT)
        rm -f *~
diff --git a/src/murphy-db/mqi/linker-script.mqi b/src/murphy-db/mqi/linker-script.mqi
new file mode 100644 (file)
index 0000000..5a326ad
--- /dev/null
@@ -0,0 +1,36 @@
+{
+    global:
+        mqi_begin_transaction;
+        mqi_close;
+        mqi_commit_transaction;
+        mqi_create_column_trigger;
+        mqi_create_index;
+        mqi_create_row_trigger;
+        mqi_create_table;
+        mqi_create_table_trigger;
+        mqi_create_transaction_trigger;
+        mqi_delete_from;
+        mqi_describe;
+        mqi_drop_column_trigger;
+        mqi_drop_row_trigger;
+        mqi_drop_table;
+        mqi_drop_table_trigger;
+        mqi_drop_transaction_trigger;
+        mqi_get_column_index;
+        mqi_get_column_name;
+        mqi_get_column_size;
+        mqi_get_column_type;
+        mqi_get_table_handle;
+        mqi_get_table_size;
+        mqi_get_transaction_handle;
+        mqi_insert_into;
+        mqi_open;
+        mqi_print_rows;
+        mqi_rollback_transaction;
+        mqi_select;
+        mqi_select_by_index;
+        mqi_show_tables;
+        mqi_update;
+    local:
+        *;
+};
index 46e2cc3..96c89ec 100644 (file)
@@ -54,5 +54,5 @@ clean-$(LINKER_SCRIPT):
        -rm -f $(LINKER_SCRIPT)
 
 # cleanup
-clean-local:: clean-parser clean-scanner clean-$(LINKER_SCRIPT)
+clean-local:: clean-parser clean-scanner clean-$(LINKER_SCRIPT)
        rm -f *~
diff --git a/src/murphy-db/mql/linker-script.mql b/src/murphy-db/mql/linker-script.mql
new file mode 100644 (file)
index 0000000..f7a3486
--- /dev/null
@@ -0,0 +1,32 @@
+{
+    global:
+        mql_bind_value;
+        mql_exec_file;
+        mql_exec_statement;
+        mql_exec_string;
+        mql_precompile;
+        mql_register_callback;
+        mql_result_columns_get_column_count;
+        mql_result_columns_get_length;
+        mql_result_columns_get_name;
+        mql_result_columns_get_type;
+        mql_result_error_get_code;
+        mql_result_error_get_message;
+        mql_result_free;
+        mql_result_is_success;
+        mql_result_list_get_floating;
+        mql_result_list_get_integer;
+        mql_result_list_get_length;
+        mql_result_list_get_string;
+        mql_result_list_get_unsigned;
+        mql_result_rows_get_floating;
+        mql_result_rows_get_integer;
+        mql_result_rows_get_row_count;
+        mql_result_rows_get_string;
+        mql_result_rows_get_unsigned;
+        mql_result_string_get;
+        mql_statement_free;
+        mql_unregister_callback;
+    local:
+        *;
+};
diff --git a/src/plugin-console-func-info.c b/src/plugin-console-func-info.c
new file mode 100644 (file)
index 0000000..8b13b64
--- /dev/null
@@ -0,0 +1,33 @@
+#include <stdlib.h>
+#include <murphy/common/debug.h>
+
+/* plugins/plugin-console.c */
+static mrp_debug_info_t info_0[] = {
+    { .line = 52, .func = "write_req" },
+    { .line = 75, .func = "tcp_close_req" },
+    { .line = 87, .func = "udp_close_req" },
+    { .line = 106, .func = "set_prompt_req" },
+    { .line = 123, .func = "free_req" },
+    { .line = 129, .func = "recv_evt" },
+    { .line = 155, .func = "recvfrom_evt" },
+    { .line = 204, .func = "closed_evt" },
+    { .line = 221, .func = "connection_evt" },
+    { .line = 257, .func = "strm_setup" },
+    { .line = 304, .func = "dgrm_setup" },
+    { .line = 360, .func = "console_init" },
+    { .line = 395, .func = "console_exit" },
+    { .line = 0, .func = NULL }
+};
+static mrp_debug_file_t file_0 = {
+    .file = "plugins/plugin-console.c",
+    .info = info_0
+};
+
+/* table of all files */
+static mrp_debug_file_t *debug_files[] = {
+    &file_0,
+    NULL
+};
+
+
+#include <murphy/common/debug-auto-register.c>