From 152bca4c1cf02d7f31ec0318a5b37715d3807d95 Mon Sep 17 00:00:00 2001
From: accowa <acc@noc.ac.uk>
Date: Mon, 7 Mar 2022 11:54:46 +0000
Subject: [PATCH] new arch files for NOC (re-enable DEBUG for Gnu compiler on
 ARCHER2)

---
 arch/NOC/arch-X86_ARCHER2-Gnu_DEBUG.fcm       | 62 +++++++++++++++++++
 .../batch-X86_ARCHER2-Gnu_DEBUG               |  1 +
 sette/prepare_job.sh                          |  4 +-
 3 files changed, 65 insertions(+), 2 deletions(-)
 create mode 100644 arch/NOC/arch-X86_ARCHER2-Gnu_DEBUG.fcm
 create mode 120000 sette/BATCH_TEMPLATE/batch-X86_ARCHER2-Gnu_DEBUG

diff --git a/arch/NOC/arch-X86_ARCHER2-Gnu_DEBUG.fcm b/arch/NOC/arch-X86_ARCHER2-Gnu_DEBUG.fcm
new file mode 100644
index 00000000..91bee5c1
--- /dev/null
+++ b/arch/NOC/arch-X86_ARCHER2-Gnu_DEBUG.fcm
@@ -0,0 +1,62 @@
+# compiler options for Archer2 CRAY XC-30 (using GNU compiler)
+#
+# NCDF_HOME   root directory containing lib and include subdirectories for netcdf4
+# HDF5_HOME   root directory containing lib and include subdirectories for HDF5
+# XIOS_HOME   root directory containing lib for XIOS
+# OASIS_HOME  root directory containing lib for OASIS
+#
+# NCDF_INC    netcdf4 include file
+# NCDF_LIB    netcdf4 library
+# XIOS_INC    xios include file    (taken into accound only if key_xios is activated)
+# XIOS_LIB    xios library         (taken into accound only if key_xios is activated)
+# OASIS_INC   oasis include file   (taken into accound only if key_oasis3 is activated)
+# OASIS_LIB   oasis library        (taken into accound only if key_oasis3 is activated)
+#
+# FC          Fortran compiler command
+# FCFLAGS     Fortran compiler flags
+# FFLAGS      Fortran 77 compiler flags
+# LD          linker
+# LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries
+# FPPFLAGS    pre-processing flags
+# AR          assembler
+# ARFLAGS     assembler flags
+# MK          make
+# USER_INC    complete list of include files
+# USER_LIB    complete list of libraries to pass to the linker
+# CC          C compiler used to compile conv for AGRIF
+# CFLAGS      compiler flags used with CC
+#
+# Note that:
+#  - unix variables "$..." are accpeted and will be evaluated before calling fcm.
+#  - fcm variables are starting with a % (and not a $)
+#
+%NCDF_HOME           $NETCDF_DIR
+%HDF5_HOME           $HDF5_DIR
+%XIOS_HOME           /work/n01/shared/nemo/xios-trunk-gnu
+#OASIS_HOME          
+
+%NCDF_INC            -I%NCDF_HOME/include -I%HDF5_HOME/include
+%NCDF_LIB            -L%HDF5_HOME/lib -L%NCDF_HOME/lib -lnetcdff -lnetcdf -lhdf5_hl -lhdf5 -lz
+%XIOS_INC            -I%XIOS_HOME/inc 
+%XIOS_LIB            -L%XIOS_HOME/lib -lxios
+#OASIS_INC           -I%OASIS_HOME/build/lib/mct -I%OASIS_HOME/build/lib/psmile.MPI1
+#OASIS_LIB           -L%OASIS_HOME/lib -lpsmile.MPI1 -lmct -lmpeu -lscrip
+
+%CPP	             cpp -Dkey_nosignedzero
+%FC                  ftn
+%FCFLAGS             -fdefault-real-8 -O0 -g -fallow-argument-mismatch -fbacktrace -funroll-all-loops -fcray-pointer -ffree-line-length-none -fcheck=all -finit-real=nan
+%FFLAGS              %FCFLAGS
+%LD                  CC 
+%FPPFLAGS            -P -traditional
+%LDFLAGS             -lmpichf90
+%AR                  ar 
+%ARFLAGS             rs
+%MK                  gmake
+%USER_INC            %XIOS_INC %NCDF_INC
+%USER_LIB            %XIOS_LIB %NCDF_LIB
+#USER_INC            %XIOS_INC %OASIS_INC %NCDF_INC
+#USER_LIB            %XIOS_LIB %OASIS_LIB %NCDF_LIB
+
+%CC                  cc
+%CFLAGS              -O0
+bld::tool::fc_modsearch -J
diff --git a/sette/BATCH_TEMPLATE/batch-X86_ARCHER2-Gnu_DEBUG b/sette/BATCH_TEMPLATE/batch-X86_ARCHER2-Gnu_DEBUG
new file mode 120000
index 00000000..8ff6d3ee
--- /dev/null
+++ b/sette/BATCH_TEMPLATE/batch-X86_ARCHER2-Gnu_DEBUG
@@ -0,0 +1 @@
+batch-X86_ARCHER2-Gnu
\ No newline at end of file
diff --git a/sette/prepare_job.sh b/sette/prepare_job.sh
index 2cc34714..335daedb 100755
--- a/sette/prepare_job.sh
+++ b/sette/prepare_job.sh
@@ -198,10 +198,10 @@ fi
 					NB_NODES=$( echo $NB_PROC $NXIO_PROC | awk '{printf("%d",($1 + $2 ) / 16 + 1 )}')
 	       			fi
 				;;
-			X86_ARCHER2-Cray)
+			X86_ARCHER2-Cray*)
                                 MK_TEMPLATE=$( /work/n01/shared/nemo/mkslurm_settejob_4.2 -S $NXIO_PROC -s 8 -m 4 -C $NB_PROC -g 2 -a n01-CLASS -j sette_job -t 20:00 > ${SETTE_DIR}/job_batch_template )
 				;;
-			X86_ARCHER2-Gnu)
+			X86_ARCHER2-Gnu*)
                                 MK_TEMPLATE=$( /work/n01/shared/nemo/mkslurm_settejob_4.2_Gnu -S $NXIO_PROC -s 8 -m 4 -C $NB_PROC -g 2 -a n01-CLASS -j sette_job -t 20:00 > ${SETTE_DIR}/job_batch_template )
 				;;
                         XC40_METO*) #Setup for Met Office XC40 with any compiler
-- 
GitLab