Bug 1824166 - Avoid passing thumb-interwork flags to clang for bindgen. r=firefox-build-system-reviewers,andi

Differential Revision: https://phabricator.services.mozilla.com/D174554
This commit is contained in:
Mike Hommey 2023-04-05 00:12:42 +00:00
parent 167275da0b
commit 3c43de2d49
2 changed files with 13 additions and 4 deletions

View File

@ -151,16 +151,25 @@ check_and_add_flag(
)
# The set of flags that clang understands
@depends(
arch_option,
thumb_option,
thumb_interwork_option,
fpu_option,
float_abi_option,
soft_float_option,
)
def all_arm_flags(arch, thumb, interwork, fpu, float_abi, soft_float):
return arch + thumb + interwork + fpu + float_abi + soft_float
def all_clang_arm_flags(arch, thumb, fpu, float_abi, soft_float):
return arch + thumb + fpu + float_abi + soft_float
# All the flags the compiler understands. When the compiler is clang, this
# still includes unsupported flags, but we live it to configure to fail
# during a compiler check. These checks aren't available for clang as used
# by bindgen, so we keep the separate set of flags for clang for bindgen.
@depends(all_clang_arm_flags, thumb_interwork_option)
def all_arm_flags(flags, interwork):
return flags + interwork
add_old_configure_assignment("_ARM_FLAGS", all_arm_flags)

View File

@ -332,7 +332,7 @@ set_config("MOZ_CLANG_PATH", bindgen_config_paths.clang_path)
cxx_compiler,
bindgen_cflags_android,
bindgen_config_paths.clang_flags,
all_arm_flags,
all_clang_arm_flags,
)
def basic_bindgen_cflags(
target, is_unix, compiler_info, android_cflags, clang_flags, all_arm_flags