Turns out that the AC conditional did not include the
the version-scripts as expected. Rather it truncated
the remaining linker flags.

Cc: Jon TURNEY <[email protected]>
Signed-off-by: Emil Velikov <[email protected]>
---

I was under the silly impression that the original approach is
correct, and naively did not check the symbols in the binaries.

The libraries work, but automake did not produce any warnings :(

Emil

 src/gallium/Automake.inc                    | 27 +++++++++++++++------------
 src/gallium/targets/egl-static/Makefile.am  |  8 +++++---
 src/gallium/targets/gbm/Makefile.am         |  8 +++++---
 src/gallium/targets/opencl/Makefile.am      |  7 ++++---
 src/gallium/targets/osmesa/Makefile.am      |  5 ++++-
 src/gallium/targets/pipe-loader/Makefile.am |  8 +++++---
 6 files changed, 38 insertions(+), 25 deletions(-)

diff --git a/src/gallium/Automake.inc b/src/gallium/Automake.inc
index 70921ec..97735ab 100644
--- a/src/gallium/Automake.inc
+++ b/src/gallium/Automake.inc
@@ -56,9 +56,6 @@ GALLIUM_DRI_LINKER_FLAGS = \
        -shrext .so \
        -module \
        -avoid-version \
-if HAVE_LD_VERSION_SCRIPT
-       -Wl,--version-script=$(top_srcdir)/src/gallium/targets/dri.sym \
-endif
        $(GC_SECTIONS)
 
 GALLIUM_VDPAU_LINKER_FLAGS = \
@@ -66,9 +63,6 @@ GALLIUM_VDPAU_LINKER_FLAGS = \
        -module \
        -no-undefined \
        -version-number $(VDPAU_MAJOR):$(VDPAU_MINOR) \
-if HAVE_LD_VERSION_SCRIPT
-       -Wl,--version-script=$(top_srcdir)/src/gallium/targets/vdpau.sym \
-endif
        $(GC_SECTIONS) \
        $(LD_NO_UNDEFINED)
 
@@ -77,9 +71,6 @@ GALLIUM_XVMC_LINKER_FLAGS = \
        -module \
        -no-undefined \
        -version-number $(XVMC_MAJOR):$(XVMC_MINOR) \
-if HAVE_LD_VERSION_SCRIPT
-       -Wl,--version-script=$(top_srcdir)/src/gallium/targets/xvmc.sym \
-endif
        $(GC_SECTIONS) \
        $(LD_NO_UNDEFINED)
 
@@ -88,12 +79,24 @@ GALLIUM_OMX_LINKER_FLAGS = \
        -module \
        -no-undefined \
        -avoid-version \
-if HAVE_LD_VERSION_SCRIPT
-       -Wl,--version-script=$(top_srcdir)/src/gallium/targets/omx.sym \
-endif
        $(GC_SECTIONS) \
        $(LD_NO_UNDEFINED)
 
+if HAVE_LD_VERSION_SCRIPT
+GALLIUM_DRI_LINKER_FLAGS += \
+       -Wl,--version-script=$(top_srcdir)/src/gallium/targets/dri.sym
+
+GALLIUM_VDPAU_LINKER_FLAGS += \
+       -Wl,--version-script=$(top_srcdir)/src/gallium/targets/vdpau.sym
+
+GALLIUM_XVMC_LINKER_FLAGS += \
+       -Wl,--version-script=$(top_srcdir)/src/gallium/targets/xvmc.sym
+
+GALLIUM_OMX_LINKER_FLAGS += \
+       -Wl,--version-script=$(top_srcdir)/src/gallium/targets/omx.sym
+endif
+
+
 GALLIUM_COMMON_LIB_DEPS = \
        -lm \
        $(CLOCK_LIB) \
diff --git a/src/gallium/targets/egl-static/Makefile.am 
b/src/gallium/targets/egl-static/Makefile.am
index bd18f99..ec09b28 100644
--- a/src/gallium/targets/egl-static/Makefile.am
+++ b/src/gallium/targets/egl-static/Makefile.am
@@ -48,12 +48,14 @@ AM_LDFLAGS = \
        -module \
        -no-undefined \
        -avoid-version \
-if HAVE_LD_VERSION_SCRIPT
-       
-Wl,--version-script=$(top_srcdir)/src/gallium/targets/egl-static/egl.sym \
-endif
        $(GC_SECTIONS) \
        $(LD_NO_UNDEFINED)
 
+if HAVE_LD_VERSION_SCRIPT
+AM_LDFLAGS += \
+       
-Wl,--version-script=$(top_srcdir)/src/gallium/targets/egl-static/egl.sym
+endif
+
 egldir = $(EGL_DRIVER_INSTALL_DIR)
 egl_LTLIBRARIES = egl_gallium.la
 
diff --git a/src/gallium/targets/gbm/Makefile.am 
b/src/gallium/targets/gbm/Makefile.am
index ccfddac..5efc0e4 100644
--- a/src/gallium/targets/gbm/Makefile.am
+++ b/src/gallium/targets/gbm/Makefile.am
@@ -67,12 +67,14 @@ gbm_gallium_drm_la_LDFLAGS = \
        -module \
        -no-undefined \
        -avoid-version \
-if HAVE_LD_VERSION_SCRIPT
-       -Wl,--version-script=$(top_srcdir)/src/gallium/targets/gbm/gbm.sym \
-endif
        $(GC_SECTIONS) \
        $(LD_NO_UNDEFINED)
 
+if HAVE_LD_VERSION_SCRIPT
+gbm_gallium_drm_la_LDFLAGS += \
+       -Wl,--version-script=$(top_srcdir)/src/gallium/targets/gbm/gbm.sym
+endif
+
 if HAVE_MESA_LLVM
 gbm_gallium_drm_la_LIBADD += $(LLVM_LIBS)
 gbm_gallium_drm_la_LDFLAGS += $(LLVM_LDFLAGS)
diff --git a/src/gallium/targets/opencl/Makefile.am 
b/src/gallium/targets/opencl/Makefile.am
index 55a73b4..7f2854d 100644
--- a/src/gallium/targets/opencl/Makefile.am
+++ b/src/gallium/targets/opencl/Makefile.am
@@ -6,12 +6,13 @@ lib@OPENCL_LIBNAME@_la_LDFLAGS = \
        $(LLVM_LDFLAGS) \
        -no-undefined \
        -version-number 1:0 \
-if HAVE_LD_VERSION_SCRIPT
-       
-Wl,--version-script=$(top_srcdir)/src/gallium/targets/opencl/opencl.sym \
-endif
        $(GC_SECTIONS) \
        $(LD_NO_UNDEFINED)
 
+if HAVE_LD_VERSION_SCRIPT
+lib@OPENCL_LIBNAME@_la_LDFLAGS += \
+       -Wl,--version-script=$(top_srcdir)/src/gallium/targets/opencl/opencl.sym
+endif
 
 lib@OPENCL_LIBNAME@_la_LIBADD = \
        
$(top_builddir)/src/gallium/auxiliary/pipe-loader/libpipe_loader_client.la \
diff --git a/src/gallium/targets/osmesa/Makefile.am 
b/src/gallium/targets/osmesa/Makefile.am
index 0ec8a26..3a554a9 100644
--- a/src/gallium/targets/osmesa/Makefile.am
+++ b/src/gallium/targets/osmesa/Makefile.am
@@ -45,10 +45,13 @@ lib@OSMESA_LIB@_la_LDFLAGS = \
        -module \
        -no-undefined \
        -version-number @OSMESA_VERSION@ \
-       
-Wl,--version-script=$(top_srcdir)/src/gallium/targets/osmesa/osmesa.sym \
        $(GC_SECTIONS) \
        $(LD_NO_UNDEFINED)
 
+if HAVE_LD_VERSION_SCRIPT
+lib@OSMESA_LIB@_la_LDFLAGS += \
+       -Wl,--version-script=$(top_srcdir)/src/gallium/targets/osmesa/osmesa.sym
+endif
 
 if HAVE_SHARED_GLAPI
 SHARED_GLAPI_LIB = $(top_builddir)/src/mapi/shared-glapi/libglapi.la
diff --git a/src/gallium/targets/pipe-loader/Makefile.am 
b/src/gallium/targets/pipe-loader/Makefile.am
index 93e497f..500dfce 100644
--- a/src/gallium/targets/pipe-loader/Makefile.am
+++ b/src/gallium/targets/pipe-loader/Makefile.am
@@ -47,12 +47,14 @@ AM_LDFLAGS = \
        -module \
        -no-undefined \
        -avoid-version \
-if HAVE_LD_VERSION_SCRIPT
-       
-Wl,--version-script=$(top_srcdir)/src/gallium/targets/pipe-loader/pipe.sym \
-endif
        $(GC_SECTIONS) \
        $(LD_NO_UNDEFINED)
 
+if HAVE_LD_VERSION_SCRIPT
+AM_LDFLAGS += \
+       
-Wl,--version-script=$(top_srcdir)/src/gallium/targets/pipe-loader/pipe.sym
+endif
+
 if HAVE_MESA_LLVM
 PIPE_LIBS += $(LLVM_LIBS)
 AM_LDFLAGS += $(LLVM_LDFLAGS)
-- 
1.9.3

_______________________________________________
mesa-dev mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to