[Mesa-stable] [Mesa-dev] [PATCH 6/7] mesa: build xmlconfig to a separate static library
Emil Velikov
emil.l.velikov at gmail.com
Fri Jun 12 07:39:48 PDT 2015
On 11 June 2015 at 00:19, Matt Turner <mattst88 at gmail.com> wrote:
> On Wed, Jun 10, 2015 at 3:54 PM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
>> From: Erik Faye-Lund <kusmabite at gmail.com>
>>
>> As we use the file from both the dri modules and loader, we end up with
>> multiple definition of the symbols provided in our gallium dri modules.
>> Additionally we compile the file twice.
>>
>> Resolve both issues, effectively enabling the build on toolchains which
>> don't support -Wl,--allow-multiple-definition.
>>
>> v2: [Emil Velikov]
>> - Fix the Scons/Android build.
>> - Resolve libgbm build issues (bring back the missing -lm)
>>
>> Cc: Julien Isorce <j.isorce at samsung.com>
>> Cc: "10.5 10.6" <mesa-stable at lists.freedesktop.org>
>> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=90310
>> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=90905
>> Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
>> ---
>> src/gallium/targets/dri/Makefile.am | 6 ------
>> src/loader/Makefile.am | 10 +++-------
>> src/mesa/drivers/dri/Makefile.am | 1 +
>> src/mesa/drivers/dri/common/Android.mk | 4 +++-
>> src/mesa/drivers/dri/common/Makefile.am | 6 +++++-
>> src/mesa/drivers/dri/common/Makefile.sources | 4 +++-
>> src/mesa/drivers/dri/common/SConscript | 2 +-
>> src/mesa/drivers/dri/i965/Makefile.am | 1 +
>> 8 files changed, 17 insertions(+), 17 deletions(-)
>>
>> diff --git a/src/gallium/targets/dri/Makefile.am b/src/gallium/targets/dri/Makefile.am
>> index f9e4ada..9648396 100644
>> --- a/src/gallium/targets/dri/Makefile.am
>> +++ b/src/gallium/targets/dri/Makefile.am
>> @@ -53,12 +53,6 @@ gallium_dri_la_LIBADD = \
>> $(LIBDRM_LIBS) \
>> $(GALLIUM_COMMON_LIB_DEPS)
>>
>> -# XXX: Temporary allow duplicated symbols, as the loader pulls in xmlconfig.c
>> -# which already provides driParse* and driQuery* amongst others.
>> -# Remove this hack as we come up with a cleaner solution.
>> -gallium_dri_la_LDFLAGS += \
>> - -Wl,--allow-multiple-definition
>> -
>> EXTRA_gallium_dri_la_DEPENDENCIES = \
>> dri.sym \
>> $(top_srcdir)/src/gallium/targets/dri-vdpau.dyn
>> diff --git a/src/loader/Makefile.am b/src/loader/Makefile.am
>> index 36ddba8..aef1bd6 100644
>> --- a/src/loader/Makefile.am
>> +++ b/src/loader/Makefile.am
>> @@ -41,15 +41,11 @@ libloader_la_CPPFLAGS += \
>> -I$(top_builddir)/src/mesa/drivers/dri/common/ \
>> -I$(top_srcdir)/src/mesa/ \
>> -I$(top_srcdir)/src/mapi/ \
>> - -DUSE_DRICONF \
>> - $(EXPAT_CFLAGS)
>> + -DUSE_DRICONF
>>
>> -libloader_la_SOURCES += \
>> - $(top_srcdir)/src/mesa/drivers/dri/common/xmlconfig.c
>> + libloader_la_LIBADD += \
>
> Looks like we have an extra leading space here.
>
> Do I understand correctly that after this patch the Gallium drivers
> will get their only copy of xmlconfig via linking against
> libloader.la?
>
As Erik mentioned - you're bang on the spot. The alternative solutions
did end up way messier/longer. Props to Erik for this approach !
-Emil
More information about the mesa-stable
mailing list