xref: /openbmc/qemu/linux-user/meson.build (revision 3d54cbf2)
1if not have_linux_user
2   subdir_done()
3endif
4
5linux_user_ss = ss.source_set()
6
7common_user_inc += include_directories('include/host/' / host_arch)
8common_user_inc += include_directories('include')
9
10linux_user_ss.add(files(
11  'elfload.c',
12  'exit.c',
13  'fd-trans.c',
14  'linuxload.c',
15  'main.c',
16  'mmap.c',
17  'signal.c',
18  'strace.c',
19  'syscall.c',
20  'thunk.c',
21  'uaccess.c',
22  'uname.c',
23))
24linux_user_ss.add(rt)
25linux_user_ss.add(libdw)
26
27linux_user_ss.add(when: 'TARGET_HAS_BFLT', if_true: files('flatload.c'))
28linux_user_ss.add(when: 'TARGET_I386', if_true: files('vm86.c'))
29linux_user_ss.add(when: 'CONFIG_ARM_COMPATIBLE_SEMIHOSTING', if_true: files('semihost.c'))
30
31syscall_nr_generators = {}
32
33gen_vdso_exe = executable('gen-vdso', 'gen-vdso.c',
34                          native: true, build_by_default: false)
35gen_vdso = generator(gen_vdso_exe, output: '@BASENAME@.c.inc',
36                     arguments: ['-o', '@OUTPUT@', '@EXTRA_ARGS@', '@INPUT@'])
37
38subdir('aarch64')
39subdir('alpha')
40subdir('arm')
41subdir('hppa')
42subdir('i386')
43subdir('loongarch64')
44subdir('m68k')
45subdir('microblaze')
46subdir('mips64')
47subdir('mips')
48subdir('ppc')
49subdir('riscv')
50subdir('s390x')
51subdir('sh4')
52subdir('sparc')
53subdir('x86_64')
54subdir('xtensa')
55
56specific_ss.add_all(when: 'CONFIG_LINUX_USER', if_true: linux_user_ss)
57