From cb929c5d66385063c1a0c66863fb770ad78aeeaa Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sun, 15 Mar 2020 22:50:06 +0100 Subject: 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 --- configure.ac | 1 + src/sim/Makefile.am | 18 ++++++++++-------- 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 #include +#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; } -- cgit v1.2.3