forked from ish-app/ish
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmeson.build
57 lines (47 loc) · 1.21 KB
/
meson.build
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
project('ish', 'c',
default_options: ['default_library=static', 'c_std=gnu99'])
if get_option('debug_log')
add_global_arguments('-DDEBUG_LOG=1', language: 'c')
endif
includes = [include_directories('.')]
subdir('vdso') # ish depends on the vdso
cify = executable('tools/cify', ['tools/cify.c'])
cified_vdso = custom_target('cify-vdso',
output: ['libvdso.so.c', 'libvdso.so.h'],
depends: [vdso],
command: [cify, 'vdso_data', vdso.full_path(), '@OUTPUT@'])
sys_src = [
'sys/calls.c',
'sys/user.c',
'sys/exec/exec.c',
'sys/exit.c',
'sys/time.c',
'sys/mm.c',
'sys/mmap.c',
'sys/uname.c',
'sys/tls.c',
'sys/getid.c',
'sys/fs.c',
'sys/fs/stat.c',
'sys/fs/dir.c',
'sys/fs/generic.c',
'sys/fs/path.c',
'sys/fs/pathname.c',
'sys/fs/real.c',
]
emu_src = [
'emu/memory.c',
'emu/process.c',
'emu/cpu.c',
'emu/modrm.c',
'emu/debug.c',
cified_vdso,
]
ish = declare_dependency(
link_with: library('ish', sys_src + emu_src + ['setup.c'], include_directories: includes),
include_directories: includes)
# testing programs
subdir('tests')
# ptraceomatic et al
subdir('tools')
executable('ish', ['main.c'], dependencies: [ish])