diff -urN WRF-3.x.orig/arch/configure_new.defaults WRF-3.x/arch/configure_new.defaults --- WRF-3.x.orig/arch/configure_new.defaults 2017-08-17 01:21:45.000000000 +0000 +++ WRF-3.x/arch/configure_new.defaults 2022-09-15 19:30:00.094868215 +0000 @@ -44,6 +44,51 @@ CC_TOOLS = cc ########################################################### +#ARCH Linux i486 i586 i686 armv7l aarch64, armflang compiler with armclang #serial smpar dmpar dm+sm +# +DESCRIPTION = BSD ($SFC/$SCC) +DMPARALLEL = # 1 +OMPCPP = # -D_OPENMP +OMP = # -fopenmp +OMPCC = # -fopenmp +SFC = armflang +SCC = armclang +CCOMP = armclang +DM_FC = mpif90 -f90=$(SFC) +DM_CC = mpicc -DMPI2_SUPPORT +FC = CONFIGURE_FC +CC = CONFIGURE_CC +LD = $(FC) +RWORDSIZE = CONFIGURE_RWORDSIZE +PROMOTION = #-fdefault-real-8 +ARCH_LOCAL = -DNONSTANDARD_SYSTEM_SUBR -DWRF_USE_CLM +CFLAGS_LOCAL = -Ofast -mcpu=native -w -c # -DRSL0_ONLY -I$(ARMPL_INCLUDES_LP64_MP) +LDFLAGS_LOCAL = -Ofast -mcpu=native -armpl -lamath -lm -lastring +CPLUSPLUSLIB = +ESMF_LDFLAG = $(CPLUSPLUSLIB) +FCOPTIM = -Ofast -mcpu=native -funroll-loops +FCREDUCEDOPT = $(FCOPTIM) +FCNOOPT = -O0 +FCDEBUG = # -g $(FCNOOPT) # -fbacktrace -ggdb -fcheck=bounds,do,mem,pointer -ffpe-trap=invalid,zero,overflow +FORMAT_FIXED = -ffixed-form +FORMAT_FREE = -ffree-form -ffree-line-length-none +FCSUFFIX = +FCCOMPAT = +BYTESWAPIO = -fconvert=big-endian -frecord-marker=4 +FCBASEOPTS_NO_G = -mcpu=native -w $(FORMAT_FREE) $(BYTESWAPIO) $(FCCOMPAT) +FCBASEOPTS = $(OMP) $(FCBASEOPTS_NO_G) $(FCDEBUG) +MODULE_SRCH_FLAG = +TRADFLAG = CONFIGURE_TRADFLAG +CPP = cpp CONFIGURE_CPPFLAGS +AR = armllvm-ar +ARFLAGS = ru +M4 = m4 -B 14000 +RANLIB = armllvm-ranlib +RLFLAGS = +CC_TOOLS = $(SCC) +NETCDFPAR_BUILD = CONFIGURE_NETCDFPAR_BUILD + +########################################################### #ARCH Linux i486 i586 i686, gfortran compiler with gcc #serial smpar dmpar dm+sm # DESCRIPTION = GNU ($SFC/$SCC) @@ -1873,6 +1918,50 @@ CC_TOOLS = $(SCC) ########################################################### +#ARCH Linux armv7l aarch64, gnu OpenMPI #serial smpar dmpar dm+sm +# +DESCRIPTION = BSD ($SFC/$SCC) +DMPARALLEL = # 1 +OMPCPP = # -D_OPENMP +OMP = # -fopenmp +OMPCC = # -fopenmp +SFC = armflang +SCC = armclang +CCOMP = armclang +DM_FC = mpif90 -f90=$(SFC) +DM_CC = mpicc -DMPI2_SUPPORT +FC = CONFIGURE_FC +CC = CONFIGURE_CC +LD = $(FC) +RWORDSIZE = CONFIGURE_RWORDSIZE +PROMOTION = #-fdefault-real-8 +ARCH_LOCAL = -DNONSTANDARD_SYSTEM_SUBR -DWRF_USE_CLM +CFLAGS_LOCAL = -mcpu=native -w -O3 -c # -DRSL0_ONLY +LDFLAGS_LOCAL = -armpl -lamath -lm -lastring +CPLUSPLUSLIB = +ESMF_LDFLAG = $(CPLUSPLUSLIB) +FCOPTIM = -O3 -funroll-loops +FCREDUCEDOPT = $(FCOPTIM) +FCNOOPT = -O0 +FCDEBUG = # -g $(FCNOOPT) # -fbacktrace -ggdb -fcheck=bounds,do,mem,pointer -ffpe-trap=invalid,zero,overflow +FORMAT_FIXED = -ffixed-form +FORMAT_FREE = -ffree-form -ffree-line-length-none +FCSUFFIX = +BYTESWAPIO = -fconvert=big-endian -frecord-marker=4 +FCBASEOPTS_NO_G = -w $(FORMAT_FREE) $(BYTESWAPIO) $(FCCOMPAT) +FCBASEOPTS = -mcpu=native $(OMP) $(FCBASEOPTS_NO_G) $(FCDEBUG) +MODULE_SRCH_FLAG = +TRADFLAG = CONFIGURE_TRADFLAG +CPP = cpp CONFIGURE_CPPFLAGS +AR = armllvm-ar +ARFLAGS = ru +M4 = m4 -G +RANLIB = armllvm-ranlib +RLFLAGS = +CC_TOOLS = $(SCC) +NETCDFPAR_BUILD = CONFIGURE_NETCDFPAR_BUILD + +########################################################### #ARCH Linux KNL x86_64 ppc64le i486 i586 i686 #serial smpar dmpar dm+sm # DESCRIPTION = INTEL ($SFC/$SCC): KNL MIC