From 4b2fe63ac2cba0b0adc447521138fc9db78fa6f7 Mon Sep 17 00:00:00 2001 From: aj Date: Mon, 1 Feb 2010 15:12:53 +0000 Subject: [PATCH] build only one shared library instead of many. git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3971 c6295689-39f2-0310-b995-f0e70906c6a9 --- src/Makefile.am | 4 +- src/Makefile.mak | 2 +- src/libopensc/Makefile.am | 5 +- src/libopensc/libopensc.exports | 87 +++++++++++++++++++++++++++++++++ src/pkcs11/Makefile.am | 8 ++- src/pkcs15init/Makefile.am | 31 ++---------- src/scconf/Makefile.am | 25 ++-------- src/tools/Makefile.am | 7 ++- 8 files changed, 106 insertions(+), 63 deletions(-) diff --git a/src/Makefile.am b/src/Makefile.am index af49e855..30d8ba9d 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -2,5 +2,5 @@ MAINTAINERCLEANFILES = $(srcdir)/Makefile.in EXTRA_DIST = Makefile.mak # Order IS important -SUBDIRS = common include scconf libopensc pkcs15init pkcs11 \ - tests tools openssh +SUBDIRS = common include scconf pkcs15init libopensc pkcs11 \ + tools tests openssh diff --git a/src/Makefile.mak b/src/Makefile.mak index 07e98364..f05e6e52 100644 --- a/src/Makefile.mak +++ b/src/Makefile.mak @@ -2,7 +2,7 @@ TOPDIR = .. !INCLUDE $(TOPDIR)\win32\Make.rules.mak -SUBDIRS = include common scconf libopensc tests pkcs15init pkcs11 tools +SUBDIRS = include common scconf pkcs15init libopensc pkcs11 tools tests all:: diff --git a/src/libopensc/Makefile.am b/src/libopensc/Makefile.am index 08b38256..745dcf8d 100644 --- a/src/libopensc/Makefile.am +++ b/src/libopensc/Makefile.am @@ -3,6 +3,7 @@ include $(top_srcdir)/win32/ltrc.inc MAINTAINERCLEANFILES = \ $(srcdir)/Makefile.in $(srcdir)/versioninfo.rc CLEANFILES = versioninfo.rc + EXTRA_DIST = Makefile.mak bin_SCRIPTS = opensc-config @@ -47,7 +48,6 @@ libopensc_la_SOURCES = \ pkcs15-actalis.c pkcs15-atrust-acos.c pkcs15-tccardos.c pkcs15-piv.c \ pkcs15-esinit.c p15emu-westcos.c pkcs15-pteid.c \ compression.c p15card-helper.c \ - \ libopensc.exports if WIN32 libopensc_la_SOURCES += versioninfo.rc @@ -56,6 +56,7 @@ dist_noinst_DATA = versioninfo.rc endif libopensc_la_LIBADD = $(OPTIONAL_OPENSSL_LIBS) $(OPTIONAL_OPENCT_LIBS) \ $(OPTIONAL_ZLIB_LIBS) $(OPTIONAL_ICONV_LIBS) $(LTLIB_LIBS) \ + $(top_builddir)/src/pkcs15init/libpkcs15init.la \ $(top_builddir)/src/scconf/libscconf.la \ $(top_builddir)/src/common/libcompat.la if WIN32 @@ -68,7 +69,7 @@ libopensc_la_LDFLAGS = $(AM_LDFLAGS) \ versioninfo.rc: sed 's/@@FILE_DESCRIPTION@@/OpenSC Core Library/g' \ - "$(top_builddir)/win32/versioninfo.rc.in" > versioninfo.rc + "$(top_builddir)/win32/versioninfo.rc.in" > versioninfo.rc if WIN32 # def file required for MS users to build library diff --git a/src/libopensc/libopensc.exports b/src/libopensc/libopensc.exports index 04087c22..ebb575de 100644 --- a/src/libopensc/libopensc.exports +++ b/src/libopensc/libopensc.exports @@ -1,3 +1,32 @@ +scconf_block_add +scconf_block_copy +scconf_block_destroy +scconf_find_block +scconf_find_blocks +scconf_find_list +scconf_free +scconf_get_bool +scconf_get_int +scconf_get_str +scconf_item_add +scconf_item_copy +scconf_item_destroy +scconf_list_add +scconf_list_array_length +scconf_list_copy +scconf_list_destroy +scconf_list_strdup +scconf_list_strings_length +scconf_list_toarray +scconf_new +scconf_parse +scconf_parse_entries +scconf_parse_string +scconf_put_bool +scconf_put_int +scconf_put_str +scconf_write +scconf_write_entries _sc_asn1_decode _sc_asn1_encode _sc_debug @@ -212,3 +241,61 @@ sc_wait_for_event sc_write_binary sc_write_record sc_get_iso7816_driver +sc_keycache_find_named_pin +sc_keycache_forget_key +sc_keycache_get_key +sc_keycache_get_pin +sc_keycache_get_pin_name +sc_keycache_put_key +sc_keycache_put_pin +sc_keycache_set_pin_name +sc_pkcs15init_add_app +sc_pkcs15init_authenticate +sc_pkcs15init_bind +sc_pkcs15init_change_attrib +sc_pkcs15init_create_file +sc_pkcs15init_delete_by_path +sc_pkcs15init_delete_object +sc_pkcs15init_erase_card +sc_pkcs15init_erase_card_recursively +sc_pkcs15init_finalize_card +sc_pkcs15init_fixup_acls +sc_pkcs15init_fixup_file +sc_pkcs15init_generate_key +sc_pkcs15init_get_asepcos_ops +sc_pkcs15init_get_cardos_ops +sc_pkcs15init_get_cryptoflex_ops +sc_pkcs15init_get_cyberflex_ops +sc_pkcs15init_get_gpk_ops +sc_pkcs15init_get_incrypto34_ops +sc_pkcs15init_get_jcop_ops +sc_pkcs15init_get_label +sc_pkcs15init_get_manufacturer +sc_pkcs15init_get_miocos_ops +sc_pkcs15init_get_muscle_ops +sc_pkcs15init_get_oberthur_ops +sc_pkcs15init_get_pin_info +sc_pkcs15init_get_rutoken_ops +sc_pkcs15init_get_rtecp_ops +sc_pkcs15init_get_serial +sc_pkcs15init_get_setcos_ops +sc_pkcs15init_get_starcos_ops +sc_pkcs15init_requires_restrictive_usage +sc_pkcs15init_rmdir +sc_pkcs15init_set_callbacks +sc_pkcs15init_set_lifecycle +sc_pkcs15init_set_p15card +sc_pkcs15init_set_pin_data +sc_pkcs15init_set_secret +sc_pkcs15init_set_serial +sc_pkcs15init_store_certificate +sc_pkcs15init_store_data_object +sc_pkcs15init_store_pin +sc_pkcs15init_store_private_key +sc_pkcs15init_store_public_key +sc_pkcs15init_store_split_key +sc_pkcs15init_unbind +sc_pkcs15init_update_any_df +sc_pkcs15init_update_certificate +sc_pkcs15init_update_file +sc_pkcs15init_verify_key diff --git a/src/pkcs11/Makefile.am b/src/pkcs11/Makefile.am index 3ba23be1..efe26ae7 100644 --- a/src/pkcs11/Makefile.am +++ b/src/pkcs11/Makefile.am @@ -11,7 +11,7 @@ lib_LTLIBRARIES = opensc-pkcs11.la pkcs11-spy.la onepin-opensc-pkcs11.la noinst_LTLIBRARIES = libpkcs11.la AM_CFLAGS = $(OPTIONAL_OPENSSL_CFLAGS) $(LTLIB_CFLAGS) $(PTHREAD_CFLAGS) -INCLUDES = -I$(top_srcdir)/src/pkcs15init -I$(top_builddir)/src/include -I$(top_builddir)/src/common +INCLUDES = -I$(top_srcdir)/src/pkcs15init -I$(top_builddir)/src/include -I$(top_srcdir)/src/common OPENSC_PKCS11_INC = sc-pkcs11.h OPENSC_PKCS11_SRC = pkcs11-global.c pkcs11-session.c pkcs11-object.c misc.c slot.c \ @@ -19,10 +19,8 @@ OPENSC_PKCS11_SRC = pkcs11-global.c pkcs11-session.c pkcs11-object.c misc.c slot framework-pkcs15init.c debug.c opensc-pkcs11.exports \ pkcs11-display.c pkcs11-display.h OPENSC_PKCS11_LIBS = $(OPTIONAL_OPENSSL_LIBS) $(PTHREAD_LIBS) \ - $(top_builddir)/src/pkcs15init/libpkcs15init.la \ - $(top_builddir)/src/libopensc/libopensc.la \ - $(top_builddir)/src/scconf/libscconf.la \ - $(top_builddir)/src/common/libcompat.la + $(top_builddir)/src/common/libcompat.la \ + $(top_builddir)/src/libopensc/libopensc.la libpkcs11_la_SOURCES = libpkcs11.c diff --git a/src/pkcs15init/Makefile.am b/src/pkcs15init/Makefile.am index bd0ee28f..a2aa435f 100644 --- a/src/pkcs15init/Makefile.am +++ b/src/pkcs15init/Makefile.am @@ -5,7 +5,7 @@ MAINTAINERCLEANFILES = \ CLEANFILES = versioninfo.rc EXTRA_DIST = Makefile.mak -lib_LTLIBRARIES = libpkcs15init.la +noinst_LTLIBRARIES = libpkcs15init.la openscinclude_HEADERS = pkcs15-init.h noinst_HEADERS = profile.h keycache.h dist_pkgdata_DATA = \ @@ -34,34 +34,9 @@ INCLUDES = -I$(top_srcdir)/src/common -I$(top_builddir)/src/include libpkcs15init_la_SOURCES = \ pkcs15-lib.c profile.c keycache.c \ - pkcs15-westcos.c \ + pkcs15-westcos.c \ pkcs15-gpk.c pkcs15-miocos.c pkcs15-cflex.c \ pkcs15-cardos.c pkcs15-jcop.c pkcs15-starcos.c \ pkcs15-oberthur.c pkcs15-setcos.c pkcs15-incrypto34.c \ pkcs15-muscle.c pkcs15-asepcos.c pkcs15-rutoken.c \ - pkcs15-entersafe.c pkcs15-rtecp.c pkcs15-myeid.c \ - pkcs15init.exports -if WIN32 -libpkcs15init_la_SOURCES += versioninfo.rc -else -dist_noinst_DATA = versioninfo.rc -endif -libpkcs15init_la_LIBADD = $(OPTIONAL_OPENSSL_LIBS) $(LTLIB_LIBS) \ - $(top_builddir)/src/libopensc/libopensc.la \ - $(top_builddir)/src/scconf/libscconf.la \ - $(top_builddir)/src/common/libcompat.la -libpkcs15init_la_LDFLAGS = $(AM_LDFLAGS) \ - -version-info @OPENSC_LT_CURRENT@:@OPENSC_LT_REVISION@:@OPENSC_LT_AGE@ \ - -export-symbols "$(srcdir)/pkcs15init.exports" \ - -no-undefined - -versioninfo.rc: - sed 's/@@FILE_DESCRIPTION@@/OpenSC Core Library/g' \ - "$(top_builddir)/win32/versioninfo.rc.in" > versioninfo.rc - -if WIN32 -# def file required for MS users to build library -mylibdir=$(libdir) -mylib_DATA=.libs/@WIN_LIBPREFIX@pkcs15init-@OPENSC_LT_OLDEST@.dll.def -.libs/@WIN_LIBPREFIX@pkcs15init-@OPENSC_LT_OLDEST@.dll.def: libpkcs15init.la -endif + pkcs15-entersafe.c pkcs15-rtecp.c pkcs15-myeid.c diff --git a/src/scconf/Makefile.am b/src/scconf/Makefile.am index 009f399e..56c8e5c7 100644 --- a/src/scconf/Makefile.am +++ b/src/scconf/Makefile.am @@ -1,35 +1,18 @@ include $(top_srcdir)/win32/ltrc.inc -MAINTAINERCLEANFILES = \ - $(srcdir)/Makefile.in $(srcdir)/versioninfo.rc +MAINTAINERCLEANFILES = $(srcdir)/Makefile.in DISTCLEANFILES = lex-parse.c -CLEANFILES = versioninfo.rc EXTRA_DIST = Makefile.mak dist_noinst_DATA = README.scconf lex-parse.l openscinclude_HEADERS = scconf.h noinst_HEADERS = internal.h noinst_PROGRAMS = test-conf -lib_LTLIBRARIES = libscconf.la +noinst_LTLIBRARIES = libscconf.la INCLUDES = -I$(top_srcdir)/src/common -libscconf_la_SOURCES = scconf.c parse.c write.c sclex.c \ - scconf.exports -if WIN32 -libscconf_la_SOURCES += versioninfo.rc -else -dist_noinst_DATA += versioninfo.rc -endif -libscconf_la_LIBADD = $(top_builddir)/src/common/libcompat.la -libscconf_la_LDFLAGS = $(AM_LDFLAGS) \ - -version-info @OPENSC_LT_CURRENT@:@OPENSC_LT_REVISION@:@OPENSC_LT_AGE@ \ - -export-symbols "$(srcdir)/scconf.exports" \ - -no-undefined +libscconf_la_SOURCES = scconf.c parse.c write.c sclex.c test_conf_SOURCES = test-conf.c -test_conf_LDADD = libscconf.la - -versioninfo.rc: - sed 's/@@FILE_DESCRIPTION@@/OpenSC Core Library/g' \ - "$(top_builddir)/win32/versioninfo.rc.in" > versioninfo.rc +test_conf_LDADD = libscconf.la $(top_builddir)/src/common/libcompat.la diff --git a/src/tools/Makefile.am b/src/tools/Makefile.am index 649eed06..12f3a0eb 100644 --- a/src/tools/Makefile.am +++ b/src/tools/Makefile.am @@ -18,8 +18,8 @@ endif AM_CFLAGS = $(OPTIONAL_OPENSSL_CFLAGS) $(OPTIONAL_READLINE_CFLAGS) INCLUDES = -I$(top_srcdir)/src/common -I$(top_builddir)/src/include -LIBS = $(top_builddir)/src/libopensc/libopensc.la \ - $(top_builddir)/src/common/libcompat.la +LIBS = $(top_builddir)/src/common/libcompat.la \ + $(top_builddir)/src/libopensc/libopensc.la opensc_tool_SOURCES = opensc-tool.c util.c piv_tool_SOURCES = piv-tool.c util.c @@ -36,8 +36,7 @@ pkcs15_crypt_LDADD = $(OPTIONAL_OPENSSL_LIBS) cryptoflex_tool_SOURCES = cryptoflex-tool.c util.c cryptoflex_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS) pkcs15_init_SOURCES = pkcs15-init.c util.c -pkcs15_init_LDADD = $(OPTIONAL_OPENSSL_LIBS) \ - $(top_builddir)/src/pkcs15init/libpkcs15init.la +pkcs15_init_LDADD = $(OPTIONAL_OPENSSL_LIBS) cardos_tool_SOURCES = cardos-tool.c util.c cardos_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS) eidenv_SOURCES = eidenv.c util.c