1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
--- a/Source/config/Makefile.-linux-gnu.detect
+++ b/Source/config/Makefile.-linux-gnu.detect
@@ -19,7 +19,7 @@
# Compiler suite configurations based upon F90 ###
##################################################################
# Default: use the first F90 compiler found from F90_List
-F90_List = gfortran pgfortran pgf90 lf95 f90 ifort g95 ftn pathf90
+F90_List = gfortran pgfortran pgf90 lf95 f90 ifort g95 ftn pathf90 flang
F90_Found_List = $(foreach compiler,$(F90_List),$(call pathsearch,$(compiler)))
F90 = $(firstword $(F90_Found_List))
F90_Key = $(strip $(firstword $(foreach compiler,$(F90_List),$(call match_r1,$(compiler),$(F90)))))
--- a/Source/config/Makefile.-linux-gnu.hashes
+++ b/Source/config/Makefile.-linux-gnu.hashes
@@ -32,6 +32,7 @@
$(call set,_CC,g95, gcc ) # G95
$(call set,_CC,gfortran, gcc ) # gfortran
$(call set,_CC,ftn, cc gcc ) # Cray Computing Environment (cce)
+$(call set,_CC,flang, clang ) # flang/clang
$(call set,_CXX,pgfortran, pgCC g++ ) # PGI
$(call set,_CXX,pgf90, pgCC g++ ) # PGI
@@ -42,6 +43,7 @@
$(call set,_CXX,g95, g++ ) # G95
$(call set,_CXX,gfortran, g++ ) # gfortran
$(call set,_CXX,ftn, CC g++ ) # Cray Computing Environment (cce)
+$(call set,_CC,flang, clang++ ) # flang/clang++
$(call set,_F77,pgfortran, pgfortran pgf77 pgf90 ) # PGI
$(call set,_F77,pgf90, pgfortran pgf77 pgf90 ) # PGI
@@ -52,6 +54,7 @@
$(call set,_F77,g95, $(F90) ) # G95
$(call set,_F77,gfortran, $(F90) ) # gfortran
$(call set,_F77,ftn, $(F90) ) # Cray Computing Environment (cce)
+$(call set,_CC,flang, flang ) # flang
##################################################################
### Define CC, CXX and F77 according to $(F90_Key). ###
@@ -94,6 +97,7 @@
$(call set,_COMP_FLAGS,gfortran, -I"$(INCDIR)" -Wno-c-binding-type) # gfortran
$(call set,_COMP_FLAGS,ppu-gfortran, -I"$(INCDIR)" ) # ppu-gfortran
$(call set,_COMP_FLAGS,ftn, -e m -I"$(INCDIR)" -hfp0 ) # Cray Computing Environment (cce)
+$(call set,_COMP_FLAGS,flang, -I"$(INCDIR)" ) # flang
# define define_module_subdir script options
$(call set,_DEFINE_MODULE_SUBDIR_FLAGS,f90,) # Absoft f90
@@ -105,6 +109,7 @@
$(call set,_DEFINE_MODULE_SUBDIR_FLAGS,g95,) # G95
$(call set,_DEFINE_MODULE_SUBDIR_FLAGS,gfortran,) # gfortran
$(call set,_DEFINE_MODULE_SUBDIR_FLAGS,ftn,) # Cray Computing Environment (cce)
+$(call set,_DEFINE_MODULE_SUBDIR_FLAGS,flang,) # flang
# define define_module_subdir script patterns
$(call set,_DEFINE_MODULE_SUBDIR_PATTS,f90,absoft) # Absoft f90
@@ -116,6 +121,7 @@
$(call set,_DEFINE_MODULE_SUBDIR_PATTS,g95,$(F90_Key)) # G95
$(call set,_DEFINE_MODULE_SUBDIR_PATTS,gfortran,gcc) # gfortran
$(call set,_DEFINE_MODULE_SUBDIR_PATTS,ftn,cce) # Cray Computing Environment (cce)
+$(call set,_DEFINE_MODULE_SUBDIR_PATTS,flang,clang) # flang/clang
# define optional modules for cross-compiling
X_Compile_Module_List = craype-haswell craype-mic-knl
|