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.
45 lines
1.1 KiB
45 lines
1.1 KiB
5 years ago
|
project('build on all', 'c')
|
||
|
|
||
|
py3_mod = import('python3')
|
||
|
py3 = py3_mod.find_python()
|
||
|
|
||
|
executable('fooprog', 'foo.c',
|
||
|
build_by_default : false,
|
||
|
)
|
||
|
|
||
|
executable('barprog', 'foo.c',
|
||
|
build_by_default : false,
|
||
|
)
|
||
|
|
||
|
comp = files('mygen.py')
|
||
|
checkexists = files('checkexists.py')
|
||
|
|
||
|
mytarget = custom_target('gendat1',
|
||
|
output : 'generated1.dat',
|
||
|
input : 'source.txt',
|
||
|
command : [py3] + comp + ['@INPUT@', '@OUTPUT@'],
|
||
|
build_by_default : true,
|
||
|
)
|
||
|
|
||
|
mytarget = custom_target('gendat2',
|
||
|
output : 'generated2.dat',
|
||
|
input : 'source.txt',
|
||
|
command : [py3] + comp + ['@INPUT@', '@OUTPUT@'],
|
||
|
build_by_default : true,
|
||
|
build_always : false,
|
||
|
)
|
||
|
|
||
|
ct1_output = join_paths(meson.build_root(), 'generated1.dat')
|
||
|
ct2_output = join_paths(meson.build_root(), 'generated2.dat')
|
||
|
exe1_output = join_paths(meson.build_root(), 'fooprog')
|
||
|
exe2_output = join_paths(meson.build_root(), 'barprog')
|
||
|
|
||
|
if host_machine.system() == 'windows'
|
||
|
exe1_output += '.exe'
|
||
|
exe2_output += '.exe'
|
||
|
endif
|
||
|
|
||
|
test('check-build-by-default', py3,
|
||
|
args : [checkexists,
|
||
|
ct1_output, ct2_output, '--not', exe1_output, exe2_output])
|