qemu/linux-user/arm/meson.build
Richard Henderson 95c9e2209c linux-user/arm: Select vdso for be8 and be32 modes
In be8 mode, instructions are little-endian.
In be32 mode, instructions are big-endian.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2333
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2024-11-16 08:42:25 -08:00

27 lines
1013 B
Meson

subdir('nwfpe')
syscall_nr_generators += {
'arm': generator(sh,
arguments: [ meson.current_source_dir() / 'syscallhdr.sh', '@INPUT@', '@OUTPUT@', '@EXTRA_ARGS@' ],
output: '@BASENAME@_nr.h')
}
# TARGET_BIG_ENDIAN is defined to 'n' for little-endian; which means it
# is always true as far as source_set.apply() is concerned. Always build
# both header files and include the right one via #if.
vdso_be8_inc = gen_vdso.process('vdso-be8.so',
extra_args: ['-s', 'sigreturn_codes',
'-p', 'vdso_be8'])
vdso_be32_inc = gen_vdso.process('vdso-be32.so',
extra_args: ['-s', 'sigreturn_codes',
'-p', 'vdso_be32'])
vdso_le_inc = gen_vdso.process('vdso-le.so',
extra_args: ['-s', 'sigreturn_codes'])
linux_user_ss.add(when: 'TARGET_ARM', if_true: [
vdso_be8_inc, vdso_be32_inc, vdso_le_inc
])