-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathmeson.build
81 lines (72 loc) · 2.18 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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
project('libmc7', 'c',
version: 'v0.4.0',
license: 'LGPL3',
meson_version: '>=0.55.0',
default_options: [
'buildtype=debugoptimized',
'b_vscrt=from_buildtype',
])
libmc7_deps = []
libmc7_incs = ['.', 'src','include']
if get_option('build_shared_libs')
rizin = find_program('rizin', required: false)
rz_core_dep = dependency('rz_core')
libmc7_deps += rz_core_dep
libmc7_deps += dependency('rz_util')
libmc7_deps += dependency('rz_cons')
libmc7_deps += dependency('rz_config')
libmc7_deps += dependency('rz_io')
rizin_plugdir = ''
if rizin_plugdir == ''
rizin_plugdir = rz_core_dep.get_variable(pkgconfig: 'plugindir', cmake: 'rz_core_PLUGINDIR')
plugin_libmc7_dir = join_paths(get_option('prefix'), rizin_plugdir, 'libmc7')
else
plugin_libmc7_dir = join_paths(rizin_plugdir, 'libmc7')
endif
message(' - ',plugin_libmc7_dir )
libmc7_c_args = []
libmc7_asm_src = [
'src' / 'simatic.c',
'src' / 'plugin_asm.c',
]
shared_library('libmc7_asm', libmc7_asm_src,
c_args : libmc7_c_args,
dependencies: libmc7_deps,
include_directories: include_directories(libmc7_incs),
implicit_include_directories: false,
install: true,
install_dir: rizin_plugdir
)
libmc7_analysis_src = [
'src' / 'simatic.c',
'src' / 'plugin_analysis.c',
]
shared_library('libmc7_analysis', libmc7_analysis_src,
c_args : libmc7_c_args,
dependencies: libmc7_deps,
include_directories: include_directories(libmc7_incs),
implicit_include_directories: false,
install: true,
install_dir: rizin_plugdir
)
libmc7_bin_src = [
'src' / 'simatic.c',
'src' / 'plugin_bin.c',
]
shared_library('libmc7_bin', libmc7_bin_src,
c_args : libmc7_c_args,
dependencies: libmc7_deps,
include_directories: include_directories(libmc7_incs),
implicit_include_directories: false,
install: true,
install_dir: rizin_plugdir
)
endif
libmc7_src = ['src' / 'simatic.c']
exe = executable('test_simatic', ['unit' / 'test_simatic.c'] + libmc7_src,
c_args: [],
include_directories: include_directories(libmc7_incs),
dependencies: [],
install: false,
implicit_include_directories: false)
test('test_simatic', exe)