Re: [Mesa-dev] [PATCH 3/6] meson: fix va-api target linkage
Quoting Marc Dietrich (2018-01-18 04:03:21) > Am Mittwoch, 17. Januar 2018, 19:34:48 CET schrieb Dylan Baker: > > The state tracker needs to be linked with whole-archive (like > > autotools), and we need a few window system deps. > > > > Signed-off-by: Dylan Baker > > --- > > src/gallium/targets/va/meson.build | 14 ++ > > 1 file changed, 10 insertions(+), 4 deletions(-) > > still breaks here because of __vaDriverInit_{version} confusion. I have > libva-2.0.0 installed. Autotools ask for "pkg-config --modversion libva", > which returns 1.0.0, this gets used for the function name > (__vaDriverInit_1_0). On the other hand, meson hard codes 2.3.0 for some > reason, resulting in __vaDriverInit_2.3. > > Maybe meson should do the same as autotools, but I'm not sure. > > Marc I've added a patch 7/6 to this series that should fix this, please let me know if it does. > > > > diff --git a/src/gallium/targets/va/meson.build > > b/src/gallium/targets/va/meson.build index 0ea0cd1..e2785d0 100644 > > --- a/src/gallium/targets/va/meson.build > > +++ b/src/gallium/targets/va/meson.build > > @@ -25,14 +25,19 @@ > > va_deps = [] > > va_link_args = [] > > va_link_depends = [] > > +va_link_with = [] > > va_drivers = [] > > > > if with_ld_version_script > >va_link_args += ['-Wl,--version-script', > > join_paths(meson.current_source_dir(), 'va.sym')] va_link_depends += > > files('va.sym') > > endif > > -if with_platform_x11 > > - va_deps += [dep_xcb, dep_x11_xcb, dep_xcb_dri2, dep_xcb_dri3] > > + > > +if with_dri > > + va_link_with += libswdri > > +endif > > +if with_gallium_drisw_kms > > + va_link_with += libswkmsdri > > endif > > > > libva_gallium = shared_library( > > @@ -44,9 +49,10 @@ libva_gallium = shared_library( > >include_directories : [ > > inc_common, inc_util, inc_gallium_winsys, inc_gallium_drivers, > >], > > + link_whole : [libva_st], > >link_with : [ > > -libva_st, libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util, > > -libpipe_loader_static, libws_null, libwsw, > > +libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util, > > +libpipe_loader_static, libws_null, libwsw, va_link_with, > >], > >dependencies : [ > > dep_libdrm, dep_thread, va_deps, driver_r600, driver_radeonsi, > > driver_nouveau, > signature.asc Description: signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 3/6] meson: fix va-api target linkage
Quoting Marc Dietrich (2018-01-18 04:03:21) > Am Mittwoch, 17. Januar 2018, 19:34:48 CET schrieb Dylan Baker: > > The state tracker needs to be linked with whole-archive (like > > autotools), and we need a few window system deps. > > > > Signed-off-by: Dylan Baker > > --- > > src/gallium/targets/va/meson.build | 14 ++ > > 1 file changed, 10 insertions(+), 4 deletions(-) > > still breaks here because of __vaDriverInit_{version} confusion. I have > libva-2.0.0 installed. Autotools ask for "pkg-config --modversion libva", > which returns 1.0.0, this gets used for the function name > (__vaDriverInit_1_0). On the other hand, meson hard codes 2.3.0 for some > reason, resulting in __vaDriverInit_2.3. > > Maybe meson should do the same as autotools, but I'm not sure. > > Marc It should. I don't know why 2.3 is hardcoded, probably some development code that I forgot to remove :/ I'll send a v2 with that patch. > > > > diff --git a/src/gallium/targets/va/meson.build > > b/src/gallium/targets/va/meson.build index 0ea0cd1..e2785d0 100644 > > --- a/src/gallium/targets/va/meson.build > > +++ b/src/gallium/targets/va/meson.build > > @@ -25,14 +25,19 @@ > > va_deps = [] > > va_link_args = [] > > va_link_depends = [] > > +va_link_with = [] > > va_drivers = [] > > > > if with_ld_version_script > >va_link_args += ['-Wl,--version-script', > > join_paths(meson.current_source_dir(), 'va.sym')] va_link_depends += > > files('va.sym') > > endif > > -if with_platform_x11 > > - va_deps += [dep_xcb, dep_x11_xcb, dep_xcb_dri2, dep_xcb_dri3] > > + > > +if with_dri > > + va_link_with += libswdri > > +endif > > +if with_gallium_drisw_kms > > + va_link_with += libswkmsdri > > endif > > > > libva_gallium = shared_library( > > @@ -44,9 +49,10 @@ libva_gallium = shared_library( > >include_directories : [ > > inc_common, inc_util, inc_gallium_winsys, inc_gallium_drivers, > >], > > + link_whole : [libva_st], > >link_with : [ > > -libva_st, libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util, > > -libpipe_loader_static, libws_null, libwsw, > > +libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util, > > +libpipe_loader_static, libws_null, libwsw, va_link_with, > >], > >dependencies : [ > > dep_libdrm, dep_thread, va_deps, driver_r600, driver_radeonsi, > > driver_nouveau, > signature.asc Description: signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 3/6] meson: fix va-api target linkage
Am Mittwoch, 17. Januar 2018, 19:34:48 CET schrieb Dylan Baker: > The state tracker needs to be linked with whole-archive (like > autotools), and we need a few window system deps. > > Signed-off-by: Dylan Baker > --- > src/gallium/targets/va/meson.build | 14 ++ > 1 file changed, 10 insertions(+), 4 deletions(-) still breaks here because of __vaDriverInit_{version} confusion. I have libva-2.0.0 installed. Autotools ask for "pkg-config --modversion libva", which returns 1.0.0, this gets used for the function name (__vaDriverInit_1_0). On the other hand, meson hard codes 2.3.0 for some reason, resulting in __vaDriverInit_2.3. Maybe meson should do the same as autotools, but I'm not sure. Marc > diff --git a/src/gallium/targets/va/meson.build > b/src/gallium/targets/va/meson.build index 0ea0cd1..e2785d0 100644 > --- a/src/gallium/targets/va/meson.build > +++ b/src/gallium/targets/va/meson.build > @@ -25,14 +25,19 @@ > va_deps = [] > va_link_args = [] > va_link_depends = [] > +va_link_with = [] > va_drivers = [] > > if with_ld_version_script >va_link_args += ['-Wl,--version-script', > join_paths(meson.current_source_dir(), 'va.sym')] va_link_depends += > files('va.sym') > endif > -if with_platform_x11 > - va_deps += [dep_xcb, dep_x11_xcb, dep_xcb_dri2, dep_xcb_dri3] > + > +if with_dri > + va_link_with += libswdri > +endif > +if with_gallium_drisw_kms > + va_link_with += libswkmsdri > endif > > libva_gallium = shared_library( > @@ -44,9 +49,10 @@ libva_gallium = shared_library( >include_directories : [ > inc_common, inc_util, inc_gallium_winsys, inc_gallium_drivers, >], > + link_whole : [libva_st], >link_with : [ > -libva_st, libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util, > -libpipe_loader_static, libws_null, libwsw, > +libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util, > +libpipe_loader_static, libws_null, libwsw, va_link_with, >], >dependencies : [ > dep_libdrm, dep_thread, va_deps, driver_r600, driver_radeonsi, > driver_nouveau, signature.asc Description: This is a digitally signed message part. ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev