diff --git a/.gitignore b/.gitignore index 4ecf366..6735f33 100644 --- a/.gitignore +++ b/.gitignore @@ -21,6 +21,7 @@ compile .dirstamp m4 src/common/libcommon.a +src/common/libmobile.a src/anetz/anetz src/bnetz/bnetz src/cnetz/cnetz diff --git a/src/amps/Makefile.am b/src/amps/Makefile.am index 0be8899..c94f2c1 100644 --- a/src/amps/Makefile.am +++ b/src/amps/Makefile.am @@ -26,6 +26,7 @@ amps_SOURCES = \ amps_LDADD = \ $(COMMON_LA) \ libamps.a \ + $(top_builddir)/src/common/libmobile.a \ $(top_builddir)/src/common/libcommon.a \ $(ALSA_LIBS) \ $(UHD_LIBS) \ diff --git a/src/amps/amps_tacs_main.c b/src/amps/amps_tacs_main.c index 6cc36b5..be4af4b 100644 --- a/src/amps/amps_tacs_main.c +++ b/src/amps/amps_tacs_main.c @@ -23,7 +23,7 @@ #include #include #include "../common/sample.h" -#include "../common/main.h" +#include "../common/main_mobile.h" #include "../common/debug.h" #include "../common/timer.h" #include "../common/call.h" @@ -405,7 +405,7 @@ int main_amps_tacs(int argc, char *argv[]) printf("Base station on channel %d ready (%s), please tune transmitter to %.4f MHz and receiver to %.4f MHz.\n", kanal[i], chan_type_long_name(chan_type[i]), amps_channel2freq(kanal[i], 0) / 1e6, amps_channel2freq(kanal[i], 1) / 1e6); } - main_common(&quit, latency, interval, NULL, station_id, 10); + main_mobile(&quit, latency, interval, NULL, station_id, 10); fail: /* destroy transceiver instance */ diff --git a/src/anetz/Makefile.am b/src/anetz/Makefile.am index f78232d..29307e5 100644 --- a/src/anetz/Makefile.am +++ b/src/anetz/Makefile.am @@ -13,6 +13,7 @@ anetz_SOURCES = \ main.c anetz_LDADD = \ $(COMMON_LA) \ + $(top_builddir)/src/common/libmobile.a \ $(top_builddir)/src/common/libcommon.a \ $(ALSA_LIBS) \ $(UHD_LIBS) \ diff --git a/src/anetz/main.c b/src/anetz/main.c index 4e00fe9..43b55e6 100644 --- a/src/anetz/main.c +++ b/src/anetz/main.c @@ -24,7 +24,7 @@ #include #include #include "../common/sample.h" -#include "../common/main.h" +#include "../common/main_mobile.h" #include "../common/debug.h" #include "../common/timer.h" #include "../common/call.h" @@ -185,7 +185,7 @@ int main(int argc, char *argv[]) printf("Base station on channel %d ready, please tune transmitter to %.3f MHz and receiver to %.3f MHz.\n", kanal[i], anetz_kanal2freq(kanal[i], 0) / 1e6, anetz_kanal2freq(kanal[i], 1) / 1e6); } - main_common(&quit, latency, interval, NULL, station_id, 5); + main_mobile(&quit, latency, interval, NULL, station_id, 5); fail: /* destroy transceiver instance */ diff --git a/src/bnetz/Makefile.am b/src/bnetz/Makefile.am index 7043b20..f8bcfaf 100644 --- a/src/bnetz/Makefile.am +++ b/src/bnetz/Makefile.am @@ -16,6 +16,7 @@ bnetz_SOURCES = \ main.c bnetz_LDADD = \ $(COMMON_LA) \ + $(top_builddir)/src/common/libmobile.a \ $(top_builddir)/src/common/libcommon.a \ $(ALSA_LIBS) \ $(UHD_LIBS) \ diff --git a/src/bnetz/main.c b/src/bnetz/main.c index fc8d0e7..7fa1ce5 100644 --- a/src/bnetz/main.c +++ b/src/bnetz/main.c @@ -27,7 +27,7 @@ #include "../common/timer.h" #include "../common/call.h" #include "../common/mncc_sock.h" -#include "../common/main.h" +#include "../common/main_mobile.h" #include "../anetz/freiton.h" #include "../anetz/besetztton.h" #include "bnetz.h" @@ -201,7 +201,7 @@ int main(int argc, char *argv[]) printf("To call phone, switch transmitter (using paging signal) to %.3f MHz.\n", bnetz_kanal2freq(19, 0) / 1e6); } - main_common(&quit, latency, interval, NULL, station_id, 5); + main_mobile(&quit, latency, interval, NULL, station_id, 5); fail: /* destroy transceiver instance */ diff --git a/src/cnetz/Makefile.am b/src/cnetz/Makefile.am index 97988a5..e975eff 100644 --- a/src/cnetz/Makefile.am +++ b/src/cnetz/Makefile.am @@ -20,6 +20,7 @@ cnetz_SOURCES = \ main.c cnetz_LDADD = \ $(COMMON_LA) \ + $(top_builddir)/src/common/libmobile.a \ $(top_builddir)/src/common/libcommon.a \ $(ALSA_LIBS) \ $(UHD_LIBS) \ diff --git a/src/cnetz/main.c b/src/cnetz/main.c index f5b0c44..0d3aed2 100644 --- a/src/cnetz/main.c +++ b/src/cnetz/main.c @@ -23,7 +23,7 @@ #include #include #include "../common/sample.h" -#include "../common/main.h" +#include "../common/main_mobile.h" #include "../common/debug.h" #include "../common/timer.h" #include "../common/call.h" @@ -348,7 +348,7 @@ int main(int argc, char *argv[]) } } - main_common(&quit, latency, interval, NULL, station_id, 7); + main_mobile(&quit, latency, interval, NULL, station_id, 7); fail: flush_db(); diff --git a/src/common/Makefile.am b/src/common/Makefile.am index 8426f4c..6378f4f 100644 --- a/src/common/Makefile.am +++ b/src/common/Makefile.am @@ -1,6 +1,6 @@ AM_CPPFLAGS = -Wall -Wextra -g $(all_includes) $(UHD_CFLAGS) $(SOAPY_CFLAGS) -noinst_LIBRARIES = libcommon.a +noinst_LIBRARIES = libcommon.a libmobile.a libcommon_a_SOURCES = \ sample.c \ @@ -14,20 +14,22 @@ libcommon_a_SOURCES = \ iir_filter.c \ dtmf.c \ samplerate.c \ - call.c \ - testton.c \ - mncc_sock.c \ - cause.c \ emphasis.c \ compandor.c \ fft.c \ fm_modulation.c \ fsk.c \ - hagelbarger.c \ + display_wave.c + +libmobile_a_SOURCES = \ sender.c \ - display_wave.c \ + cause.c \ + call.c \ + testton.c \ + mncc_sock.c \ + hagelbarger.c \ display_status.c \ - main_common.c + main_mobile.c if HAVE_SDR AM_CPPFLAGS += -DHAVE_SDR diff --git a/src/common/main_common.c b/src/common/main_mobile.c similarity index 99% rename from src/common/main_common.c rename to src/common/main_mobile.c index cb57aa5..7598788 100644 --- a/src/common/main_common.c +++ b/src/common/main_mobile.c @@ -29,7 +29,7 @@ #include #include #include "sample.h" -#include "main.h" +#include "main_mobile.h" #include "debug.h" #include "sender.h" #include "timer.h" @@ -547,7 +547,7 @@ static int get_char() } /* Loop through all transceiver instances of one network. */ -void main_common(int *quit, int latency, int interval, void (*myhandler)(void), const char *station_id, int station_id_digits) +void main_mobile(int *quit, int latency, int interval, void (*myhandler)(void), const char *station_id, int station_id_digits) { int latspl; sender_t *sender; diff --git a/src/common/main.h b/src/common/main_mobile.h similarity index 95% rename from src/common/main.h rename to src/common/main_mobile.h index 5924b25..45210fb 100644 --- a/src/common/main.h +++ b/src/common/main_mobile.h @@ -42,7 +42,7 @@ void opt_switch_common(int c, char *arg0, int *skip_args); extern int quit; void sighandler(int sigset); -void main_common(int *quit, int latency, int interval, void (*myhandler)(void), const char *station_id, int station_id_digits); +void main_mobile(int *quit, int latency, int interval, void (*myhandler)(void), const char *station_id, int station_id_digits); void dump_info(void); diff --git a/src/nmt/Makefile.am b/src/nmt/Makefile.am index 91d5cff..c19098c 100644 --- a/src/nmt/Makefile.am +++ b/src/nmt/Makefile.am @@ -17,6 +17,7 @@ nmt_SOURCES = \ main.c nmt_LDADD = \ $(COMMON_LA) \ + $(top_builddir)/src/common/libmobile.a \ $(top_builddir)/src/common/libcommon.a \ $(ALSA_LIBS) \ $(UHD_LIBS) \ diff --git a/src/nmt/main.c b/src/nmt/main.c index 396f7d0..e0fbadb 100644 --- a/src/nmt/main.c +++ b/src/nmt/main.c @@ -27,7 +27,7 @@ #include #include #include "../common/sample.h" -#include "../common/main.h" +#include "../common/main_mobile.h" #include "../common/debug.h" #include "../common/timer.h" #include "../common/mncc_sock.h" @@ -412,7 +412,7 @@ int main(int argc, char *argv[]) nmt_check_channels(nmt_system); - main_common(&quit, latency, interval, myhandler, station_id, 7); + main_mobile(&quit, latency, interval, myhandler, station_id, 7); fail: /* fifo */ diff --git a/src/r2000/Makefile.am b/src/r2000/Makefile.am index 00500ab..4f591b6 100644 --- a/src/r2000/Makefile.am +++ b/src/r2000/Makefile.am @@ -13,6 +13,7 @@ radiocom2000_SOURCES = \ main.c radiocom2000_LDADD = \ $(COMMON_LA) \ + $(top_builddir)/src/common/libmobile.a \ $(top_builddir)/src/common/libcommon.a \ $(ALSA_LIBS) \ $(UHD_LIBS) \ diff --git a/src/r2000/main.c b/src/r2000/main.c index bb58db1..fc89194 100644 --- a/src/r2000/main.c +++ b/src/r2000/main.c @@ -27,7 +27,7 @@ #include #include #include "../common/sample.h" -#include "../common/main.h" +#include "../common/main_mobile.h" #include "../common/debug.h" #include "../common/timer.h" #include "../common/mncc_sock.h" @@ -385,7 +385,7 @@ int main(int argc, char *argv[]) r2000_check_channels(); - main_common(&quit, latency, interval, NULL, station_id, 9); + main_mobile(&quit, latency, interval, NULL, station_id, 9); fail: /* destroy transceiver instance */ diff --git a/src/tacs/Makefile.am b/src/tacs/Makefile.am index 16a232e..ec7163c 100644 --- a/src/tacs/Makefile.am +++ b/src/tacs/Makefile.am @@ -13,6 +13,7 @@ tacs_SOURCES = \ tacs_LDADD = \ $(COMMON_LA) \ ../amps/libamps.a \ + $(top_builddir)/src/common/libmobile.a \ $(top_builddir)/src/common/libcommon.a \ $(ALSA_LIBS) \ $(UHD_LIBS) \ diff --git a/src/test/Makefile.am b/src/test/Makefile.am index d9f0de9..6bf0121 100644 --- a/src/test/Makefile.am +++ b/src/test/Makefile.am @@ -14,6 +14,7 @@ test_filter_SOURCES = test_filter.c dummy.c test_filter_LDADD = \ $(COMMON_LA) \ + $(top_builddir)/src/common/libmobile.a \ $(top_builddir)/src/common/libcommon.a \ $(ALSA_LIBS) \ $(UHD_LIBS) \ @@ -26,6 +27,7 @@ test_compandor_SOURCES = \ test_compandor_LDADD = \ $(COMMON_LA) \ + $(top_builddir)/src/common/libmobile.a \ $(top_builddir)/src/common/libcommon.a \ $(ALSA_LIBS) \ $(UHD_LIBS) \ @@ -36,6 +38,7 @@ test_emphasis_SOURCES = test_emphasis.c dummy.c test_emphasis_LDADD = \ $(COMMON_LA) \ + $(top_builddir)/src/common/libmobile.a \ $(top_builddir)/src/common/libcommon.a \ $(ALSA_LIBS) \ $(UHD_LIBS) \ @@ -49,6 +52,7 @@ test_dms_SOURCES = \ test_dms_LDADD = \ $(COMMON_LA) \ + $(top_builddir)/src/common/libmobile.a \ $(top_builddir)/src/common/libcommon.a \ $(ALSA_LIBS) \ $(UHD_LIBS) \ @@ -62,6 +66,7 @@ test_sms_SOURCES = \ test_sms_LDADD = \ $(COMMON_LA) \ + $(top_builddir)/src/common/libmobile.a \ $(top_builddir)/src/common/libcommon.a \ $(ALSA_LIBS) \ $(UHD_LIBS) \ @@ -72,6 +77,7 @@ test_performance_SOURCES = dummy.c test_performance.c test_performance_LDADD = \ $(COMMON_LA) \ + $(top_builddir)/src/common/libmobile.a \ $(top_builddir)/src/common/libcommon.a \ $(ALSA_LIBS) \ $(UHD_LIBS) \ diff --git a/src/test/test_dms.c b/src/test/test_dms.c index c51c904..bc44af0 100644 --- a/src/test/test_dms.c +++ b/src/test/test_dms.c @@ -72,12 +72,17 @@ void free_nmt(nmt_t *nmt) free(nmt); } +extern void main_mobile(); + int main(void) { nmt_t *nmt; dms_t *dms; int i, j; + /* this is never called, it forces the linker to add mobile functions */ + if (debuglevel == -1000) main_mobile(); + debuglevel = DEBUG_DEBUG; dms_allow_loopback = 1; diff --git a/src/test/test_emphasis.c b/src/test/test_emphasis.c index eda8d8e..f404cdd 100644 --- a/src/test/test_emphasis.c +++ b/src/test/test_emphasis.c @@ -35,6 +35,8 @@ static void gen_samples(sample_t *samples, double freq) } } +extern void main_mobile(); + int main(void) { emphasis_t estate; @@ -43,6 +45,9 @@ int main(void) double level; double i; + /* this is never called, it forces the linker to add mobile functions */ + if (debuglevel == -1000) main_mobile(); + debuglevel = DEBUG_DEBUG; init_emphasis(&estate, SAMPLERATE, cut_off); diff --git a/src/test/test_filter.c b/src/test/test_filter.c index 2cae141..dc8ca7d 100644 --- a/src/test/test_filter.c +++ b/src/test/test_filter.c @@ -34,6 +34,8 @@ static void gen_samples(sample_t *samples, double freq) } } +extern void main_mobile(); + int main(void) { iir_filter_t filter_low; @@ -43,6 +45,9 @@ int main(void) int iter = 2; int i; + /* this is never called, it forces the linker to add mobile functions */ + if (debuglevel == -1000) main_mobile(); + debuglevel = DEBUG_DEBUG; printf("testing low-pass filter with %d iterations\n", iter); diff --git a/src/test/test_sms.c b/src/test/test_sms.c index 0768046..867113b 100644 --- a/src/test/test_sms.c +++ b/src/test/test_sms.c @@ -90,6 +90,7 @@ void sms_deliver_report(nmt_t *nmt, uint8_t ref, int error, uint8_t cause) printf("(got deliver report from SMS layer)\n"); } +extern void main_mobile(); int main(void) { @@ -97,6 +98,9 @@ int main(void) int i; int rc; + /* this is never called, it forces the linker to add mobile functions */ + if (debuglevel == -1000) main_mobile(); + debuglevel = DEBUG_DEBUG; nmt = calloc(sizeof(*nmt), 1);