mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-06-05 06:58:56 +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
e9877a254d
commit
d2397bec17
1 changed files with 18 additions and 0 deletions
18
configure.ac
18
configure.ac
|
@ -129,6 +129,21 @@ AM_CONDITIONAL(HAVE_GST_CHECK, test "x$HAVE_GST_CHECK" = "xyes")
|
|||
AC_MSG_NOTICE(Using GStreamer Core Plugins in $GST_PLUGINS_DIR)
|
||||
AC_MSG_NOTICE(Using GStreamer Base Plugins in $GSTPB_PLUGINS_DIR)
|
||||
|
||||
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 location of plugin directory
|
||||
|
@ -204,6 +219,9 @@ AC_SUBST(GST_CFLAGS)
|
|||
AC_SUBST(GST_LIBS)
|
||||
|
||||
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