mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-18 07:47:17 +00:00
autotools: stop controlling symbol visibility with -export-symbols-regex
Instead, use -fvisibility=hidden and explicit exports via GST_EXPORT. This should result in consistent behaviour for the autotools and Meson builds.
This commit is contained in:
parent
4bfba1dcda
commit
a02b0f7b05
1 changed files with 14 additions and 4 deletions
18
configure.ac
18
configure.ac
|
@ -801,6 +801,16 @@ else
|
|||
fi
|
||||
AC_SUBST(DEPRECATED_CFLAGS)
|
||||
|
||||
VISIBILITY_CFLAGS=""
|
||||
AS_COMPILER_FLAG([-fvisibility=hidden], [VISIBILITY_CFLAGS="-fvisibility=hidden"])
|
||||
AC_SUBST(VISIBILITY_CFLAGS)
|
||||
|
||||
VISIBILITY_CXXFLAGS=""
|
||||
if test "x$HAVE_CXX" = "xyes"; then
|
||||
AS_CXX_COMPILER_FLAG([-fvisibility=hidden], [VISIBILITY_CXXFLAGS="-fvisibility=hidden"])
|
||||
fi
|
||||
AC_SUBST(VISIBILITY_CXXFLAGS)
|
||||
|
||||
dnl every flag in GST_OPTION_CFLAGS and GST_OPTION_CXXFLAGS can be overridden
|
||||
dnl at make time with e.g. make ERROR_CFLAGS=""
|
||||
GST_OPTION_CFLAGS="\$(WARNING_CFLAGS) \$(ERROR_CFLAGS) \$(DEBUG_CFLAGS) \$(PROFILE_CFLAGS) \$(GCOV_CFLAGS) \$(OPT_CFLAGS) \$(DEPRECATED_CFLAGS)"
|
||||
|
@ -820,8 +830,8 @@ AC_SUBST(GST_PLUGINS_BASE_CFLAGS)
|
|||
dnl FIXME: do we want to rename to GST_ALL_* ?
|
||||
dnl add GST_OPTION_CFLAGS, but overridable
|
||||
GST_CFLAGS="$GST_CFLAGS $GST_STATIC_CFLAGS"
|
||||
GST_CXXFLAGS="$GLIB_CFLAGS $GST_CFLAGS \$(GLIB_EXTRA_CFLAGS) \$(GST_OPTION_CXXFLAGS)"
|
||||
GST_CFLAGS="$GLIB_CFLAGS $GST_CFLAGS \$(GLIB_EXTRA_CFLAGS) \$(GST_OPTION_CFLAGS)"
|
||||
GST_CXXFLAGS="$GLIB_CFLAGS $GST_CFLAGS \$(GLIB_EXTRA_CFLAGS) \$(GST_OPTION_CXXFLAGS) \$(VISIBILITY_CXXFLAGS)"
|
||||
GST_CFLAGS="$GLIB_CFLAGS $GST_CFLAGS \$(GLIB_EXTRA_CFLAGS) \$(GST_OPTION_CFLAGS) \$(VISIBILITY_CFLAGS)"
|
||||
AC_SUBST(GST_CFLAGS)
|
||||
AC_SUBST(GST_CXXFLAGS)
|
||||
dnl add GCOV libs because libtool strips -fprofile-arcs -ftest-coverage
|
||||
|
@ -840,12 +850,12 @@ dnl GST_LIB_LDFLAGS
|
|||
dnl linker flags shared by all libraries
|
||||
dnl LDFLAGS modifier defining exported symbols from built libraries
|
||||
dnl (export _gst_foo but not __gst_foo)
|
||||
GST_LIB_LDFLAGS="-export-symbols-regex ^_?\(gst_\|Gst\|GST_\).*"
|
||||
GST_LIB_LDFLAGS=""
|
||||
AC_SUBST(GST_LIB_LDFLAGS)
|
||||
|
||||
dnl this 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_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '^[_]*gst_plugin_.*' $GST_ALL_LDFLAGS"
|
||||
GST_PLUGIN_LDFLAGS="-module -avoid-version $GST_ALL_LDFLAGS"
|
||||
AC_SUBST(GST_PLUGIN_LDFLAGS)
|
||||
|
||||
dnl *** output files ***
|
||||
|
|
Loading…
Reference in a new issue