diff options
author | Jay Berkenbilt <ejb@ql.org> | 2012-02-11 18:49:47 +0100 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2012-02-11 18:49:47 +0100 |
commit | e3c9512b252ebb19f3a7d1d66e55ff8e6ca4086a (patch) | |
tree | 984adc5d69fc482353bc0025229fe64a9fc96bc4 /TODO | |
parent | 8e9fe21316ec33a190ce8c22dfdecccb494808e5 (diff) | |
download | qpdf-e3c9512b252ebb19f3a7d1d66e55ff8e6ca4086a.tar.zst |
notes on symbol versioning
Diffstat (limited to 'TODO')
-rw-r--r-- | TODO | 46 |
1 files changed, 46 insertions, 0 deletions
@@ -5,6 +5,52 @@ Next to build and test cleanly in 2.3.1. Hopefully the next release will include 64-bit binary distributions and external libraries. + * Add versioned symbols. Fix below to not use AM_CONDITIONAL. Just + set some variable that can be part of LDFLAGS, like + LD_VERSION_SCRIPT, instead. + +# Check if LD supports linker scripts, and define conditional +# HAVE_LD_VERSION_SCRIPT if so. This functionality is currently +# constrained to compilers using GNU ld on ELF systems or systems +# which provide an adequate emulation thereof. +AC_ARG_ENABLE([ld-version-script], + AS_HELP_STRING([--enable-ld-version-script], + [enable linker version script (default is disabled)]), + [have_ld_version_script=$enableval], [have_ld_version_script=no]) +if test "$have_ld_version_script" != no; then + AC_MSG_CHECKING([if LD -Wl,--version-script works]) + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map" + cat > conftest.map <<EOF +VERS_1 { + global: sym; +}; + +VERS_2 { + global: sym; +} VERS_1; +EOF + AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], + [have_ld_version_script=yes], [have_ld_version_script=no]) + rm -f conftest.map + LDFLAGS="$save_LDFLAGS" + AC_MSG_RESULT($have_ld_version_script) +fi +AM_CONDITIONAL(HAVE_LD_VERSION_SCRIPT, test "$have_ld_version_script" = "yes") + +---- + +if HAVE_LD_VERSION_SCRIPT +libtiff_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libtiff.map +endif + +---- + +LIBQPDF_3 { + global: + *; +}; + Better 64-bit support on Windows ================================ |