1 if not have_linux_user 2 subdir_done() 3 endif 4 5 linux_user_ss = ss.source_set() 6 7 common_user_inc += include_directories('include/host/' / host_arch) 8 common_user_inc += include_directories('include') 9 10 linux_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 )) 24 linux_user_ss.add(rt) 25 linux_user_ss.add(libdw) 26 27 linux_user_ss.add(when: 'TARGET_HAS_BFLT', if_true: files('flatload.c')) 28 linux_user_ss.add(when: 'TARGET_I386', if_true: files('vm86.c')) 29 linux_user_ss.add(when: 'CONFIG_ARM_COMPATIBLE_SEMIHOSTING', if_true: files('semihost.c')) 30 31 syscall_nr_generators = {} 32 33 gen_vdso_exe = executable('gen-vdso', 'gen-vdso.c', 34 native: true, build_by_default: false) 35 gen_vdso = generator(gen_vdso_exe, output: '@BASENAME@.c.inc', 36 arguments: ['-o', '@OUTPUT@', '@EXTRA_ARGS@', '@INPUT@']) 37 38 subdir('aarch64') 39 subdir('alpha') 40 subdir('arm') 41 subdir('hppa') 42 subdir('i386') 43 subdir('loongarch64') 44 subdir('m68k') 45 subdir('microblaze') 46 subdir('mips64') 47 subdir('mips') 48 subdir('ppc') 49 subdir('riscv') 50 subdir('s390x') 51 subdir('sh4') 52 subdir('sparc') 53 subdir('x86_64') 54 subdir('xtensa') 55 56 specific_ss.add_all(when: 'CONFIG_LINUX_USER', if_true: linux_user_ss) 57