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
|
# Prevent tail calls, as it breaks libc's 'calling object' detection.
no_tail_calls = '-fno-optimize-sibling-calls'
libfoo = shared_library('foo', 'libfoo.c',
dependencies: libc_dep,
c_args: no_tail_calls,
)
libbar = shared_library('bar', 'libbar.c',
dependencies: libc_dep,
c_args: no_tail_calls,
)
test_link_with = [libfoo, libbar] # foo is linked before bar
libfoo_native = shared_library('native-foo', 'libfoo.c',
c_args: [no_tail_calls, '-D_GNU_SOURCE'],
link_args: '-ldl',
native: true
)
libbar_native = shared_library('native-bar', 'libbar.c',
c_args: [no_tail_calls, '-D_GNU_SOURCE'],
link_args: '-ldl',
native: true
)
test_native_link_with = [libfoo_native, libbar_native]
|