meson.build 1.3 KB

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