Skip to content

Commit dfd1db0

Browse files
committed
allow building library alone with older compiler (test requires more f2008 support)
1 parent 0634d33 commit dfd1db0

1 file changed

Lines changed: 15 additions & 15 deletions

File tree

meson.build

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,18 @@
11
project('MapTran', 'fortran',
22
meson_version : '>=0.51.2',
3-
default_options : ['default_library=static', 'buildtype=release'])
3+
default_options : ['default_library=static', 'buildtype=release', 'warning_level=3'])
44

55
realbits = '-DREALBITS='+get_option('realbits')
66

77
fc = meson.get_compiler('fortran')
8+
f18flag = fc.first_supported_argument(['-std=f2018', '-stand f18', '/stand:f18'])
89
if fc.get_id() == 'gcc'
9-
add_project_arguments('-fimplicit-none', '-Wall', '-Wextra', '-Wpedantic', language : 'fortran')
10-
if fc.version().version_compare('>=8')
11-
add_project_arguments('-std=f2018', language : 'fortran')
12-
endif
13-
elif fcid == 'intel'
14-
add_project_arguments('-warn', '-heap-arrays', '-stand f18', language : 'fortran')
15-
elif fcid == 'intel-cl'
16-
add_project_arguments('/warn', '/heap-arrays', '/stand:f18', language : 'fortran')
17-
elif fcid == 'pgi'
10+
add_project_arguments('-fimplicit-none', f18flag, language : 'fortran')
11+
elif fc.get_id() == 'intel'
12+
add_project_arguments('-warn', '-heap-arrays', language : 'fortran')
13+
elif fc.get_id() == 'intel-cl'
14+
add_project_arguments('/fpp', '/warn', '/heap-arrays', language : 'fortran')
15+
elif fc.get_id() == 'pgi'
1816
add_project_arguments('-C', '-Mdclchk', language : 'fortran')
1917
endif
2018

@@ -23,9 +21,11 @@ maptran = library('maptran', 'src/maptran.F90', 'src/vallado.F90', 'src/aer.f90'
2321
fortran_args : realbits)
2422

2523
# --- testing
26-
mtexe = executable('testmaptran', 'tests/test_mod.f90', 'src/assert.F90',
27-
link_with : maptran,
28-
fortran_args : realbits)
24+
if fc.links('block; end block; end', name: 'F2008 Block syntax')
25+
mtexe = executable('testmaptran', 'tests/test_mod.f90', 'src/assert.F90',
26+
link_with : maptran,
27+
fortran_args : realbits)
2928

30-
test('Maptran'+realbits, mtexe,
31-
timeout: 30)
29+
test('Maptran'+realbits, mtexe,
30+
timeout: 30)
31+
endif

0 commit comments

Comments
 (0)