| This make the declarations to be extern so they dont end up |
| in duplicates in data.rel.ro sections |
| |
| avoid errors like |
| |
| | ../../../src/common/.libs/libcommon.a(mi-lttng.o):(.data.rel.ro.local+0x0): multiple definition of `mi_lttng_element_snapshots' |
| | commands/enable_events.o:(.bss+0x48): first defined here |
| | collect2: error: ld returned 1 exit status |
| | Makefile:502: recipe for target 'lttng' failed |
| | make[3]: *** [lttng] Error 1 |
| |
| |
| Upstream-Status: Pending |
| Signed-off-by: Khem Raj <raj.khem@gmail.com> |
| |
| Index: git/src/common/config/config-session-abi.h |
| =================================================================== |
| --- git.orig/src/common/config/config-session-abi.h |
| +++ git/src/common/config/config-session-abi.h |
| @@ -18,95 +18,95 @@ |
| #ifndef CONFIG_SESSION_INTERNAL_H |
| #define CONFIG_SESSION_INTERNAL_H |
| |
| -const char * const config_element_channel; |
| -const char * const config_element_channels; |
| -const char * const config_element_domain; |
| -const char * const config_element_domains; |
| -const char * const config_element_event; |
| -const char * const config_element_events; |
| -const char * const config_element_context; |
| -const char * const config_element_contexts; |
| -const char * const config_element_attributes; |
| -const char * const config_element_exclusion; |
| -const char * const config_element_exclusions; |
| -const char * const config_element_function_attributes; |
| -const char * const config_element_probe_attributes; |
| -const char * const config_element_symbol_name; |
| -const char * const config_element_address; |
| -const char * const config_element_offset; |
| -const char * const config_element_name; |
| -const char * const config_element_enabled; |
| -const char * const config_element_overwrite_mode; |
| -const char * const config_element_subbuf_size; |
| -const char * const config_element_num_subbuf; |
| -const char * const config_element_switch_timer_interval; |
| -const char * const config_element_read_timer_interval; |
| -const char * const config_element_output; |
| -const char * const config_element_output_type; |
| -const char * const config_element_tracefile_size; |
| -const char * const config_element_tracefile_count; |
| -const char * const config_element_live_timer_interval; |
| -const char * const config_element_type; |
| -const char * const config_element_buffer_type; |
| -const char * const config_element_session; |
| -const char * const config_element_sessions; |
| -const char * const config_element_perf; |
| -const char * const config_element_config; |
| -const char * const config_element_started; |
| -const char * const config_element_snapshot_mode; |
| -const char * const config_element_loglevel; |
| -const char * const config_element_loglevel_type; |
| -const char * const config_element_filter; |
| -const char * const config_element_snapshot_outputs; |
| -const char * const config_element_consumer_output; |
| -const char * const config_element_destination; |
| -const char * const config_element_path; |
| -const char * const config_element_net_output; |
| -const char * const config_element_control_uri; |
| -const char * const config_element_data_uri; |
| -const char * const config_element_max_size; |
| - |
| -const char * const config_domain_type_kernel; |
| -const char * const config_domain_type_ust; |
| -const char * const config_domain_type_jul; |
| -const char * const config_domain_type_log4j; |
| - |
| -const char * const config_buffer_type_per_pid; |
| -const char * const config_buffer_type_per_uid; |
| -const char * const config_buffer_type_global; |
| - |
| -const char * const config_overwrite_mode_discard; |
| -const char * const config_overwrite_mode_overwrite; |
| - |
| -const char * const config_output_type_splice; |
| -const char * const config_output_type_mmap; |
| - |
| -const char * const config_loglevel_type_all; |
| -const char * const config_loglevel_type_range; |
| -const char * const config_loglevel_type_single; |
| - |
| -const char * const config_event_type_all; |
| -const char * const config_event_type_tracepoint; |
| -const char * const config_event_type_probe; |
| -const char * const config_event_type_function; |
| -const char * const config_event_type_function_entry; |
| -const char * const config_event_type_noop; |
| -const char * const config_event_type_syscall; |
| -const char * const config_event_type_kprobe; |
| -const char * const config_event_type_kretprobe; |
| - |
| -const char * const config_event_context_pid; |
| -const char * const config_event_context_procname; |
| -const char * const config_event_context_prio; |
| -const char * const config_event_context_nice; |
| -const char * const config_event_context_vpid; |
| -const char * const config_event_context_tid; |
| -const char * const config_event_context_vtid; |
| -const char * const config_event_context_ppid; |
| -const char * const config_event_context_vppid; |
| -const char * const config_event_context_pthread_id; |
| -const char * const config_event_context_hostname; |
| -const char * const config_event_context_ip; |
| -const char * const config_event_context_perf_thread_counter; |
| +extern const char * const config_element_channel; |
| +extern const char * const config_element_channels; |
| +extern const char * const config_element_domain; |
| +extern const char * const config_element_domains; |
| +extern const char * const config_element_event; |
| +extern const char * const config_element_events; |
| +extern const char * const config_element_context; |
| +extern const char * const config_element_contexts; |
| +extern const char * const config_element_attributes; |
| +extern const char * const config_element_exclusion; |
| +extern const char * const config_element_exclusions; |
| +extern const char * const config_element_function_attributes; |
| +extern const char * const config_element_probe_attributes; |
| +extern const char * const config_element_symbol_name; |
| +extern const char * const config_element_address; |
| +extern const char * const config_element_offset; |
| +extern const char * const config_element_name; |
| +extern const char * const config_element_enabled; |
| +extern const char * const config_element_overwrite_mode; |
| +extern const char * const config_element_subbuf_size; |
| +extern const char * const config_element_num_subbuf; |
| +extern const char * const config_element_switch_timer_interval; |
| +extern const char * const config_element_read_timer_interval; |
| +extern const char * const config_element_output; |
| +extern const char * const config_element_output_type; |
| +extern const char * const config_element_tracefile_size; |
| +extern const char * const config_element_tracefile_count; |
| +extern const char * const config_element_live_timer_interval; |
| +extern const char * const config_element_type; |
| +extern const char * const config_element_buffer_type; |
| +extern const char * const config_element_session; |
| +extern const char * const config_element_sessions; |
| +extern const char * const config_element_perf; |
| +extern const char * const config_element_config; |
| +extern const char * const config_element_started; |
| +extern const char * const config_element_snapshot_mode; |
| +extern const char * const config_element_loglevel; |
| +extern const char * const config_element_loglevel_type; |
| +extern const char * const config_element_filter; |
| +extern const char * const config_element_snapshot_outputs; |
| +extern const char * const config_element_consumer_output; |
| +extern const char * const config_element_destination; |
| +extern const char * const config_element_path; |
| +extern const char * const config_element_net_output; |
| +extern const char * const config_element_control_uri; |
| +extern const char * const config_element_data_uri; |
| +extern const char * const config_element_max_size; |
| + |
| +extern const char * const config_domain_type_kernel; |
| +extern const char * const config_domain_type_ust; |
| +extern const char * const config_domain_type_jul; |
| +extern const char * const config_domain_type_log4j; |
| + |
| +extern const char * const config_buffer_type_per_pid; |
| +extern const char * const config_buffer_type_per_uid; |
| +extern const char * const config_buffer_type_global; |
| + |
| +extern const char * const config_overwrite_mode_discard; |
| +extern const char * const config_overwrite_mode_overwrite; |
| + |
| +extern const char * const config_output_type_splice; |
| +extern const char * const config_output_type_mmap; |
| + |
| +extern const char * const config_loglevel_type_all; |
| +extern const char * const config_loglevel_type_range; |
| +extern const char * const config_loglevel_type_single; |
| + |
| +extern const char * const config_event_type_all; |
| +extern const char * const config_event_type_tracepoint; |
| +extern const char * const config_event_type_probe; |
| +extern const char * const config_event_type_function; |
| +extern const char * const config_event_type_function_entry; |
| +extern const char * const config_event_type_noop; |
| +extern const char * const config_event_type_syscall; |
| +extern const char * const config_event_type_kprobe; |
| +extern const char * const config_event_type_kretprobe; |
| + |
| +extern const char * const config_event_context_pid; |
| +extern const char * const config_event_context_procname; |
| +extern const char * const config_event_context_prio; |
| +extern const char * const config_event_context_nice; |
| +extern const char * const config_event_context_vpid; |
| +extern const char * const config_event_context_tid; |
| +extern const char * const config_event_context_vtid; |
| +extern const char * const config_event_context_ppid; |
| +extern const char * const config_event_context_vppid; |
| +extern const char * const config_event_context_pthread_id; |
| +extern const char * const config_event_context_hostname; |
| +extern const char * const config_event_context_ip; |
| +extern const char * const config_event_context_perf_thread_counter; |
| |
| #endif /* CONFIG_SESSION_INTERNAL_H */ |
| Index: git/src/common/mi-lttng.h |
| =================================================================== |
| --- git.orig/src/common/mi-lttng.h |
| +++ git/src/common/mi-lttng.h |
| @@ -49,133 +49,133 @@ struct mi_lttng_version { |
| }; |
| |
| /* Strings related to command */ |
| -const char * const mi_lttng_element_command; |
| -const char * const mi_lttng_element_command_action; |
| -const char * const mi_lttng_element_command_add_context; |
| -const char * const mi_lttng_element_command_calibrate; |
| -const char * const mi_lttng_element_command_create; |
| -const char * const mi_lttng_element_command_destroy; |
| -const char * const mi_lttng_element_command_disable_channel; |
| -const char * const mi_lttng_element_command_disable_event; |
| -const char * const mi_lttng_element_command_enable_channels; |
| -const char * const mi_lttng_element_command_enable_event; |
| -const char * const mi_lttng_element_command_list; |
| -const char * const mi_lttng_element_command_load; |
| -const char * const mi_lttng_element_command_name; |
| -const char * const mi_lttng_element_command_output; |
| -const char * const mi_lttng_element_command_save; |
| -const char * const mi_lttng_element_command_set_session; |
| -const char * const mi_lttng_element_command_snapshot; |
| -const char * const mi_lttng_element_command_snapshot_add; |
| -const char * const mi_lttng_element_command_snapshot_del; |
| -const char * const mi_lttng_element_command_snapshot_list; |
| -const char * const mi_lttng_element_command_snapshot_record; |
| -const char * const mi_lttng_element_command_start; |
| -const char * const mi_lttng_element_command_stop; |
| -const char * const mi_lttng_element_command_success; |
| -const char * const mi_lttng_element_command_version; |
| +extern const char * const mi_lttng_element_command; |
| +extern const char * const mi_lttng_element_command_action; |
| +extern const char * const mi_lttng_element_command_add_context; |
| +extern const char * const mi_lttng_element_command_calibrate; |
| +extern const char * const mi_lttng_element_command_create; |
| +extern const char * const mi_lttng_element_command_destroy; |
| +extern const char * const mi_lttng_element_command_disable_channel; |
| +extern const char * const mi_lttng_element_command_disable_event; |
| +extern const char * const mi_lttng_element_command_enable_channels; |
| +extern const char * const mi_lttng_element_command_enable_event; |
| +extern const char * const mi_lttng_element_command_list; |
| +extern const char * const mi_lttng_element_command_load; |
| +extern const char * const mi_lttng_element_command_name; |
| +extern const char * const mi_lttng_element_command_output; |
| +extern const char * const mi_lttng_element_command_save; |
| +extern const char * const mi_lttng_element_command_set_session; |
| +extern const char * const mi_lttng_element_command_snapshot; |
| +extern const char * const mi_lttng_element_command_snapshot_add; |
| +extern const char * const mi_lttng_element_command_snapshot_del; |
| +extern const char * const mi_lttng_element_command_snapshot_list; |
| +extern const char * const mi_lttng_element_command_snapshot_record; |
| +extern const char * const mi_lttng_element_command_start; |
| +extern const char * const mi_lttng_element_command_stop; |
| +extern const char * const mi_lttng_element_command_success; |
| +extern const char * const mi_lttng_element_command_version; |
| |
| /* Strings related to version command */ |
| -const char * const mi_lttng_element_version; |
| -const char * const mi_lttng_element_version_commit; |
| -const char * const mi_lttng_element_version_description; |
| -const char * const mi_lttng_element_version_license; |
| -const char * const mi_lttng_element_version_major; |
| -const char * const mi_lttng_element_version_minor; |
| -const char * const mi_lttng_element_version_patch_level; |
| -const char * const mi_lttng_element_version_str; |
| -const char * const mi_lttng_element_version_web; |
| +extern const char * const mi_lttng_element_version; |
| +extern const char * const mi_lttng_element_version_commit; |
| +extern const char * const mi_lttng_element_version_description; |
| +extern const char * const mi_lttng_element_version_license; |
| +extern const char * const mi_lttng_element_version_major; |
| +extern const char * const mi_lttng_element_version_minor; |
| +extern const char * const mi_lttng_element_version_patch_level; |
| +extern const char * const mi_lttng_element_version_str; |
| +extern const char * const mi_lttng_element_version_web; |
| |
| /* String related to a lttng_event_field */ |
| -const char * const mi_lttng_element_event_field; |
| -const char * const mi_lttng_element_event_fields; |
| +extern const char * const mi_lttng_element_event_field; |
| +extern const char * const mi_lttng_element_event_fields; |
| |
| /* String related to lttng_event_context */ |
| -const char * const mi_lttng_context_type_perf_counter; |
| -const char * const mi_lttng_context_type_perf_cpu_counter; |
| -const char * const mi_lttng_context_type_perf_thread_counter; |
| +extern const char * const mi_lttng_context_type_perf_counter; |
| +extern const char * const mi_lttng_context_type_perf_cpu_counter; |
| +extern const char * const mi_lttng_context_type_perf_thread_counter; |
| |
| /* String related to lttng_event_perf_counter_ctx */ |
| -const char * const mi_lttng_element_perf_counter_context; |
| +extern const char * const mi_lttng_element_perf_counter_context; |
| |
| /* Strings related to pid */ |
| -const char * const mi_lttng_element_pids; |
| -const char * const mi_lttng_element_pid; |
| -const char * const mi_lttng_element_pid_id; |
| +extern const char * const mi_lttng_element_pids; |
| +extern const char * const mi_lttng_element_pid; |
| +extern const char * const mi_lttng_element_pid_id; |
| |
| /* Strings related to save command */ |
| -const char * const mi_lttng_element_save; |
| +extern const char * const mi_lttng_element_save; |
| |
| /* Strings related to load command */ |
| -const char * const mi_lttng_element_load; |
| +extern const char * const mi_lttng_element_load; |
| |
| /* General element of mi_lttng */ |
| -const char * const mi_lttng_element_empty; |
| -const char * const mi_lttng_element_id; |
| -const char * const mi_lttng_element_nowrite; |
| -const char * const mi_lttng_element_success; |
| -const char * const mi_lttng_element_type_enum; |
| -const char * const mi_lttng_element_type_float; |
| -const char * const mi_lttng_element_type_integer; |
| -const char * const mi_lttng_element_type_other; |
| -const char * const mi_lttng_element_type_string; |
| +extern const char * const mi_lttng_element_empty; |
| +extern const char * const mi_lttng_element_id; |
| +extern const char * const mi_lttng_element_nowrite; |
| +extern const char * const mi_lttng_element_success; |
| +extern const char * const mi_lttng_element_type_enum; |
| +extern const char * const mi_lttng_element_type_float; |
| +extern const char * const mi_lttng_element_type_integer; |
| +extern const char * const mi_lttng_element_type_other; |
| +extern const char * const mi_lttng_element_type_string; |
| |
| /* String related to loglevel */ |
| -const char * const mi_lttng_loglevel_str_alert; |
| -const char * const mi_lttng_loglevel_str_crit; |
| -const char * const mi_lttng_loglevel_str_debug; |
| -const char * const mi_lttng_loglevel_str_debug_function; |
| -const char * const mi_lttng_loglevel_str_debug_line; |
| -const char * const mi_lttng_loglevel_str_debug_module; |
| -const char * const mi_lttng_loglevel_str_debug_process; |
| -const char * const mi_lttng_loglevel_str_debug_program; |
| -const char * const mi_lttng_loglevel_str_debug_system; |
| -const char * const mi_lttng_loglevel_str_debug_unit; |
| -const char * const mi_lttng_loglevel_str_emerg; |
| -const char * const mi_lttng_loglevel_str_err; |
| -const char * const mi_lttng_loglevel_str_info; |
| -const char * const mi_lttng_loglevel_str_notice; |
| -const char * const mi_lttng_loglevel_str_unknown; |
| -const char * const mi_lttng_loglevel_str_warning; |
| +extern const char * const mi_lttng_loglevel_str_alert; |
| +extern const char * const mi_lttng_loglevel_str_crit; |
| +extern const char * const mi_lttng_loglevel_str_debug; |
| +extern const char * const mi_lttng_loglevel_str_debug_function; |
| +extern const char * const mi_lttng_loglevel_str_debug_line; |
| +extern const char * const mi_lttng_loglevel_str_debug_module; |
| +extern const char * const mi_lttng_loglevel_str_debug_process; |
| +extern const char * const mi_lttng_loglevel_str_debug_program; |
| +extern const char * const mi_lttng_loglevel_str_debug_system; |
| +extern const char * const mi_lttng_loglevel_str_debug_unit; |
| +extern const char * const mi_lttng_loglevel_str_emerg; |
| +extern const char * const mi_lttng_loglevel_str_err; |
| +extern const char * const mi_lttng_loglevel_str_info; |
| +extern const char * const mi_lttng_loglevel_str_notice; |
| +extern const char * const mi_lttng_loglevel_str_unknown; |
| +extern const char * const mi_lttng_loglevel_str_warning; |
| |
| /* String related to loglevel JUL */ |
| -const char * const mi_lttng_loglevel_str_jul_all; |
| -const char * const mi_lttng_loglevel_str_jul_config; |
| -const char * const mi_lttng_loglevel_str_jul_fine; |
| -const char * const mi_lttng_loglevel_str_jul_finer; |
| -const char * const mi_lttng_loglevel_str_jul_finest; |
| -const char * const mi_lttng_loglevel_str_jul_info; |
| -const char * const mi_lttng_loglevel_str_jul_off; |
| -const char * const mi_lttng_loglevel_str_jul_severe; |
| -const char * const mi_lttng_loglevel_str_jul_warning; |
| +extern const char * const mi_lttng_loglevel_str_jul_all; |
| +extern const char * const mi_lttng_loglevel_str_jul_config; |
| +extern const char * const mi_lttng_loglevel_str_jul_fine; |
| +extern const char * const mi_lttng_loglevel_str_jul_finer; |
| +extern const char * const mi_lttng_loglevel_str_jul_finest; |
| +extern const char * const mi_lttng_loglevel_str_jul_info; |
| +extern const char * const mi_lttng_loglevel_str_jul_off; |
| +extern const char * const mi_lttng_loglevel_str_jul_severe; |
| +extern const char * const mi_lttng_loglevel_str_jul_warning; |
| |
| /* String related to loglevel Log4j */ |
| -const char * const mi_lttng_loglevel_str_log4j_off; |
| -const char * const mi_lttng_loglevel_str_log4j_fatal; |
| -const char * const mi_lttng_loglevel_str_log4j_error; |
| -const char * const mi_lttng_loglevel_str_log4j_warn; |
| -const char * const mi_lttng_loglevel_str_log4j_info; |
| -const char * const mi_lttng_loglevel_str_log4j_debug; |
| -const char * const mi_lttng_loglevel_str_log4j_trace; |
| -const char * const mi_lttng_loglevel_str_log4j_all; |
| +extern const char * const mi_lttng_loglevel_str_log4j_off; |
| +extern const char * const mi_lttng_loglevel_str_log4j_fatal; |
| +extern const char * const mi_lttng_loglevel_str_log4j_error; |
| +extern const char * const mi_lttng_loglevel_str_log4j_warn; |
| +extern const char * const mi_lttng_loglevel_str_log4j_info; |
| +extern const char * const mi_lttng_loglevel_str_log4j_debug; |
| +extern const char * const mi_lttng_loglevel_str_log4j_trace; |
| +extern const char * const mi_lttng_loglevel_str_log4j_all; |
| |
| /* String related to loglevel type */ |
| -const char * const mi_lttng_loglevel_type_all; |
| -const char * const mi_lttng_loglevel_type_range; |
| -const char * const mi_lttng_loglevel_type_single; |
| -const char * const mi_lttng_loglevel_type_unknown; |
| +extern const char * const mi_lttng_loglevel_type_all; |
| +extern const char * const mi_lttng_loglevel_type_range; |
| +extern const char * const mi_lttng_loglevel_type_single; |
| +extern const char * const mi_lttng_loglevel_type_unknown; |
| |
| /* Sting related to lttng_calibrate */ |
| -const char * const mi_lttng_element_calibrate; |
| -const char * const mi_lttng_element_calibrate_function; |
| +extern const char * const mi_lttng_element_calibrate; |
| +extern const char * const mi_lttng_element_calibrate_function; |
| |
| /* String related to a lttng_snapshot */ |
| -const char * const mi_lttng_element_snapshot_ctrl_url; |
| -const char * const mi_lttng_element_snapshot_data_url; |
| -const char * const mi_lttng_element_snapshot_max_size; |
| -const char * const mi_lttng_element_snapshot_n_ptr; |
| -const char * const mi_lttng_element_snapshot_session_name; |
| -const char * const mi_lttng_element_snapshots; |
| +extern const char * const mi_lttng_element_snapshot_ctrl_url; |
| +extern const char * const mi_lttng_element_snapshot_data_url; |
| +extern const char * const mi_lttng_element_snapshot_max_size; |
| +extern const char * const mi_lttng_element_snapshot_n_ptr; |
| +extern const char * const mi_lttng_element_snapshot_session_name; |
| +extern const char * const mi_lttng_element_snapshots; |
| |
| /* Utility string function */ |
| const char *mi_lttng_loglevel_string(int value, enum lttng_domain_type domain); |