The Meson Build System
http://mesonbuild.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.0 KiB
37 lines
1.0 KiB
5 years ago
|
project('static dynamic', 'c')
|
||
|
|
||
|
# Solaris does not ship static libraries
|
||
|
if host_machine.system() == 'sunos'
|
||
|
has_static = false
|
||
|
else
|
||
|
has_static = true
|
||
|
endif
|
||
|
|
||
|
cc = meson.get_compiler('c')
|
||
|
|
||
|
z_default = cc.find_library('z')
|
||
|
if has_static
|
||
|
z_static = cc.find_library('z', static: true)
|
||
|
endif
|
||
|
z_dynamic = cc.find_library('z', static: false)
|
||
|
|
||
|
exe_default = executable('main_default', 'main.c', dependencies: [z_default])
|
||
|
if has_static
|
||
|
exe_static = executable('main_static', 'main.c', dependencies: [z_static])
|
||
|
endif
|
||
|
exe_dynamic = executable('main_dynamic', 'main.c', dependencies: [z_dynamic])
|
||
|
|
||
|
test('test default', exe_default)
|
||
|
if has_static
|
||
|
test('test static', exe_static)
|
||
|
endif
|
||
|
test('test dynamic', exe_dynamic)
|
||
|
|
||
|
if has_static
|
||
|
test('verify static linking', find_program('verify_static.py'),
|
||
|
args: ['--platform=' + host_machine.system(), exe_static.full_path()])
|
||
|
endif
|
||
|
test('verify dynamic linking', find_program('verify_static.py'),
|
||
|
args: ['--platform=' + host_machine.system(), exe_dynamic.full_path()],
|
||
|
should_fail: true)
|