blob: 257ea1e2207f9e278e126aa635ced06661dac319 [file] [log] [blame]
# Tests whether fortran sources files created during configuration are properly
# scanned for dependency information
project('generated', 'fortran',
default_options : ['default_library=static'])
conf_data = configuration_data()
conf_data.set('ONE', 1)
conf_data.set('TWO', 2)
mod3_f = import('fs').copyfile('mod3.f90', 'mod3.f90')
three = library('mod3', mod3_f)
templates_basenames = ['mod2', 'mod1']
generated_sources = []
foreach template_basename : templates_basenames
infilename = '@0@.fpp'.format(template_basename)
outfilename = '@0@.f90'.format(template_basename)
outfile = configure_file(
input : infilename, output : outfilename, configuration : conf_data)
generated_sources += [outfile]
endforeach
sources = ['prog.f90'] + generated_sources
exe = executable('configure_file', sources, link_with: three)
test('configure_file', exe)
gen = generator(
find_program('gen.py'),
arguments : [
'@INPUT@', '@OUTPUT@',
'--replace', '@ONE@=1',
'--replace', '@TWO@=2',
],
output : ['@BASENAME@.f90'],
)
exe = executable(
'generator',
'prog.f90', gen.process('mod1.fpp', 'mod2.fpp'),
link_with: three,
)
test('generator', exe)