intel/meson: Add dependencies for brw and elk

Instead of link_with, use meson dependency for the compilers.  Will
be useful later to propagate some extra dependencies.

Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27865>
This commit is contained in:
Caio Oliveira 2024-02-28 17:38:04 -08:00 committed by Marge Bot
parent d5b6f8a414
commit 1ba5e9432d
7 changed files with 55 additions and 36 deletions

View file

@ -84,9 +84,10 @@ libcrocus = static_library(
dep_libdrm, dep_valgrind, idep_genxml,
idep_libintel_common, idep_nir_headers,
idep_intel_dev, idep_intel_blorp_elk, idep_intel_decoder_elk,
idep_intel_compiler_elk,
],
link_with : [
crocus_per_hw_ver_libs, libintel_compiler_elk, libisl,
crocus_per_hw_ver_libs, libisl,
libintel_perf
],
)

View file

@ -102,9 +102,10 @@ libiris = static_library(
dependencies : [dep_libdrm, dep_valgrind, idep_genxml, idep_nir_headers,
idep_libintel_common, idep_intel_driver_ds, idep_intel_dev,
idep_intel_blorp_elk, idep_intel_decoder_elk,
idep_intel_blorp, idep_intel_decoder_brw],
idep_intel_blorp, idep_intel_decoder_brw,
idep_intel_compiler_elk, idep_intel_compiler_brw],
link_with : [
iris_per_hw_ver_libs, libintel_compiler_brw, libintel_compiler_elk, libisl,
iris_per_hw_ver_libs, libisl,
libintel_perf
],
)

View file

@ -152,6 +152,10 @@ libintel_compiler_elk = static_library(
build_by_default : false,
)
idep_intel_compiler_elk = declare_dependency(
link_with : [libintel_compiler_elk],
)
if with_tests
test(
'intel_compiler_elk_tests',
@ -175,9 +179,10 @@ if with_tests
ir_expression_operation_h,
include_directories : [inc_include, inc_src, inc_intel],
link_with : [
libintel_compiler_elk, libintel_common, libisl
libintel_common, libisl
],
dependencies : [idep_gtest, idep_nir, idep_mesautil, idep_intel_dev],
dependencies : [idep_gtest, idep_nir, idep_mesautil, idep_intel_dev,
idep_intel_compiler_elk],
),
suite : ['intel'],
protocol : 'gtest',
@ -203,9 +208,9 @@ elk_lex_yy_c = custom_target(
elk_asm_tool = executable(
'elk_asm',
['elk_asm_tool.c', elk_gram_tab[0], elk_gram_tab[1], elk_lex_yy_c],
dependencies : [idep_mesautil, dep_thread, idep_intel_dev],
dependencies : [idep_mesautil, dep_thread, idep_intel_dev, idep_intel_compiler_elk],
include_directories : [inc_include, inc_src, inc_intel],
link_with : [libintel_common, libintel_compiler_elk],
link_with : [libintel_common],
c_args : [no_override_init_args],
gnu_symbol_visibility : 'hidden',
install : true
@ -241,9 +246,9 @@ endforeach
elk_disasm_tool = executable(
'elk_disasm',
files('elk_disasm_tool.c'),
dependencies : [idep_mesautil, dep_thread, idep_intel_dev],
dependencies : [idep_mesautil, dep_thread, idep_intel_dev, idep_intel_compiler_elk],
include_directories : [inc_include, inc_src, inc_intel],
link_with : [libintel_common, libintel_compiler_elk],
link_with : [libintel_common],
c_args : [no_override_init_args],
gnu_symbol_visibility : 'hidden',
install : true

View file

@ -151,6 +151,10 @@ libintel_compiler_brw = static_library(
build_by_default : false,
)
idep_intel_compiler_brw = declare_dependency(
link_with : [libintel_compiler_brw],
)
# For now this tool is only going to be used by Anv
if get_option('intel-clc') == 'system'
prog_intel_clc = find_program('intel_clc', native : true)
@ -167,12 +171,13 @@ elif with_intel_clc
'elk/elk_nir_options.c',
],
link_with : [
libintel_compiler_brw, libintel_common,libisl,
libintel_common,libisl,
],
include_directories : [inc_include, inc_src, inc_intel],
c_args : [pre_args, no_override_init_args],
link_args : [ld_args_build_id],
dependencies : [idep_nir, idep_vtn, idep_mesaclc, idep_mesautil, idep_intel_dev],
dependencies : [idep_nir, idep_vtn, idep_mesaclc, idep_mesautil, idep_intel_dev,
idep_intel_compiler_brw],
native : true,
install : get_option('install-intel-clc'),
)
@ -199,9 +204,10 @@ if with_tests
ir_expression_operation_h,
include_directories : [inc_include, inc_src, inc_intel],
link_with : [
libintel_compiler_brw, libintel_common, libisl
libintel_common, libisl
],
dependencies : [idep_gtest, idep_nir, idep_mesautil, idep_intel_dev],
dependencies : [idep_gtest, idep_nir, idep_mesautil, idep_intel_dev,
idep_intel_compiler_brw],
),
suite : ['intel'],
protocol : 'gtest',
@ -240,9 +246,10 @@ brw_lex_yy_c = custom_target(
brw_asm_tool = executable(
'brw_asm',
['brw_asm_tool.c', brw_gram_tab[0], brw_gram_tab[1], brw_lex_yy_c],
dependencies : [idep_mesautil, dep_thread, idep_intel_dev],
dependencies : [idep_mesautil, dep_thread, idep_intel_dev,
idep_intel_compiler_brw],
include_directories : [inc_include, inc_src, inc_intel],
link_with : [libintel_common, libintel_compiler_brw],
link_with : [libintel_common],
c_args : [no_override_init_args],
gnu_symbol_visibility : 'hidden',
install : true
@ -275,9 +282,10 @@ endforeach
brw_disasm_tool = executable(
'brw_disasm',
files('brw_disasm_tool.c'),
dependencies : [idep_mesautil, dep_thread, idep_intel_dev],
dependencies : [idep_mesautil, dep_thread, idep_intel_dev,
idep_intel_compiler_brw],
include_directories : [inc_include, inc_src, inc_intel],
link_with : [libintel_common, libintel_compiler_brw],
link_with : [libintel_common],
c_args : [no_override_init_args],
gnu_symbol_visibility : 'hidden',
install : true

View file

@ -33,9 +33,10 @@ aubinator = executable(
'aubinator',
files('aubinator.c'),
dependencies : [idep_mesautil, dep_expat, dep_zlib, dep_dl, dep_thread, dep_m, idep_intel_dev,
idep_intel_decoder_brw, idep_intel_decoder_elk],
idep_intel_decoder_brw, idep_intel_decoder_elk,
idep_intel_compiler_brw, idep_intel_compiler_elk],
include_directories : [inc_include, inc_src, inc_intel],
link_with : [libintel_common, libintel_compiler_brw, libintel_compiler_elk, libaub],
link_with : [libintel_common, libaub],
c_args : [no_override_init_args],
gnu_symbol_visibility : 'hidden',
install : true
@ -49,9 +50,10 @@ aubinator_error_decode = executable(
'aubinator_error_decode_xe.c',
'aubinator_error_decode_xe.h'),
dependencies : [idep_mesautil, dep_zlib, dep_thread, idep_intel_dev,
idep_intel_decoder_brw, idep_intel_decoder_elk],
idep_intel_decoder_brw, idep_intel_decoder_elk,
idep_intel_compiler_brw, idep_intel_compiler_elk],
include_directories : [inc_include, inc_src, inc_intel],
link_with : [libintel_common, libintel_compiler_brw, libintel_compiler_elk],
link_with : [libintel_common],
c_args : [no_override_init_args],
gnu_symbol_visibility : 'hidden',
install : true
@ -80,9 +82,9 @@ error2hangdump = executable(
intel_hang_replay = executable(
'intel_hang_replay',
files('intel_hang_replay.c'),
dependencies : [idep_intel_dev, idep_libintel_common, dep_libdrm, dep_dl, dep_thread, dep_m],
dependencies : [idep_intel_dev, idep_libintel_common, dep_libdrm, dep_dl, dep_thread, dep_m,
idep_intel_compiler_brw, idep_intel_compiler_elk],
include_directories : [inc_include, inc_src, inc_intel],
link_with : [libintel_compiler_brw, libintel_compiler_elk],
c_args : [no_override_init_args],
gnu_symbol_visibility : 'hidden',
install : true
@ -165,9 +167,10 @@ if with_tools.contains('intel-ui')
aubinator_viewer = executable(
'aubinator_viewer',
files('aubinator_viewer.cpp', 'aubinator_viewer_decoder.cpp'),
dependencies : [idep_mesautil, dep_zlib, dep_dl, dep_thread, dep_m, libintel_imgui_gtk_dep, idep_intel_dev],
dependencies : [idep_mesautil, dep_zlib, dep_dl, dep_thread, dep_m, libintel_imgui_gtk_dep, idep_intel_dev,
idep_intel_compiler_brw, idep_intel_compiler_elk],
include_directories : [inc_include, inc_src, inc_intel],
link_with : [libintel_common, libintel_compiler_brw, libintel_compiler_elk, libaub],
link_with : [libintel_common, libaub],
c_args : [no_override_init_args],
gnu_symbol_visibility : 'hidden',
cpp_args : ['-fpermissive', '-Wno-parentheses'],
@ -186,11 +189,12 @@ if with_tools.contains('intel-ui')
libintel_imgui_gtk_dep,
idep_intel_dev,
idep_libintel_common,
idep_intel_compiler_brw,
idep_intel_compiler_elk,
idep_intel_decoder_brw,
idep_intel_decoder_elk,
],
include_directories : [inc_include, inc_src, inc_intel],
link_with : [libintel_compiler_brw, libintel_compiler_elk],
c_args : [no_override_init_args],
gnu_symbol_visibility : 'hidden',
cpp_args : ['-fpermissive', '-Wno-parentheses'],
@ -202,8 +206,8 @@ if with_intel_tools
intel_dev_info = executable(
'intel_dev_info',
[files('intel_dev_info.c'), [intel_dev_serialize_src]],
dependencies : [dep_libdrm, dep_dl, dep_thread, dep_m, idep_intel_dev, idep_parson, idep_nir],
link_with : [libintel_compiler_brw],
dependencies : [dep_libdrm, dep_dl, dep_thread, dep_m, idep_intel_dev, idep_parson, idep_nir,
idep_intel_compiler_brw],
include_directories : [inc_include, inc_src, inc_intel],
c_args : [no_override_init_args],
gnu_symbol_visibility : 'hidden',

View file

@ -255,14 +255,14 @@ libvulkan_intel = shared_library(
],
link_whole : [libanv_common, libanv_per_hw_ver_libs] + optional_libgrl,
link_with : [
libintel_compiler_brw, libisl, libintel_perf,
libisl, libintel_perf,
],
dependencies : [
dep_thread, dep_dl, dep_m, anv_deps, idep_libintel_common,
idep_nir, idep_genxml, idep_vulkan_util, idep_vulkan_wsi,
idep_vulkan_runtime, idep_mesautil, idep_xmlconfig,
idep_intel_driver_ds, idep_intel_dev, idep_intel_blorp,
idep_intel_decoder_brw,
idep_intel_compiler_brw, idep_intel_decoder_brw,
],
c_args : anv_flags,
gnu_symbol_visibility : 'hidden',
@ -293,14 +293,14 @@ if with_tests
],
link_whole : libanv_common,
link_with : [
libanv_per_hw_ver_libs, libintel_compiler_brw, libintel_common,
libanv_per_hw_ver_libs, libintel_common,
libisl, libintel_perf,
] + optional_libgrl,
dependencies : [
dep_thread, dep_dl, dep_m, anv_deps,
idep_nir, idep_vulkan_util, idep_vulkan_wsi, idep_vulkan_runtime,
idep_mesautil, idep_intel_dev, idep_intel_shaders, idep_intel_blorp,
idep_intel_decoder_brw,
idep_intel_compiler_brw, idep_intel_decoder_brw,
],
c_args : anv_flags,
gnu_symbol_visibility : 'hidden',

View file

@ -190,14 +190,14 @@ libvulkan_intel_hasvk = shared_library(
],
link_whole : [libanv_hasvk_common, libanv_per_hw_ver_libs],
link_with : [
libintel_compiler_elk, libisl, libintel_perf,
libisl, libintel_perf,
],
dependencies : [
dep_thread, dep_dl, dep_m, anv_deps, idep_libintel_common,
idep_nir, idep_genxml, idep_vulkan_util, idep_vulkan_wsi,
idep_vulkan_runtime, idep_mesautil, idep_xmlconfig,
idep_intel_driver_ds, idep_intel_dev, idep_intel_blorp_elk,
idep_intel_decoder_elk,
idep_intel_decoder_elk, idep_intel_compiler_elk,
],
c_args : anv_flags,
gnu_symbol_visibility : 'hidden',
@ -229,14 +229,14 @@ if with_tests
],
link_whole : libanv_hasvk_common,
link_with : [
libanv_per_hw_ver_libs, libintel_compiler_elk, libintel_common,
libanv_per_hw_ver_libs, libintel_common,
libisl, libintel_perf,
],
dependencies : [
dep_thread, dep_dl, dep_m, anv_deps,
idep_nir, idep_vulkan_util, idep_vulkan_wsi, idep_vulkan_runtime,
idep_mesautil, idep_intel_dev, idep_intel_blorp_elk,
idep_intel_decoder_elk,
idep_intel_decoder_elk, idep_intel_compiler_elk,
],
c_args : anv_flags,
gnu_symbol_visibility : 'hidden',