automake: don't enable -Wl,--no-undefined on OpenBSD
[mesa.git] / src / gallium / Automake.inc
index f67b2951f42e95105ffa505f60eb79b4a5d08e89..bafde36c6b0f3de9072c5d2640a27bdcaa5f2940 100644 (file)
@@ -26,6 +26,19 @@ GALLIUM_DRIVER_CXXFLAGS = \
        $(DEFINES) \
        $(VISIBILITY_CXXFLAGS)
 
+GALLIUM_DRI_CFLAGS = \
+       -I$(top_srcdir)/include \
+       -I$(top_srcdir)/src/gallium/include \
+       -I$(top_srcdir)/src/gallium/auxiliary \
+       -I$(top_srcdir)/src/gallium/drivers \
+       -I$(top_srcdir)/src/gallium/winsys \
+       -I$(top_srcdir)/src/mesa \
+       -I$(top_srcdir)/src/mapi \
+       $(DEFINES) \
+       $(PTHREAD_CFLAGS) \
+       $(LIBDRM_CFLAGS) \
+       $(VISIBILITY_CFLAGS)
+
 GALLIUM_VIDEO_CFLAGS = \
        -I$(top_srcdir)/include \
        -I$(top_srcdir)/src/gallium/include \
@@ -37,18 +50,75 @@ GALLIUM_VIDEO_CFLAGS = \
        $(LIBDRM_CFLAGS) \
        $(VISIBILITY_CFLAGS)
 
+
+DRI_VERSION_SCRIPT ?= $(top_srcdir)/src/gallium/state_trackers/dri/dri.link
+
+GALLIUM_DRI_LINKER_FLAGS = \
+       -shared \
+       -module \
+       -avoid-version \
+       $(GC_SECTIONS) \
+       -Wl,--version-script=$(DRI_VERSION_SCRIPT)
+
 GALLIUM_VDPAU_LINKER_FLAGS = \
+       -shared \
        -module \
+       -no-undefined \
        -version-number $(VDPAU_MAJOR):$(VDPAU_MINOR) \
        -export-symbols-regex $(VDPAU_EXPORTS) \
+       $(GC_SECTIONS) \
+       $(LD_NO_UNDEFINED)
+
+GALLIUM_XVMC_LINKER_FLAGS = \
+       -shared \
+       -module \
+       -no-undefined \
+       -version-number $(XVMC_MAJOR):$(XVMC_MINOR) \
+       -export-symbols-regex '^XvMC' \
+       $(GC_SECTIONS) \
+       $(LD_NO_UNDEFINED)
+
+GALLIUM_OMX_LINKER_FLAGS = \
        -shared \
-       -no-undefined
+       -module \
+       -no-undefined \
+       -export-symbols-regex $(EXPORTS) \
+       $(GC_SECTIONS) \
+       $(LD_NO_UNDEFINED)
+
+GALLIUM_COMMON_LIB_DEPS = \
+       -lm \
+       $(CLOCK_LIB) \
+       $(PTHREAD_LIBS) \
+       $(DLOPEN_LIBS)
+
+GALLIUM_DRI_LIB_DEPS = \
+       $(top_builddir)/src/mesa/libmesagallium.la \
+       $(top_builddir)/src/gallium/auxiliary/libgallium.la \
+       $(SELINUX_LIBS) \
+       $(LIBDRM_LIBS) \
+       $(EXPAT_LIBS) \
+       $(GALLIUM_COMMON_LIB_DEPS)
 
 GALLIUM_VDPAU_LIB_DEPS = \
        $(top_builddir)/src/gallium/auxiliary/libgallium.la \
        $(top_builddir)/src/gallium/state_trackers/vdpau/libvdpautracker.la \
        $(VDPAU_LIBS) \
-       $(LIBDRM_LIBS)
+       $(LIBDRM_LIBS) \
+       $(GALLIUM_COMMON_LIB_DEPS)
+
+GALLIUM_XVMC_LIB_DEPS = \
+       $(top_builddir)/src/gallium/auxiliary/libgallium.la \
+       $(top_builddir)/src/gallium/state_trackers/xvmc/libxvmctracker.la \
+       $(XVMC_LIBS) \
+       $(LIBDRM_LIBS) \
+       $(GALLIUM_COMMON_LIB_DEPS)
+
+GALLIUM_OMX_LIB_DEPS = \
+       $(top_builddir)/src/gallium/auxiliary/libgallium.la \
+       $(top_builddir)/src/gallium/state_trackers/omx/libomxtracker.la \
+       $(OMX_LIBS) \
+       $(GALLIUM_COMMON_LIB_DEPS)
 
 GALLIUM_WINSYS_CFLAGS = \
        -I$(top_srcdir)/include \
@@ -56,3 +126,17 @@ GALLIUM_WINSYS_CFLAGS = \
        -I$(top_srcdir)/src/gallium/auxiliary \
        $(DEFINES) \
        $(VISIBILITY_CFLAGS)
+
+if HAVE_MESA_LLVM
+
+GALLIUM_DRI_LINKER_FLAGS += $(LLVM_LDFLAGS)
+GALLIUM_VDPAU_LINKER_FLAGS += $(LLVM_LDFLAGS)
+GALLIUM_XVMC_LINKER_FLAGS += $(LLVM_LDFLAGS)
+GALLIUM_OMX_LINKER_FLAGS += $(LLVM_LDFLAGS)
+
+GALLIUM_DRI_LIB_DEPS += $(LLVM_LIBS)
+GALLIUM_VDPAU_LIB_DEPS += $(LLVM_LIBS)
+GALLIUM_XVMC_LIB_DEPS += $(LLVM_LIBS)
+GALLIUM_OMX_LIB_DEPS += $(LLVM_LIBS)
+
+endif