xref: /qemu/linux-user/meson.build (revision b103cc6e74ac92f070a0e004bd84334e845c20b5)
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'))
30linux_user_ss.add(when: 'CONFIG_TCG_PLUGINS', if_true: files('plugin-api.c'))
31
32syscall_nr_generators = {}
33
34gen_vdso_exe = executable('gen-vdso', 'gen-vdso.c',
35                          native: true, build_by_default: false)
36gen_vdso = generator(gen_vdso_exe, output: '@BASENAME@.c.inc',
37                     arguments: ['-o', '@OUTPUT@', '@EXTRA_ARGS@', '@INPUT@'])
38
39subdir('aarch64')
40subdir('alpha')
41subdir('arm')
42subdir('hexagon')
43subdir('hppa')
44subdir('i386')
45subdir('loongarch64')
46subdir('m68k')
47subdir('microblaze')
48subdir('mips64')
49subdir('mips')
50subdir('openrisc')
51subdir('ppc')
52subdir('riscv')
53subdir('s390x')
54subdir('sh4')
55subdir('sparc')
56subdir('x86_64')
57subdir('xtensa')
58
59specific_ss.add_all(when: 'CONFIG_LINUX_USER', if_true: linux_user_ss)
60