diff options
author | Harald Welte <laforge@osmocom.org> | 2020-03-15 22:50:06 +0100 |
---|---|---|
committer | Harald Welte <laforge@osmocom.org> | 2020-03-16 11:28:21 +0100 |
commit | 3c44a646bd036785fd54dd3ae9fb06d9d6d3d107 (patch) | |
tree | 3f2d773b0998760dc158982bca37e69a51972964 | |
parent | 3a5917bd5044eaf5327d15766a2ef900433b6627 (diff) |
libosmosim: Build irrespective of PC/SC support
libosmosim contains a variety of definitions and utility fuinctions
useful when working with SIM card [protocol]. They can not only
be used with PC/SC readers but also in other contexts.
Change-Id: I741940d3dc2a5653c760e9d1597d7f08afb3b631
-rw-r--r-- | configure.ac | 1 | ||||
-rw-r--r-- | src/sim/Makefile.am | 18 | ||||
-rw-r--r-- | src/sim/reader.c | 3 |
3 files changed, 14 insertions, 8 deletions
diff --git a/configure.ac b/configure.ac index 1056a0a2..3b4ad40e 100644 --- a/configure.ac +++ b/configure.ac @@ -142,6 +142,7 @@ AC_ARG_ENABLE([pcsc], [AS_HELP_STRING([--disable-pcsc], [Build without PC/SC sup ]) AS_IF([test "x$ENABLE_PCSC" = "xyes"], [ PKG_CHECK_MODULES(PCSC, libpcsclite) + AC_DEFINE([HAVE_PCSC],[1],[Build with PC/SC support]) ]) AM_CONDITIONAL(ENABLE_PCSC, test "x$ENABLE_PCSC" = "xyes") AC_SUBST(ENABLE_PCSC) diff --git a/src/sim/Makefile.am b/src/sim/Makefile.am index c608757e..14bbbd84 100644 --- a/src/sim/Makefile.am +++ b/src/sim/Makefile.am @@ -4,24 +4,26 @@ LIBVERSION=1:2:1 AM_CPPFLAGS = $(all_includes) -I$(top_srcdir)/include -I$(top_builddir)/include -AM_CFLAGS = -fPIC -Wall $(PCSC_CFLAGS) $(TALLOC_CFLAGS) +AM_CFLAGS = -fPIC -Wall $(TALLOC_CFLAGS) AM_LDFLAGS = $(COVERAGE_LDFLAGS) -if ENABLE_PCSC -# FIXME: only build the PC/SC dependent part conditional, but always build other parts - noinst_HEADERS = sim_int.h gsm_int.h +if !EMBEDDED lib_LTLIBRARIES = libosmosim.la -libosmosim_la_SOURCES = core.c reader.c reader_pcsc.c class_tables.c \ +libosmosim_la_SOURCES = core.c reader.c class_tables.c \ card_fs_sim.c card_fs_usim.c card_fs_uicc.c \ card_fs_isim.c card_fs_tetra.c libosmosim_la_LDFLAGS = -version-info $(LIBVERSION) libosmosim_la_LIBADD = \ $(top_builddir)/src/libosmocore.la \ $(top_builddir)/src/gsm/libosmogsm.la \ - $(TALLOC_LIBS) \ - $(PCSC_LIBS) - + $(TALLOC_LIBS) +if ENABLE_PCSC +AM_CFLAGS += $(PCSC_CFLAGS) +libosmosim_la_SOURCES += reader_pcsc.c +libosmosim_la_LIBADD += $(PCSC_LIBS) endif + +endif # !EMBEDDED diff --git a/src/sim/reader.c b/src/sim/reader.c index d1a9ae60..d5292baa 100644 --- a/src/sim/reader.c +++ b/src/sim/reader.c @@ -35,6 +35,7 @@ #include <osmocom/core/msgb.h> #include <osmocom/sim/sim.h> +#include "config.h" #include "sim_int.h" @@ -242,9 +243,11 @@ struct osim_reader_hdl *osim_reader_open(enum osim_reader_driver driver, int idx struct osim_reader_hdl *rh; switch (driver) { +#ifdef HAVE_PCSC case OSIM_READER_DRV_PCSC: ops = &pcsc_reader_ops; break; +#endif default: return NULL; } |