[Mesa-dev] [PATCH 01/29] gallium/targets: Make use of prebuilt libdricommon.la.

Emil Velikov emil.l.velikov at gmail.com
Fri Sep 27 20:42:34 PDT 2013


On 28/09/13 04:36, Tom Stellard wrote:
> On Sun, Sep 22, 2013 at 09:29:24PM +0100, Emil Velikov wrote:
>> From: Johannes Obermayr <johannesobermayr at gmx.de>
>>
>> libdricommon.la is available whenever a non swrast driver is built.
>> All the classic dri drivers make use of the prebuild library but all
>> of the gallium ones rebuild it explicitly.
>>
>> While we're here gallium/{llvm,soft}pipe does not require HAVE_COMMON_DRI
>> thus do not set in during configure.
>>
>> v2: [Emil] Add commit message and drop HAVE_COMMON_DRI from configure.ac
>> Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
> 
> This patch seems OK, but it's hard to be sure with build system changes.
> What have you done to test this patch?
> 
> -Tom
> 
I've been running it for a day or so (until I've got another build to
test) on my nv96 (read dri-nouveau). IIRC Johannes has mentioned that
he's tried this patch (his whole series) on a few on his nouveau/amd
systems.

Cheers
Emil

>> ---
>>  configure.ac                                  |  1 -
>>  src/gallium/targets/dri-freedreno/Makefile.am | 10 +++-------
>>  src/gallium/targets/dri-i915/Makefile.am      |  7 ++-----
>>  src/gallium/targets/dri-ilo/Makefile.am       |  7 ++-----
>>  src/gallium/targets/dri-nouveau/Makefile.am   |  7 ++-----
>>  src/gallium/targets/dri-r300/Makefile.am      |  7 ++-----
>>  src/gallium/targets/dri-r600/Makefile.am      |  7 ++-----
>>  src/gallium/targets/dri-radeonsi/Makefile.am  |  7 ++-----
>>  src/gallium/targets/dri-vmwgfx/Makefile.am    |  6 ++----
>>  9 files changed, 17 insertions(+), 42 deletions(-)
>>
>> diff --git a/configure.ac b/configure.ac
>> index ca9228c..a14e791 100644
>> --- a/configure.ac
>> +++ b/configure.ac
>> @@ -1816,7 +1816,6 @@ if test "x$with_gallium_drivers" != x; then
>>  
>>              if test "x$enable_dri" = xyes; then
>>                  GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS dri-swrast"
>> -                HAVE_COMMON_DRI=yes
>>              fi
>>              if test "x$enable_vdpau" = xyes; then
>>                  GALLIUM_TARGET_DIRS="$GALLIUM_TARGET_DIRS vdpau-softpipe"
>> diff --git a/src/gallium/targets/dri-freedreno/Makefile.am b/src/gallium/targets/dri-freedreno/Makefile.am
>> index 615ae6f..ac7460a 100644
>> --- a/src/gallium/targets/dri-freedreno/Makefile.am
>> +++ b/src/gallium/targets/dri-freedreno/Makefile.am
>> @@ -39,14 +39,10 @@ AM_CPPFLAGS = \
>>  dridir = $(DRI_DRIVER_INSTALL_DIR)
>>  dri_LTLIBRARIES = kgsl_dri.la msm_dri.la
>>  
>> -COMMON_SOURCES = \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/utils.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/dri_util.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/xmlconfig.c
>> -
>>  COMMON_LDFLAGS = -module -avoid-version -shared -no-undefined
>>  
>>  COMMON_LIBADD = \
>> +	$(top_builddir)/src/mesa/drivers/dri/common/libdricommon.la \
>>  	$(top_builddir)/src/mesa/libmesagallium.la \
>>  	$(top_builddir)/src/gallium/auxiliary/libgallium.la \
>>  	$(top_builddir)/src/gallium/state_trackers/dri/drm/libdridrm.la \
>> @@ -65,12 +61,12 @@ COMMON_LIBADD += $(LLVM_LIBS)
>>  endif
>>  
>>  nodist_EXTRA_kgsl_dri_la_SOURCES = dummy.cpp
>> -kgsl_dri_la_SOURCES = target-kgsl.c $(COMMON_SOURCES)
>> +kgsl_dri_la_SOURCES = target-kgsl.c
>>  kgsl_dri_la_LDFLAGS = $(COMMON_LDFLAGS)
>>  kgsl_dri_la_LIBADD  = $(COMMON_LIBADD)
>>  
>>  nodist_EXTRA_msm_dri_la_SOURCES = dummy.cpp
>> -msm_dri_la_SOURCES  = target-msm.c $(COMMON_SOURCES)
>> +msm_dri_la_SOURCES  = target-msm.c
>>  msm_dri_la_LDFLAGS  = $(COMMON_LDFLAGS)
>>  msm_dri_la_LIBADD   = $(COMMON_LIBADD)
>>  
>> diff --git a/src/gallium/targets/dri-i915/Makefile.am b/src/gallium/targets/dri-i915/Makefile.am
>> index ce6be78..e1c6eca 100644
>> --- a/src/gallium/targets/dri-i915/Makefile.am
>> +++ b/src/gallium/targets/dri-i915/Makefile.am
>> @@ -40,15 +40,12 @@ AM_CPPFLAGS = \
>>  dridir = $(DRI_DRIVER_INSTALL_DIR)
>>  dri_LTLIBRARIES = i915_dri.la
>>  
>> -i915_dri_la_SOURCES = \
>> -	target.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/utils.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/dri_util.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/xmlconfig.c
>> +i915_dri_la_SOURCES = target.c
>>  
>>  i915_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined
>>  
>>  i915_dri_la_LIBADD = \
>> +	$(top_builddir)/src/mesa/drivers/dri/common/libdricommon.la \
>>  	$(top_builddir)/src/mesa/libmesagallium.la \
>>  	$(top_builddir)/src/gallium/auxiliary/libgallium.la \
>>  	$(top_builddir)/src/gallium/state_trackers/dri/drm/libdridrm.la \
>> diff --git a/src/gallium/targets/dri-ilo/Makefile.am b/src/gallium/targets/dri-ilo/Makefile.am
>> index 7761f33..88233f6 100644
>> --- a/src/gallium/targets/dri-ilo/Makefile.am
>> +++ b/src/gallium/targets/dri-ilo/Makefile.am
>> @@ -39,17 +39,14 @@ AM_CPPFLAGS = \
>>  
>>  noinst_LTLIBRARIES = ilo_dri.la
>>  
>> -ilo_dri_la_SOURCES = \
>> -	target.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/utils.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/dri_util.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/xmlconfig.c
>> +ilo_dri_la_SOURCES = target.c
>>  
>>  # need -rpath to create a noinst shared library
>>  ilo_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined \
>>  		     -rpath $(abs_builddir)
>>  
>>  ilo_dri_la_LIBADD = \
>> +	$(top_builddir)/src/mesa/drivers/dri/common/libdricommon.la \
>>  	$(top_builddir)/src/mesa/libmesagallium.la \
>>  	$(top_builddir)/src/gallium/auxiliary/libgallium.la \
>>  	$(top_builddir)/src/gallium/state_trackers/dri/drm/libdridrm.la \
>> diff --git a/src/gallium/targets/dri-nouveau/Makefile.am b/src/gallium/targets/dri-nouveau/Makefile.am
>> index 9cc5455..a02394e 100644
>> --- a/src/gallium/targets/dri-nouveau/Makefile.am
>> +++ b/src/gallium/targets/dri-nouveau/Makefile.am
>> @@ -39,15 +39,12 @@ dridir = $(DRI_DRIVER_INSTALL_DIR)
>>  dri_LTLIBRARIES = nouveau_dri.la
>>  
>>  nodist_EXTRA_nouveau_dri_la_SOURCES = dummy.cpp
>> -nouveau_dri_la_SOURCES = \
>> -	target.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/utils.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/dri_util.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/xmlconfig.c
>> +nouveau_dri_la_SOURCES = target.c
>>  
>>  nouveau_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined
>>  
>>  nouveau_dri_la_LIBADD = \
>> +	$(top_builddir)/src/mesa/drivers/dri/common/libdricommon.la \
>>  	$(top_builddir)/src/mesa/libmesagallium.la \
>>  	$(top_builddir)/src/gallium/auxiliary/libgallium.la \
>>  	$(top_builddir)/src/gallium/state_trackers/dri/drm/libdridrm.la \
>> diff --git a/src/gallium/targets/dri-r300/Makefile.am b/src/gallium/targets/dri-r300/Makefile.am
>> index 8c0215d..60ac69e 100644
>> --- a/src/gallium/targets/dri-r300/Makefile.am
>> +++ b/src/gallium/targets/dri-r300/Makefile.am
>> @@ -40,15 +40,12 @@ dridir = $(DRI_DRIVER_INSTALL_DIR)
>>  dri_LTLIBRARIES = r300_dri.la
>>  
>>  nodist_EXTRA_r300_dri_la_SOURCES = dummy.cpp
>> -r300_dri_la_SOURCES = \
>> -	target.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/utils.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/dri_util.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/xmlconfig.c
>> +r300_dri_la_SOURCES = target.c
>>  
>>  r300_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined
>>  
>>  r300_dri_la_LIBADD = \
>> +	$(top_builddir)/src/mesa/drivers/dri/common/libdricommon.la \
>>  	$(top_builddir)/src/mesa/libmesagallium.la \
>>  	$(top_builddir)/src/gallium/auxiliary/libgallium.la \
>>  	$(top_builddir)/src/gallium/state_trackers/dri/drm/libdridrm.la \
>> diff --git a/src/gallium/targets/dri-r600/Makefile.am b/src/gallium/targets/dri-r600/Makefile.am
>> index 2b3524b..d64df8b 100644
>> --- a/src/gallium/targets/dri-r600/Makefile.am
>> +++ b/src/gallium/targets/dri-r600/Makefile.am
>> @@ -39,15 +39,12 @@ AM_CPPFLAGS = \
>>  dridir = $(DRI_DRIVER_INSTALL_DIR)
>>  dri_LTLIBRARIES = r600_dri.la
>>  
>> -r600_dri_la_SOURCES = \
>> -	target.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/utils.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/dri_util.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/xmlconfig.c
>> +r600_dri_la_SOURCES = target.c
>>  
>>  r600_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined
>>  
>>  r600_dri_la_LIBADD = \
>> +	$(top_builddir)/src/mesa/drivers/dri/common/libdricommon.la \
>>  	$(top_builddir)/src/mesa/libmesagallium.la \
>>  	$(top_builddir)/src/gallium/auxiliary/libgallium.la \
>>  	$(top_builddir)/src/gallium/drivers/r600/libr600.la \
>> diff --git a/src/gallium/targets/dri-radeonsi/Makefile.am b/src/gallium/targets/dri-radeonsi/Makefile.am
>> index f7d87a6..d206ee8 100644
>> --- a/src/gallium/targets/dri-radeonsi/Makefile.am
>> +++ b/src/gallium/targets/dri-radeonsi/Makefile.am
>> @@ -40,15 +40,12 @@ dridir = $(DRI_DRIVER_INSTALL_DIR)
>>  dri_LTLIBRARIES = radeonsi_dri.la
>>  
>>  nodist_EXTRA_radeonsi_dri_la_SOURCES = dummy.cpp
>> -radeonsi_dri_la_SOURCES = \
>> -	target.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/utils.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/dri_util.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/xmlconfig.c
>> +radeonsi_dri_la_SOURCES = target.c
>>  
>>  radeonsi_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined
>>  
>>  radeonsi_dri_la_LIBADD = \
>> +	$(top_builddir)/src/mesa/drivers/dri/common/libdricommon.la \
>>  	$(top_builddir)/src/mesa/libmesagallium.la \
>>  	$(top_builddir)/src/gallium/auxiliary/libgallium.la \
>>  	$(top_builddir)/src/gallium/drivers/radeonsi/libradeonsi.la \
>> diff --git a/src/gallium/targets/dri-vmwgfx/Makefile.am b/src/gallium/targets/dri-vmwgfx/Makefile.am
>> index ca7df65..f7008ab 100644
>> --- a/src/gallium/targets/dri-vmwgfx/Makefile.am
>> +++ b/src/gallium/targets/dri-vmwgfx/Makefile.am
>> @@ -40,14 +40,12 @@ dri_LTLIBRARIES = vmwgfx_dri.la
>>  
>>  vmwgfx_dri_la_SOURCES = \
>>  	target.c \
>> -	vmw_powf.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/utils.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/dri_util.c \
>> -	$(top_srcdir)/src/mesa/drivers/dri/common/xmlconfig.c
>> +	vmw_powf.c
>>  
>>  vmwgfx_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined
>>  
>>  vmwgfx_dri_la_LIBADD = \
>> +	$(top_builddir)/src/mesa/drivers/dri/common/libdricommon.la \
>>  	$(top_builddir)/src/mesa/libmesagallium.la \
>>  	$(top_builddir)/src/gallium/auxiliary/libgallium.la \
>>  	$(top_builddir)/src/gallium/state_trackers/dri/drm/libdridrm.la \
>> -- 
>> 1.8.4
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev



More information about the mesa-dev mailing list