Pasa el version-script / dynamic-list del target DRI en forma COMA (un solo token -Wl,) en vez de token separado, para sobrevivir el reordenamiento de args de `zig cc`. Mesa emite `['-Wl,--version-script', '/ruta/dri.sym']` (dos elementos: la flag y la ruta como argumento posicional). `zig cc` separa los archivos posicionales de los args `-Wl,` y los reordena ⇒ `--version-script` se queda sin su ruta (agarra el `--end-group` siguiente) y `dri.sym` cae como input suelto ⇒ «cannot find version script --end-group» / «dri.sym: unknown file type» al ligar libgallium_dri.so (último target, 1189/1189). La forma coma `-Wl,--version-script,/ruta` es UN token y zig cc la respeta (verificado). Ídem --dynamic-list. --- a/src/gallium/targets/dri/meson.build +++ b/src/gallium/targets/dri/meson.build @@ -33,11 +33,11 @@ dri_sym = configure_file(input : 'dri.sym.in', output : 'dri.sym', configuration if with_ld_version_script - gallium_dri_ld_args += ['-Wl,--version-script', join_paths(meson.current_build_dir(), 'dri.sym')] + gallium_dri_ld_args += ['-Wl,--version-script,' + join_paths(meson.current_build_dir(), 'dri.sym')] gallium_dri_link_depends += dri_sym endif if with_ld_dynamic_list - gallium_dri_ld_args += ['-Wl,--dynamic-list', join_paths(meson.current_source_dir(), '../dri.dyn')] + gallium_dri_ld_args += ['-Wl,--dynamic-list,' + join_paths(meson.current_source_dir(), '../dri.dyn')] gallium_dri_link_depends += files('../dri.dyn') endif