diff options
author | Christian Persch <chpe@gnome.org> | 2011-12-11 21:28:25 +0100 |
---|---|---|
committer | Christian Persch <chpe@gnome.org> | 2011-12-11 21:28:25 +0100 |
commit | fb4164470b49e80f5419ec8188b64d23221ea222 (patch) | |
tree | 0cf6a61f872fa7498781292d072711923ca9d6f3 /configure.in | |
parent | 27108d9d98ec7af7926a6fcd9346f38925ce10fe (diff) | |
download | libcroco-fb4164470b49e80f5419ec8188b64d23221ea222.tar.gz |
Use -Bsymbolic-functions when available
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/configure.in b/configure.in index 2f975cd..5edf3a4 100644 --- a/configure.in +++ b/configure.in @@ -170,6 +170,32 @@ AC_SUBST(LDFLAGS) AC_SUBST(CFLAGS) AC_PROG_MAKE_SET + +########################################################## +# Check for -Bsymbolic-functions linker flag used to avoid +# intra-library PLT jumps, if available. +########################################################## + +AC_ARG_ENABLE([Bsymbolic], + [AS_HELP_STRING([--disable-Bsymbolic], + [disable linking with -Bsymbolic])], + [],[enable_Bsymbolic=yes]) + +BSYMBOLIC_LDFLAG= +if test "$enable_Bsymbolic" != "no"; then + CC_CHECK_LDFLAGS(["-Wl,-Bsymbolic-functions"], + [BSYMBOLIC_LDFLAG="-Wl,-Bsymbolic-functions"], + [if test "$enable_Bsymbolic" = "auto"; then + AC_MSG_WARN([-Bsymbolic not supported by ld; disabling]) + enable_Bsymbolic=no + else + AC_MSG_ERROR([-Bsymbolic requested but not supported by ld. Use --disable-Bsymbolic to disable]) + fi]) +fi + +AC_SUBST([BSYMBOLIC_LDFLAG]) + +########################################## AC_OUTPUT([ Makefile libcroco.pc |