diff --git a/model/bin/cmplr.env b/model/bin/cmplr.env index fdaf4621cc..5aebe7f420 100644 --- a/model/bin/cmplr.env +++ b/model/bin/cmplr.env @@ -110,7 +110,7 @@ if [ "$cmplr" == "intel" ] || [ "$cmplr" == "intel_debug" ] || [ "$c [ "$cmplr" == "so_intel" ] || [ "$cmplr" == "so_intel_debug" ] || [ "$cmplr" == "so_intel_prof" ] || \ [ "$cmplr" == "datarmor_intel" ] || [ "$cmplr" == "datarmor_intel_debug" ] || [ "$cmplr" == "datarmor_intel_prof" ] || \ [ "$cmplr" == "wcoss_phase2" ] || [ "$cmplr" == "wcoss_cray" ] || [ "$cmplr" == "wcoss_dell_p3" ] || \ - [ "$cmplr" == "theia" ] || [ "$cmplr" == "hera" ] ; then + [ "$cmplr" == "theia" ] || [ "$cmplr" == "hera" ] || [ "$cmplr" == "wcoss2" ]; then # COMPILER - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -125,11 +125,16 @@ if [ "$cmplr" == "intel" ] || [ "$cmplr" == "intel_debug" ] || [ "$c comp_mpi='ftn' fi + # WCOSS2 compiler + if [ ! -z "$(echo $cmplr | grep wcoss2)" ] ; then + comp_seq='ftn' + comp_mpi='ftn' + fi # OPTIONS - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # common options - optc='-c -module $path_m -no-fma -ip -g -i4 -real-size 32 -fp-model precise -assume byterecl -convert big_endian -fno-alias -fno-fnalias -sox' + optc='-c -module $path_m -no-fma -ip -g -traceback -i4 -real-size 32 -fp-model precise -assume byterecl -convert big_endian -fno-alias -fno-fnalias -sox' optl='-o $prog -g' if [ ! -z "$(echo $cmplr | grep datarmor)" ] ; then @@ -141,6 +146,9 @@ if [ "$cmplr" == "intel" ] || [ "$cmplr" == "intel_debug" ] || [ "$c elif [ ! -z "$(echo $cmplr | grep wcoss_dell_p3)" ] ; then optc="$optc -xHOST" optl="$optl -xHOST" + elif [ ! -z "$(echo $cmplr | grep wcoss2)" ] ; then + optc="$optc -fp-model precise -ftz -fast-transcendentals -no-prec-div -no-prec-sqrt -align array64byte" + optl="$optl" else optc="$optc -xhost" optl="$optl -xhost" @@ -151,7 +159,7 @@ if [ "$cmplr" == "intel" ] || [ "$cmplr" == "intel_debug" ] || [ "$c if [ "$list" == 'yes' ] ; then optc="$optc -list"; fi # omp options - if [ "$cmplr" == "hera" ] || [ "$cmplr" == "wcoss_dell_p3" ]; then + if [ "$cmplr" == "hera" ] || [ "$cmplr" == "wcoss_dell_p3" ] || [ "$cmplr" == "wcoss2" ]; then optomp="-qopenmp" else optomp="-openmp" @@ -175,15 +183,6 @@ if [ "$cmplr" == "intel" ] || [ "$cmplr" == "intel_debug" ] || [ "$c optl="$optl -O0 -traceback" fi - # system-dependant options - if [ ! -z "$(echo $cmplr | grep datarmor)" ] ; then - optc="$optc -xcore-avx2" - optl="$optl -xcore-avx2" - else - optc="$optc -xhost" - optl="$optl -xhost" - fi - if [ ! -z "$(echo $cmplr | grep so)" ] ; then optc="$optc -fPIC" optl='-o $prog -g' @@ -213,7 +212,6 @@ if [ "$cmplr" == "gnu" ] || [ "$cmplr" == "gnu_debug" ] || [ "$cmplr" == "gnu_pr comp_mpi='ftn' fi - # OPTIONS - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # common options diff --git a/model/bin/w3_setup b/model/bin/w3_setup index 1c3a2c1846..40bb9ed115 100755 --- a/model/bin/w3_setup +++ b/model/bin/w3_setup @@ -417,6 +417,7 @@ then [ "$cmplr" == "theia" ] || [ "$cmplr" == "wcoss_cray" ] || \ [ "$cmplr" == "hera" ] || \ [ "$cmplr" == "wcoss_phase2" ] || [ "$cmplr" == "wcoss_dell_p3" ] || \ + [ "$cmplr" == "wcoss2" ] || \ [ "$cmplr" == "datarmor_gnu" ] || [ "$cmplr" == "datarmor_gnu_debug" ] || \ [ "$cmplr" == "pgi" ] || [ "$cmplr" == "pgi_debug" ] || \ [ "$cmplr" == "datarmor_pgi" ] || [ "$cmplr" == "datarmor_pgi_debug" ] || \ @@ -443,6 +444,7 @@ then [ "$cmplr" == "theia" ] || [ "$cmplr" == "wcoss_cray" ] || \ [ "$cmplr" == "hera" ] || \ [ "$cmplr" == "wcoss_phase2" ] || [ "$cmplr" == "wcoss_dell_p3" ] || \ + [ "$cmplr" == "wcoss2" ] || \ [ "$cmplr" == "datarmor_gnu" ] || [ "$cmplr" == "datarmor_gnu_debug" ] || \ [ "$cmplr" == "pgi" ] || [ "$cmplr" == "pgi_debug" ] || \ [ "$cmplr" == "datarmor_pgi" ] || [ "$cmplr" == "datarmor_pgi_debug" ] || \ diff --git a/model/esmf/Makefile b/model/esmf/Makefile index 64b3aec965..996860f8a3 100644 --- a/model/esmf/Makefile +++ b/model/esmf/Makefile @@ -39,6 +39,10 @@ else ifeq ("$(WW3_COMP)",$(filter "$(WW3_COMP)","theia" "Intel" "hera")) ESMF_F90COMPILEOPTS := $(ESMF_F90COMPILEOPTS) -convert big_endian else ifeq ("$(WW3_COMP)",$(filter "$(WW3_COMP)","wcoss_phase2" "wcoss_cray" "wcoss_dell_p3")) ESMF_F90COMPILEOPTS := $(ESMF_F90COMPILEOPTS) -convert big_endian +else ifeq ("$(WW3_COMP)",$(filter "$(WW3_COMP)","wcoss2")) + ESMF_F90COMPILEOPTS := $(ESMF_F90COMPILEOPTS) -convert big_endian + WW3_CC := cc + WW3_F90 := ftn else ifeq ("$(WW3_COMP)",$(filter "$(WW3_COMP)","intel" "datarmor_intel" "datarmor_intel_debug")) ESMF_F90COMPILEOPTS := $(ESMF_F90COMPILEOPTS) -convert big_endian # mpt @@ -96,7 +100,7 @@ ww3_nemslibonly: env setup switch ww3_multi_esmf: esmApp.o $(DEP_LINK_OBJS) $(ESMF_F90LINKER) $(ESMF_F90LINKOPTS) -o $(EXE) $^ \ - $(ESMF_F90LINKPATHS) $(ESMF_F90LINKRPATHS) $(ESMF_F90ESMFLINKLIBS) + $(ESMF_F90LINKPATHS) $(ESMF_F90LINKRPATHS) $(ESMF_F90ESMFLINKLIBS) # module dependencies: esmApp.o: macros.h utl.o esm.o