project('static dynamic', 'c') cc = meson.get_compiler('c') z_default = cc.find_library('z') z_static = cc.find_library('z', static: true) z_dynamic = cc.find_library('z', static: false) exe_default = executable('main_default', 'main.c', dependencies: [z_default]) exe_static = executable('main_static', 'main.c', dependencies: [z_static]) exe_dynamic = executable('main_dynamic', 'main.c', dependencies: [z_dynamic]) test('test default', exe_default) test('test static', exe_static) test('test dynamic', exe_dynamic) test('verify static linking', find_program('verify_static.py'), args: ['--platform=' + host_machine.system(), exe_static.full_path()]) test('verify dynamic linking', find_program('verify_static.py'), args: ['--platform=' + host_machine.system(), exe_dynamic.full_path()], should_fail: true)