diff options
author | Nirbheek Chauhan <nirbheek@centricular.com> | 2016-12-31 00:48:34 +0530 |
---|---|---|
committer | Nirbheek Chauhan <nirbheek@centricular.com> | 2017-01-04 00:41:56 +0530 |
commit | 2589009d236442dfbaa7573343329baf5b1c3dd1 (patch) | |
tree | 2b973b90d1d44845df2516f927a693047dc7ed5c | |
parent | 6e5c87e3803ae49c694d4663616365ab193a45c2 (diff) | |
download | meson-2589009d236442dfbaa7573343329baf5b1c3dd1.zip meson-2589009d236442dfbaa7573343329baf5b1c3dd1.tar.gz meson-2589009d236442dfbaa7573343329baf5b1c3dd1.tar.bz2 |
ifort: Derive from IntelCompiler base class
And fix the list of supported file suffixes, and use .f90 for all
fortran tests since ifort, the Intel Fortran compiler ignores files
ending with .f95, .f03, and .f08
-rw-r--r-- | mesonbuild/compilers.py | 16 | ||||
-rw-r--r-- | test cases/fortran/1 basic/meson.build | 2 | ||||
-rw-r--r-- | test cases/fortran/1 basic/simple.f90 (renamed from test cases/fortran/1 basic/simple.f95) | 0 | ||||
-rw-r--r-- | test cases/fortran/2 modules/meson.build | 2 | ||||
-rw-r--r-- | test cases/fortran/2 modules/prog.f90 (renamed from test cases/fortran/2 modules/prog.f95) | 0 | ||||
-rw-r--r-- | test cases/fortran/2 modules/stuff.f90 (renamed from test cases/fortran/2 modules/stuff.f95) | 0 | ||||
-rw-r--r-- | test cases/fortran/5 static/main.f90 (renamed from test cases/fortran/5 static/main.f95) | 0 | ||||
-rw-r--r-- | test cases/fortran/5 static/meson.build | 4 | ||||
-rw-r--r-- | test cases/fortran/5 static/static_hello.f90 (renamed from test cases/fortran/5 static/static_hello.f95) | 0 | ||||
-rw-r--r-- | test cases/fortran/6 dynamic/dynamic.f90 (renamed from test cases/fortran/6 dynamic/dynamic.f95) | 0 | ||||
-rw-r--r-- | test cases/fortran/6 dynamic/main.f90 (renamed from test cases/fortran/6 dynamic/main.f95) | 0 | ||||
-rw-r--r-- | test cases/fortran/6 dynamic/meson.build | 4 |
12 files changed, 15 insertions, 13 deletions
diff --git a/mesonbuild/compilers.py b/mesonbuild/compilers.py index b36f285..8212d01 100644 --- a/mesonbuild/compilers.py +++ b/mesonbuild/compilers.py @@ -33,7 +33,9 @@ lib_suffixes = ('a', 'lib', 'dll', 'dylib', 'so') lang_suffixes = { 'c': ('c',), 'cpp': ('cpp', 'cc', 'cxx', 'c++', 'hh', 'hpp', 'ipp', 'hxx'), - 'fortran': ('f', 'f90', 'f95'), + # f90, f95, f03, f08 are for free-form fortran ('f90' recommended) + # f, for, ftn, fpp are for fixed-form fortran ('f' or 'for' recommended) + 'fortran': ('f90', 'f95', 'f03', 'f08', 'f', 'for', 'ftn', 'fpp'), 'd': ('d', 'di'), 'objc': ('m',), 'objcpp': ('mm',), @@ -2704,12 +2706,15 @@ class SunFortranCompiler(FortranCompiler): def get_module_outdir_args(self, path): return ['-moddir=' + path] -class IntelFortranCompiler(FortranCompiler): +class IntelFortranCompiler(IntelCompiler, FortranCompiler): std_warn_args = ['-warn', 'all'] def __init__(self, exelist, version, is_cross, exe_wrapper=None): - self.file_suffixes = ('f', 'f90') - super().__init__(exelist, version, is_cross, exe_wrapper=None) + self.file_suffixes = ('f90', 'f', 'for', 'ftn', 'fpp') + FortranCompiler.__init__(self, exelist, version, is_cross, exe_wrapper) + # FIXME: Add support for OS X and Windows in detect_fortran_compiler so + # we are sent the type of compiler + IntelCompiler.__init__(self, ICC_STANDARD) self.id = 'intel' def get_module_outdir_args(self, path): @@ -2771,9 +2776,6 @@ class NAGFortranCompiler(FortranCompiler): def get_module_outdir_args(self, path): return ['-mdir', path] - def get_always_args(self): - return [] - def get_warn_args(self, level): return NAGFortranCompiler.std_warn_args diff --git a/test cases/fortran/1 basic/meson.build b/test cases/fortran/1 basic/meson.build index 9c40951..833a177 100644 --- a/test cases/fortran/1 basic/meson.build +++ b/test cases/fortran/1 basic/meson.build @@ -2,6 +2,6 @@ project('simple fortran', 'fortran') add_global_arguments('-fbounds-check', language : 'fortran') -e = executable('simple', 'simple.f95', +e = executable('simple', 'simple.f90', fortran_args : '-ffree-form') test('Simple Fortran', e) diff --git a/test cases/fortran/1 basic/simple.f95 b/test cases/fortran/1 basic/simple.f90 index e0fb1d8..e0fb1d8 100644 --- a/test cases/fortran/1 basic/simple.f95 +++ b/test cases/fortran/1 basic/simple.f90 diff --git a/test cases/fortran/2 modules/meson.build b/test cases/fortran/2 modules/meson.build index 0087c26..030f255 100644 --- a/test cases/fortran/2 modules/meson.build +++ b/test cases/fortran/2 modules/meson.build @@ -1,4 +1,4 @@ project('modules', 'fortran') -e = executable('modprog', 'stuff.f95', 'prog.f95') +e = executable('modprog', 'stuff.f90', 'prog.f90') test('moduletest', e) diff --git a/test cases/fortran/2 modules/prog.f95 b/test cases/fortran/2 modules/prog.f90 index c3998cc..c3998cc 100644 --- a/test cases/fortran/2 modules/prog.f95 +++ b/test cases/fortran/2 modules/prog.f90 diff --git a/test cases/fortran/2 modules/stuff.f95 b/test cases/fortran/2 modules/stuff.f90 index 4a6399b..4a6399b 100644 --- a/test cases/fortran/2 modules/stuff.f95 +++ b/test cases/fortran/2 modules/stuff.f90 diff --git a/test cases/fortran/5 static/main.f95 b/test cases/fortran/5 static/main.f90 index dc6454c..dc6454c 100644 --- a/test cases/fortran/5 static/main.f95 +++ b/test cases/fortran/5 static/main.f90 diff --git a/test cases/fortran/5 static/meson.build b/test cases/fortran/5 static/meson.build index d6f922b..bd74a29 100644 --- a/test cases/fortran/5 static/meson.build +++ b/test cases/fortran/5 static/meson.build @@ -1,5 +1,5 @@ project('try-static-library', 'fortran') -static_hello = static_library('static_hello', 'static_hello.f95') +static_hello = static_library('static_hello', 'static_hello.f90') -executable('test_exe', 'main.f95', link_with : static_hello) +executable('test_exe', 'main.f90', link_with : static_hello) diff --git a/test cases/fortran/5 static/static_hello.f95 b/test cases/fortran/5 static/static_hello.f90 index 63415b0..63415b0 100644 --- a/test cases/fortran/5 static/static_hello.f95 +++ b/test cases/fortran/5 static/static_hello.f90 diff --git a/test cases/fortran/6 dynamic/dynamic.f95 b/test cases/fortran/6 dynamic/dynamic.f90 index e78a406..e78a406 100644 --- a/test cases/fortran/6 dynamic/dynamic.f95 +++ b/test cases/fortran/6 dynamic/dynamic.f90 diff --git a/test cases/fortran/6 dynamic/main.f95 b/test cases/fortran/6 dynamic/main.f90 index cb3a53f..cb3a53f 100644 --- a/test cases/fortran/6 dynamic/main.f95 +++ b/test cases/fortran/6 dynamic/main.f90 diff --git a/test cases/fortran/6 dynamic/meson.build b/test cases/fortran/6 dynamic/meson.build index 53edaf6..c791dac 100644 --- a/test cases/fortran/6 dynamic/meson.build +++ b/test cases/fortran/6 dynamic/meson.build @@ -1,4 +1,4 @@ project('dynamic_fortran', 'fortran') -dynamic = shared_library('dynamic', 'dynamic.f95') -executable('test_exe', 'main.f95', link_with : dynamic) +dynamic = shared_library('dynamic', 'dynamic.f90') +executable('test_exe', 'main.f90', link_with : dynamic) |