Overview
Comment: | More work towards getting Mac OS X to export only the symbols we care about |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
fa022cbc5d3145d5a144087402b5d567 |
User & Date: | rkeene on 2011-09-08 03:42:02 |
Other Links: | manifest | tags |
Context
2011-09-08
| ||
03:48 | CACKey 0.6.5 check-in: ed5f20c85e user: rkeene tags: 0.6.5, trunk | |
03:42 | More work towards getting Mac OS X to export only the symbols we care about check-in: fa022cbc5d user: rkeene tags: trunk | |
03:01 |
CACKey 0.6.4
Moved determining how to weaken and strip symbols into an autoconf macro Added support for stripping symbols to Mac OS X builds check-in: 521abe23e2 user: rkeene tags: 0.6.4, trunk | |
Changes
Modified Makefile.in from [62d627a191] to [6f86f7629d].
︙ | ︙ | |||
51 52 53 54 55 56 57 | rm -f libcackey.@SHOBJEXT@.def libcackey_g.@SHOBJEXT@.def rm -f libcackey.@SHOBJEXT@.a libcackey_g.@SHOBJEXT@.a rm -f cackey.o cackey_g.o rm -f test rm -f splint-cackey.txt distclean: clean | | | 51 52 53 54 55 56 57 58 59 60 61 62 63 | rm -f libcackey.@SHOBJEXT@.def libcackey_g.@SHOBJEXT@.def rm -f libcackey.@SHOBJEXT@.a libcackey_g.@SHOBJEXT@.a rm -f cackey.o cackey_g.o rm -f test rm -f splint-cackey.txt distclean: clean rm -f config.log config.status config.h Makefile libcackey.syms mrproper: distclean rm -f configure config.h.in aclocal.m4 *~ .PHONY: all clean distclean mrproper install |
Modified aclocal/dc_versionscript.m4 from [7b1ee0452b] to [4ebe0b5820].
1 2 3 4 5 6 7 | AC_DEFUN(DC_SETVERSIONSCRIPT, [ VERSIONSCRIPT="$1" SAVE_LDFLAGS="${LDFLAGS}" AC_MSG_CHECKING([for how to set version script]) | > > > > > > > > | > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | AC_DEFUN(DC_SETVERSIONSCRIPT, [ VERSIONSCRIPT="$1" SYMFILE="$2" delete_symfile='0' if test ! -f "${SYMFILE}"; then delete_symfile='1' echo '' > "${SYMFILE}" fi SAVE_LDFLAGS="${LDFLAGS}" AC_MSG_CHECKING([for how to set version script]) for tryaddldflags in "-Wl,--version-script -Wl,${VERSIONSCRIPT}" "-Wl,-exported_symbols_list -Wl,${SYMFILE}"; do LDFLAGS="${SAVE_LDFLAGS} ${tryaddldflags}" AC_TRY_LINK([], [], [ addldflags="${tryaddldflags}" break ]) done if test "${delete_symfile}" = "1"; then rm -f "${SYMFILE}" fi if test -n "${addldflags}"; then LDFLAGS="${SAVE_LDFLAGS} ${addldflags}" AC_MSG_RESULT($addldflags) else LDFLAGS="${SAVE_LDFLAGS}" AC_MSG_RESULT([don't know]) |
︙ | ︙ | |||
32 33 34 35 36 37 38 39 40 41 | if test "x${STRIP}" = "xfalse"; then STRIP="${OBJCOPY}" fi WEAKENSYMS='true' REMOVESYMS='true' case $host_os in darwin*) | > | > > | 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | if test "x${STRIP}" = "xfalse"; then STRIP="${OBJCOPY}" fi WEAKENSYMS='true' REMOVESYMS='true' SYMPREFIX='' case $host_os in darwin*) REMOVESYMS="${STRIP} -i -u -s ${SYMFILE}" SYMPREFIX="_" ;; *) if test "x${OBJCOPY}" != "xfalse"; then WEAKENSYMS="${OBJCOPY} --keep-global-symbols=${SYMFILE}" REMOVESYMS="${OBJCOPY} --discard-all" elif test "x${STRIP}" != "xfalse"; then REMOVESYMS="${STRIP} -x" fi ;; esac AC_SUBST(WEAKENSYMS) AC_SUBST(REMOVESYMS) AC_SUBST(SYMPREFIX) ]) |
Modified configure.ac from [f51a90fd29] to [108697b5ff].
︙ | ︙ | |||
139 140 141 142 143 144 145 | AC_MSG_RESULT(failed) AC_MSG_FAILURE([simple PC/SC program failed]) ] ) dnl Set version script, to limit the scope of symbols | | | | 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 | AC_MSG_RESULT(failed) AC_MSG_FAILURE([simple PC/SC program failed]) ] ) dnl Set version script, to limit the scope of symbols DC_SETVERSIONSCRIPT(libcackey.vers, libcackey.syms) dnl Upate LDFLAGS to include setting the run-time linker path to the same as our compile-time linker DC_SYNC_RPATH dnl If we updated LIBOBJS, update SHLIBOBJS -- must be last. DC_SYNC_SHLIBOBJS dnl Produce Makefile AC_OUTPUT(Makefile libcackey.syms) |
Renamed and modified libcackey.syms [cfac1b7560] to libcackey.syms.in [546f0d7df5].
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | @SYMPREFIX@C_CancelFunction @SYMPREFIX@C_CloseAllSessions @SYMPREFIX@C_CloseSession @SYMPREFIX@C_CopyObject @SYMPREFIX@C_CreateObject @SYMPREFIX@C_Decrypt @SYMPREFIX@C_DecryptDigestUpdate @SYMPREFIX@C_DecryptFinal @SYMPREFIX@C_DecryptInit @SYMPREFIX@C_DecryptUpdate @SYMPREFIX@C_DecryptVerifyUpdate @SYMPREFIX@C_DeriveKey @SYMPREFIX@C_DestroyObject @SYMPREFIX@C_Digest @SYMPREFIX@C_DigestEncryptUpdate @SYMPREFIX@C_DigestFinal @SYMPREFIX@C_DigestInit @SYMPREFIX@C_DigestKey @SYMPREFIX@C_DigestUpdate @SYMPREFIX@C_Encrypt @SYMPREFIX@C_EncryptFinal @SYMPREFIX@C_EncryptInit @SYMPREFIX@C_EncryptUpdate @SYMPREFIX@C_Finalize @SYMPREFIX@C_FindObjects @SYMPREFIX@C_FindObjectsFinal @SYMPREFIX@C_FindObjectsInit @SYMPREFIX@C_GenerateKey @SYMPREFIX@C_GenerateKeyPair @SYMPREFIX@C_GenerateRandom @SYMPREFIX@C_GetAttributeValue @SYMPREFIX@C_GetFunctionList @SYMPREFIX@C_GetFunctionStatus @SYMPREFIX@C_GetInfo @SYMPREFIX@C_GetMechanismInfo @SYMPREFIX@C_GetMechanismList @SYMPREFIX@C_GetObjectSize @SYMPREFIX@C_GetOperationState @SYMPREFIX@C_GetSessionInfo @SYMPREFIX@C_GetSlotInfo @SYMPREFIX@C_GetSlotList @SYMPREFIX@C_GetTokenInfo @SYMPREFIX@C_InitPIN @SYMPREFIX@C_InitToken @SYMPREFIX@C_Initialize @SYMPREFIX@C_Login @SYMPREFIX@C_Logout @SYMPREFIX@C_OpenSession @SYMPREFIX@C_SeedRandom @SYMPREFIX@C_SetAttributeValue @SYMPREFIX@C_SetOperationState @SYMPREFIX@C_SetPIN @SYMPREFIX@C_Sign @SYMPREFIX@C_SignEncryptUpdate @SYMPREFIX@C_SignFinal @SYMPREFIX@C_SignInit @SYMPREFIX@C_SignRecover @SYMPREFIX@C_SignRecoverInit @SYMPREFIX@C_SignUpdate @SYMPREFIX@C_UnwrapKey @SYMPREFIX@C_Verify @SYMPREFIX@C_VerifyFinal @SYMPREFIX@C_VerifyInit @SYMPREFIX@C_VerifyRecover @SYMPREFIX@C_VerifyRecoverInit @SYMPREFIX@C_VerifyUpdate @SYMPREFIX@C_WaitForSlotEvent @SYMPREFIX@C_WrapKey |