path: root/src
diff options
authorJan Engelhardt <jengelh@inai.de>2015-09-16 14:32:31 +0200
committerHolger Hans Peter Freyther <holger@moiji-mobile.com>2015-09-16 18:08:48 +0200
commitc2ddc4f5550e4081575fbcbaf37f6b3dafe7c05e (patch)
treedd0a3b1c654506bdcbe80f536c686d4de470aac4 /src
parentd452a48ac66d8e99a562c91660f371270d9c6b21 (diff)
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.
Diffstat (limited to 'src')
1 files changed, 6 insertions, 2 deletions
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 \
+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