From c2ddc4f5550e4081575fbcbaf37f6b3dafe7c05e Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Wed, 16 Sep 2015 14:32:31 +0200 Subject: build: have a disable-static build succeed When using configure --disable-static, no libosmogsm.a will be created, and the tests fail to link because symbols like _a5_3 and _a5_4 are not exported through the only remaining libosmogsm.so. A method to overcome this is an intermediate private non-distributed library, examples of which are present in e.g. libabc, kmod and systemd. With this, disable-static can now be the default and practical compile time be halved. --- src/gsm/Makefile.am | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/gsm') diff --git a/src/gsm/Makefile.am b/src/gsm/Makefile.am index d8aff4ab..1878050b 100644 --- a/src/gsm/Makefile.am +++ b/src/gsm/Makefile.am @@ -10,9 +10,10 @@ noinst_HEADERS = milenage/aes.h milenage/aes_i.h milenage/aes_wrap.h \ milenage/common.h milenage/crypto.h milenage/includes.h \ milenage/milenage.h +noinst_LTLIBRARIES = libgsmint.la lib_LTLIBRARIES = libosmogsm.la -libosmogsm_la_SOURCES = a5.c rxlev_stat.c tlv_parser.c comp128.c comp128v23.c \ +libgsmint_la_SOURCES = a5.c rxlev_stat.c tlv_parser.c comp128.c comp128v23.c \ gsm_utils.c rsl.c gsm48.c gsm48_ie.c gsm0808.c sysinfo.c \ gprs_cipher_core.c gsm0480.c abis_nm.c gsm0502.c \ gsm0411_utils.c gsm0411_smc.c gsm0411_smr.c \ @@ -21,8 +22,11 @@ libosmogsm_la_SOURCES = a5.c rxlev_stat.c tlv_parser.c comp128.c comp128v23.c \ auth_milenage.c milenage/aes-encblock.c \ milenage/aes-internal.c milenage/aes-internal-enc.c \ milenage/milenage.c gan.c ipa.c gsm0341.c apn.c +libgsmint_la_LDFLAGS = -no-undefined +libgsmint_la_LIBADD = ../libosmocore.la +libosmogsm_la_SOURCES = libosmogsm_la_LDFLAGS = $(LTLDFLAGS_OSMOGSM) -version-info $(LIBVERSION) -no-undefined -libosmogsm_la_LIBADD = $(top_builddir)/src/libosmocore.la +libosmogsm_la_LIBADD = libgsmint.la EXTRA_DIST = libosmogsm.map -- cgit v1.2.3