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.
 
 
 
 
 
 

44 lines
1.1 KiB

project('build on all', 'c')
py_mod = import('python')
py3 = py_mod.find_installation()
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])