blob: 5e810e6ea0d729ce3c5ef2e4276fd4707923aea4 [file] [log] [blame]
Holger Hans Peter Freyther0d86c212015-05-17 19:55:53 +02001AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_builddir)/include
Pau Espin Pedrold12f6982019-09-17 18:38:58 +02002AM_CFLAGS = -Wall $(TALLOC_CFLAGS) $(PTHREAD_CFLAGS)
Harald Welted488c722019-03-19 00:04:51 +01003AM_LDFLAGS = -no-install
Pau Espin Pedrold12f6982019-09-17 18:38:58 +02004LDADD = $(top_builddir)/src/libosmocore.la $(TALLOC_LIBS) $(PTHREAD_LIBS)
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -07005
Max3da79382018-01-18 16:50:51 +01006if ENABLE_SERCOM_STUB
7noinst_LIBRARIES = libsercomstub.a
8LDADD += $(top_builddir)/tests/libsercomstub.a
9endif
10
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -070011check_PROGRAMS = timer/timer_test sms/sms_test ussd/ussd_test \
12 smscb/smscb_test bits/bitrev_test a5/a5_test \
13 conv/conv_test auth/milenage_test lapd/lapd_test \
Harald Welte57e5b942012-09-07 10:23:44 +020014 gsm0808/gsm0808_test gsm0408/gsm0408_test \
Max4f169502016-06-30 10:39:00 +020015 gprs/gprs_test kasumi/kasumi_test gea/gea_test \
Maxad1797e2017-12-01 19:39:23 +010016 logging/logging_test codec/codec_test \
Jacob Erlbeckae15a2c2013-08-06 14:29:14 +020017 loggingrb/loggingrb_test strrb/strrb_test \
Vadim Yanitskiyb6c8dda2017-05-18 23:59:02 +030018 comp128/comp128_test smscb/gsm0341_test \
Harald Welte676e5342016-03-14 21:04:50 +010019 bitvec/bitvec_test msgb/msgb_test bits/bitcomp_test \
Max98186642017-10-18 13:14:49 +020020 bits/bitfield_test \
Maxad1797e2017-12-01 19:39:23 +010021 tlv/tlv_test gsup/gsup_test oap/oap_test \
Vadim Yanitskiy3262f822016-09-23 01:48:59 +070022 write_queue/wqueue_test socket/socket_test \
Vadim Yanitskiy33e03062017-01-19 17:01:15 +070023 coding/coding_test conv/conv_gsm0503_test \
Vadim Yanitskiyb6c8dda2017-05-18 23:59:02 +030024 abis/abis_test endian/endian_test sercomm/sercomm_test \
Max89c8c402018-01-18 16:05:27 +010025 prbs/prbs_test gsm23003/gsm23003_test \
Harald Welte6db529a2018-07-30 18:14:45 +020026 codec/codec_ecu_fr_test timer/clk_override_test \
Max7918f842018-12-10 10:57:59 +010027 oap/oap_client_test gsm29205/gsm29205_test \
Neels Hofmeyr3a9ff112018-09-10 17:18:28 +020028 logging/logging_vty_test \
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +010029 vty/vty_transcript_test \
Neels Hofmeyr0fd615f2019-01-26 20:36:12 +010030 tdef/tdef_test tdef/tdef_vty_test_config_root \
31 tdef/tdef_vty_test_config_subnode \
32 tdef/tdef_vty_test_dynamic \
Neels Hofmeyr0c7826e2019-02-25 02:45:06 +010033 sockaddr_str/sockaddr_str_test \
Neels Hofmeyr0e8df1c2019-02-11 20:32:25 +010034 use_count/use_count_test \
Harald Welte2d906112019-03-18 17:17:43 +010035 context/context_test \
Philipp Maier69e00cc2019-10-09 13:38:38 +020036 gsm0502/gsm0502_test \
Philipp Maier898c9c62020-02-06 14:25:01 +010037 dtx/dtx_gsm0503_test \
Harald Welteb795f032020-05-14 11:42:53 +020038 i460_mux/i460_mux_test \
Neels Hofmeyr3a9ff112018-09-10 17:18:28 +020039 $(NULL)
Katerina Barone-Adesi3309a432013-02-21 05:16:29 +000040
Holger Hans Peter Freytherc87f2662010-10-07 00:00:15 +080041if ENABLE_MSGFILE
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -070042check_PROGRAMS += msgfile/msgfile_test
Holger Hans Peter Freytherc87f2662010-10-07 00:00:15 +080043endif
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +010044
Neels Hofmeyr96831042016-11-15 17:31:14 +010045if ENABLE_PCSC
46check_PROGRAMS += sim/sim_test
47endif
48
Vadim Yanitskiyb6c8dda2017-05-18 23:59:02 +030049if ENABLE_UTILITIES
50check_PROGRAMS += utils/utils_test
51endif
52
53if ENABLE_VTY
54check_PROGRAMS += vty/vty_test
55endif
56
57if ENABLE_CTRL
Neels Hofmeyr223d66a2019-03-23 23:38:43 +010058check_PROGRAMS += \
59 ctrl/ctrl_test \
60 fsm/fsm_test \
61 fsm/fsm_dealloc_test \
62 $(NULL)
Vadim Yanitskiyb6c8dda2017-05-18 23:59:02 +030063endif
64
Harald Weltec6a86972019-12-16 23:14:45 +010065if !EMBEDDED
66check_PROGRAMS += \
67 stats/stats_test \
68 exec/exec_test
Max89c8c402018-01-18 16:05:27 +010069endif
70
Vadim Yanitskiyb6c8dda2017-05-18 23:59:02 +030071if ENABLE_GB
Maxad1797e2017-12-01 19:39:23 +010072check_PROGRAMS += gb/bssgp_fc_test gb/gprs_bssgp_test gb/gprs_ns_test fr/fr_test
Vadim Yanitskiyb6c8dda2017-05-18 23:59:02 +030073endif
74
Holger Hans Peter Freytherb79a1482014-01-02 13:55:00 +010075utils_utils_test_SOURCES = utils/utils_test.c
Maxba1059c2017-10-30 13:19:58 +010076utils_utils_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Holger Hans Peter Freytherb79a1482014-01-02 13:55:00 +010077
Jacob Erlbeck9732cb42015-10-01 20:43:53 +020078stats_stats_test_SOURCES = stats/stats_test.c
Maxba1059c2017-10-30 13:19:58 +010079stats_stats_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Jacob Erlbeck9732cb42015-10-01 20:43:53 +020080
Sylvain Munaut0d727852015-08-19 11:14:23 +020081a5_a5_test_SOURCES = a5/a5_test.c
Max3da79382018-01-18 16:50:51 +010082a5_a5_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libgsmint.la
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -070083
Sylvain Munaut0d727852015-08-19 11:14:23 +020084kasumi_kasumi_test_SOURCES = kasumi/kasumi_test.c
Max3da79382018-01-18 16:50:51 +010085kasumi_kasumi_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libgsmint.la
Sylvain Munaut579a7102014-06-16 14:59:30 +020086
Max4f0abc02013-12-02 11:30:32 +010087comp128_comp128_test_SOURCES = comp128/comp128_test.c
Maxba1059c2017-10-30 13:19:58 +010088comp128_comp128_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Max4f0abc02013-12-02 11:30:32 +010089
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -070090auth_milenage_test_SOURCES = auth/milenage_test.c
Maxba1059c2017-10-30 13:19:58 +010091auth_milenage_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -070092
Maxf74cfd32017-03-24 20:16:33 +010093abis_abis_test_SOURCES = abis/abis_test.c
Maxba1059c2017-10-30 13:19:58 +010094abis_abis_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Maxf74cfd32017-03-24 20:16:33 +010095
Max70c7d412017-02-24 13:59:14 +010096ctrl_ctrl_test_SOURCES = ctrl/ctrl_test.c
Neels Hofmeyrec6fdbb2018-01-17 13:07:16 +010097ctrl_ctrl_test_LDADD = $(LDADD) \
98 $(top_builddir)/src/ctrl/libosmoctrl.la \
99 $(top_builddir)/src/gsm/libosmogsm.la \
100 $(top_builddir)/src/vty/libosmovty.la
Max70c7d412017-02-24 13:59:14 +0100101
Max4f169502016-06-30 10:39:00 +0200102gea_gea_test_SOURCES = gea/gea_test.c
Maxba1059c2017-10-30 13:19:58 +0100103gea_gea_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Max4f169502016-06-30 10:39:00 +0200104
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700105bits_bitrev_test_SOURCES = bits/bitrev_test.c
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700106
Jacob Erlbeck5f349be2015-12-21 16:04:03 +0100107bitvec_bitvec_test_SOURCES = bitvec/bitvec_test.c
Jacob Erlbeck5f349be2015-12-21 16:04:03 +0100108
Max5c18e262016-02-05 13:55:38 +0100109bits_bitcomp_test_SOURCES = bits/bitcomp_test.c
Max5c18e262016-02-05 13:55:38 +0100110
Max98186642017-10-18 13:14:49 +0200111bits_bitfield_test_SOURCES = bits/bitfield_test.c
Max98186642017-10-18 13:14:49 +0200112
Vadim Yanitskiy68930e82017-01-19 03:33:24 +0700113conv_conv_test_SOURCES = conv/conv_test.c conv/conv.c
Max3da79382018-01-18 16:50:51 +0100114conv_conv_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libgsmint.la
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700115
Philipp Maier69e00cc2019-10-09 13:38:38 +0200116gsm0502_gsm0502_test_SOURCES = gsm0502/gsm0502_test.c
117gsm0502_gsm0502_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
118
Philipp Maier898c9c62020-02-06 14:25:01 +0100119dtx_dtx_gsm0503_test_SOURCES = dtx/dtx_gsm0503_test.c
120dtx_dtx_gsm0503_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la \
121 $(top_builddir)/src/coding/libosmocoding.la
122
Vadim Yanitskiy33e03062017-01-19 17:01:15 +0700123conv_conv_gsm0503_test_SOURCES = conv/conv_gsm0503_test.c conv/conv.c conv/gsm0503_test_vectors.c
Max3da79382018-01-18 16:50:51 +0100124conv_conv_gsm0503_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libgsmint.la
Vadim Yanitskiy33e03062017-01-19 17:01:15 +0700125conv_conv_gsm0503_test_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/tests/conv
126
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700127gsm0808_gsm0808_test_SOURCES = gsm0808/gsm0808_test.c
Maxba1059c2017-10-30 13:19:58 +0100128gsm0808_gsm0808_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700129
Max7918f842018-12-10 10:57:59 +0100130gsm29205_gsm29205_test_SOURCES = gsm29205/gsm29205_test.c
131gsm29205_gsm29205_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
132
Harald Weltec8a0b932012-08-24 21:27:26 +0200133gsm0408_gsm0408_test_SOURCES = gsm0408/gsm0408_test.c
Maxba1059c2017-10-30 13:19:58 +0100134gsm0408_gsm0408_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Harald Weltec8a0b932012-08-24 21:27:26 +0200135
Jacob Erlbeck81142942015-11-17 08:42:05 +0100136gprs_gprs_test_SOURCES = gprs/gprs_test.c
Maxba1059c2017-10-30 13:19:58 +0100137gprs_gprs_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Jacob Erlbeck81142942015-11-17 08:42:05 +0100138
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700139lapd_lapd_test_SOURCES = lapd/lapd_test.c
Maxba1059c2017-10-30 13:19:58 +0100140lapd_lapd_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700141
Jacob Erlbeck7cd8a1b2015-11-27 13:26:16 +0100142msgb_msgb_test_SOURCES = msgb/msgb_test.c
Jacob Erlbeck7cd8a1b2015-11-27 13:26:16 +0100143
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700144msgfile_msgfile_test_SOURCES = msgfile/msgfile_test.c
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700145
146smscb_smscb_test_SOURCES = smscb/smscb_test.c
Maxba1059c2017-10-30 13:19:58 +0100147smscb_smscb_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700148
Harald Welte783d0732014-12-29 17:09:11 +0100149smscb_gsm0341_test_SOURCES = smscb/gsm0341_test.c
Maxba1059c2017-10-30 13:19:58 +0100150smscb_gsm0341_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Harald Welte783d0732014-12-29 17:09:11 +0100151
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700152sms_sms_test_SOURCES = sms/sms_test.c
Maxba1059c2017-10-30 13:19:58 +0100153sms_sms_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700154
155timer_timer_test_SOURCES = timer/timer_test.c
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700156
Pau Espin Pedrol87fade82018-02-26 19:42:22 +0100157timer_clk_override_test_SOURCES = timer/clk_override_test.c
158
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700159ussd_ussd_test_SOURCES = ussd/ussd_test.c
Maxba1059c2017-10-30 13:19:58 +0100160ussd_ussd_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100161
Harald Welte57e5b942012-09-07 10:23:44 +0200162gb_bssgp_fc_test_SOURCES = gb/bssgp_fc_test.c
Maxba1059c2017-10-30 13:19:58 +0100163gb_bssgp_fc_test_LDADD = $(LDADD) $(top_builddir)/src/gb/libosmogb.la \
Neels Hofmeyrec6fdbb2018-01-17 13:07:16 +0100164 $(top_builddir)/src/vty/libosmovty.la \
Neels Hofmeyrd95f01d2016-09-09 16:42:49 +0200165 $(top_builddir)/src/gsm/libosmogsm.la
Harald Welte57e5b942012-09-07 10:23:44 +0200166
Jacob Erlbeckcdebf742014-10-14 14:49:37 +0200167gb_gprs_bssgp_test_SOURCES = gb/gprs_bssgp_test.c
Pau Espin Pedrolcacaa4a2018-05-04 19:21:58 +0200168gb_gprs_bssgp_test_LDADD = $(LDADD) $(top_builddir)/src/gb/libosmogb.la $(LIBRARY_DLSYM) \
Neels Hofmeyrec6fdbb2018-01-17 13:07:16 +0100169 $(top_builddir)/src/vty/libosmovty.la \
Neels Hofmeyrd95f01d2016-09-09 16:42:49 +0200170 $(top_builddir)/src/gsm/libosmogsm.la
Jacob Erlbeckcdebf742014-10-14 14:49:37 +0200171
Jacob Erlbeckdcce1962013-10-08 12:04:43 +0200172gb_gprs_ns_test_SOURCES = gb/gprs_ns_test.c
Pau Espin Pedrolcacaa4a2018-05-04 19:21:58 +0200173gb_gprs_ns_test_LDADD = $(LDADD) $(top_builddir)/src/gb/libosmogb.la $(LIBRARY_DLSYM) \
Neels Hofmeyrec6fdbb2018-01-17 13:07:16 +0100174 $(top_builddir)/src/vty/libosmovty.la \
Neels Hofmeyrd95f01d2016-09-09 16:42:49 +0200175 $(top_builddir)/src/gsm/libosmogsm.la
Jacob Erlbeckdcce1962013-10-08 12:04:43 +0200176
Holger Hans Peter Freyther4b54cab2012-09-27 14:18:37 +0200177logging_logging_test_SOURCES = logging/logging_test.c
Holger Hans Peter Freyther4b54cab2012-09-27 14:18:37 +0200178
Neels Hofmeyr3a9ff112018-09-10 17:18:28 +0200179logging_logging_vty_test_SOURCES = logging/logging_vty_test.c
180logging_logging_vty_test_LDADD = $(LDADD) $(top_builddir)/src/vty/libosmovty.la
181
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +0100182vty_vty_transcript_test_SOURCES = vty/vty_transcript_test.c
183vty_vty_transcript_test_LDADD = $(LDADD) $(top_builddir)/src/vty/libosmovty.la
184
Holger Hans Peter Freyther97602d92012-11-11 14:21:26 +0100185fr_fr_test_SOURCES = fr/fr_test.c
Pau Espin Pedrolcacaa4a2018-05-04 19:21:58 +0200186fr_fr_test_LDADD = $(LDADD) $(top_builddir)/src/gb/libosmogb.la $(LIBRARY_DLSYM) \
Neels Hofmeyrec6fdbb2018-01-17 13:07:16 +0100187 $(top_builddir)/src/vty/libosmovty.la \
Neels Hofmeyrd95f01d2016-09-09 16:42:49 +0200188 $(top_builddir)/src/gsm/libosmogsm.la
Holger Hans Peter Freyther97602d92012-11-11 14:21:26 +0100189
Max92db1502016-05-25 18:13:51 +0200190codec_codec_test_SOURCES = codec/codec_test.c
Maxba1059c2017-10-30 13:19:58 +0100191codec_codec_test_LDADD = $(LDADD) $(top_builddir)/src/codec/libosmocodec.la
Max92db1502016-05-25 18:13:51 +0200192
Philipp Maier40def492017-12-16 03:42:15 +0700193codec_codec_ecu_fr_test_SOURCES = codec/codec_ecu_fr_test.c
194codec_codec_ecu_fr_test_LDADD = $(LDADD) $(top_builddir)/src/codec/libosmocodec.la
195
Michael McTernan4e0543f2015-03-30 13:22:14 +0100196loggingrb_loggingrb_test_SOURCES = loggingrb/loggingrb_test.c
Maxad1797e2017-12-01 19:39:23 +0100197loggingrb_loggingrb_test_LDADD = $(LDADD)
Katerina Barone-Adesi3309a432013-02-21 05:16:29 +0000198
199strrb_strrb_test_SOURCES = strrb/strrb_test.c
Katerina Barone-Adesi3309a432013-02-21 05:16:29 +0000200
Jacob Erlbeckae15a2c2013-08-06 14:29:14 +0200201vty_vty_test_SOURCES = vty/vty_test.c
Maxba1059c2017-10-30 13:19:58 +0100202vty_vty_test_LDADD = $(LDADD) $(top_builddir)/src/vty/libosmovty.la
Jacob Erlbeckae15a2c2013-08-06 14:29:14 +0200203
Harald Welte676e5342016-03-14 21:04:50 +0100204sim_sim_test_SOURCES = sim/sim_test.c
Maxba1059c2017-10-30 13:19:58 +0100205sim_sim_test_LDADD = $(LDADD) $(top_builddir)/src/sim/libosmosim.la \
Neels Hofmeyrd95f01d2016-09-09 16:42:49 +0200206 $(top_builddir)/src/gsm/libosmogsm.la
Holger Hans Peter Freyther97602d92012-11-11 14:21:26 +0100207
Harald Weltefbd02fa2016-04-25 15:19:35 +0200208tlv_tlv_test_SOURCES = tlv/tlv_test.c
Maxba1059c2017-10-30 13:19:58 +0100209tlv_tlv_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Harald Weltefbd02fa2016-04-25 15:19:35 +0200210
Harald Welte3b6fb082016-04-25 18:46:22 +0200211gsup_gsup_test_SOURCES = gsup/gsup_test.c
Maxba1059c2017-10-30 13:19:58 +0100212gsup_gsup_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Harald Welte3b6fb082016-04-25 18:46:22 +0200213
Neels Hofmeyrd981efa2016-12-08 17:50:03 +0100214oap_oap_test_SOURCES = oap/oap_test.c
Maxba1059c2017-10-30 13:19:58 +0100215oap_oap_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Neels Hofmeyrd981efa2016-12-08 17:50:03 +0100216
Harald Welte6db529a2018-07-30 18:14:45 +0200217oap_oap_client_test_SOURCES = oap/oap_client_test.c
218oap_oap_client_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
219
Harald Welte136e7372016-05-29 10:53:17 +0900220fsm_fsm_test_SOURCES = fsm/fsm_test.c
Neels Hofmeyrec6fdbb2018-01-17 13:07:16 +0100221fsm_fsm_test_LDADD = \
222 $(LDADD) \
223 $(top_builddir)/src/ctrl/libosmoctrl.la \
224 $(top_builddir)/src/gsm/libosmogsm.la \
225 $(top_builddir)/src/vty/libosmovty.la
Harald Welte136e7372016-05-29 10:53:17 +0900226
Neels Hofmeyr223d66a2019-03-23 23:38:43 +0100227fsm_fsm_dealloc_test_SOURCES = fsm/fsm_dealloc_test.c
228fsm_fsm_dealloc_test_LDADD = $(LDADD)
229
Holger Hans Peter Freytherc7f52c42016-11-12 21:25:21 +0100230write_queue_wqueue_test_SOURCES = write_queue/wqueue_test.c
Holger Hans Peter Freytherc7f52c42016-11-12 21:25:21 +0100231
Harald Welte4ffb43f2017-01-27 10:29:49 +0100232socket_socket_test_SOURCES = socket/socket_test.c
Harald Welte4ffb43f2017-01-27 10:29:49 +0100233
Vadim Yanitskiy3262f822016-09-23 01:48:59 +0700234coding_coding_test_SOURCES = coding/coding_test.c
Max29d489f2017-11-28 14:54:32 +0100235coding_coding_test_LDADD = $(LDADD) \
Vadim Yanitskiy3262f822016-09-23 01:48:59 +0700236 $(top_builddir)/src/gsm/libosmogsm.la \
237 $(top_builddir)/src/codec/libosmocodec.la \
238 $(top_builddir)/src/coding/libosmocoding.la
239
Harald Welte3318c652017-05-15 12:07:51 +0200240endian_endian_test_SOURCES = endian/endian_test.c
Harald Welte3318c652017-05-15 12:07:51 +0200241
Harald Weltea362ee92017-05-15 16:39:56 +0200242sercomm_sercomm_test_SOURCES = sercomm/sercomm_test.c
Harald Weltea362ee92017-05-15 16:39:56 +0200243
Harald Welte1389e862017-06-18 18:16:02 +0300244prbs_prbs_test_SOURCES = prbs/prbs_test.c
Harald Welte1389e862017-06-18 18:16:02 +0300245
Neels Hofmeyr9cd1e742017-10-04 03:15:47 +0200246gsm23003_gsm23003_test_SOURCES = gsm23003/gsm23003_test.c
Maxba1059c2017-10-30 13:19:58 +0100247gsm23003_gsm23003_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Neels Hofmeyr9cd1e742017-10-04 03:15:47 +0200248
Neels Hofmeyr0fd615f2019-01-26 20:36:12 +0100249tdef_tdef_test_SOURCES = tdef/tdef_test.c
250tdef_tdef_test_LDADD = $(LDADD)
251
252tdef_tdef_vty_test_config_root_SOURCES = tdef/tdef_vty_test_config_root.c
253tdef_tdef_vty_test_config_root_LDADD = $(LDADD) $(top_builddir)/src/vty/libosmovty.la
254
255tdef_tdef_vty_test_config_subnode_SOURCES = tdef/tdef_vty_test_config_subnode.c
256tdef_tdef_vty_test_config_subnode_LDADD = $(LDADD) $(top_builddir)/src/vty/libosmovty.la
257
258tdef_tdef_vty_test_dynamic_SOURCES = tdef/tdef_vty_test_dynamic.c
259tdef_tdef_vty_test_dynamic_LDADD = $(LDADD) $(top_builddir)/src/vty/libosmovty.la
260
Neels Hofmeyr0c7826e2019-02-25 02:45:06 +0100261sockaddr_str_sockaddr_str_test_SOURCES = sockaddr_str/sockaddr_str_test.c
262sockaddr_str_sockaddr_str_test_LDADD = $(LDADD)
263
Neels Hofmeyr0e8df1c2019-02-11 20:32:25 +0100264use_count_use_count_test_SOURCES = use_count/use_count_test.c
265use_count_use_count_test_LDADD = $(LDADD)
266
Harald Welte2d906112019-03-18 17:17:43 +0100267context_context_test_SOURCES = context/context_test.c
268context_context_test_LDADD = $(LDADD)
269
Harald Weltec6a86972019-12-16 23:14:45 +0100270exec_exec_test_SOURCES = exec/exec_test.c
271exec_exec_test_LDADD = $(LDADD)
272
Harald Welteb795f032020-05-14 11:42:53 +0200273i460_mux_i460_mux_test_SOURCES = i460_mux/i460_mux_test.c
274i460_mux_i460_mux_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
275
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100276# The `:;' works around a Bash 3.2 bug when the output is not writeable.
277$(srcdir)/package.m4: $(top_srcdir)/configure.ac
278 :;{ \
279 echo '# Signature of the current package.' && \
280 echo 'm4_define([AT_PACKAGE_NAME],' && \
281 echo ' [$(PACKAGE_NAME)])' && \
282 echo 'm4_define([AT_PACKAGE_TARNAME],' && \
283 echo ' [$(PACKAGE_TARNAME)])' && \
284 echo 'm4_define([AT_PACKAGE_VERSION],' && \
285 echo ' [$(PACKAGE_VERSION)])' && \
286 echo 'm4_define([AT_PACKAGE_STRING],' && \
287 echo ' [$(PACKAGE_STRING)])' && \
288 echo 'm4_define([AT_PACKAGE_BUGREPORT],' && \
289 echo ' [$(PACKAGE_BUGREPORT)])'; \
290 echo 'm4_define([AT_PACKAGE_URL],' && \
291 echo ' [$(PACKAGE_URL)])'; \
292 } >'$(srcdir)/package.m4'
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700293
294EXTRA_DIST = testsuite.at $(srcdir)/package.m4 $(TESTSUITE) \
295 timer/timer_test.ok sms/sms_test.ok ussd/ussd_test.ok \
296 smscb/smscb_test.ok bits/bitrev_test.ok a5/a5_test.ok \
Max70c7d412017-02-24 13:59:14 +0100297 conv/conv_test.ok auth/milenage_test.ok ctrl/ctrl_test.ok \
Holger Hans Peter Freyther8c589d22012-08-25 22:03:42 +0200298 lapd/lapd_test.ok gsm0408/gsm0408_test.ok \
Holger Hans Peter Freytherc302eca2012-09-11 11:49:35 +0200299 gsm0808/gsm0808_test.ok gb/bssgp_fc_tests.err \
300 gb/bssgp_fc_tests.ok gb/bssgp_fc_tests.sh \
Max4f169502016-06-30 10:39:00 +0200301 gb/gprs_bssgp_test.ok gb/gprs_ns_test.ok gea/gea_test.ok \
Philipp Maier40def492017-12-16 03:42:15 +0700302 gprs/gprs_test.ok kasumi/kasumi_test.ok \
Holger Hans Peter Freyther4b54cab2012-09-27 14:18:37 +0200303 msgfile/msgfile_test.ok msgfile/msgconfig.cfg \
Holger Hans Peter Freyther97602d92012-11-11 14:21:26 +0100304 logging/logging_test.ok logging/logging_test.err \
Neels Hofmeyr760c58f2019-01-28 19:07:06 +0100305 logging/logging_vty_test.vty \
Katerina Barone-Adesi3309a432013-02-21 05:16:29 +0000306 fr/fr_test.ok loggingrb/logging_test.ok \
Jacob Erlbeckae15a2c2013-08-06 14:29:14 +0200307 loggingrb/logging_test.err strrb/strrb_test.ok \
Philipp Maier40def492017-12-16 03:42:15 +0700308 codec/codec_test.ok \
309 codec/codec_ecu_fr_test.ok \
Neels Hofmeyr4a31ffa2017-09-07 03:08:06 +0200310 vty/vty_test.ok \
311 vty/fail_not_de-indented.cfg \
312 vty/fail_tabs_and_spaces.cfg \
313 vty/fail_too_much_indent.cfg \
Pau Espin Pedrola0c81952019-10-22 18:38:01 +0200314 vty/fail_cmd_ret_warning.cfg \
Neels Hofmeyr4a31ffa2017-09-07 03:08:06 +0200315 vty/ok.cfg \
Neels Hofmeyr43063632017-09-19 23:54:01 +0200316 vty/ok_empty_parent.cfg \
Neels Hofmeyr4a31ffa2017-09-07 03:08:06 +0200317 vty/ok_ignore_blank.cfg \
318 vty/ok_ignore_comment.cfg \
319 vty/ok_indented_root.cfg \
320 vty/ok_more_spaces.cfg \
321 vty/ok_tabs_and_spaces.cfg \
322 vty/ok_tabs.cfg \
Vadim Yanitskiy4abda9e2019-11-21 00:19:36 +0700323 vty/ok_deprecated_logging.cfg \
Max98186642017-10-18 13:14:49 +0200324 comp128/comp128_test.ok bits/bitfield_test.ok \
Neels Hofmeyr15042112018-07-19 22:11:52 +0200325 utils/utils_test.ok utils/utils_test.err stats/stats_test.ok \
Harald Welte676e5342016-03-14 21:04:50 +0100326 bitvec/bitvec_test.ok msgb/msgb_test.ok bits/bitcomp_test.ok \
Maxf74cfd32017-03-24 20:16:33 +0100327 sim/sim_test.ok tlv/tlv_test.ok abis/abis_test.ok \
Neels Hofmeyrbd9de2f2017-02-21 20:17:35 +0100328 gsup/gsup_test.ok gsup/gsup_test.err \
Neels Hofmeyrd981efa2016-12-08 17:50:03 +0100329 oap/oap_test.ok fsm/fsm_test.ok fsm/fsm_test.err \
Neels Hofmeyr1f9cc012019-03-24 05:56:21 +0100330 fsm/fsm_dealloc_test.err \
Harald Welte4ffb43f2017-01-27 10:29:49 +0100331 write_queue/wqueue_test.ok socket/socket_test.ok \
Neels Hofmeyrd3b58732017-03-15 01:52:58 +0100332 socket/socket_test.err coding/coding_test.ok \
333 osmo-auc-gen/osmo-auc-gen_test.sh \
334 osmo-auc-gen/osmo-auc-gen_test.ok \
Vadim Yanitskiy33e03062017-01-19 17:01:15 +0700335 osmo-auc-gen/osmo-auc-gen_test.err \
Harald Weltea362ee92017-05-15 16:39:56 +0200336 conv/conv_gsm0503_test.ok endian/endian_test.ok \
Neels Hofmeyr9cd1e742017-10-04 03:15:47 +0200337 sercomm/sercomm_test.ok prbs/prbs_test.ok \
Max7918f842018-12-10 10:57:59 +0100338 gsm29205/gsm29205_test.ok gsm23003/gsm23003_test.ok \
Harald Welte6db529a2018-07-30 18:14:45 +0200339 timer/clk_override_test.ok \
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +0100340 oap/oap_client_test.ok oap/oap_client_test.err \
341 vty/vty_transcript_test.vty \
Neels Hofmeyr0fd615f2019-01-26 20:36:12 +0100342 tdef/tdef_test.ok \
Neels Hofmeyr7b740f72019-02-06 01:08:43 +0100343 tdef/tdef_test_range_64bit.ok \
Neels Hofmeyr0fd615f2019-01-26 20:36:12 +0100344 tdef/tdef_vty_test_config_root.vty \
345 tdef/tdef_vty_test_config_subnode.vty \
346 tdef/tdef_vty_test_dynamic.vty \
Neels Hofmeyr0c7826e2019-02-25 02:45:06 +0100347 sockaddr_str/sockaddr_str_test.ok \
Neels Hofmeyr0e8df1c2019-02-11 20:32:25 +0100348 use_count/use_count_test.ok use_count/use_count_test.err \
Harald Welte2d906112019-03-18 17:17:43 +0100349 context/context_test.ok \
Philipp Maier69e00cc2019-10-09 13:38:38 +0200350 gsm0502/gsm0502_test.ok \
Philipp Maier898c9c62020-02-06 14:25:01 +0100351 dtx/dtx_gsm0503_test.ok \
Harald Weltec6a86972019-12-16 23:14:45 +0100352 exec/exec_test.ok exec/exec_test.err \
Harald Welteb795f032020-05-14 11:42:53 +0200353 i460_mux/i460_mux_test.ok \
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +0100354 $(NULL)
Holger Hans Peter Freyther4b54cab2012-09-27 14:18:37 +0200355
Vadim Yanitskiy33e03062017-01-19 17:01:15 +0700356DISTCLEANFILES = atconfig atlocal conv/gsm0503_test_vectors.c
357BUILT_SOURCES = conv/gsm0503_test_vectors.c
Vadim Yanitskiy68930e82017-01-19 03:33:24 +0700358noinst_HEADERS = conv/conv.h
Daniel Willmann13bb1692012-12-26 00:12:21 +0100359
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100360TESTSUITE = $(srcdir)/testsuite
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700361
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100362check-local: atconfig $(TESTSUITE)
Ruben Undheimdd61cd22018-11-18 13:14:27 +0100363 [ -e /proc/cpuinfo ] && cat /proc/cpuinfo
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100364 $(SHELL) '$(TESTSUITE)' $(TESTSUITEFLAGS)
Neels Hofmeyr3a9ff112018-09-10 17:18:28 +0200365 $(MAKE) $(AM_MAKEFLAGS) ext-tests
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700366
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100367installcheck-local: atconfig $(TESTSUITE)
368 $(SHELL) '$(TESTSUITE)' AUTOTEST_PATH='$(bindir)' \
369 $(TESTSUITEFLAGS)
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700370
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100371clean-local:
372 test ! -f '$(TESTSUITE)' || \
373 $(SHELL) '$(TESTSUITE)' --clean
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700374
Holger Hans Peter Freyther62cb4572011-11-29 22:20:34 +0100375AUTOM4TE = $(SHELL) $(top_srcdir)/missing --run autom4te
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100376AUTOTEST = $(AUTOM4TE) --language=autotest
377$(TESTSUITE): $(srcdir)/testsuite.at $(srcdir)/package.m4
378 $(AUTOTEST) -I '$(srcdir)' -o $@.tmp $@.at
379 mv $@.tmp $@
Vadim Yanitskiy33e03062017-01-19 17:01:15 +0700380
381conv/gsm0503_test_vectors.c: $(top_srcdir)/utils/conv_gen.py $(top_srcdir)/utils/conv_codes_gsm.py
Oliver Smitha47d37c2019-12-11 08:46:41 +0100382 $(AM_V_GEN)python3 $(top_srcdir)/utils/conv_gen.py gen_vectors gsm \
Vadim Yanitskiy33e03062017-01-19 17:01:15 +0700383 --target-path $(builddir)/conv
Neels Hofmeyr3a9ff112018-09-10 17:18:28 +0200384
385if ENABLE_EXT_TESTS
386ext-tests:
387# don't run vty and ctrl tests concurrently so that the ports don't conflict
388 $(MAKE) vty-test
389 $(MAKE) ctrl-test
390else
391ext-tests:
392 echo "Not running python-based external tests (determined at configure-time)"
393endif
394
395# To update the VTY script from current application behavior,
396# pass -u to osmo_verify_transcript_vty.py by doing:
397# make vty-test U=-u
Neels Hofmeyr0fd615f2019-01-26 20:36:12 +0100398
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +0100399vty-test-logging:
Neels Hofmeyr3a9ff112018-09-10 17:18:28 +0200400 osmo_verify_transcript_vty.py -v \
401 -p 42042 \
402 -r "$(top_builddir)/tests/logging/logging_vty_test" \
403 $(U) $(srcdir)/logging/*.vty
404
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +0100405vty-test-vty:
406 osmo_verify_transcript_vty.py -v \
407 -p 42042 \
408 -r "$(top_builddir)/tests/vty/vty_transcript_test" \
409 $(U) $(srcdir)/vty/*.vty
410
Neels Hofmeyr0fd615f2019-01-26 20:36:12 +0100411vty-test-tdef:
412 osmo_verify_transcript_vty.py -v \
413 -p 42042 \
414 -r "$(top_builddir)/tests/tdef/tdef_vty_test_config_root" \
415 $(U) $(srcdir)/tdef/tdef_vty_test_config_root.vty
416 osmo_verify_transcript_vty.py -v \
417 -p 42042 \
418 -r "$(top_builddir)/tests/tdef/tdef_vty_test_config_subnode" \
419 $(U) $(srcdir)/tdef/tdef_vty_test_config_subnode.vty
420 osmo_verify_transcript_vty.py -v \
421 -p 42042 \
422 -r "$(top_builddir)/tests/tdef/tdef_vty_test_dynamic" \
423 $(U) $(srcdir)/tdef/tdef_vty_test_dynamic.vty
424
425# don't run vty tests concurrently so that the ports don't conflict
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +0100426vty-test:
427 $(MAKE) vty-test-logging
428 $(MAKE) vty-test-vty
Neels Hofmeyr0fd615f2019-01-26 20:36:12 +0100429 $(MAKE) vty-test-tdef
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +0100430
Neels Hofmeyr3a9ff112018-09-10 17:18:28 +0200431ctrl-test:
432 echo "No CTRL tests exist currently"