Let configure perform linker test with --version-script if enabled

This commit is contained in:
Thomas Schmitt 2010-07-06 10:50:28 +02:00
parent fe45249e9e
commit e60171986b
2 changed files with 23 additions and 2 deletions

View File

@ -131,6 +131,21 @@ iconv_close(cd);
]) ])
dnl LIBISOFS_ASSERT_VERS_LIBS is by Thomas Schmitt, libburnia project
dnl It tests whether -Wl,--version-script=... works with the compiler
AC_DEFUN([LIBISOFS_ASSERT_VERS_LIBS],
[
libburnia_save_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS -Wl,--version-script=libisofs/libisofs.ver"
AC_TRY_LINK([#include <stdio.h>], [printf("Hello\n");],
[vers_libs_test="yes"], [vers_libs_test="no"])
if test x$vers_libs_test = xno
then
LDFLAGS="$libburnia_save_LDFLAGS"
fi
])
dnl LIBBURNIA_SET_PKGCONFIG determines the install directory for the *.pc file. dnl LIBBURNIA_SET_PKGCONFIG determines the install directory for the *.pc file.
dnl Important: Must be performed _after_ TARGET_SHIZZLE dnl Important: Must be performed _after_ TARGET_SHIZZLE
dnl dnl

View File

@ -218,8 +218,14 @@ AC_ARG_ENABLE(versioned-libs,
[ --enable-versioned-libs Enable strict symbol encapsulation , default=yes], [ --enable-versioned-libs Enable strict symbol encapsulation , default=yes],
, enable_versioned_libs=yes) , enable_versioned_libs=yes)
if test x$enable_versioned_libs = xyes; then if test x$enable_versioned_libs = xyes; then
LDFLAGS="$LDFLAGS -Wl,--version-script=libisofs/libisofs.ver" vers_libs_test=no
echo "enabled strict symbol encapsulation" LIBISOFS_ASSERT_VERS_LIBS
if test x$vers_libs_test = xno
then
echo "disabled strict symbol encapsulation (test failed)"
else
echo "enabled strict symbol encapsulation"
fi
else else
echo "disabled strict symbol encapsulation" echo "disabled strict symbol encapsulation"
fi fi