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.
29 lines
894 B
29 lines
894 B
5 years ago
|
# Try using sourceset with various kinds of generated sources
|
||
|
|
||
|
project('a', 'c')
|
||
|
|
||
|
cp = find_program('cp.py')
|
||
|
|
||
|
source_set = import('sourceset')
|
||
|
sources = source_set.source_set()
|
||
|
|
||
|
a_c = custom_target('gen-custom-target',
|
||
|
input: 'a.c', output: 'out_a.c',
|
||
|
command: [cp, '@INPUT@', '@OUTPUT@'])
|
||
|
sources.add(when: 'YES', if_true: a_c)
|
||
|
sources.add(when: 'YES', if_true: a_c[0])
|
||
|
|
||
|
f_c = configure_file(input: 'f.c', output: 'out_f.c', copy: true)
|
||
|
sources.add(when: 'YES', if_true: f_c)
|
||
|
sources.add(when: 'YES', if_true: f_c)
|
||
|
|
||
|
gen = generator(cp, output: 'out_@PLAINNAME@', arguments: ['@INPUT@', '@OUTPUT@'])
|
||
|
g_c = gen.process(files('g.c'))
|
||
|
sources.add(when: 'YES', if_true: g_c)
|
||
|
sources.add(when: 'YES', if_true: g_c)
|
||
|
|
||
|
conf1 = { 'YES': true, }
|
||
|
result1 = sources.apply(conf1)
|
||
|
|
||
|
executable('first', sources: result1.sources(), dependencies: result1.dependencies())
|