meson: Add Soong compatibility compiler flags to Vulkan drivers
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run

Suggested by @gurchetansingh.

Android's Soong build system treats several compiler warnings as errors
by default: https://android.googlesource.com/platform/build/soong/+/27f57506/cc/config/global.go/#218

To catch these issues in Mesa, introduce `soong_compat_c_args`
and `soong_compat_cpp_args` with the following flags treated as errors:
 -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS
 -Werror=date-time
 -Werror=gnu-alignof-expression
 -Werror=ignored-qualifiers
 -Werror=implicit-fallthrough
 -Werror=int-conversion
 -Werror=missing-prototypes
 -Werror=pragma-pack
 -Werror=pragma-pack-suspicious-include
 -Werror=sizeof-array-div
 -Werror=string-plus-int
 -Werror=unreachable-code-loop-increment

These compatibility flags are added to the meson configurations
for ANV, Gfxstream, Lavapipe, PanVK, Turnip, and Venus.

Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Acked-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Gurchetan Singh <gurchetan.singh.foss@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41644>
This commit is contained in:
Valentine Burley 2026-05-18 12:28:11 +02:00 committed by Marge Bot
parent 64afecc4f9
commit 190ce8280f
38 changed files with 99 additions and 58 deletions

View file

@ -1247,6 +1247,8 @@ endif
c_msvc_compat_args = []
no_override_init_args = []
cpp_msvc_compat_args = []
soong_compat_c_args = []
soong_compat_cpp_args = []
ld_args_gc_sections = []
if cc.get_argument_syntax() == 'msvc'
_trial = [
@ -1366,6 +1368,40 @@ else
]
c_msvc_compat_args += cc.get_supported_arguments(_trial_msvc)
cpp_msvc_compat_args += cpp.get_supported_arguments(_trial_msvc)
# Check for C and C++ arguments for Soong compatibility.
_trial_soong_c = [
'-Werror=date-time',
'-Werror=gnu-alignof-expression',
'-Werror=ignored-qualifiers',
'-Werror=implicit-fallthrough',
'-Werror=int-conversion',
'-Werror=missing-prototypes',
'-Werror=pragma-pack',
'-Werror=pragma-pack-suspicious-include',
'-Werror=sizeof-array-div',
'-Werror=string-plus-int',
'-Werror=unreachable-code-loop-increment',
]
_trial_soong_cpp = [
'-D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS',
'-Werror=date-time',
'-Werror=gnu-alignof-expression',
'-Werror=ignored-qualifiers',
'-Werror=implicit-fallthrough',
'-Werror=pragma-pack',
'-Werror=pragma-pack-suspicious-include',
'-Werror=sizeof-array-div',
'-Werror=string-plus-int',
'-Werror=unreachable-code-loop-increment',
]
if cpp.get_id() == 'gcc'
_trial_soong_cpp += '-Werror=missing-declarations'
else
_trial_soong_cpp += '-Werror=missing-prototypes'
endif
soong_compat_c_args += cc.get_supported_arguments(_trial_soong_c)
soong_compat_cpp_args += cpp.get_supported_arguments(_trial_soong_cpp)
endif
# set linker arguments

View file

@ -48,7 +48,7 @@ libcompiler = static_library(
'compiler',
[files_libcompiler, ir_expression_operation_h, builtin_types_h, builtin_types_c],
include_directories : [inc_compiler, inc_include, inc_src],
c_args : [c_msvc_compat_args, no_override_init_args],
c_args : [c_msvc_compat_args, soong_compat_c_args, no_override_init_args],
cpp_args : [cpp_msvc_compat_args],
gnu_symbol_visibility : 'hidden',
dependencies : [dep_valgrind],

View file

@ -376,7 +376,7 @@ _libnir = static_library(
'nir',
[files_libnir, custom_targets_libnir],
include_directories : [inc_include, inc_src],
c_args : [c_msvc_compat_args, no_override_init_args, no_misleading_indentation],
c_args : [c_msvc_compat_args, soong_compat_c_args, no_override_init_args, no_misleading_indentation],
gnu_symbol_visibility : 'hidden',
dependencies : [idep_compiler, dep_valgrind, idep_mesautil],
build_by_default : false,

View file

@ -53,7 +53,7 @@ libvtn = static_library(
vtn_generator_ids_h,
],
include_directories : [inc_include, inc_src],
c_args : [c_msvc_compat_args, no_override_init_args],
c_args : [c_msvc_compat_args, soong_compat_c_args, no_override_init_args],
gnu_symbol_visibility : 'hidden',
dependencies : [dep_spirv_tools, idep_nir, dep_valgrind],
build_by_default : false,

View file

@ -34,7 +34,7 @@ libfreedreno_common = static_library(
'redump.h'
],
include_directories : [inc_freedreno, inc_include, inc_src],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
build_by_default : false,
dependencies: [idep_mesautil],
gnu_symbol_visibility : 'hidden',

View file

@ -44,7 +44,7 @@ libfreedreno_cffdec = static_library(
inc_include,
inc_src,
],
c_args : [ no_override_init_args ],
c_args : [ no_override_init_args, soong_compat_c_args ],
gnu_symbol_visibility: 'hidden',
dependencies: [
dep_lua,
@ -65,7 +65,7 @@ libfreedreno_io = static_library(
'io.h',
],
include_directories: [],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility: 'hidden',
dependencies: [
dep_libarchive,
@ -108,7 +108,7 @@ foreach kmd : freedreno_kmds
inc_include,
inc_src,
],
c_args : [no_override_init_args, replay_flags],
c_args : [no_override_init_args, soong_compat_c_args, replay_flags],
gnu_symbol_visibility: 'hidden',
dependencies: replay_deps,
link_with: [
@ -132,7 +132,7 @@ rddecompiler = executable(
inc_include,
inc_src,
],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility: 'hidden',
dependencies: [
dep_libdrm,
@ -182,7 +182,7 @@ cffdump = executable(
inc_include,
inc_src,
],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility: 'hidden',
dependencies: [
dep_lua,

View file

@ -14,7 +14,7 @@ libfreedreno_layout = static_library(
freedreno_xml_header_files,
],
include_directories : [inc_freedreno, inc_include, inc_src],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
dependencies : [idep_nir_headers, idep_mesautil, idep_libfreedreno_common],
build_by_default : false,

View file

@ -143,7 +143,7 @@ libfreedreno_ir3 = static_library(
ir3_lexer,
],
include_directories : [inc_freedreno, inc_include, inc_src],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
link_with: [libir3encode, libfreedreno_common],
dependencies : [idep_libir3decode, idep_nir_headers, dep_dl, idep_mesautil],

View file

@ -17,7 +17,7 @@ libfreedreno_perfcntrs = static_library(
'freedreno_perfcntrs',
[libfreedreno_perfcntrs_files, freedreno_xml_header_files],
include_directories : [inc_freedreno, inc_include, inc_src],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
link_with : [libfreedreno_common],
dependencies : idep_nir_headers,

View file

@ -206,8 +206,8 @@ libvulkan_freedreno = shared_library(
idep_vulkan_wsi,
idep_mesautil,
],
c_args : [no_override_init_args, tu_flags],
cpp_args : [tu_cpp_args, tu_flags],
c_args : [no_override_init_args, tu_flags, soong_compat_c_args],
cpp_args : [tu_cpp_args, tu_flags, soong_compat_cpp_args],
gnu_symbol_visibility : 'hidden',
link_args : [vulkan_icd_link_args, ld_args_bsymbolic, ld_args_gc_sections, ld_args_build_id],
link_depends : vulkan_icd_link_depends,

View file

@ -54,7 +54,7 @@ endif
liblavapipe_st = static_library(
'lavapipe_st',
[liblvp_files, lvp_entrypoints, sha1_h],
c_args : [ c_msvc_compat_args, lvp_flags],
c_args : [ c_msvc_compat_args, lvp_flags, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
include_directories : [ inc_include, inc_src, inc_util, inc_gallium, inc_gallium_aux, inc_llvmpipe ],
dependencies : [ dep_llvm, idep_nir, idep_mesautil, idep_vulkan_util, idep_vulkan_wsi,

View file

@ -13,7 +13,7 @@ endif
#===============#
# Configuration #
#===============#
gfxstream_guest_args = cpp_msvc_compat_args + ['-D_FILE_OFFSET_BITS=64']
gfxstream_guest_args = cpp_msvc_compat_args + soong_compat_cpp_args + ['-D_FILE_OFFSET_BITS=64']
# Our internal guest build
if host_machine.system() == 'windows'

View file

@ -55,7 +55,7 @@ libblorp = static_library(
'blorp',
[files_libblorp, files_blorp_brw],
include_directories : [inc_include, inc_src, inc_intel, inc_intel_compiler],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
dependencies : [
idep_nir_headers, idep_genxml, idep_mesautil, idep_intel_dev,
@ -73,7 +73,7 @@ if with_intel_elk
'blorp_elk',
[files_libblorp, files_blorp_elk],
include_directories : [inc_include, inc_src, inc_intel],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
dependencies : [
idep_nir_headers, idep_genxml, idep_mesautil, idep_intel_dev,

View file

@ -51,7 +51,7 @@ libintel_common = static_library(
'intel_common',
[files_libintel_common, genX_xml_h, sha1_h],
include_directories : [inc_include, inc_src, inc_intel],
c_args : [no_override_init_args, sse2_args],
c_args : [no_override_init_args, soong_compat_c_args, sse2_args],
gnu_symbol_visibility : 'hidden',
link_with : libintel_common_links,
dependencies : [dep_libdrm, dep_thread, idep_genxml, idep_mesautil, idep_intel_dev],

View file

@ -138,7 +138,7 @@ libintel_compiler_brw = static_library(
'intel_compiler',
[libintel_compiler_brw_files, brw_nir_lower_fsign, brw_nir_workarounds, [brw_device_sha1_gen_src]],
include_directories : [inc_include, inc_src, inc_intel, inc_intel_compiler],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
cpp_args : ['-Werror=vla'],
gnu_symbol_visibility : 'hidden',
link_with : libintel_compiler_nir,
@ -218,7 +218,7 @@ brw_asm = static_library(
['brw_asm.c', brw_gram_tab[0], brw_gram_tab[1], brw_lex_yy_c],
dependencies : brw_asm_deps,
include_directories : [inc_include, inc_src, inc_intel],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)
@ -233,7 +233,7 @@ brw_asm_tool = executable(
['brw_asm_tool.c'],
dependencies : idep_brw_asm,
include_directories : [inc_include, inc_src, inc_intel],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
install : true
)
@ -268,7 +268,7 @@ brw_disasm_tool = executable(
dependencies : [idep_mesautil, dep_thread, idep_intel_dev,
idep_intel_compiler_brw],
include_directories : [inc_include, inc_src, inc_intel],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
install : true
)

View file

@ -79,7 +79,7 @@ libintel_compiler_jay = static_library(
'intel_compiler_jay',
[libintel_compiler_jay_files, jay_nir_algebraic, jay_opcodes[0]],
include_directories : [inc_include, inc_src, inc_intel],
c_args : [no_override_init_args, '-Wno-c23-extensions', '-Wno-array-bounds'],
c_args : [no_override_init_args, soong_compat_c_args, '-Wno-c23-extensions', '-Wno-array-bounds'],
gnu_symbol_visibility : 'hidden',
dependencies : [idep_nir_headers, idep_jay_opcodes_h, idep_jay_builder_opcodes_h, idep_jay_extra_info_h, idep_mesautil, idep_intel_dev],
build_by_default : false,
@ -103,7 +103,7 @@ if with_tests
'test/test-optimizer.cpp',
'test/test-repair-ssa.cpp',
),
c_args : [c_msvc_compat_args, no_override_init_args],
c_args : [c_msvc_compat_args, no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
include_directories : [inc_include, inc_src, inc_intel],
dependencies: [idep_gtest, idep_nir, idep_jay_opcodes_h, idep_jay_builder_opcodes_h, idep_jay_extra_info_h, idep_mesautil, idep_intel_dev],

View file

@ -22,7 +22,7 @@ libintel_compiler_nir = static_library(
'intel_compiler_nir',
[libintel_compiler_nir_files],
include_directories : [inc_include, inc_src, inc_intel],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
cpp_args : ['-Werror=vla'],
gnu_symbol_visibility : 'hidden',
dependencies : [idep_nir_headers, idep_mesautil, idep_intel_dev, idep_vtn, idep_mda],

View file

@ -29,7 +29,7 @@ libintel_decoder = static_library(
'intel_decoder',
[libintel_decoder_files, genX_xml_h, sha1_h],
include_directories : [inc_include, inc_src, inc_intel],
c_args : [no_override_init_args, sse2_args],
c_args : [no_override_init_args, soong_compat_c_args, sse2_args],
gnu_symbol_visibility : 'hidden',
dependencies : libintel_decoder_deps,
build_by_default : false,
@ -44,7 +44,7 @@ libintel_decoder_brw = static_library(
'intel_decoder_brw',
[libintel_decoder_brw_files, genX_xml_h, sha1_h],
include_directories : [inc_include, inc_src, inc_intel],
c_args : [no_override_init_args, sse2_args],
c_args : [no_override_init_args, soong_compat_c_args, sse2_args],
gnu_symbol_visibility : 'hidden',
dependencies : idep_intel_decoder,
build_by_default : false,
@ -60,7 +60,7 @@ if with_intel_elk
'intel_decoder_elk',
[libintel_decoder_elk_files, genX_xml_h, sha1_h],
include_directories : [inc_include, inc_src, inc_intel],
c_args : [no_override_init_args, sse2_args],
c_args : [no_override_init_args, soong_compat_c_args, sse2_args],
gnu_symbol_visibility : 'hidden',
dependencies : idep_intel_decoder,
build_by_default : false,

View file

@ -65,7 +65,7 @@ libintel_dev = static_library(
include_directories : [inc_include, inc_src, inc_intel, inc_intel_dev_virtio],
dependencies : [dep_libdrm, idep_mesautil, idep_intel_dev_wa,
idep_intel_dev_info_gen],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
link_with : [link_intel_dev_virtio],
)

View file

@ -91,7 +91,7 @@ isl_tiled_memcpy = static_library(
],
dependencies : [idep_mesautil, idep_intel_dev],
c_args : [no_override_init_args, sse2_arg],
c_args : [no_override_init_args, soong_compat_c_args, sse2_arg],
gnu_symbol_visibility : 'hidden',
extra_files : ['isl_tiled_memcpy.c']
)

View file

@ -56,7 +56,7 @@ if with_intel_tools
idep_mesautil,
],
include_directories: [inc_include, inc_src],
c_args: [no_override_init_args],
c_args: [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility: 'hidden',
install: true
)

View file

@ -49,7 +49,7 @@ libintel_perf = static_library(
include_directories : [
inc_include, inc_src, inc_intel,
],
c_args : [no_override_init_args, sse2_arg],
c_args : [no_override_init_args, soong_compat_c_args, sse2_arg],
cpp_args : [sse2_arg],
gnu_symbol_visibility : 'hidden',
dependencies : [idep_intel_dev],
@ -68,7 +68,7 @@ if with_intel_tools
dependencies : [idep_mesautil, dep_dl, dep_thread, dep_m, idep_intel_dev],
include_directories : [inc_include, inc_src, inc_intel],
link_with : [libintel_common, libintel_perf],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
install : false
)

View file

@ -6,9 +6,12 @@ inc_anv = include_directories('.')
anv_flags = [
no_override_init_args,
sse2_args,
soong_compat_c_args,
]
anv_cpp_flags = []
anv_cpp_flags = [
soong_compat_cpp_args,
]
anv_entrypoints = custom_target(
'anv_entrypoints',

View file

@ -11,7 +11,7 @@ else
['pan_compile.c'],
link_with : [libpanfrost_compiler],
include_directories : [inc_include, inc_src],
c_args : [c_msvc_compat_args, no_override_init_args],
c_args : [c_msvc_compat_args, no_override_init_args, soong_compat_c_args],
link_args : [ld_args_build_id],
dependencies : [idep_vtn, idep_nir, idep_mesautil, libpanfrost_dep],
# If we can run host binaries directly, just build panfrost_compile for the host.

View file

@ -142,7 +142,7 @@ libpanfrost_bifrost_disasm = static_library(
['bifrost/disassemble.c', 'bi_print_common.c', bifrost_gen_disasm_c],
include_directories : [inc_include, inc_src],
dependencies: [idep_nir],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)
@ -153,7 +153,7 @@ libpanfrost_bifrost = static_library(
include_directories : [inc_include, inc_src, inc_valhall],
dependencies: [idep_nir, idep_bi_opcodes_h, idep_bi_builder_h, idep_valhall_enums_h, libpanfrost_model_dep],
link_with: [libpanfrost_bifrost_disasm, libpanfrost_valhall_disasm],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)

View file

@ -38,7 +38,7 @@ libpanfrost_valhall_disasm = static_library(
'panfrost_valhall_disasm',
valhall_disasm_c,
include_directories : [inc_include, inc_src],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)
@ -49,7 +49,7 @@ if with_tests
executable(
'valhall_disasm_test',
files('test/test-disassembler.c'),
c_args : [c_msvc_compat_args, no_override_init_args],
c_args : [c_msvc_compat_args, no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
include_directories : [inc_include, inc_src],
dependencies: [idep_valhall_enums_h],

View file

@ -32,7 +32,7 @@ libpanfrost_compiler = static_library(
include_directories : [inc_include, inc_src, inc_valhall],
dependencies: [idep_nir, idep_mesautil, idep_valhall_enums_h, idep_bi_opcodes_h],
link_with: [libpanfrost_midgard, libpanfrost_bifrost],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)

View file

@ -43,7 +43,7 @@ libpanfrost_midgard_disasm = static_library(
'panfrost_midgard_disasm',
['disassemble.c', 'midgard_ops.c', 'midgard_print_constant.c'],
include_directories : [inc_include, inc_src],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)
@ -57,7 +57,7 @@ libpanfrost_midgard = static_library(
idep_mesautil,
],
link_with: [libpanfrost_midgard_disasm],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)

View file

@ -26,7 +26,7 @@ foreach ver : ['4', '5', '6', '7', '9', '10', '12', '13', '14']
['decode.c', 'decode_jm.c', 'decode_csf.c', pan_packers],
include_directories : [inc_include, inc_src, inc_panfrost],
dependencies : [dep_libdrm, idep_pan_packers, idep_nir, idep_mesautil],
c_args : [no_override_init_args, '-DPAN_ARCH=' + ver],
c_args : [no_override_init_args, soong_compat_c_args, '-DPAN_ARCH=' + ver],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)
@ -40,7 +40,7 @@ libpanfrost_decode = static_library(
],
include_directories : [inc_include, inc_src, inc_panfrost],
dependencies : idep_mesautil,
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
link_with: [libpanfrost_decode_per_arch],

View file

@ -61,7 +61,7 @@ libpanfrost_lib = static_library(
'panfrost_lib',
[libpanfrost_lib_files, pan_packers],
include_directories : [inc_include, inc_src, inc_panfrost],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
dependencies: [dep_libdrm, idep_nir, idep_mesautil, libpanfrost_model_dep],
build_by_default : false,

View file

@ -13,7 +13,7 @@ libpanfrost_model_lib = static_library(
'panfrost_model_lib',
[libpanfrost_model_files],
include_directories : [inc_src],
c_args : [no_override_init_args],
c_args : [no_override_init_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)

View file

@ -15,7 +15,7 @@ libpanfrost_shared = static_library(
[libpanfrost_shared_files],
include_directories : [inc_include, inc_src],
dependencies : idep_mesautil,
c_args : [no_override_init_args, '-O3'],
c_args : [no_override_init_args, soong_compat_c_args, '-O3'],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)

View file

@ -170,7 +170,7 @@ foreach arch : [6, 7, 10, 12, 13, 14]
dep_valgrind,
idep_libpan_per_arch[arch.to_string()],
],
c_args : [no_override_init_args, panvk_flags, '-DPAN_ARCH=@0@'.format(arch)],
c_args : [no_override_init_args, panvk_flags, soong_compat_c_args, '-DPAN_ARCH=@0@'.format(arch)],
gnu_symbol_visibility : 'hidden',
)
endforeach
@ -218,7 +218,7 @@ libvulkan_panfrost = shared_library(
idep_vulkan_wsi,
idep_mesautil,
],
c_args : [no_override_init_args, panvk_flags],
c_args : [no_override_init_args, panvk_flags, soong_compat_c_args],
link_args : [vulkan_icd_link_args, ld_args_bsymbolic, ld_args_gc_sections, ld_args_build_id],
gnu_symbol_visibility : 'hidden',
install : true,

View file

@ -330,7 +330,7 @@ u_trace_py = files('perf/u_trace.py')
libmesa_util_simd = static_library(
'mesa_util_simd',
files('streaming-load-memcpy.c'),
c_args : [c_msvc_compat_args, sse41_args],
c_args : [c_msvc_compat_args, soong_compat_c_args, sse41_args],
include_directories : [inc_util],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
@ -343,7 +343,7 @@ _libmesa_util = static_library(
include_directories : [inc_util, include_directories('format')],
dependencies : deps_for_libmesa_util,
link_with: libmesa_util_links,
c_args : [c_msvc_compat_args],
c_args : [c_msvc_compat_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
build_by_default : false
)
@ -380,6 +380,7 @@ _libxmlconfig = static_library(
dependencies : [idep_mesautil, dep_m, xmlconfig_deps],
c_args : [
c_msvc_compat_args,
soong_compat_c_args,
c_xmlconfig_arg,
'-DSYSCONFDIR="@0@"'.format(
join_paths(get_option('prefix'), get_option('sysconfdir'))

View file

@ -3,7 +3,7 @@
inc_virtio_vdrm = include_directories('.')
libvdrm_c_args = [no_override_init_args]
libvdrm_c_args = [no_override_init_args, soong_compat_c_args]
if with_amdgpu_virtio
libvdrm_c_args += ['-DENABLE_DRM_AMDGPU']
endif

View file

@ -95,6 +95,7 @@ vn_deps = [
vn_c_args = [
no_override_init_args,
soong_compat_c_args,
] + cc.get_supported_arguments([
'-Werror=switch',
])

View file

@ -203,7 +203,7 @@ libvulkan_lite_runtime = static_library(
vulkan_lite_runtime_files,
include_directories : [inc_include, inc_src],
dependencies : vulkan_lite_runtime_deps,
c_args : [c_msvc_compat_args, '-DMESA_VK_LOG=@0@'.format(get_option('debug').to_int())],
c_args : [c_msvc_compat_args, soong_compat_c_args, '-DMESA_VK_LOG=@0@'.format(get_option('debug').to_int())],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)
@ -213,7 +213,7 @@ libvulkan_lite_instance = static_library(
['vk_instance.c'],
include_directories : [inc_include, inc_src],
dependencies : vulkan_lite_runtime_deps,
c_args : ['-DVK_LITE_RUNTIME_INSTANCE=1', c_msvc_compat_args],
c_args : ['-DVK_LITE_RUNTIME_INSTANCE=1', c_msvc_compat_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)
@ -303,7 +303,7 @@ libvulkan_runtime = static_library(
[vulkan_runtime_files],
include_directories : [inc_include, inc_src],
dependencies : vulkan_runtime_deps,
c_args : c_msvc_compat_args,
c_args : [c_msvc_compat_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)
@ -313,7 +313,7 @@ libvulkan_instance = static_library(
['vk_instance.c'],
include_directories : [inc_include, inc_src],
dependencies : vulkan_runtime_deps,
c_args : ['-DVK_LITE_RUNTIME_INSTANCE=0', c_msvc_compat_args],
c_args : ['-DVK_LITE_RUNTIME_INSTANCE=0', c_msvc_compat_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)

View file

@ -127,7 +127,7 @@ libvulkan_util = static_library(
vk_struct_type_cast, vk_extensions],
include_directories : [inc_include, inc_src],
dependencies : [vulkan_wsi_deps, idep_mesautil, idep_nir_headers],
c_args : [c_msvc_compat_args],
c_args : [c_msvc_compat_args, soong_compat_c_args],
gnu_symbol_visibility : 'hidden',
build_by_default : false,
)