diff options
author | Brad Richardson <everythingfunctional@protonmail.com> | 2021-04-22 09:20:50 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-22 09:20:50 -0500 |
commit | a1dbbdab1b1c1d3807d9aa970b7943792f33641f (patch) | |
tree | ee26e1ff4ccd05ed465463f82b6b3d37ba03e015 /src/fpm_compiler.f90 | |
parent | faced2359ff7bf1c003aaf3990d006fde1124186 (diff) | |
parent | fbbfb2c1c316674a83acd666754a3fd18b643d84 (diff) | |
download | fpm-a1dbbdab1b1c1d3807d9aa970b7943792f33641f.tar.gz fpm-a1dbbdab1b1c1d3807d9aa970b7943792f33641f.zip |
Merge branch 'master' into different-archiver-on-windows
Diffstat (limited to 'src/fpm_compiler.f90')
-rw-r--r-- | src/fpm_compiler.f90 | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/fpm_compiler.f90 b/src/fpm_compiler.f90 index a499bb9..ca0f4d7 100644 --- a/src/fpm_compiler.f90 +++ b/src/fpm_compiler.f90 @@ -332,6 +332,34 @@ subroutine get_module_flags(compiler, modpath, flags) end subroutine get_module_flags +subroutine get_default_c_compiler(f_compiler, c_compiler) + character(len=*), intent(in) :: f_compiler + character(len=:), allocatable, intent(out) :: c_compiler + integer(compiler_enum) :: id + + id = get_compiler_id(f_compiler) + + select case(id) + + case(id_intel_classic_nix, id_intel_classic_mac, id_intel_classic_windows, id_intel_classic_unknown) + c_compiler = 'icc' + + case(id_intel_llvm_nix,id_intel_llvm_windows, id_intel_llvm_unknown) + c_compiler = 'icx' + + case(id_flang) + c_compiler='clang' + + case(id_ibmxl) + c_compiler='xlc' + + case default + ! Fall-back to using Fortran compiler + c_compiler = f_compiler + end select + +end subroutine get_default_c_compiler + function get_compiler_id(compiler) result(id) character(len=*), intent(in) :: compiler integer(kind=compiler_enum) :: id |