diff options
author | Lasse Collin <lasse.collin@tukaani.org> | 2011-05-28 15:55:39 +0300 |
---|---|---|
committer | Lasse Collin <lasse.collin@tukaani.org> | 2011-05-28 15:55:39 +0300 |
commit | bd35d903a04c4d388adb4065b0fa271302380895 (patch) | |
tree | 4d0d508f4abcfde4bf20afabf9823a3c82a427cd /configure.ac | |
parent | Translations: Update the Italian translation. (diff) | |
download | xz-bd35d903a04c4d388adb4065b0fa271302380895.tar.xz |
liblzma: Use symbol versioning.
Symbol versioning is enabled by default on GNU/Linux,
other GNU-based systems, and FreeBSD.
I'm not sure how stable this is, so it may need
backward-incompatible changes before the next release.
The idea is that alpha and beta symbols are considered
unstable and require recompiling the applications that
use those symbols. Once a symbol is stable, it may get
extended with new features in ways that don't break
compatibility with older ABI & API.
The mydist target runs validate_map.sh which should
catch some probable problems in liblzma.map. Otherwise
I would forget to update the map file for new releases.
Diffstat (limited to '')
-rw-r--r-- | configure.ac | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index bc85fdd0..106c0811 100644 --- a/configure.ac +++ b/configure.ac @@ -403,6 +403,27 @@ AC_ARG_ENABLE([scripts], [AC_HELP_STRING([--disable-scripts], AM_CONDITIONAL([COND_SCRIPTS], [test x$enable_scripts != xno]) +##################### +# Symbol versioning # +##################### + +AC_ARG_ENABLE([symbol-versions], [AC_HELP_STRING([--enable-symbol-versions], + [Use symbol versioning for liblzma. Enabled by default on + GNU/Linux, other GNU-based systems, and FreeBSD.])], + [], [enable_symbol_versions=auto]) +if test "x$enable_symbol_versions" = xauto; then + case $host_os in + gnu* | *-gnu* | freebsd*) + enable_symbol_versions=yes + ;; + *) + enable_symbol_versions=no + ;; + esac +fi +AM_CONDITIONAL([COND_SYMVERS], [test "x$enable_symbol_versions" = xyes]) + + ############################################################################### # Checks for programs. ############################################################################### |