blob: 56d0ac50f9a27e01e76622a155d116b0f50a6e9f [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 \
Neels Hofmeyr7dde1f42020-05-11 19:43:20 +020026 gsm23236/gsm23236_test \
Harald Welte6db529a2018-07-30 18:14:45 +020027 codec/codec_ecu_fr_test timer/clk_override_test \
Max7918f842018-12-10 10:57:59 +010028 oap/oap_client_test gsm29205/gsm29205_test \
Neels Hofmeyr3a9ff112018-09-10 17:18:28 +020029 logging/logging_vty_test \
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +010030 vty/vty_transcript_test \
Neels Hofmeyr0fd615f2019-01-26 20:36:12 +010031 tdef/tdef_test tdef/tdef_vty_test_config_root \
32 tdef/tdef_vty_test_config_subnode \
33 tdef/tdef_vty_test_dynamic \
Neels Hofmeyr0c7826e2019-02-25 02:45:06 +010034 sockaddr_str/sockaddr_str_test \
Neels Hofmeyr0e8df1c2019-02-11 20:32:25 +010035 use_count/use_count_test \
Harald Welte2d906112019-03-18 17:17:43 +010036 context/context_test \
Philipp Maier69e00cc2019-10-09 13:38:38 +020037 gsm0502/gsm0502_test \
Philipp Maier898c9c62020-02-06 14:25:01 +010038 dtx/dtx_gsm0503_test \
Harald Welteb795f032020-05-14 11:42:53 +020039 i460_mux/i460_mux_test \
Neels Hofmeyr3a9ff112018-09-10 17:18:28 +020040 $(NULL)
Katerina Barone-Adesi3309a432013-02-21 05:16:29 +000041
Holger Hans Peter Freytherc87f2662010-10-07 00:00:15 +080042if ENABLE_MSGFILE
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -070043check_PROGRAMS += msgfile/msgfile_test
Holger Hans Peter Freytherc87f2662010-10-07 00:00:15 +080044endif
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +010045
Neels Hofmeyr96831042016-11-15 17:31:14 +010046if ENABLE_PCSC
47check_PROGRAMS += sim/sim_test
48endif
49
Vadim Yanitskiyb6c8dda2017-05-18 23:59:02 +030050if ENABLE_UTILITIES
51check_PROGRAMS += utils/utils_test
52endif
53
54if ENABLE_VTY
55check_PROGRAMS += vty/vty_test
56endif
57
58if ENABLE_CTRL
Neels Hofmeyr223d66a2019-03-23 23:38:43 +010059check_PROGRAMS += \
60 ctrl/ctrl_test \
61 fsm/fsm_test \
62 fsm/fsm_dealloc_test \
63 $(NULL)
Vadim Yanitskiyb6c8dda2017-05-18 23:59:02 +030064endif
65
Harald Weltec6a86972019-12-16 23:14:45 +010066if !EMBEDDED
67check_PROGRAMS += \
68 stats/stats_test \
69 exec/exec_test
Max89c8c402018-01-18 16:05:27 +010070endif
71
Vadim Yanitskiyb6c8dda2017-05-18 23:59:02 +030072if ENABLE_GB
Maxad1797e2017-12-01 19:39:23 +010073check_PROGRAMS += gb/bssgp_fc_test gb/gprs_bssgp_test gb/gprs_ns_test fr/fr_test
Vadim Yanitskiyb6c8dda2017-05-18 23:59:02 +030074endif
75
Holger Hans Peter Freytherb79a1482014-01-02 13:55:00 +010076utils_utils_test_SOURCES = utils/utils_test.c
Maxba1059c2017-10-30 13:19:58 +010077utils_utils_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Holger Hans Peter Freytherb79a1482014-01-02 13:55:00 +010078
Jacob Erlbeck9732cb42015-10-01 20:43:53 +020079stats_stats_test_SOURCES = stats/stats_test.c
Maxba1059c2017-10-30 13:19:58 +010080stats_stats_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Jacob Erlbeck9732cb42015-10-01 20:43:53 +020081
Sylvain Munaut0d727852015-08-19 11:14:23 +020082a5_a5_test_SOURCES = a5/a5_test.c
Max3da79382018-01-18 16:50:51 +010083a5_a5_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libgsmint.la
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -070084
Sylvain Munaut0d727852015-08-19 11:14:23 +020085kasumi_kasumi_test_SOURCES = kasumi/kasumi_test.c
Max3da79382018-01-18 16:50:51 +010086kasumi_kasumi_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libgsmint.la
Sylvain Munaut579a7102014-06-16 14:59:30 +020087
Max4f0abc02013-12-02 11:30:32 +010088comp128_comp128_test_SOURCES = comp128/comp128_test.c
Maxba1059c2017-10-30 13:19:58 +010089comp128_comp128_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Max4f0abc02013-12-02 11:30:32 +010090
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -070091auth_milenage_test_SOURCES = auth/milenage_test.c
Maxba1059c2017-10-30 13:19:58 +010092auth_milenage_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -070093
Maxf74cfd32017-03-24 20:16:33 +010094abis_abis_test_SOURCES = abis/abis_test.c
Maxba1059c2017-10-30 13:19:58 +010095abis_abis_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Maxf74cfd32017-03-24 20:16:33 +010096
Max70c7d412017-02-24 13:59:14 +010097ctrl_ctrl_test_SOURCES = ctrl/ctrl_test.c
Neels Hofmeyrec6fdbb2018-01-17 13:07:16 +010098ctrl_ctrl_test_LDADD = $(LDADD) \
99 $(top_builddir)/src/ctrl/libosmoctrl.la \
100 $(top_builddir)/src/gsm/libosmogsm.la \
101 $(top_builddir)/src/vty/libosmovty.la
Max70c7d412017-02-24 13:59:14 +0100102
Max4f169502016-06-30 10:39:00 +0200103gea_gea_test_SOURCES = gea/gea_test.c
Maxba1059c2017-10-30 13:19:58 +0100104gea_gea_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Max4f169502016-06-30 10:39:00 +0200105
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700106bits_bitrev_test_SOURCES = bits/bitrev_test.c
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700107
Jacob Erlbeck5f349be2015-12-21 16:04:03 +0100108bitvec_bitvec_test_SOURCES = bitvec/bitvec_test.c
Jacob Erlbeck5f349be2015-12-21 16:04:03 +0100109
Max5c18e262016-02-05 13:55:38 +0100110bits_bitcomp_test_SOURCES = bits/bitcomp_test.c
Max5c18e262016-02-05 13:55:38 +0100111
Max98186642017-10-18 13:14:49 +0200112bits_bitfield_test_SOURCES = bits/bitfield_test.c
Max98186642017-10-18 13:14:49 +0200113
Vadim Yanitskiy68930e82017-01-19 03:33:24 +0700114conv_conv_test_SOURCES = conv/conv_test.c conv/conv.c
Max3da79382018-01-18 16:50:51 +0100115conv_conv_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libgsmint.la
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700116
Philipp Maier69e00cc2019-10-09 13:38:38 +0200117gsm0502_gsm0502_test_SOURCES = gsm0502/gsm0502_test.c
118gsm0502_gsm0502_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
119
Philipp Maier898c9c62020-02-06 14:25:01 +0100120dtx_dtx_gsm0503_test_SOURCES = dtx/dtx_gsm0503_test.c
121dtx_dtx_gsm0503_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la \
122 $(top_builddir)/src/coding/libosmocoding.la
123
Vadim Yanitskiy33e03062017-01-19 17:01:15 +0700124conv_conv_gsm0503_test_SOURCES = conv/conv_gsm0503_test.c conv/conv.c conv/gsm0503_test_vectors.c
Max3da79382018-01-18 16:50:51 +0100125conv_conv_gsm0503_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libgsmint.la
Vadim Yanitskiy33e03062017-01-19 17:01:15 +0700126conv_conv_gsm0503_test_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_srcdir)/tests/conv
127
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700128gsm0808_gsm0808_test_SOURCES = gsm0808/gsm0808_test.c
Maxba1059c2017-10-30 13:19:58 +0100129gsm0808_gsm0808_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700130
Max7918f842018-12-10 10:57:59 +0100131gsm29205_gsm29205_test_SOURCES = gsm29205/gsm29205_test.c
132gsm29205_gsm29205_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
133
Harald Weltec8a0b932012-08-24 21:27:26 +0200134gsm0408_gsm0408_test_SOURCES = gsm0408/gsm0408_test.c
Maxba1059c2017-10-30 13:19:58 +0100135gsm0408_gsm0408_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Harald Weltec8a0b932012-08-24 21:27:26 +0200136
Jacob Erlbeck81142942015-11-17 08:42:05 +0100137gprs_gprs_test_SOURCES = gprs/gprs_test.c
Maxba1059c2017-10-30 13:19:58 +0100138gprs_gprs_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Jacob Erlbeck81142942015-11-17 08:42:05 +0100139
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700140lapd_lapd_test_SOURCES = lapd/lapd_test.c
Maxba1059c2017-10-30 13:19:58 +0100141lapd_lapd_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700142
Jacob Erlbeck7cd8a1b2015-11-27 13:26:16 +0100143msgb_msgb_test_SOURCES = msgb/msgb_test.c
Jacob Erlbeck7cd8a1b2015-11-27 13:26:16 +0100144
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700145msgfile_msgfile_test_SOURCES = msgfile/msgfile_test.c
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700146
147smscb_smscb_test_SOURCES = smscb/smscb_test.c
Maxba1059c2017-10-30 13:19:58 +0100148smscb_smscb_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700149
Harald Welte783d0732014-12-29 17:09:11 +0100150smscb_gsm0341_test_SOURCES = smscb/gsm0341_test.c
Maxba1059c2017-10-30 13:19:58 +0100151smscb_gsm0341_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Harald Welte783d0732014-12-29 17:09:11 +0100152
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700153sms_sms_test_SOURCES = sms/sms_test.c
Maxba1059c2017-10-30 13:19:58 +0100154sms_sms_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700155
156timer_timer_test_SOURCES = timer/timer_test.c
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700157
Pau Espin Pedrol87fade82018-02-26 19:42:22 +0100158timer_clk_override_test_SOURCES = timer/clk_override_test.c
159
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700160ussd_ussd_test_SOURCES = ussd/ussd_test.c
Maxba1059c2017-10-30 13:19:58 +0100161ussd_ussd_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100162
Harald Welte57e5b942012-09-07 10:23:44 +0200163gb_bssgp_fc_test_SOURCES = gb/bssgp_fc_test.c
Maxba1059c2017-10-30 13:19:58 +0100164gb_bssgp_fc_test_LDADD = $(LDADD) $(top_builddir)/src/gb/libosmogb.la \
Neels Hofmeyrec6fdbb2018-01-17 13:07:16 +0100165 $(top_builddir)/src/vty/libosmovty.la \
Neels Hofmeyrd95f01d2016-09-09 16:42:49 +0200166 $(top_builddir)/src/gsm/libosmogsm.la
Harald Welte57e5b942012-09-07 10:23:44 +0200167
Jacob Erlbeckcdebf742014-10-14 14:49:37 +0200168gb_gprs_bssgp_test_SOURCES = gb/gprs_bssgp_test.c
Pau Espin Pedrolcacaa4a2018-05-04 19:21:58 +0200169gb_gprs_bssgp_test_LDADD = $(LDADD) $(top_builddir)/src/gb/libosmogb.la $(LIBRARY_DLSYM) \
Neels Hofmeyrec6fdbb2018-01-17 13:07:16 +0100170 $(top_builddir)/src/vty/libosmovty.la \
Neels Hofmeyrd95f01d2016-09-09 16:42:49 +0200171 $(top_builddir)/src/gsm/libosmogsm.la
Jacob Erlbeckcdebf742014-10-14 14:49:37 +0200172
Jacob Erlbeckdcce1962013-10-08 12:04:43 +0200173gb_gprs_ns_test_SOURCES = gb/gprs_ns_test.c
Pau Espin Pedrolcacaa4a2018-05-04 19:21:58 +0200174gb_gprs_ns_test_LDADD = $(LDADD) $(top_builddir)/src/gb/libosmogb.la $(LIBRARY_DLSYM) \
Neels Hofmeyrec6fdbb2018-01-17 13:07:16 +0100175 $(top_builddir)/src/vty/libosmovty.la \
Neels Hofmeyrd95f01d2016-09-09 16:42:49 +0200176 $(top_builddir)/src/gsm/libosmogsm.la
Jacob Erlbeckdcce1962013-10-08 12:04:43 +0200177
Holger Hans Peter Freyther4b54cab2012-09-27 14:18:37 +0200178logging_logging_test_SOURCES = logging/logging_test.c
Holger Hans Peter Freyther4b54cab2012-09-27 14:18:37 +0200179
Neels Hofmeyr3a9ff112018-09-10 17:18:28 +0200180logging_logging_vty_test_SOURCES = logging/logging_vty_test.c
181logging_logging_vty_test_LDADD = $(LDADD) $(top_builddir)/src/vty/libosmovty.la
182
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +0100183vty_vty_transcript_test_SOURCES = vty/vty_transcript_test.c
184vty_vty_transcript_test_LDADD = $(LDADD) $(top_builddir)/src/vty/libosmovty.la
185
Holger Hans Peter Freyther97602d92012-11-11 14:21:26 +0100186fr_fr_test_SOURCES = fr/fr_test.c
Pau Espin Pedrolcacaa4a2018-05-04 19:21:58 +0200187fr_fr_test_LDADD = $(LDADD) $(top_builddir)/src/gb/libosmogb.la $(LIBRARY_DLSYM) \
Neels Hofmeyrec6fdbb2018-01-17 13:07:16 +0100188 $(top_builddir)/src/vty/libosmovty.la \
Neels Hofmeyrd95f01d2016-09-09 16:42:49 +0200189 $(top_builddir)/src/gsm/libosmogsm.la
Holger Hans Peter Freyther97602d92012-11-11 14:21:26 +0100190
Max92db1502016-05-25 18:13:51 +0200191codec_codec_test_SOURCES = codec/codec_test.c
Maxba1059c2017-10-30 13:19:58 +0100192codec_codec_test_LDADD = $(LDADD) $(top_builddir)/src/codec/libosmocodec.la
Max92db1502016-05-25 18:13:51 +0200193
Philipp Maier40def492017-12-16 03:42:15 +0700194codec_codec_ecu_fr_test_SOURCES = codec/codec_ecu_fr_test.c
195codec_codec_ecu_fr_test_LDADD = $(LDADD) $(top_builddir)/src/codec/libosmocodec.la
196
Michael McTernan4e0543f2015-03-30 13:22:14 +0100197loggingrb_loggingrb_test_SOURCES = loggingrb/loggingrb_test.c
Maxad1797e2017-12-01 19:39:23 +0100198loggingrb_loggingrb_test_LDADD = $(LDADD)
Katerina Barone-Adesi3309a432013-02-21 05:16:29 +0000199
200strrb_strrb_test_SOURCES = strrb/strrb_test.c
Katerina Barone-Adesi3309a432013-02-21 05:16:29 +0000201
Jacob Erlbeckae15a2c2013-08-06 14:29:14 +0200202vty_vty_test_SOURCES = vty/vty_test.c
Maxba1059c2017-10-30 13:19:58 +0100203vty_vty_test_LDADD = $(LDADD) $(top_builddir)/src/vty/libosmovty.la
Jacob Erlbeckae15a2c2013-08-06 14:29:14 +0200204
Harald Welte676e5342016-03-14 21:04:50 +0100205sim_sim_test_SOURCES = sim/sim_test.c
Maxba1059c2017-10-30 13:19:58 +0100206sim_sim_test_LDADD = $(LDADD) $(top_builddir)/src/sim/libosmosim.la \
Neels Hofmeyrd95f01d2016-09-09 16:42:49 +0200207 $(top_builddir)/src/gsm/libosmogsm.la
Holger Hans Peter Freyther97602d92012-11-11 14:21:26 +0100208
Harald Weltefbd02fa2016-04-25 15:19:35 +0200209tlv_tlv_test_SOURCES = tlv/tlv_test.c
Maxba1059c2017-10-30 13:19:58 +0100210tlv_tlv_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Harald Weltefbd02fa2016-04-25 15:19:35 +0200211
Harald Welte3b6fb082016-04-25 18:46:22 +0200212gsup_gsup_test_SOURCES = gsup/gsup_test.c
Maxba1059c2017-10-30 13:19:58 +0100213gsup_gsup_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Harald Welte3b6fb082016-04-25 18:46:22 +0200214
Neels Hofmeyrd981efa2016-12-08 17:50:03 +0100215oap_oap_test_SOURCES = oap/oap_test.c
Maxba1059c2017-10-30 13:19:58 +0100216oap_oap_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Neels Hofmeyrd981efa2016-12-08 17:50:03 +0100217
Harald Welte6db529a2018-07-30 18:14:45 +0200218oap_oap_client_test_SOURCES = oap/oap_client_test.c
219oap_oap_client_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
220
Harald Welte136e7372016-05-29 10:53:17 +0900221fsm_fsm_test_SOURCES = fsm/fsm_test.c
Neels Hofmeyrec6fdbb2018-01-17 13:07:16 +0100222fsm_fsm_test_LDADD = \
223 $(LDADD) \
224 $(top_builddir)/src/ctrl/libosmoctrl.la \
225 $(top_builddir)/src/gsm/libosmogsm.la \
226 $(top_builddir)/src/vty/libosmovty.la
Harald Welte136e7372016-05-29 10:53:17 +0900227
Neels Hofmeyr223d66a2019-03-23 23:38:43 +0100228fsm_fsm_dealloc_test_SOURCES = fsm/fsm_dealloc_test.c
229fsm_fsm_dealloc_test_LDADD = $(LDADD)
230
Holger Hans Peter Freytherc7f52c42016-11-12 21:25:21 +0100231write_queue_wqueue_test_SOURCES = write_queue/wqueue_test.c
Holger Hans Peter Freytherc7f52c42016-11-12 21:25:21 +0100232
Harald Welte4ffb43f2017-01-27 10:29:49 +0100233socket_socket_test_SOURCES = socket/socket_test.c
Harald Welte4ffb43f2017-01-27 10:29:49 +0100234
Vadim Yanitskiy3262f822016-09-23 01:48:59 +0700235coding_coding_test_SOURCES = coding/coding_test.c
Max29d489f2017-11-28 14:54:32 +0100236coding_coding_test_LDADD = $(LDADD) \
Vadim Yanitskiy3262f822016-09-23 01:48:59 +0700237 $(top_builddir)/src/gsm/libosmogsm.la \
238 $(top_builddir)/src/codec/libosmocodec.la \
239 $(top_builddir)/src/coding/libosmocoding.la
240
Harald Welte3318c652017-05-15 12:07:51 +0200241endian_endian_test_SOURCES = endian/endian_test.c
Harald Welte3318c652017-05-15 12:07:51 +0200242
Harald Weltea362ee92017-05-15 16:39:56 +0200243sercomm_sercomm_test_SOURCES = sercomm/sercomm_test.c
Harald Weltea362ee92017-05-15 16:39:56 +0200244
Harald Welte1389e862017-06-18 18:16:02 +0300245prbs_prbs_test_SOURCES = prbs/prbs_test.c
Harald Welte1389e862017-06-18 18:16:02 +0300246
Neels Hofmeyr9cd1e742017-10-04 03:15:47 +0200247gsm23003_gsm23003_test_SOURCES = gsm23003/gsm23003_test.c
Maxba1059c2017-10-30 13:19:58 +0100248gsm23003_gsm23003_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
Neels Hofmeyr9cd1e742017-10-04 03:15:47 +0200249
Neels Hofmeyr7dde1f42020-05-11 19:43:20 +0200250gsm23236_gsm23236_test_SOURCES = gsm23236/gsm23236_test.c
251gsm23236_gsm23236_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
252
Neels Hofmeyr0fd615f2019-01-26 20:36:12 +0100253tdef_tdef_test_SOURCES = tdef/tdef_test.c
254tdef_tdef_test_LDADD = $(LDADD)
255
256tdef_tdef_vty_test_config_root_SOURCES = tdef/tdef_vty_test_config_root.c
257tdef_tdef_vty_test_config_root_LDADD = $(LDADD) $(top_builddir)/src/vty/libosmovty.la
258
259tdef_tdef_vty_test_config_subnode_SOURCES = tdef/tdef_vty_test_config_subnode.c
260tdef_tdef_vty_test_config_subnode_LDADD = $(LDADD) $(top_builddir)/src/vty/libosmovty.la
261
262tdef_tdef_vty_test_dynamic_SOURCES = tdef/tdef_vty_test_dynamic.c
263tdef_tdef_vty_test_dynamic_LDADD = $(LDADD) $(top_builddir)/src/vty/libosmovty.la
264
Neels Hofmeyr0c7826e2019-02-25 02:45:06 +0100265sockaddr_str_sockaddr_str_test_SOURCES = sockaddr_str/sockaddr_str_test.c
266sockaddr_str_sockaddr_str_test_LDADD = $(LDADD)
267
Neels Hofmeyr0e8df1c2019-02-11 20:32:25 +0100268use_count_use_count_test_SOURCES = use_count/use_count_test.c
269use_count_use_count_test_LDADD = $(LDADD)
270
Harald Welte2d906112019-03-18 17:17:43 +0100271context_context_test_SOURCES = context/context_test.c
272context_context_test_LDADD = $(LDADD)
273
Harald Weltec6a86972019-12-16 23:14:45 +0100274exec_exec_test_SOURCES = exec/exec_test.c
275exec_exec_test_LDADD = $(LDADD)
276
Harald Welteb795f032020-05-14 11:42:53 +0200277i460_mux_i460_mux_test_SOURCES = i460_mux/i460_mux_test.c
278i460_mux_i460_mux_test_LDADD = $(LDADD) $(top_builddir)/src/gsm/libosmogsm.la
279
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100280# The `:;' works around a Bash 3.2 bug when the output is not writeable.
281$(srcdir)/package.m4: $(top_srcdir)/configure.ac
282 :;{ \
283 echo '# Signature of the current package.' && \
284 echo 'm4_define([AT_PACKAGE_NAME],' && \
285 echo ' [$(PACKAGE_NAME)])' && \
286 echo 'm4_define([AT_PACKAGE_TARNAME],' && \
287 echo ' [$(PACKAGE_TARNAME)])' && \
288 echo 'm4_define([AT_PACKAGE_VERSION],' && \
289 echo ' [$(PACKAGE_VERSION)])' && \
290 echo 'm4_define([AT_PACKAGE_STRING],' && \
291 echo ' [$(PACKAGE_STRING)])' && \
292 echo 'm4_define([AT_PACKAGE_BUGREPORT],' && \
293 echo ' [$(PACKAGE_BUGREPORT)])'; \
294 echo 'm4_define([AT_PACKAGE_URL],' && \
295 echo ' [$(PACKAGE_URL)])'; \
296 } >'$(srcdir)/package.m4'
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700297
298EXTRA_DIST = testsuite.at $(srcdir)/package.m4 $(TESTSUITE) \
299 timer/timer_test.ok sms/sms_test.ok ussd/ussd_test.ok \
300 smscb/smscb_test.ok bits/bitrev_test.ok a5/a5_test.ok \
Max70c7d412017-02-24 13:59:14 +0100301 conv/conv_test.ok auth/milenage_test.ok ctrl/ctrl_test.ok \
Holger Hans Peter Freyther8c589d22012-08-25 22:03:42 +0200302 lapd/lapd_test.ok gsm0408/gsm0408_test.ok \
Holger Hans Peter Freytherc302eca2012-09-11 11:49:35 +0200303 gsm0808/gsm0808_test.ok gb/bssgp_fc_tests.err \
304 gb/bssgp_fc_tests.ok gb/bssgp_fc_tests.sh \
Max4f169502016-06-30 10:39:00 +0200305 gb/gprs_bssgp_test.ok gb/gprs_ns_test.ok gea/gea_test.ok \
Philipp Maier40def492017-12-16 03:42:15 +0700306 gprs/gprs_test.ok kasumi/kasumi_test.ok \
Holger Hans Peter Freyther4b54cab2012-09-27 14:18:37 +0200307 msgfile/msgfile_test.ok msgfile/msgconfig.cfg \
Holger Hans Peter Freyther97602d92012-11-11 14:21:26 +0100308 logging/logging_test.ok logging/logging_test.err \
Neels Hofmeyr760c58f2019-01-28 19:07:06 +0100309 logging/logging_vty_test.vty \
Katerina Barone-Adesi3309a432013-02-21 05:16:29 +0000310 fr/fr_test.ok loggingrb/logging_test.ok \
Jacob Erlbeckae15a2c2013-08-06 14:29:14 +0200311 loggingrb/logging_test.err strrb/strrb_test.ok \
Philipp Maier40def492017-12-16 03:42:15 +0700312 codec/codec_test.ok \
313 codec/codec_ecu_fr_test.ok \
Neels Hofmeyr4a31ffa2017-09-07 03:08:06 +0200314 vty/vty_test.ok \
315 vty/fail_not_de-indented.cfg \
316 vty/fail_tabs_and_spaces.cfg \
317 vty/fail_too_much_indent.cfg \
Pau Espin Pedrola0c81952019-10-22 18:38:01 +0200318 vty/fail_cmd_ret_warning.cfg \
Neels Hofmeyr4a31ffa2017-09-07 03:08:06 +0200319 vty/ok.cfg \
Neels Hofmeyr43063632017-09-19 23:54:01 +0200320 vty/ok_empty_parent.cfg \
Neels Hofmeyr4a31ffa2017-09-07 03:08:06 +0200321 vty/ok_ignore_blank.cfg \
322 vty/ok_ignore_comment.cfg \
323 vty/ok_indented_root.cfg \
324 vty/ok_more_spaces.cfg \
325 vty/ok_tabs_and_spaces.cfg \
326 vty/ok_tabs.cfg \
Vadim Yanitskiy4abda9e2019-11-21 00:19:36 +0700327 vty/ok_deprecated_logging.cfg \
Max98186642017-10-18 13:14:49 +0200328 comp128/comp128_test.ok bits/bitfield_test.ok \
Neels Hofmeyr15042112018-07-19 22:11:52 +0200329 utils/utils_test.ok utils/utils_test.err stats/stats_test.ok \
Harald Welte676e5342016-03-14 21:04:50 +0100330 bitvec/bitvec_test.ok msgb/msgb_test.ok bits/bitcomp_test.ok \
Maxf74cfd32017-03-24 20:16:33 +0100331 sim/sim_test.ok tlv/tlv_test.ok abis/abis_test.ok \
Neels Hofmeyrbd9de2f2017-02-21 20:17:35 +0100332 gsup/gsup_test.ok gsup/gsup_test.err \
Neels Hofmeyrd981efa2016-12-08 17:50:03 +0100333 oap/oap_test.ok fsm/fsm_test.ok fsm/fsm_test.err \
Neels Hofmeyr1f9cc012019-03-24 05:56:21 +0100334 fsm/fsm_dealloc_test.err \
Harald Welte4ffb43f2017-01-27 10:29:49 +0100335 write_queue/wqueue_test.ok socket/socket_test.ok \
Neels Hofmeyrd3b58732017-03-15 01:52:58 +0100336 socket/socket_test.err coding/coding_test.ok \
337 osmo-auc-gen/osmo-auc-gen_test.sh \
338 osmo-auc-gen/osmo-auc-gen_test.ok \
Vadim Yanitskiy33e03062017-01-19 17:01:15 +0700339 osmo-auc-gen/osmo-auc-gen_test.err \
Harald Weltea362ee92017-05-15 16:39:56 +0200340 conv/conv_gsm0503_test.ok endian/endian_test.ok \
Neels Hofmeyr9cd1e742017-10-04 03:15:47 +0200341 sercomm/sercomm_test.ok prbs/prbs_test.ok \
Max7918f842018-12-10 10:57:59 +0100342 gsm29205/gsm29205_test.ok gsm23003/gsm23003_test.ok \
Neels Hofmeyr7dde1f42020-05-11 19:43:20 +0200343 gsm23236/gsm23236_test.ok \
Harald Welte6db529a2018-07-30 18:14:45 +0200344 timer/clk_override_test.ok \
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +0100345 oap/oap_client_test.ok oap/oap_client_test.err \
346 vty/vty_transcript_test.vty \
Neels Hofmeyr0fd615f2019-01-26 20:36:12 +0100347 tdef/tdef_test.ok \
Neels Hofmeyr7b740f72019-02-06 01:08:43 +0100348 tdef/tdef_test_range_64bit.ok \
Neels Hofmeyr0fd615f2019-01-26 20:36:12 +0100349 tdef/tdef_vty_test_config_root.vty \
350 tdef/tdef_vty_test_config_subnode.vty \
351 tdef/tdef_vty_test_dynamic.vty \
Neels Hofmeyr0c7826e2019-02-25 02:45:06 +0100352 sockaddr_str/sockaddr_str_test.ok \
Neels Hofmeyr0e8df1c2019-02-11 20:32:25 +0100353 use_count/use_count_test.ok use_count/use_count_test.err \
Harald Welte2d906112019-03-18 17:17:43 +0100354 context/context_test.ok \
Philipp Maier69e00cc2019-10-09 13:38:38 +0200355 gsm0502/gsm0502_test.ok \
Philipp Maier898c9c62020-02-06 14:25:01 +0100356 dtx/dtx_gsm0503_test.ok \
Harald Weltec6a86972019-12-16 23:14:45 +0100357 exec/exec_test.ok exec/exec_test.err \
Harald Welteb795f032020-05-14 11:42:53 +0200358 i460_mux/i460_mux_test.ok \
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +0100359 $(NULL)
Holger Hans Peter Freyther4b54cab2012-09-27 14:18:37 +0200360
Pau Espin Pedrol16b076c2020-08-25 13:56:43 +0200361if ENABLE_LIBSCTP
362if ENABLE_SCTP_TESTS
363EXTRA_DIST += socket/socket_sctp_test.ok socket/socket_sctp_test.err
364check_PROGRAMS += socket/socket_sctp_test
365socket_socket_sctp_test_SOURCES = socket/socket_sctp_test.c
366endif
367endif
368
Vadim Yanitskiy33e03062017-01-19 17:01:15 +0700369DISTCLEANFILES = atconfig atlocal conv/gsm0503_test_vectors.c
370BUILT_SOURCES = conv/gsm0503_test_vectors.c
Vadim Yanitskiy68930e82017-01-19 03:33:24 +0700371noinst_HEADERS = conv/conv.h
Daniel Willmann13bb1692012-12-26 00:12:21 +0100372
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100373TESTSUITE = $(srcdir)/testsuite
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700374
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100375check-local: atconfig $(TESTSUITE)
Ruben Undheimdd61cd22018-11-18 13:14:27 +0100376 [ -e /proc/cpuinfo ] && cat /proc/cpuinfo
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100377 $(SHELL) '$(TESTSUITE)' $(TESTSUITEFLAGS)
Neels Hofmeyr3a9ff112018-09-10 17:18:28 +0200378 $(MAKE) $(AM_MAKEFLAGS) ext-tests
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700379
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100380installcheck-local: atconfig $(TESTSUITE)
381 $(SHELL) '$(TESTSUITE)' AUTOTEST_PATH='$(bindir)' \
382 $(TESTSUITEFLAGS)
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700383
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100384clean-local:
385 test ! -f '$(TESTSUITE)' || \
386 $(SHELL) '$(TESTSUITE)' --clean
Diego Elio Pettenòea0e1ec2012-06-29 13:01:18 -0700387
Holger Hans Peter Freyther62cb4572011-11-29 22:20:34 +0100388AUTOM4TE = $(SHELL) $(top_srcdir)/missing --run autom4te
Holger Hans Peter Freytherf9eda742011-11-13 01:02:54 +0100389AUTOTEST = $(AUTOM4TE) --language=autotest
390$(TESTSUITE): $(srcdir)/testsuite.at $(srcdir)/package.m4
391 $(AUTOTEST) -I '$(srcdir)' -o $@.tmp $@.at
392 mv $@.tmp $@
Vadim Yanitskiy33e03062017-01-19 17:01:15 +0700393
394conv/gsm0503_test_vectors.c: $(top_srcdir)/utils/conv_gen.py $(top_srcdir)/utils/conv_codes_gsm.py
Oliver Smitha47d37c2019-12-11 08:46:41 +0100395 $(AM_V_GEN)python3 $(top_srcdir)/utils/conv_gen.py gen_vectors gsm \
Vadim Yanitskiy33e03062017-01-19 17:01:15 +0700396 --target-path $(builddir)/conv
Neels Hofmeyr3a9ff112018-09-10 17:18:28 +0200397
398if ENABLE_EXT_TESTS
399ext-tests:
400# don't run vty and ctrl tests concurrently so that the ports don't conflict
401 $(MAKE) vty-test
402 $(MAKE) ctrl-test
403else
404ext-tests:
405 echo "Not running python-based external tests (determined at configure-time)"
406endif
407
408# To update the VTY script from current application behavior,
409# pass -u to osmo_verify_transcript_vty.py by doing:
410# make vty-test U=-u
Neels Hofmeyr0fd615f2019-01-26 20:36:12 +0100411
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +0100412vty-test-logging:
Neels Hofmeyr3a9ff112018-09-10 17:18:28 +0200413 osmo_verify_transcript_vty.py -v \
414 -p 42042 \
415 -r "$(top_builddir)/tests/logging/logging_vty_test" \
416 $(U) $(srcdir)/logging/*.vty
417
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +0100418vty-test-vty:
419 osmo_verify_transcript_vty.py -v \
420 -p 42042 \
421 -r "$(top_builddir)/tests/vty/vty_transcript_test" \
422 $(U) $(srcdir)/vty/*.vty
423
Neels Hofmeyr0fd615f2019-01-26 20:36:12 +0100424vty-test-tdef:
425 osmo_verify_transcript_vty.py -v \
426 -p 42042 \
427 -r "$(top_builddir)/tests/tdef/tdef_vty_test_config_root" \
428 $(U) $(srcdir)/tdef/tdef_vty_test_config_root.vty
429 osmo_verify_transcript_vty.py -v \
430 -p 42042 \
431 -r "$(top_builddir)/tests/tdef/tdef_vty_test_config_subnode" \
432 $(U) $(srcdir)/tdef/tdef_vty_test_config_subnode.vty
433 osmo_verify_transcript_vty.py -v \
434 -p 42042 \
435 -r "$(top_builddir)/tests/tdef/tdef_vty_test_dynamic" \
436 $(U) $(srcdir)/tdef/tdef_vty_test_dynamic.vty
437
438# don't run vty tests concurrently so that the ports don't conflict
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +0100439vty-test:
440 $(MAKE) vty-test-logging
441 $(MAKE) vty-test-vty
Neels Hofmeyr0fd615f2019-01-26 20:36:12 +0100442 $(MAKE) vty-test-tdef
Neels Hofmeyrfaa49e22019-01-31 09:06:53 +0100443
Neels Hofmeyr3a9ff112018-09-10 17:18:28 +0200444ctrl-test:
445 echo "No CTRL tests exist currently"