| project('selfbuilt custom', 'cpp') |
| |
| # Build an exe and use it in a custom target |
| # whose output is used to build a different exe. |
| |
| tool = executable('tool', 'tool.cpp', native : true) |
| |
| hfile = custom_target('datah', |
| output : 'data.h', |
| input : 'data.dat', |
| command : [tool, '@INPUT@', '@OUTPUT@'], |
| ) |
| |
| main = executable('mainprog', 'mainprog.cpp', hfile) |
| |
| test('maintest', main) |
| |
| lib = library('libtool', 'tool.cpp') |
| |
| checkarg = executable('checkarg', 'checkarg.cpp', native : true) |
| |
| ctlib = custom_target('ctlib', |
| output : 'ctlib.out', |
| capture : true, |
| command : [checkarg, lib], |
| build_by_default : true, |
| ) |
| |
| if meson.is_cross_build() and meson.can_run_host_binaries() |
| checkarg_host = executable('checkarg_host', 'checkarg.cpp') |
| |
| ctlib_host = custom_target( |
| 'ctlib_host', |
| output : 'ctlib.host.out', |
| capture : true, |
| command : [checkarg_host, lib], |
| build_by_default : true, |
| ) |
| endif |