mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-03 21:12:26 +00:00
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.
This commit is contained in:
parent
c589c6db05
commit
d774f18fb9
1 changed files with 18 additions and 0 deletions
18
configure.ac
18
configure.ac
|
@ -171,6 +171,21 @@ AC_SUBST(GSTPB_PREFIX)
|
|||
dnl Needed by plugins that use g_module_*() API
|
||||
PKG_CHECK_MODULES(GMODULE_NO_EXPORT, gmodule-no-export-2.0)
|
||||
|
||||
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 *** set variables based on configure arguments ***
|
||||
|
||||
dnl set license and copyright notice
|
||||
|
@ -432,6 +447,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 this really should only contain flags, not libs - they get added before
|
||||
|
|
Loading…
Reference in a new issue