[Mesa-dev] [PATCH v2] pipe-loader: fix build of dynamic pipe-drivers
Andy Furniss
adf.lists at gmail.com
Thu Aug 3 19:07:14 UTC 2017
The v4 version of the patch that was committed still has regressed build
for me.
Reverting and applying v2 still builds OK.
I now get -
Making all in targets/opencl
make[4]: Entering directory '/mnt/sdb1/Gits/mesa/src/gallium/targets/opencl'
CXXLD libOpenCL.la
../../../../src/util/.libs/libxmlconfig.a(libxmlconfig_la-xmlconfig.o):
In function `driParseOptionInfo':
/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:719: multiple definition of
`driParseOptionInfo'
../../../../src/gallium/auxiliary/pipe-loader/.libs/libpipe_loader_dynamic.a(libxmlconfig_la-xmlconfig.o):/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:719:
first defined here
../../../../src/util/.libs/libxmlconfig.a(libxmlconfig_la-xmlconfig.o):
In function `driParseConfigFiles':
/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:990: multiple definition of
`driParseConfigFiles'
../../../../src/gallium/auxiliary/pipe-loader/.libs/libpipe_loader_dynamic.a(libxmlconfig_la-xmlconfig.o):/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:990:
first defined here
../../../../src/util/.libs/libxmlconfig.a(libxmlconfig_la-xmlconfig.o):
In function `driDestroyOptionCache':
/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:1056: multiple definition of
`driDestroyOptionCache'
../../../../src/gallium/auxiliary/pipe-loader/.libs/libpipe_loader_dynamic.a(libxmlconfig_la-xmlconfig.o):/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:1056:
first defined here
../../../../src/util/.libs/libxmlconfig.a(libxmlconfig_la-xmlconfig.o):
In function `driDestroyOptionInfo':
/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:1040: multiple definition of
`driDestroyOptionInfo'
../../../../src/gallium/auxiliary/pipe-loader/.libs/libpipe_loader_dynamic.a(libxmlconfig_la-xmlconfig.o):/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:1040:
first defined here
../../../../src/util/.libs/libxmlconfig.a(libxmlconfig_la-xmlconfig.o):
In function `driCheckOption':
/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:1070: multiple definition of
`driCheckOption'
../../../../src/gallium/auxiliary/pipe-loader/.libs/libpipe_loader_dynamic.a(libxmlconfig_la-xmlconfig.o):/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:1070:
first defined here
../../../../src/util/.libs/libxmlconfig.a(libxmlconfig_la-xmlconfig.o):
In function `driQueryOptionb':
/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:1077: multiple definition of
`driQueryOptionb'
../../../../src/gallium/auxiliary/pipe-loader/.libs/libpipe_loader_dynamic.a(libxmlconfig_la-xmlconfig.o):/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:1077:
first defined here
../../../../src/util/.libs/libxmlconfig.a(libxmlconfig_la-xmlconfig.o):
In function `driQueryOptioni':
/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:1087: multiple definition of
`driQueryOptioni'
../../../../src/gallium/auxiliary/pipe-loader/.libs/libpipe_loader_dynamic.a(libxmlconfig_la-xmlconfig.o):/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:1087:
first defined here
../../../../src/util/.libs/libxmlconfig.a(libxmlconfig_la-xmlconfig.o):
In function `driQueryOptionf':
/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:1097: multiple definition of
`driQueryOptionf'
../../../../src/gallium/auxiliary/pipe-loader/.libs/libpipe_loader_dynamic.a(libxmlconfig_la-xmlconfig.o):/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:1097:
first defined here
../../../../src/util/.libs/libxmlconfig.a(libxmlconfig_la-xmlconfig.o):
In function `driQueryOptionstr':
/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:1107: multiple definition of
`driQueryOptionstr'
../../../../src/gallium/auxiliary/pipe-loader/.libs/libpipe_loader_dynamic.a(libxmlconfig_la-xmlconfig.o):/mnt/sdb1/Gits/mesa/src/util/xmlconfig.c:1107:
first defined here
collect2: error: ld returned 1 exit status
Makefile:686: recipe for target 'libOpenCL.la' failed
Nicolai Hähnle wrote:
> Thanks! I'll take that as a Tested-by.
>
> On 02.08.2017 18:43, Andy Furniss wrote:
>> Building OK with this.
>>
>>
>> Nicolai Hähnle wrote:
>>> From: Nicolai Hähnle <nicolai.haehnle at amd.com>
>>>
>>> v2: add libxmlconfig.la to the dynamic pipe_radeonsi driver
>>>
>>> Fixes: bc7f41e11d3 ("gallium: add pipe_screen_config to screen_create
>>> functions")
>>> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102014
>>> --
>>> I believe this is the right place to add it; the error reported by
>>> Andy was missing driQueryOptionb, which makes sense since this is now
>>> used in si_pipe.c.
>>> ---
>>> src/gallium/targets/pipe-loader/Makefile.am | 1 +
>>> src/gallium/targets/pipe-loader/pipe_r300.c | 2 +-
>>> src/gallium/targets/pipe-loader/pipe_r600.c | 2 +-
>>> src/gallium/targets/pipe-loader/pipe_radeonsi.c | 4 ++--
>>> 4 files changed, 5 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/src/gallium/targets/pipe-loader/Makefile.am
>>> b/src/gallium/targets/pipe-loader/Makefile.am
>>> index 400b198..db492c5 100644
>>> --- a/src/gallium/targets/pipe-loader/Makefile.am
>>> +++ b/src/gallium/targets/pipe-loader/Makefile.am
>>> @@ -146,6 +146,7 @@ pipe_radeonsi_la_LIBADD = \
>>> $(top_builddir)/src/gallium/drivers/radeon/libradeon.la \
>>> $(top_builddir)/src/gallium/drivers/radeonsi/libradeonsi.la \
>>> $(top_builddir)/src/amd/common/libamd_common.la \
>>> + $(top_builddir)/src/util/libxmlconfig.la \
>>> $(LIBDRM_LIBS) \
>>> $(RADEON_LIBS) \
>>> $(AMDGPU_LIBS)
>>> diff --git a/src/gallium/targets/pipe-loader/pipe_r300.c
>>> b/src/gallium/targets/pipe-loader/pipe_r300.c
>>> index 0dcc019..8aa1ba8 100644
>>> --- a/src/gallium/targets/pipe-loader/pipe_r300.c
>>> +++ b/src/gallium/targets/pipe-loader/pipe_r300.c
>>> @@ -9,7 +9,7 @@ create_screen(int fd, const struct pipe_screen_config
>>> *config)
>>> {
>>> struct radeon_winsys *sws;
>>> - sws = radeon_drm_winsys_create(fd, flags, r300_screen_create);
>>> + sws = radeon_drm_winsys_create(fd, config, r300_screen_create);
>>> return sws ? debug_screen_wrap(sws->screen) : NULL;
>>> }
>>> diff --git a/src/gallium/targets/pipe-loader/pipe_r600.c
>>> b/src/gallium/targets/pipe-loader/pipe_r600.c
>>> index 0eedde7..a6051aa 100644
>>> --- a/src/gallium/targets/pipe-loader/pipe_r600.c
>>> +++ b/src/gallium/targets/pipe-loader/pipe_r600.c
>>> @@ -9,7 +9,7 @@ create_screen(int fd, const struct pipe_screen_config
>>> *config)
>>> {
>>> struct radeon_winsys *rw;
>>> - rw = radeon_drm_winsys_create(fd, flags, r600_screen_create);
>>> + rw = radeon_drm_winsys_create(fd, config, r600_screen_create);
>>> return rw ? debug_screen_wrap(rw->screen) : NULL;
>>> }
>>> diff --git a/src/gallium/targets/pipe-loader/pipe_radeonsi.c
>>> b/src/gallium/targets/pipe-loader/pipe_radeonsi.c
>>> index 2d33d0e..2defc52 100644
>>> --- a/src/gallium/targets/pipe-loader/pipe_radeonsi.c
>>> +++ b/src/gallium/targets/pipe-loader/pipe_radeonsi.c
>>> @@ -12,10 +12,10 @@ create_screen(int fd, const struct
>>> pipe_screen_config *config)
>>> struct radeon_winsys *rw;
>>> /* First, try amdgpu. */
>>> - rw = amdgpu_winsys_create(fd, flags, radeonsi_screen_create);
>>> + rw = amdgpu_winsys_create(fd, config, radeonsi_screen_create);
>>> if (!rw)
>>> - rw = radeon_drm_winsys_create(fd, flags, radeonsi_screen_create);
>>> + rw = radeon_drm_winsys_create(fd, config,
>>> radeonsi_screen_create);
>>> return rw ? debug_screen_wrap(rw->screen) : NULL;
>>> }
>>>
>>
>
>
More information about the mesa-dev
mailing list