summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Turner <[email protected]>2012-09-10 13:34:09 -0700
committerAndreas Boll <[email protected]>2013-01-10 22:01:06 +0100
commit8dc4048b3bdb4dc3a5b3d392dcde65eb37a87965 (patch)
tree0e2a9081be8838bb09d73443bbdc3a69224edba7
parente04413cbb0597ac3f93dacbe0ed0732d847f7812 (diff)
r300g: Link ralloc.c and register_allocate.c into separate library
-rw-r--r--src/gallium/drivers/r300/Makefile.am17
-rw-r--r--src/gallium/targets/pipe-loader/Makefile1
-rw-r--r--src/gallium/targets/vdpau-r300/Makefile4
-rw-r--r--src/gallium/targets/xorg-r300/Makefile1
-rw-r--r--src/gallium/targets/xvmc-r300/Makefile1
5 files changed, 18 insertions, 6 deletions
diff --git a/src/gallium/drivers/r300/Makefile.am b/src/gallium/drivers/r300/Makefile.am
index 3f39af3b104..3b88f7348f3 100644
--- a/src/gallium/drivers/r300/Makefile.am
+++ b/src/gallium/drivers/r300/Makefile.am
@@ -1,7 +1,7 @@
include Makefile.sources
include $(top_srcdir)/src/gallium/Automake.inc
-noinst_LTLIBRARIES = libr300.la
+noinst_LTLIBRARIES = libr300.la libr300-helper.la
check_PROGRAMS = r300_compiler_tests
testdir = compiler/tests
TESTS = r300_compiler_tests
@@ -26,11 +26,20 @@ r300_compiler_tests_SOURCES = \
$(testdir)/rc_test_helpers.c \
$(testdir)/unit_test.c
-libr300_la_SOURCES = \
- $(C_SOURCES) \
+libr300_la_SOURCES = $(C_SOURCES)
+
+# These two files are included in libmesagallium, which is included in the dri
+# targets. So, they were added directly to r300g the dri-r300 target would have
+# duplicated symbols, and if they weren't the other *-r300 targets would fail
+# with undefined symbols.
+#
+# Solve this by building them into a separate helper library that can be linked
+# in place of libmesagallium.
+libr300_helper_la_SOURCES = \
$(top_srcdir)/src/glsl/ralloc.c \
$(top_srcdir)/src/mesa/program/register_allocate.c
#XXX: Delete this when all r300 targets are converted to automake.
-all-local: libr300.la
+all-local: libr300.la libr300-helper.la
ln -f $(builddir)/.libs/libr300.a $(builddir)/libr300.a
+ ln -f $(builddir)/.libs/libr300-helper.a $(builddir)/libr300-helper.a
diff --git a/src/gallium/targets/pipe-loader/Makefile b/src/gallium/targets/pipe-loader/Makefile
index b8688edcf53..7c17866667c 100644
--- a/src/gallium/targets/pipe-loader/Makefile
+++ b/src/gallium/targets/pipe-loader/Makefile
@@ -48,6 +48,7 @@ nouveau_SYS = $(NOUVEAU_LIBS)
# r300 pipe driver
r300_LIBS = \
$(TOP)/src/gallium/winsys/radeon/drm/libradeonwinsys.a \
+ $(TOP)/src/gallium/drivers/r300/libr300-helper.a \
$(TOP)/src/gallium/drivers/r300/libr300.a
r300_SYS += $(RADEON_LIBS)
diff --git a/src/gallium/targets/vdpau-r300/Makefile b/src/gallium/targets/vdpau-r300/Makefile
index e79c920feb7..cc9252d1dfe 100644
--- a/src/gallium/targets/vdpau-r300/Makefile
+++ b/src/gallium/targets/vdpau-r300/Makefile
@@ -6,14 +6,14 @@ LIBBASENAME = vdpau_r300
DRIVER_INCLUDES = $(shell $(PKG_CONFIG) libdrm --cflags-only-I)
PIPE_DRIVERS = \
+ $(TOP)/src/gallium/drivers/r300/libr300-helper.a \
$(TOP)/src/gallium/drivers/r300/libr300.a \
$(TOP)/src/gallium/winsys/radeon/drm/libradeonwinsys.a \
$(TOP)/src/gallium/drivers/softpipe/libsoftpipe.a \
$(TOP)/src/gallium/drivers/rbug/librbug.a \
$(TOP)/src/gallium/drivers/trace/libtrace.a \
$(TOP)/src/gallium/drivers/galahad/libgalahad.a \
- $(TOP)/src/gallium/auxiliary/libgallium.a \
- $(TOP)/src/mesa/libmesagallium.a
+ $(TOP)/src/gallium/auxiliary/libgallium.a
C_SOURCES = \
target.c \
diff --git a/src/gallium/targets/xorg-r300/Makefile b/src/gallium/targets/xorg-r300/Makefile
index 45bb3d7e701..08b87185f76 100644
--- a/src/gallium/targets/xorg-r300/Makefile
+++ b/src/gallium/targets/xorg-r300/Makefile
@@ -13,6 +13,7 @@ DRIVER_DEFINES = \
DRIVER_PIPES = \
$(TOP)/src/gallium/state_trackers/xorg/libxorgtracker.a \
$(TOP)/src/gallium/winsys/radeon/drm/libradeonwinsys.a \
+ $(TOP)/src/gallium/drivers/r300/libr300-helper.a \
$(TOP)/src/gallium/drivers/r300/libr300.a \
$(TOP)/src/gallium/drivers/galahad/libgalahad.a \
$(TOP)/src/gallium/drivers/trace/libtrace.a \
diff --git a/src/gallium/targets/xvmc-r300/Makefile b/src/gallium/targets/xvmc-r300/Makefile
index d2ab4886944..0bf75cbe070 100644
--- a/src/gallium/targets/xvmc-r300/Makefile
+++ b/src/gallium/targets/xvmc-r300/Makefile
@@ -6,6 +6,7 @@ LIBBASENAME = XvMCr300
DRIVER_INCLUDES = $(shell $(PKG_CONFIG) libdrm --cflags-only-I)
PIPE_DRIVERS = \
+ $(TOP)/src/gallium/drivers/r300/libr300-helper.a \
$(TOP)/src/gallium/drivers/r300/libr300.a \
$(TOP)/src/gallium/winsys/radeon/drm/libradeonwinsys.a \
$(TOP)/src/gallium/drivers/trace/libtrace.a \