gallium/targets: explicitly include a dummy.cpp and remove all the LINK mayhem
authorEmil Velikov <emil.l.velikov@gmail.com>
Tue, 11 Mar 2014 15:24:07 +0000 (15:24 +0000)
committerEmil Velikov <emil.l.velikov@gmail.com>
Mon, 31 Mar 2014 11:26:47 +0000 (12:26 +0100)
Explicitly setting the linker variable was required for old and broken
build toolchains. At this point this should no longer be needed, and
setting the sources lists will trigger generation of the correct LINK
variables.

Explicitly include dummy.cpp to use g++ to link the static library which
in most cases is based upon C++ code.

v2: Reword commit message.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
14 files changed:
src/gallium/targets/dri-i915/Makefile.am
src/gallium/targets/dri-ilo/Makefile.am
src/gallium/targets/dri-swrast/Makefile.am
src/gallium/targets/dri-vmwgfx/Makefile.am
src/gallium/targets/gbm/Makefile.am
src/gallium/targets/libgl-xlib/Makefile.am
src/gallium/targets/opencl/Makefile.am
src/gallium/targets/osmesa/Makefile.am
src/gallium/targets/r600/dri/Makefile.am
src/gallium/targets/r600/omx/Makefile.am
src/gallium/targets/r600/vdpau/Makefile.am
src/gallium/targets/r600/xvmc/Makefile.am
src/gallium/targets/radeonsi/omx/Makefile.am
src/gallium/targets/xa/Makefile.am

index c9988e3d1a3cf9b333547727ece82c3db5186663..d51144da3b7c730661db1e32965ca6eaedc90077 100644 (file)
@@ -33,6 +33,7 @@ AM_CPPFLAGS = \
 dridir = $(DRI_DRIVER_INSTALL_DIR)
 dri_LTLIBRARIES = i915_dri.la
 
+nodist_EXTRA_i915_dri_la_SOURCES = dummy.cpp
 i915_dri_la_SOURCES = target.c
 
 i915_dri_la_LDFLAGS = $(GALLIUM_DRI_LINKER_FLAGS)
@@ -52,8 +53,6 @@ i915_dri_la_LIBADD = \
        $(GALLIUM_DRI_LIB_DEPS) \
        $(INTEL_LIBS)
 
-nodist_EXTRA_i915_dri_la_SOURCES = dummy.cpp
-
 if HAVE_MESA_LLVM
 AM_CPPFLAGS += -DGALLIUM_LLVMPIPE
 i915_dri_la_LIBADD += $(top_builddir)/src/gallium/drivers/llvmpipe/libllvmpipe.la
index f04119ba8014312105ae2d25fa0b0a83954e2d3d..d38dcdc3d00be83988782671378ee609f640f8ca 100644 (file)
@@ -33,6 +33,7 @@ AM_CPPFLAGS = \
 dridir = $(DRI_DRIVER_INSTALL_DIR)
 dri_LTLIBRARIES = ilo_dri.la
 
+nodist_EXTRA_ilo_dri_la_SOURCES = dummy.cpp
 ilo_dri_la_SOURCES = target.c
 
 ilo_dri_la_LDFLAGS = $(GALLIUM_DRI_LINKER_FLAGS)
@@ -50,7 +51,4 @@ ilo_dri_la_LIBADD = \
        $(GALLIUM_DRI_LIB_DEPS) \
        $(INTEL_LIBS)
 
-# Mention a dummy pure C++ file to trigger generation of the $(LINK) variable
-nodist_EXTRA_ilo_dri_la_SOURCES = dummy-cpp.cpp
-
 include $(top_srcdir)/install-gallium-links.mk
index 06eb16aec49dfadb4664ccac7a5ae7488c8777ae..5238459609ae9d4350b0251aa41510b1182c43d9 100644 (file)
@@ -36,6 +36,7 @@ AM_CPPFLAGS = \
 dridir = $(DRI_DRIVER_INSTALL_DIR)
 dri_LTLIBRARIES = swrast_dri.la
 
+nodist_EXTRA_swrast_dri_la_SOURCES = dummy.cpp
 swrast_dri_la_SOURCES = \
        swrast_drm_api.c \
        $(top_srcdir)/src/mesa/drivers/dri/common/utils.c \
@@ -54,8 +55,6 @@ swrast_dri_la_LIBADD = \
        $(top_builddir)/src/gallium/drivers/rbug/librbug.la \
        $(GALLIUM_DRI_LIB_DEPS)
 
-nodist_EXTRA_swrast_dri_la_SOURCES = dummy.cpp
-
 if HAVE_MESA_LLVM
 AM_CPPFLAGS += -DGALLIUM_LLVMPIPE
 swrast_dri_la_LIBADD += $(top_builddir)/src/gallium/drivers/llvmpipe/libllvmpipe.la
index 871dc0d6a26e3b567c3071424b5589dee0a159ca..ee5f07bee5ef6af62bf2d828781329b4548e4188 100644 (file)
@@ -31,6 +31,7 @@ AM_CPPFLAGS = \
 dridir = $(DRI_DRIVER_INSTALL_DIR)
 dri_LTLIBRARIES = vmwgfx_dri.la
 
+nodist_EXTRA_vmwgfx_dri_la_SOURCES = dummy.cpp
 vmwgfx_dri_la_SOURCES = \
        target.c \
        vmw_powf.c
@@ -49,8 +50,4 @@ vmwgfx_dri_la_LIBADD = \
        $(top_builddir)/src/gallium/drivers/svga/libsvga.la \
        $(GALLIUM_DRI_LIB_DEPS)
 
-vmwgfx_dri_la_LINK = $(CXXLINK) $(vmwgfx_dri_la_LDFLAGS)
-# Mention a dummy pure C++ file to trigger generation of the $(LINK) variable
-nodist_EXTRA_vmwgfx_dri_la_SOURCES = dummy-cpp.cpp
-
 include $(top_srcdir)/install-gallium-links.mk
index d5255e94b8635227daa3ba1814256de422882bb3..e36d317b0693fd29f36a0de9ba415e7c691e1595 100644 (file)
@@ -39,6 +39,7 @@ AM_CFLAGS = \
 
 gbm_LTLIBRARIES = gbm_gallium_drm.la
 
+nodist_EXTRA_gbm_gallium_drm_la_SOURCES = dummy.cpp
 gbm_gallium_drm_la_SOURCES = gbm.c
 
 gbm_gallium_drm_la_LIBADD = \
@@ -64,18 +65,9 @@ endif
 
 gbm_gallium_drm_la_LDFLAGS = -no-undefined -avoid-version -module
 
-# FIXME: this shouldn't be needed
 if HAVE_MESA_LLVM
-gbm_gallium_drm_la_LINK = $(CXXLINK) $(gbm_gallium_drm_la_LDFLAGS)
-# Mention a dummy pure C++ file to trigger generation of the $(LINK) variable
-nodist_EXTRA_gbm_gallium_drm_la_SOURCES = dummy-cpp.cpp
-
 gbm_gallium_drm_la_LIBADD += $(LLVM_LIBS)
 gbm_gallium_drm_la_LDFLAGS += $(LLVM_LDFLAGS)
-else
-gbm_gallium_drm_la_LINK = $(CXXLINK) $(gbm_gallium_drm_la_LDFLAGS)
-# Mention a dummy pure C file to trigger generation of the $(LINK) variable
-nodist_EXTRA_gbm_gallium_drm_la_SOURCES = dummy-c.c
 endif
 
 TESTS = gallium-gbm-symbols-check
index 7e84ffe126211d7a653f4b8fc02f919694cb16ed..cc382db08b2d94cd8fa96a284214c57eceb3a11c 100644 (file)
@@ -42,6 +42,7 @@ AM_CFLAGS = $(X11_INCLUDES)
 
 lib_LTLIBRARIES = libGL.la
 
+nodist_EXTRA_libGL_la_SOURCES = dummy.cpp
 libGL_la_SOURCES = xlib.c
 libGL_la_LDFLAGS = -version-number $(GL_MAJOR):$(GL_MINOR):$(GL_TINY) -no-undefined
 
@@ -59,17 +60,9 @@ libGL_la_LIBADD = \
        $(CLOCK_LIB)
 
 if HAVE_MESA_LLVM
-libGL_la_LINK = $(CXXLINK) $(libGL_la_LDFLAGS)
-# Mention a dummy pure C++ file to trigger generation of the $(LINK) variable
-nodist_EXTRA_libGL_la_SOURCES = dummy-cpp.cpp
-
 libGL_la_LIBADD += $(top_builddir)/src/gallium/drivers/llvmpipe/libllvmpipe.la $(LLVM_LIBS)
 AM_CPPFLAGS += -DGALLIUM_LLVMPIPE
 libGL_la_LDFLAGS += $(LLVM_LDFLAGS)
-else
-libGL_la_LINK = $(CXXLINK) $(libGL_la_LDFLAGS)
-# Mention a dummy pure C file to trigger generation of the $(LINK) variable
-nodist_EXTRA_libGL_la_SOURCES = dummy-c.c
 endif
 
 include $(top_srcdir)/install-gallium-links.mk
index 20a52476842dda69d8aec39e59bf6a88c35be851..eb25a5e47aacbad7e4cdd07fca9431d20024cfd8 100644 (file)
@@ -41,10 +41,9 @@ lib@OPENCL_LIBNAME@_la_LIBADD += \
        $(LIBDRM_LIBS)
 endif
 
+nodist_EXTRA_lib@OPENCL_LIBNAME@_la_SOURCES = dummy.cpp
 lib@OPENCL_LIBNAME@_la_SOURCES =
 
-# Force usage of a C++ linker
-nodist_EXTRA_lib@OPENCL_LIBNAME@_la_SOURCES = dummy.cpp
 
 if HAVE_CLOVER_ICD
 icddir = /etc/OpenCL/vendors/
index 48154e1c2d3d483690b0f4d0cebbd0fdde6feef9..2b133c44cb98acd5acd65159fb5ff6d5b6f70c24 100644 (file)
@@ -36,6 +36,7 @@ AM_CPPFLAGS = \
 
 lib_LTLIBRARIES = lib@OSMESA_LIB@.la
 
+nodist_EXTRA_lib@OSMESA_LIB@_la_SOURCES = dummy.cpp
 lib@OSMESA_LIB@_la_SOURCES = target.c
 
 lib@OSMESA_LIB@_la_LDFLAGS = -module -version-number @OSMESA_VERSION@ -no-undefined
@@ -56,9 +57,6 @@ lib@OSMESA_LIB@_la_LIBADD = \
        $(OSMESA_LIB_DEPS) \
        $(CLOCK_LIB)
 
-
-nodist_EXTRA_lib@OSMESA_LIB@_la_SOURCES = dummy.cpp
-
 if HAVE_MESA_LLVM
 AM_CPPFLAGS += -DGALLIUM_LLVMPIPE
 lib@OSMESA_LIB@_la_LDFLAGS += $(LLVM_LDFLAGS)
index 9f7c096ddf796cb7d68e8c6403cda3d1e77895a8..f828a734379dcd645700af508e626bea96d14e99 100644 (file)
@@ -33,6 +33,7 @@ AM_CPPFLAGS = \
 dridir = $(DRI_DRIVER_INSTALL_DIR)
 dri_LTLIBRARIES = r600_dri.la
 
+nodist_EXTRA_r600_dri_la_SOURCES = dummy.cpp
 r600_dri_la_SOURCES = \
        drm_target.c
 
@@ -54,6 +55,4 @@ r600_dri_la_LIBADD = \
        $(LIBDRM_LIBS) \
        $(RADEON_LIBS)
 
-nodist_EXTRA_r600_dri_la_SOURCES = dummy.cpp
-
 include $(top_srcdir)/install-gallium-links.mk
index 1f07595d8828ecd075c713382b86f0d3a49623c7..22ef08f3a41af1c6d950224efb767b2261157917 100644 (file)
@@ -36,6 +36,7 @@ AM_CPPFLAGS = \
 omxdir = $(OMX_LIB_INSTALL_DIR)
 omx_LTLIBRARIES = libomx_r600.la
 
+nodist_EXTRA_libomx_r600_la_SOURCES = dummy.cpp
 libomx_r600_la_SOURCES = \
        drm_target.c \
        $(top_srcdir)/src/gallium/auxiliary/vl/vl_winsys_dri.c
@@ -50,14 +51,3 @@ libomx_r600_la_LIBADD = \
        $(LIBDRM_LIBS) \
        $(RADEON_LIBS) \
        -lstdc++
-
-if HAVE_MESA_LLVM
-libomx_r600_la_LINK = $(CXXLINK) $(libomx_r600_la_LDFLAGS)
-# Mention a dummy pure C++ file to trigger generation of the $(LINK) variable
-nodist_EXTRA_libomx_r600_la_SOURCES = dummy-cpp.cpp
-
-else
-libomx_r600_la_LINK = $(LINK) $(libomx_r600_la_LDFLAGS)
-# Mention a dummy pure C file to trigger generation of the $(LINK) variable
-nodist_EXTRA_libomx_r600_la_SOURCES = dummy-c.c
-endif
index 1ff35e0d2960834cb2d01f1f50af6fb49bdb7d7e..455d90f795b36ad5f2bf8e32dae6d2298bbcb26d 100644 (file)
@@ -30,6 +30,7 @@ AM_CFLAGS = \
 vdpaudir = $(VDPAU_LIB_INSTALL_DIR)
 vdpau_LTLIBRARIES = libvdpau_r600.la
 
+nodist_EXTRA_libvdpau_r600_la_SOURCES = dummy.cpp
 libvdpau_r600_la_SOURCES = \
        drm_target.c \
        $(top_srcdir)/src/gallium/auxiliary/vl/vl_winsys_dri.c
@@ -44,8 +45,4 @@ libvdpau_r600_la_LIBADD = \
        $(GALLIUM_VDPAU_LIB_DEPS) \
        $(RADEON_LIBS)
 
-libvdpau_r600_la_LINK = $(CXXLINK) $(libvdpau_r600_la_LDFLAGS)
-# Mention a dummy pure C++ file to trigger generation of the $(LINK) variable
-nodist_EXTRA_libvdpau_r600_la_SOURCES = dummy-cpp.cpp
-
 include $(top_srcdir)/install-gallium-links.mk
index 55775af72b1a18f5124187a295a5252013e43c05..56b0a6d75bf15da8cfd6b796ec9aaed07b5b3d7c 100644 (file)
@@ -28,6 +28,7 @@ AM_CFLAGS = \
 xvmcdir = $(XVMC_LIB_INSTALL_DIR)
 xvmc_LTLIBRARIES = libXvMCr600.la
 
+nodist_EXTRA_libXvMCr600_la_SOURCES = dummy.cpp
 libXvMCr600_la_SOURCES = \
        drm_target.c \
        $(top_srcdir)/src/gallium/auxiliary/vl/vl_winsys_dri.c
@@ -41,14 +42,3 @@ libXvMCr600_la_LIBADD = \
        $(GALLIUM_XVMC_LIB_DEPS) \
        $(GALLIUM_DRI_LIB_DEPS) \
        $(RADEON_LIBS)
-
-if HAVE_MESA_LLVM
-libXvMCr600_la_LINK = $(CXXLINK) $(libXvMCr600_la_LDFLAGS)
-# Mention a dummy pure C++ file to trigger generation of the $(LINK) variable
-nodist_EXTRA_libXvMCr600_la_SOURCES = dummy-cpp.cpp
-
-else
-libXvMCr600_la_LINK = $(LINK) $(libXvMCr600_la_LDFLAGS)
-# Mention a dummy pure C file to trigger generation of the $(LINK) variable
-nodist_EXTRA_libXvMCr600_la_SOURCES = dummy-c.c
-endif
index c2065cf892678fb31961f782d1ed11da3ef1432d..439e91c0578e30f8ca4f53959823a11a6f3e2b05 100644 (file)
@@ -36,6 +36,7 @@ AM_CPPFLAGS = \
 omxdir = $(OMX_LIB_INSTALL_DIR)
 omx_LTLIBRARIES = libomx_radeonsi.la
 
+nodist_EXTRA_libomx_radeonsi_la_SOURCES = dummy.cpp
 libomx_radeonsi_la_SOURCES = \
        drm_target.c \
        $(top_srcdir)/src/gallium/auxiliary/vl/vl_winsys_dri.c
@@ -49,10 +50,3 @@ libomx_radeonsi_la_LIBADD = \
        $(GALLIUM_OMX_LIB_DEPS) \
        $(LIBDRM_LIBS) \
        $(RADEON_LIBS)
-
-if HAVE_MESA_LLVM
-libomx_radeonsi_la_LINK = $(CXXLINK) $(libomx_radeonsi_la_LDFLAGS)
-# Mention a dummy pure C++ file to trigger generation of the $(LINK) variable
-nodist_EXTRA_libomx_radeonsi_la_SOURCES = dummy-cpp.cpp
-
-endif
index 1753f1d49fa63bd306132ee1efa998e87679328a..1d4f095da338284872706a4faa85cf2d5b1d79af 100644 (file)
@@ -36,6 +36,7 @@ pkgconfig_DATA = xatracker.pc
 
 lib_LTLIBRARIES = libxatracker.la
 
+nodist_EXTRA_libxatracker_la_SOURCES = dummy.cpp
 libxatracker_la_SOURCES =
 
 libxatracker_la_LIBADD = \
@@ -62,16 +63,9 @@ libxatracker_la_LDFLAGS = \
        -no-undefined \
        -version-number $(XA_MAJOR):$(XA_MINOR):$(XA_TINY)
 
-# FIXME: this shouldn't be needed
 if HAVE_MESA_LLVM
-# Mention a dummy pure C++ file to trigger generation of the $(LINK) variable
-nodist_EXTRA_libxatracker_la_SOURCES = dummy-cpp.cpp
-
 libxatracker_la_LIBADD += $(LLVM_LIBS)
 libxatracker_la_LDFLAGS += $(LLVM_LDFLAGS)
-else
-# Mention a dummy pure C file to trigger generation of the $(LINK) variable
-nodist_EXTRA_libxatracker_la_SOURCES = dummy-c.c
 endif
 
 include $(top_srcdir)/install-lib-links.mk