[Mesa-dev] [PATCH 07/17] gallium/nouveau: add automake target 'template'
Emil Velikov
emil.l.velikov at gmail.com
Sun Sep 21 16:44:04 PDT 2014
Rather than duplicating the libdeps, extra define... all over the
targets, define them only once and use when applicable.
Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
---
src/gallium/drivers/nouveau/Automake.inc | 11 +++++++++++
src/gallium/targets/dri/Makefile.am | 21 +++++++++------------
src/gallium/targets/egl-static/Makefile.am | 15 ++++++++-------
src/gallium/targets/gbm/Makefile.am | 16 +++++++---------
src/gallium/targets/omx/Makefile.am | 16 +++++++---------
src/gallium/targets/vdpau/Makefile.am | 21 +++++++++------------
src/gallium/targets/xa/Makefile.am | 16 +++++++---------
src/gallium/targets/xvmc/Makefile.am | 19 ++++++++-----------
8 files changed, 66 insertions(+), 69 deletions(-)
create mode 100644 src/gallium/drivers/nouveau/Automake.inc
diff --git a/src/gallium/drivers/nouveau/Automake.inc b/src/gallium/drivers/nouveau/Automake.inc
new file mode 100644
index 0000000..1d383fc
--- /dev/null
+++ b/src/gallium/drivers/nouveau/Automake.inc
@@ -0,0 +1,11 @@
+if HAVE_GALLIUM_NOUVEAU
+
+TARGET_DRIVERS += nouveau
+TARGET_CPPFLAGS += -DGALLIUM_NOUVEAU
+TARGET_LIB_DEPS += \
+ $(top_builddir)/src/gallium/winsys/nouveau/drm/libnouveaudrm.la \
+ $(top_builddir)/src/gallium/drivers/nouveau/libnouveau.la \
+ $(NOUVEAU_LIBS) \
+ $(LIBDRM_LIBS)
+
+endif
diff --git a/src/gallium/targets/dri/Makefile.am b/src/gallium/targets/dri/Makefile.am
index 7c1bcf0..b75d7b0 100644
--- a/src/gallium/targets/dri/Makefile.am
+++ b/src/gallium/targets/dri/Makefile.am
@@ -64,6 +64,10 @@ STATIC_TARGET_CPPFLAGS =
STATIC_TARGET_LIB_DEPS = \
$(top_builddir)/src/loader/libloader.la
+TARGET_DRIVERS =
+TARGET_CPPFLAGS =
+TARGET_LIB_DEPS =
+
if HAVE_GALLIUM_I915
MEGADRIVERS += i915
STATIC_TARGET_CPPFLAGS += -DGALLIUM_I915
@@ -82,14 +86,7 @@ STATIC_TARGET_LIB_DEPS += \
$(INTEL_LIBS)
endif
-if HAVE_GALLIUM_NOUVEAU
-MEGADRIVERS += nouveau
-STATIC_TARGET_CPPFLAGS += -DGALLIUM_NOUVEAU
-STATIC_TARGET_LIB_DEPS += \
- $(top_builddir)/src/gallium/winsys/nouveau/drm/libnouveaudrm.la \
- $(top_builddir)/src/gallium/drivers/nouveau/libnouveau.la \
- $(NOUVEAU_LIBS)
-endif
+include $(top_srcdir)/src/gallium/drivers/nouveau/Automake.inc
if NEED_RADEON_DRM_WINSYS
STATIC_TARGET_LIB_DEPS += \
@@ -178,8 +175,8 @@ endif
if HAVE_GALLIUM_STATIC_TARGETS
gallium_dri_la_SOURCES += target.c
-AM_CPPFLAGS += $(STATIC_TARGET_CPPFLAGS)
-gallium_dri_la_LIBADD += $(STATIC_TARGET_LIB_DEPS)
+AM_CPPFLAGS += $(STATIC_TARGET_CPPFLAGS) $(TARGET_CPPFLAGS)
+gallium_dri_la_LIBADD += $(STATIC_TARGET_LIB_DEPS) $(TARGET_LIB_DEPS)
else # HAVE_GALLIUM_STATIC_TARGETS
@@ -200,7 +197,7 @@ if HAVE_COMPAT_SYMLINKS
all-local: $(dri_LTLIBRARIES)
$(AM_V_GEN)link_dir=$(top_builddir)/$(LIB_DIR)/gallium; \
$(MKDIR_P) $${link_dir}; \
- for i in $(MEGADRIVERS); do \
+ for i in $(MEGADRIVERS) $(TARGET_DRIVERS); do \
j=gallium_dri.so; \
k=$${i}_dri.so; \
ln -f .libs/$${j} \
@@ -212,7 +209,7 @@ endif
# gallium_dri.so in the set of final installed files.
install-data-hook:
$(AM_V_GEN)dest_dir=$(DESTDIR)/$(dridir); \
- for i in $(MEGADRIVERS); do \
+ for i in $(MEGADRIVERS) $(TARGET_DRIVERS); do \
j=gallium_dri.so; \
k=$${i}_dri.so; \
ln -f $${dest_dir}/$${j} \
diff --git a/src/gallium/targets/egl-static/Makefile.am b/src/gallium/targets/egl-static/Makefile.am
index 84f3338..85d2005 100644
--- a/src/gallium/targets/egl-static/Makefile.am
+++ b/src/gallium/targets/egl-static/Makefile.am
@@ -157,6 +157,10 @@ endif
egl_gallium_la_LDFLAGS = $(AM_LDFLAGS)
egl_gallium_la_CPPFLAGS = $(AM_CPPFLAGS)
+TARGET_DRIVERS =
+TARGET_CPPFLAGS =
+TARGET_LIB_DEPS =
+
if HAVE_GALLIUM_I915
egl_gallium_la_CPPFLAGS += -DGALLIUM_I915
egl_gallium_la_LIBADD += \
@@ -173,13 +177,7 @@ egl_gallium_la_LIBADD += \
$(INTEL_LIBS)
endif
-if HAVE_GALLIUM_NOUVEAU
-egl_gallium_la_CPPFLAGS += -DGALLIUM_NOUVEAU
-egl_gallium_la_LIBADD += \
- $(top_builddir)/src/gallium/winsys/nouveau/drm/libnouveaudrm.la \
- $(top_builddir)/src/gallium/drivers/nouveau/libnouveau.la \
- $(NOUVEAU_LIBS)
-endif
+include $(top_srcdir)/src/gallium/drivers/nouveau/Automake.inc
if NEED_RADEON_DRM_WINSYS
egl_gallium_la_LIBADD += \
@@ -245,6 +243,9 @@ egl_gallium_la_LIBADD += \
$(top_builddir)/src/gallium/drivers/llvmpipe/libllvmpipe.la
endif
+egl_gallium_la_CPPFLAGS += $(TARGET_CPPFLAGS)
+egl_gallium_la_LIBADD += $(TARGET_LIB_DEPS)
+
#else # HAVE_GALLIUM_STATIC_TARGETS
#egl_gallium_la_LIBADD += \
diff --git a/src/gallium/targets/gbm/Makefile.am b/src/gallium/targets/gbm/Makefile.am
index 42ea04f..7b40cc1 100644
--- a/src/gallium/targets/gbm/Makefile.am
+++ b/src/gallium/targets/gbm/Makefile.am
@@ -56,6 +56,10 @@ STATIC_TARGET_CPPFLAGS =
STATIC_TARGET_LIB_DEPS = \
$(top_builddir)/src/loader/libloader.la
+TARGET_DRIVERS =
+TARGET_CPPFLAGS =
+TARGET_LIB_DEPS =
+
if HAVE_GALLIUM_I915
STATIC_TARGET_CPPFLAGS += -DGALLIUM_I915
STATIC_TARGET_LIB_DEPS += \
@@ -72,13 +76,7 @@ STATIC_TARGET_LIB_DEPS += \
$(INTEL_LIBS)
endif
-if HAVE_GALLIUM_NOUVEAU
-STATIC_TARGET_CPPFLAGS += -DGALLIUM_NOUVEAU
-STATIC_TARGET_LIB_DEPS += \
- $(top_builddir)/src/gallium/winsys/nouveau/drm/libnouveaudrm.la \
- $(top_builddir)/src/gallium/drivers/nouveau/libnouveau.la \
- $(NOUVEAU_LIBS)
-endif
+include $(top_srcdir)/src/gallium/drivers/nouveau/Automake.inc
if NEED_RADEON_DRM_WINSYS
STATIC_TARGET_LIB_DEPS += \
@@ -129,8 +127,8 @@ STATIC_TARGET_LIB_DEPS += \
endif
gbm_gallium_drm_la_SOURCES += target.c
-gbm_gallium_drm_la_CPPFLAGS = $(STATIC_TARGET_CPPFLAGS)
-gbm_gallium_drm_la_LIBADD += $(STATIC_TARGET_LIB_DEPS)
+gbm_gallium_drm_la_CPPFLAGS = $(STATIC_TARGET_CPPFLAGS) $(TARGET_CPPFLAGS)
+gbm_gallium_drm_la_LIBADD += $(STATIC_TARGET_LIB_DEPS) $(TARGET_LIB_DEPS)
else # HAVE_GALLIUM_STATIC_TARGETS
gbm_gallium_drm_la_LIBADD += \
diff --git a/src/gallium/targets/omx/Makefile.am b/src/gallium/targets/omx/Makefile.am
index 75adc74..e906ce1 100644
--- a/src/gallium/targets/omx/Makefile.am
+++ b/src/gallium/targets/omx/Makefile.am
@@ -38,13 +38,11 @@ STATIC_TARGET_CPPFLAGS =
STATIC_TARGET_LIB_DEPS = \
$(top_builddir)/src/loader/libloader.la
-if HAVE_GALLIUM_NOUVEAU
-STATIC_TARGET_CPPFLAGS += -DGALLIUM_NOUVEAU
-STATIC_TARGET_LIB_DEPS += \
- $(top_builddir)/src/gallium/winsys/nouveau/drm/libnouveaudrm.la \
- $(top_builddir)/src/gallium/drivers/nouveau/libnouveau.la \
- $(NOUVEAU_LIBS)
-endif
+TARGET_DRIVERS =
+TARGET_CPPFLAGS =
+TARGET_LIB_DEPS =
+
+include $(top_srcdir)/src/gallium/drivers/nouveau/Automake.inc
# Radeon winsys chaos
if HAVE_GALLIUM_R600
@@ -77,8 +75,8 @@ STATIC_TARGET_LIB_DEPS += \
endif
libomx_mesa_la_SOURCES += target.c
-libomx_mesa_la_CPPFLAGS = $(STATIC_TARGET_CPPFLAGS)
-libomx_mesa_la_LIBADD += $(STATIC_TARGET_LIB_DEPS)
+libomx_mesa_la_CPPFLAGS = $(STATIC_TARGET_CPPFLAGS) $(TARGET_CPPFLAGS)
+libomx_mesa_la_LIBADD += $(STATIC_TARGET_LIB_DEPS) $(TARGET_LIB_DEPS)
else # HAVE_GALLIUM_STATIC_TARGETS
diff --git a/src/gallium/targets/vdpau/Makefile.am b/src/gallium/targets/vdpau/Makefile.am
index f673d2c..3b39108 100644
--- a/src/gallium/targets/vdpau/Makefile.am
+++ b/src/gallium/targets/vdpau/Makefile.am
@@ -43,14 +43,11 @@ STATIC_TARGET_CPPFLAGS =
STATIC_TARGET_LIB_DEPS = \
$(top_builddir)/src/loader/libloader.la
-if HAVE_GALLIUM_NOUVEAU
-MEGADRIVERS += nouveau
-STATIC_TARGET_CPPFLAGS += -DGALLIUM_NOUVEAU
-STATIC_TARGET_LIB_DEPS += \
- $(top_builddir)/src/gallium/winsys/nouveau/drm/libnouveaudrm.la \
- $(top_builddir)/src/gallium/drivers/nouveau/libnouveau.la \
- $(NOUVEAU_LIBS)
-endif
+TARGET_DRIVERS =
+TARGET_CPPFLAGS =
+TARGET_LIB_DEPS =
+
+include $(top_srcdir)/src/gallium/drivers/nouveau/Automake.inc
# Radeon winsys chaos
if HAVE_GALLIUM_R600
@@ -87,8 +84,8 @@ endif
if HAVE_GALLIUM_STATIC_TARGETS
libvdpau_gallium_la_SOURCES += target.c
-libvdpau_gallium_la_CPPFLAGS = $(STATIC_TARGET_CPPFLAGS)
-libvdpau_gallium_la_LIBADD += $(STATIC_TARGET_LIB_DEPS)
+libvdpau_gallium_la_CPPFLAGS = $(STATIC_TARGET_CPPFLAGS) $(TARGET_CPPFLAGS)
+libvdpau_gallium_la_LIBADD += $(STATIC_TARGET_LIB_DEPS) $(TARGET_LIB_DEPS)
else # HAVE_GALLIUM_STATIC_TARGETS
@@ -109,7 +106,7 @@ if HAVE_COMPAT_SYMLINKS
all-local: $(vdpau_LTLIBRARIES)
$(AM_V_GEN)link_dir=$(top_builddir)/$(LIB_DIR)/gallium; \
$(MKDIR_P) $${link_dir}; \
- for i in $(MEGADRIVERS); do \
+ for i in $(MEGADRIVERS) $(TARGET_DRIVERS); do \
j=libvdpau_gallium.$(LIB_EXT); \
k=libvdpau_$${i}.$(LIB_EXT); \
l=$${k}.$(VDPAU_MAJOR).$(VDPAU_MINOR).0; \
@@ -128,7 +125,7 @@ endif
# libvdpau_gallium.so in the set of final installed files.
install-data-hook:
$(AM_V_GEN)dest_dir=$(DESTDIR)/$(vdpaudir); \
- for i in $(MEGADRIVERS); do \
+ for i in $(MEGADRIVERS) $(TARGET_DRIVERS); do \
j=libvdpau_gallium.$(LIB_EXT); \
k=libvdpau_$${i}.$(LIB_EXT); \
l=$${k}.$(VDPAU_MAJOR).$(VDPAU_MINOR).0; \
diff --git a/src/gallium/targets/xa/Makefile.am b/src/gallium/targets/xa/Makefile.am
index 1a37b9a..4cd820b 100644
--- a/src/gallium/targets/xa/Makefile.am
+++ b/src/gallium/targets/xa/Makefile.am
@@ -57,6 +57,10 @@ STATIC_TARGET_CPPFLAGS =
STATIC_TARGET_LIB_DEPS = \
$(top_builddir)/src/loader/libloader.la
+TARGET_DRIVERS =
+TARGET_CPPFLAGS =
+TARGET_LIB_DEPS =
+
if HAVE_GALLIUM_I915
STATIC_TARGET_CPPFLAGS += -DGALLIUM_I915
STATIC_TARGET_LIB_DEPS += \
@@ -73,13 +77,7 @@ STATIC_TARGET_LIB_DEPS += \
$(INTEL_LIBS)
endif
-if HAVE_GALLIUM_NOUVEAU
-STATIC_TARGET_CPPFLAGS += -DGALLIUM_NOUVEAU
-STATIC_TARGET_LIB_DEPS += \
- $(top_builddir)/src/gallium/winsys/nouveau/drm/libnouveaudrm.la \
- $(top_builddir)/src/gallium/drivers/nouveau/libnouveau.la \
- $(NOUVEAU_LIBS)
-endif
+include $(top_srcdir)/src/gallium/drivers/nouveau/Automake.inc
if HAVE_GALLIUM_SVGA
STATIC_TARGET_CPPFLAGS += -DGALLIUM_VMWGFX
@@ -98,8 +96,8 @@ STATIC_TARGET_LIB_DEPS += \
endif
libxatracker_la_SOURCES += target.c
-libxatracker_la_CPPFLAGS = $(STATIC_TARGET_CPPFLAGS)
-libxatracker_la_LIBADD += $(STATIC_TARGET_LIB_DEPS)
+libxatracker_la_CPPFLAGS = $(STATIC_TARGET_CPPFLAGS) $(TARGET_CPPFLAGS)
+libxatracker_la_LIBADD += $(STATIC_TARGET_LIB_DEPS) $(TARGET_LIB_DEPS)
else # HAVE_GALLIUM_STATIC_TARGETS
diff --git a/src/gallium/targets/xvmc/Makefile.am b/src/gallium/targets/xvmc/Makefile.am
index 9e04f73..e8bf6c4 100644
--- a/src/gallium/targets/xvmc/Makefile.am
+++ b/src/gallium/targets/xvmc/Makefile.am
@@ -38,14 +38,11 @@ STATIC_TARGET_CPPFLAGS =
STATIC_TARGET_LIB_DEPS = \
$(top_builddir)/src/loader/libloader.la
-if HAVE_GALLIUM_NOUVEAU
-MEGADRIVERS += nouveau
-STATIC_TARGET_CPPFLAGS += -DGALLIUM_NOUVEAU
-STATIC_TARGET_LIB_DEPS += \
- $(top_builddir)/src/gallium/winsys/nouveau/drm/libnouveaudrm.la \
- $(top_builddir)/src/gallium/drivers/nouveau/libnouveau.la \
- $(NOUVEAU_LIBS)
-endif
+TARGET_DRIVERS =
+TARGET_CPPFLAGS =
+TARGET_LIB_DEPS =
+
+include $(top_srcdir)/src/gallium/drivers/nouveau/Automake.inc
if HAVE_GALLIUM_R600
MEGADRIVERS += r600
@@ -60,8 +57,8 @@ endif
if HAVE_GALLIUM_STATIC_TARGETS
libXvMCgallium_la_SOURCES += target.c
-libXvMCgallium_la_CPPFLAGS = $(STATIC_TARGET_CPPFLAGS)
-libXvMCgallium_la_LIBADD += $(STATIC_TARGET_LIB_DEPS)
+libXvMCgallium_la_CPPFLAGS = $(STATIC_TARGET_CPPFLAGS) $(TARGET_CPPFLAGS)
+libXvMCgallium_la_LIBADD += $(STATIC_TARGET_LIB_DEPS) $(TARGET_LIB_DEPS)
else # HAVE_GALLIUM_STATIC_TARGETS
@@ -82,7 +79,7 @@ endif
# libXvMCgallium.so in the set of final installed files.
install-data-hook:
$(AM_V_GEN)dest_dir=$(DESTDIR)/$(xvmcdir); \
- for i in $(MEGADRIVERS); do \
+ for i in $(MEGADRIVERS) $(TARGET_DRIVERS); do \
j=libXvMCgallium.$(LIB_EXT); \
k=libXvMC$${i}.$(LIB_EXT); \
l=$${k}.$(XVMC_MAJOR).$(XVMC_MINOR).0; \
--
2.1.0
More information about the mesa-dev
mailing list