From: Sebastian Dröge Date: Mon, 21 Dec 2015 11:34:56 +0000 (+0100) Subject: configure: Use -Bsymbolic-functions if available X-Git-Tag: 1.19.3~493^2~1084 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a71cd000fd2166864352e0633fe072c27669314e;p=platform%2Fupstream%2Fgstreamer.git configure: Use -Bsymbolic-functions if available While this is more useful for libraries, some of our plugins with multiple files and some internal API can also benefit from this. --- diff --git a/configure.ac b/configure.ac index 267e8aa..6e36dc6 100644 --- a/configure.ac +++ b/configure.ac @@ -311,6 +311,21 @@ fi AM_CONDITIONAL(HAVE_GTK, test "x$HAVE_GTK" = "xyes") AM_CONDITIONAL(HAVE_GTK_X11, test "x$HAVE_GTK_X11" = "xyes") +dnl Check for -Bsymbolic-functions linker flag used to avoid +dnl intra-library PLT jumps, if available. +AC_ARG_ENABLE(Bsymbolic, + [AS_HELP_STRING([--disable-Bsymbolic],[avoid linking with -Bsymbolic])],, + [SAVED_LDFLAGS="${LDFLAGS}" SAVED_LIBS="${LIBS}" + AC_MSG_CHECKING([for -Bsymbolic-functions linker flag]) + LDFLAGS=-Wl,-Bsymbolic-functions + LIBS= + AC_TRY_LINK([], [return 0], + AC_MSG_RESULT(yes) + enable_Bsymbolic=yes, + AC_MSG_RESULT(no) + enable_Bsymbolic=no) + LDFLAGS="${SAVED_LDFLAGS}" LIBS="${SAVED_LIBS}"]) + dnl building of benchmarks AC_ARG_ENABLE(benchmarks, AS_HELP_STRING([--disable-benchmarks],[disable building benchmarks apps]), @@ -392,6 +407,9 @@ AC_SUBST(GST_LIBS) dnl LDFLAGS really should only contain flags, not libs - they get added before dnl whatevertarget_LIBS and -L flags here affect the rest of the linking GST_ALL_LDFLAGS="-no-undefined" +if test "x${enable_Bsymbolic}" = "xyes"; then + GST_ALL_LDFLAGS="$GST_ALL_LDFLAGS -Wl,-Bsymbolic-functions" +fi AC_SUBST(GST_ALL_LDFLAGS) dnl GST_LIB_LDFLAGS