diff options
author | Diego 'Flameeyes' Pettenò <flameeyes@gmail.com> | 2008-01-15 16:49:29 +0100 |
---|---|---|
committer | Diego 'Flameeyes' Pettenò <flameeyes@gmail.com> | 2008-01-15 16:49:29 +0100 |
commit | 07b372828b7b4b1337331ff16ebdab1482609e0a (patch) | |
tree | b726c7715681928fa758678931fc45ed3b6104e9 | |
parent | fa109cc055ecf40ec01f82f313ed2cccf094bbaf (diff) | |
download | xine-lib-07b372828b7b4b1337331ff16ebdab1482609e0a.tar.gz xine-lib-07b372828b7b4b1337331ff16ebdab1482609e0a.tar.bz2 |
Check if the linker supports --gc-sections, and if so use it for the plugins.
This way the unused parts of internal copies of libraries can be get rid of by the linker.
-rw-r--r-- | configure.ac | 3 | ||||
-rw-r--r-- | misc/Makefile.common | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac index 926620303..cdb196f79 100644 --- a/configure.ac +++ b/configure.ac @@ -480,6 +480,9 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <string.h>]], [[int a; memset(&a, [warnflags="$warnflags -Wpointer-arith" AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])]) +CC_CHECK_LDFLAGS([-Wl,--gc-sections], [GCSECTIONS="-Wl,--gc-sections"]) +AC_SUBST([GCSECTIONS]) + dnl FreeBSD (et al.) does not complete linking for shared objects when pthreads dnl are requested, as different implementations are present; to avoid problems dnl use -Wl,-z,defs only for those platforms not behaving this way. diff --git a/misc/Makefile.common b/misc/Makefile.common index edafcea4b..447b558e2 100644 --- a/misc/Makefile.common +++ b/misc/Makefile.common @@ -3,7 +3,7 @@ XINE_LIB = $(top_builddir)/src/xine-engine/libxine.la xineincludedir = $(includedir)/xine xineplugdir = $(XINE_PLUGINDIR) -xineplug_ldflags = $(NOUNDEF) -avoid-version -module +xineplug_ldflags = $(NOUNDEF) $(GCSECTIONS) -avoid-version -module xinepostdir = $(XINE_PLUGINDIR)/post vidixdir = $(XINE_PLUGINDIR)/vidix |