Repository: NOAA-EMC/RDASApp
Pull request #349: Changes for  building  rdasapp on wcoss2
Author: login: TingLei-NOAA
Created: 2025-03-31T13:00:05Z | Merged: 2025-03-31T21:01:45Z

The first step for resolve the issue of building RDASapp on  WCOSS2  https://github.com/NOAA-EMC/RDASApp/issues/343
Mainly following GDASapp's setup, now this branch could be built on WCOSS2. 
The remaining issue is the ctests creation needs more work because PBS rather than slurm is used on wcoss2.  And, hence, there is no a simple command to replace "srun" . 
A straightforward solution is to use a shell script (or python script) wrapper in place of srun.  However, I 'd like to know opinions from developers on rdasapp, gdasapp and others.

 



Diff:
diff --git a/README.md b/README.md
index b8548f50..cb2bd3d4 100644
--- a/README.md
+++ b/README.md
@@ -7,6 +7,7 @@ Repository for JEDI-based data assimilation for the Rapid Refresh Forecast Syste
 -   NOAA RDHPCS Orion
 -   NOAA RDHPCS Hercules
 -   NOAA RDHPCS Gaea (C5 and C6)
+-   NOAA WCOSS2 
 
 ## [How to clone and build RDASAPP?](docs/build_and_test.md)
 ## [How to run RRFS CTest?](docs/build_and_test.md#3-rrfs-ctest)
diff --git a/build.sh b/build.sh
index 65c40d92..2a2f7402 100755
--- a/build.sh
+++ b/build.sh
@@ -77,7 +77,7 @@ while getopts "p:c:m:j:hvfsx" opt; do
 done
 
 case ${BUILD_TARGET} in
-  hera | orion | hercules | jet | gaea )
+  hera | orion | hercules | jet | gaea | wcoss2 )
     echo "Building RDASApp on $BUILD_TARGET"
     echo "  Build initiated `date`"
     [[ "${BUILD_TARGET}" != *gaea* ]] && source $dir_root/ush/module-setup.sh
@@ -101,6 +101,11 @@ if [[ $BUILD_TARGET == 'orion' ]]; then # lower due to memory limit on login nod
 else # hera, hercules, jet, gaea
   BUILD_JOBS=${BUILD_JOBS:-6}
 fi
+#clt from GDASapp 
+# TODO: Remove LD_LIBRARY_PATH line as soon as permanent solution is available
+ if [[ $BUILD_TARGET == 'wcoss2' ]]; then
+     export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/opt/cray/pe/mpich/8.1.19/ofi/intel/19.0/lib"
+ fi
 
 BUILD_DIR=${BUILD_DIR:-$dir_root/build}
 if [[ $CLEAN_BUILD == 'YES' ]]; then
diff --git a/modulefiles/EVA/wcoss2.lua b/modulefiles/EVA/wcoss2.lua
new file mode 100644
index 00000000..b604dcdb
--- /dev/null
+++ b/modulefiles/EVA/wcoss2.lua
@@ -0,0 +1,25 @@
+help([[
+Load environment for running EVA.
+]])
+
+local pkgName    = myModuleName()
+local pkgVersion = myModuleVersion()
+local pkgNameVer = myModuleFullName()
+
+conflict(pkgName)
+
+load("PrgEnv-intel/8.2.0")
+load("craype")
+load("cray-pals")
+load("git/2.29.0")
+load("intel/19.1.3.304")
+load("python/3.10.4")
+load("ve/evs/1.0")
+
+append_path("PATH", "/lfs/h2/emc/da/noscrub/emc.da/eva/opt/bin")
+append_path("PYTHONPATH", "/lfs/h2/emc/da/noscrub/emc.da/eva/opt/")
+
+whatis("Name: ".. pkgName)
+whatis("Version: ".. pkgVersion)
+whatis("Category: EVA")
+whatis("Description: Load all libraries needed for EVA")
diff --git a/modulefiles/RDAS/wcoss2.intel.lua b/modulefiles/RDAS/wcoss2.intel.lua
new file mode 100644
index 00000000..13546e8f
--- /dev/null
+++ b/modulefiles/RDAS/wcoss2.intel.lua
@@ -0,0 +1,98 @@
+help([[
+Load environment for running the GDAS application with Intel compilers and MPI.
+]])
+
+local pkgName    = myModuleName()
+local pkgVersion = myModuleVersion() or "1.0"
+local pkgNameVer = myModuleFullName()
+
+prepend_path("MODULEPATH", "/apps/ops/test/spack-stack-1.6.0-nco/envs/nco-intel-19.1.3.304/install/modulefiles/Core")
+
+load("PrgEnv-intel/8.3.3")
+load("stack-intel/19.1.3.304")
+load("stack-cray-mpich/8.1.9")
+load("stack-python/3.10.13")
+load("craype/2.7.17")
+load("cray-pals/1.3.2")
+load("cmake/3.23.1")
+load("gettext/0.19.7")
+load("pcre2/10.42")
+load("curl/8.4.0")
+load("zlib/1.2.13")
+load("git/2.35.3")
+load("git-lfs/2.11.0")
+load("pkg-config/0.29.2")
+load("hdf5/1.14.0")
+load("parallel-netcdf/1.12.2")
+load("netcdf-c/4.9.2")
+load("nccmp/1.9.0.1")
+load("netcdf-fortran/4.6.1")
+load("nco/5.0.6")
+load("parallelio/2.5.10")
+load("boost/1.83.0")
+load("bufr/12.0.1")
+load("ecbuild/3.7.2")
+load("openjpeg/2.5.0")
+load("eigen/3.4.0")
+load("openblas/0.3.24")
+load("eckit/1.24.5")
+load("fftw/3.3.10")
+load("fckit/0.11.0")
+load("fms/2023.04")
+load("esmf/8.5.0")
+load("atlas/0.35.0")
+load("sp/2.5.0")
+load("gsl-lite/0.37.0")
+load("libjpeg/2.1.0")
+load("libpng/1.6.37")
+load("libxt/1.1.5")
+load("libxmu/1.1.4")
+load("libxpm/3.5.12")
+load("libxaw/1.0.13")
+load("udunits/2.2.28")
+load("ncview/2.1.9")
+load("netcdf-cxx4/4.3.1")
+load("core/rocoto/1.3.5")
+load("prod_util/2.0.14")
+
+load("py-setuptools/63.4.3")
+load("py-jinja2/3.1.2")
+load("py-netcdf4/1.5.8")
+load("py-pybind11/2.11.1")
+load("py-pycodestyle/2.11.0")
+load("py-pyyaml/5.4.1")
+load("py-scipy/1.10.1")
+load("py-xarray/2023.7.0")
+load("py-f90nml/1.4.3")
+load("py-pip/23.1.2")
+load("py-bottleneck/1.3.7")
+load("py-numexpr/2.8.4")
+load("py-six/1.16.0")
+load("py-python-dateutil/2.8.2")
+load("py-pytz/2023.3")
+load("py-pandas/1.5.3")
+load("py-numpy/1.24.4")
+load("py-markupsafe/2.1.3")
+load("py-cftime/1.0.3.4")
+load("py-packaging/23.1")
+
+setenv("CC","cc")
+setenv("CXX","CC")
+setenv("FC","ftn")
+
+-- stack-intel/19.1.3.304 sets compiler flags "-static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -lm -lpthread"
+-- flags trigger "warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance"
+-- TODO: remove unsetenv lines when complier flags are removed from the wcoss2 spack-stack build
+unsetenv("CFLAGS")
+unsetenv("CXXFLAGS")
+unsetenv("FFLAGS")
+
+local mpiexec = '/opt/cray/pals/1.3.2/bin/mpirun'
+local mpinproc = '-n'
+setenv('MPIEXEC_EXEC', mpiexec)
+setenv('MPIEXEC_NPROC', mpinproc)
+
+whatis("Name: ".. pkgName)
+whatis("Version: ".. pkgVersion)
+whatis("Category: RDASApp")
+whatis("Description: Load all libraries needed for RDASApp")
diff --git a/ush/init.sh b/ush/init.sh
index bf596d8d..4a1692b4 100755
--- a/ush/init.sh
+++ b/ush/init.sh
@@ -5,6 +5,9 @@ source ${ushdir}/detect_machine.sh
 basedir="$(dirname "$ushdir")"
 
 case ${MACHINE_ID} in
+  wcoss2)
+    RDAS_DATA=/lfs/h2/emc/da/noscrub/Ting.Lei/dr-rdas-data/RDAS_DATA
+    ;;
   hera)
     RDAS_DATA=/scratch1/NCEPDEV/fv3-cam/RDAS_DATA
     ;;
diff --git a/ush/module-setup.sh b/ush/module-setup.sh
index 2b7dfb5a..ca889de6 100755
--- a/ush/module-setup.sh
+++ b/ush/module-setup.sh
@@ -38,6 +38,9 @@ elif [[ $MACHINE_ID = s4* ]] ; then
 
 elif [[ $MACHINE_ID = wcoss2 ]]; then
     # We are on WCOSS2
+   # Ignore default modules of the same version lower in the search path (req'd by spack-stack)
+      export LMOD_TMOD_FIND_FIRST=yes  #from GDASapp
+      #
     module reset
 
 elif [[ $MACHINE_ID = cheyenne* ]] ; then


Reviews:
user: login: SamuelDegelia-NOAA
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-31T13:46:35Z
user: login: TingLei-NOAA
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-31T14:12:29Z
user: login: SamuelDegelia-NOAA
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-31T14:25:27Z
user: login: guoqing-noaa
state: COMMENTED
author_association: COLLABORATOR
submitted_at: 2025-03-31T17:50:01Z
user: login: guoqing-noaa
state: COMMENTED
author_association: COLLABORATOR
submitted_at: 2025-03-31T17:50:49Z
user: login: TingLei-NOAA
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-31T18:05:25Z
user: login: guoqing-noaa
state: COMMENTED
author_association: COLLABORATOR
submitted_at: 2025-03-31T18:08:37Z
user: login: guoqing-noaa
state: COMMENTED
author_association: COLLABORATOR
submitted_at: 2025-03-31T18:10:04Z
user: login: SamuelDegelia-NOAA
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-31T18:22:18Z
user: login: TingLei-NOAA
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-31T18:32:37Z
user: login: TingLei-NOAA
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-31T18:40:26Z
user: login: SamuelDegelia-NOAA
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-31T18:43:03Z
user: login: guoqing-noaa
state: COMMENTED
author_association: COLLABORATOR
submitted_at: 2025-03-31T18:49:22Z
user: login: TingLei-NOAA
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-31T18:54:40Z
user: login: guoqing-noaa
state: COMMENTED
author_association: COLLABORATOR
submitted_at: 2025-03-31T18:55:44Z
user: login: guoqing-noaa
state: COMMENTED
author_association: COLLABORATOR
submitted_at: 2025-03-31T18:56:01Z
user: login: SamuelDegelia-NOAA
body: Everything builds successfully for me on WCOSS2 now. Thanks @TingLei-NOAA! 
state: DISMISSED
author_association: CONTRIBUTOR
submitted_at: 2025-03-31T19:48:51Z
user: login: guoqing-noaa
state: APPROVED
author_association: COLLABORATOR
submitted_at: 2025-03-31T20:47:05Z
user: login: ShunLiu-NOAA
state: APPROVED
author_association: NONE
submitted_at: 2025-03-31T20:57:14Z

Review comments:
diff_hunk: @@ -14,5 +14,6 @@ source ${ushdir}/load_rdas.sh
 set -x
 cd ${ushdir}/../build/rrfs-test
 pwd
-ctest -j8 # or ctest -VV for verbose outputs
+#clt ctest -j8 # or ctest -VV for verbose outputs
+ctest -VV for verbose outputs
path: ush/run_rrfs_tests.sh
user: login: SamuelDegelia-NOAA
body: Can we keep the `ctest -j8` line on other machines at least? This is useful for running all ctests at once. 
created_at: 2025-03-31T13:46:35Z
author_association: CONTRIBUTOR
diff_hunk: @@ -14,5 +14,6 @@ source ${ushdir}/load_rdas.sh
 set -x
 cd ${ushdir}/../build/rrfs-test
 pwd
-ctest -j8 # or ctest -VV for verbose outputs
+#clt ctest -j8 # or ctest -VV for verbose outputs
+ctest -VV for verbose outputs
path: ush/run_rrfs_tests.sh
user: login: TingLei-NOAA
body: @SamuelDegelia-NOAA . Done!
created_at: 2025-03-31T14:12:29Z
author_association: CONTRIBUTOR
diff_hunk: @@ -14,5 +14,6 @@ source ${ushdir}/load_rdas.sh
 set -x
 cd ${ushdir}/../build/rrfs-test
 pwd
-ctest -j8 # or ctest -VV for verbose outputs
+#clt ctest -j8 # or ctest -VV for verbose outputs
+ctest -VV for verbose outputs
path: ush/run_rrfs_tests.sh
user: login: SamuelDegelia-NOAA
body: Thank you @TingLei-NOAA! 
created_at: 2025-03-31T14:25:27Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,102 @@
+help([[
+Load environment for running the GDAS application with Intel compilers and MPI.
+]])
+
+local pkgName    = myModuleName()
+local pkgVersion = myModuleVersion() or "1.0"
+local pkgNameVer = myModuleFullName()
+
+prepend_path("MODULEPATH", "/apps/ops/test/spack-stack-1.6.0-nco/envs/nco-intel-19.1.3.304/install/modulefiles/Core")
+
+load("PrgEnv-intel/8.3.3")
+load("stack-intel/19.1.3.304")
+load("stack-cray-mpich/8.1.9")
+load("stack-python/3.10.13")
+load("craype/2.7.17")
+load("cray-pals/1.3.2")
+load("cmake/3.23.1")
+load("gettext/0.19.7")
+load("pcre2/10.42")
+load("curl/8.4.0")
+load("zlib/1.2.13")
+load("git/2.35.3")
+load("git-lfs/2.11.0")
+load("pkg-config/0.29.2")
+load("hdf5/1.14.0")
+load("parallel-netcdf/1.12.2")
+load("netcdf-c/4.9.2")
+load("nccmp/1.9.0.1")
+load("netcdf-fortran/4.6.1")
+load("nco/5.0.6")
+load("parallelio/2.5.10")
+load("boost/1.83.0")
+load("bufr/12.0.1")
+load("ecbuild/3.7.2")
+load("openjpeg/2.5.0")
+load("eigen/3.4.0")
+load("openblas/0.3.24")
+load("eckit/1.24.5")
+load("fftw/3.3.10")
+load("fckit/0.11.0")
+load("fms/2023.04")
+load("esmf/8.5.0")
+load("atlas/0.35.0")
+load("sp/2.5.0")
+load("gsl-lite/0.37.0")
+load("libjpeg/2.1.0")
+load("libpng/1.6.37")
+load("libxt/1.1.5")
+load("libxmu/1.1.4")
+load("libxpm/3.5.12")
+load("libxaw/1.0.13")
+load("udunits/2.2.28")
+load("ncview/2.1.9")
+load("netcdf-cxx4/4.3.1")
+load("core/rocoto/1.3.5")
+load("prod_util/2.0.14")
+
+load("py-setuptools/63.4.3")
+load("py-jinja2/3.1.2")
+load("py-netcdf4/1.5.8")
+load("py-pybind11/2.11.1")
+load("py-pycodestyle/2.11.0")
+load("py-pyyaml/5.4.1")
+load("py-scipy/1.10.1")
+load("py-xarray/2023.7.0")
+load("py-f90nml/1.4.3")
+load("py-pip/23.1.2")
+load("py-bottleneck/1.3.7")
+load("py-numexpr/2.8.4")
+load("py-six/1.16.0")
+load("py-python-dateutil/2.8.2")
+load("py-pytz/2023.3")
+load("py-pandas/1.5.3")
+load("py-numpy/1.24.4")
+load("py-markupsafe/2.1.3")
+load("py-cftime/1.0.3.4")
+load("py-packaging/23.1")
+
+setenv("CC","cc")
+setenv("CXX","CC")
+setenv("FC","ftn")
+
+-- stack-intel/19.1.3.304 sets compiler flags "-static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -lm -lpthread"
+-- flags trigger "warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance"
+-- TODO: remove unsetenv lines when complier flags are removed from the wcoss2 spack-stack build
+unsetenv("CFLAGS")
+unsetenv("CXXFLAGS")
+unsetenv("FFLAGS")
+
+local mpiexec = '/opt/cray/pals/1.3.2/bin/mpirun'
+local mpinproc = '-n'
+setenv('MPIEXEC_EXEC', mpiexec)
+setenv('MPIEXEC_NPROC', mpinproc)
+
+setenv("CRTM_FIX","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/fix/crtm/2.4.0")
+setenv("GDASAPP_TESTDATA","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/testdata")
+setenv("GDASAPP_UNIT_TEST_DATA_PATH", "/lfs/h2/emc/da/noscrub/emc.da/GDASApp/unittestdata")
path: modulefiles/RDAS/wcoss2.intel.lua
user: login: guoqing-noaa
body: We can safely remove lines 95-97?
created_at: 2025-03-31T17:50:01Z
author_association: COLLABORATOR
diff_hunk: @@ -0,0 +1,102 @@
+help([[
+Load environment for running the GDAS application with Intel compilers and MPI.
+]])
+
+local pkgName    = myModuleName()
+local pkgVersion = myModuleVersion() or "1.0"
+local pkgNameVer = myModuleFullName()
+
+prepend_path("MODULEPATH", "/apps/ops/test/spack-stack-1.6.0-nco/envs/nco-intel-19.1.3.304/install/modulefiles/Core")
+
+load("PrgEnv-intel/8.3.3")
+load("stack-intel/19.1.3.304")
+load("stack-cray-mpich/8.1.9")
+load("stack-python/3.10.13")
+load("craype/2.7.17")
+load("cray-pals/1.3.2")
+load("cmake/3.23.1")
+load("gettext/0.19.7")
+load("pcre2/10.42")
+load("curl/8.4.0")
+load("zlib/1.2.13")
+load("git/2.35.3")
+load("git-lfs/2.11.0")
+load("pkg-config/0.29.2")
+load("hdf5/1.14.0")
+load("parallel-netcdf/1.12.2")
+load("netcdf-c/4.9.2")
+load("nccmp/1.9.0.1")
+load("netcdf-fortran/4.6.1")
+load("nco/5.0.6")
+load("parallelio/2.5.10")
+load("boost/1.83.0")
+load("bufr/12.0.1")
+load("ecbuild/3.7.2")
+load("openjpeg/2.5.0")
+load("eigen/3.4.0")
+load("openblas/0.3.24")
+load("eckit/1.24.5")
+load("fftw/3.3.10")
+load("fckit/0.11.0")
+load("fms/2023.04")
+load("esmf/8.5.0")
+load("atlas/0.35.0")
+load("sp/2.5.0")
+load("gsl-lite/0.37.0")
+load("libjpeg/2.1.0")
+load("libpng/1.6.37")
+load("libxt/1.1.5")
+load("libxmu/1.1.4")
+load("libxpm/3.5.12")
+load("libxaw/1.0.13")
+load("udunits/2.2.28")
+load("ncview/2.1.9")
+load("netcdf-cxx4/4.3.1")
+load("core/rocoto/1.3.5")
+load("prod_util/2.0.14")
+
+load("py-setuptools/63.4.3")
+load("py-jinja2/3.1.2")
+load("py-netcdf4/1.5.8")
+load("py-pybind11/2.11.1")
+load("py-pycodestyle/2.11.0")
+load("py-pyyaml/5.4.1")
+load("py-scipy/1.10.1")
+load("py-xarray/2023.7.0")
+load("py-f90nml/1.4.3")
+load("py-pip/23.1.2")
+load("py-bottleneck/1.3.7")
+load("py-numexpr/2.8.4")
+load("py-six/1.16.0")
+load("py-python-dateutil/2.8.2")
+load("py-pytz/2023.3")
+load("py-pandas/1.5.3")
+load("py-numpy/1.24.4")
+load("py-markupsafe/2.1.3")
+load("py-cftime/1.0.3.4")
+load("py-packaging/23.1")
+
+setenv("CC","cc")
+setenv("CXX","CC")
+setenv("FC","ftn")
+
+-- stack-intel/19.1.3.304 sets compiler flags "-static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -lm -lpthread"
+-- flags trigger "warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance"
+-- TODO: remove unsetenv lines when complier flags are removed from the wcoss2 spack-stack build
+unsetenv("CFLAGS")
+unsetenv("CXXFLAGS")
+unsetenv("FFLAGS")
+
+local mpiexec = '/opt/cray/pals/1.3.2/bin/mpirun'
+local mpinproc = '-n'
+setenv('MPIEXEC_EXEC', mpiexec)
+setenv('MPIEXEC_NPROC', mpinproc)
+
+setenv("CRTM_FIX","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/fix/crtm/2.4.0")
+setenv("GDASAPP_TESTDATA","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/testdata")
+setenv("GDASAPP_UNIT_TEST_DATA_PATH", "/lfs/h2/emc/da/noscrub/emc.da/GDASApp/unittestdata")
+
+whatis("Name: ".. pkgName)
+whatis("Version: ".. pkgVersion)
+whatis("Category: GDASApp")
+whatis("Description: Load all libraries needed for GDASApp")
path: modulefiles/RDAS/wcoss2.intel.lua
user: login: guoqing-noaa
body: Change `GDASApp` to `RDASApp` in this file?
created_at: 2025-03-31T17:50:49Z
author_association: COLLABORATOR
diff_hunk: @@ -0,0 +1,102 @@
+help([[
+Load environment for running the GDAS application with Intel compilers and MPI.
+]])
+
+local pkgName    = myModuleName()
+local pkgVersion = myModuleVersion() or "1.0"
+local pkgNameVer = myModuleFullName()
+
+prepend_path("MODULEPATH", "/apps/ops/test/spack-stack-1.6.0-nco/envs/nco-intel-19.1.3.304/install/modulefiles/Core")
+
+load("PrgEnv-intel/8.3.3")
+load("stack-intel/19.1.3.304")
+load("stack-cray-mpich/8.1.9")
+load("stack-python/3.10.13")
+load("craype/2.7.17")
+load("cray-pals/1.3.2")
+load("cmake/3.23.1")
+load("gettext/0.19.7")
+load("pcre2/10.42")
+load("curl/8.4.0")
+load("zlib/1.2.13")
+load("git/2.35.3")
+load("git-lfs/2.11.0")
+load("pkg-config/0.29.2")
+load("hdf5/1.14.0")
+load("parallel-netcdf/1.12.2")
+load("netcdf-c/4.9.2")
+load("nccmp/1.9.0.1")
+load("netcdf-fortran/4.6.1")
+load("nco/5.0.6")
+load("parallelio/2.5.10")
+load("boost/1.83.0")
+load("bufr/12.0.1")
+load("ecbuild/3.7.2")
+load("openjpeg/2.5.0")
+load("eigen/3.4.0")
+load("openblas/0.3.24")
+load("eckit/1.24.5")
+load("fftw/3.3.10")
+load("fckit/0.11.0")
+load("fms/2023.04")
+load("esmf/8.5.0")
+load("atlas/0.35.0")
+load("sp/2.5.0")
+load("gsl-lite/0.37.0")
+load("libjpeg/2.1.0")
+load("libpng/1.6.37")
+load("libxt/1.1.5")
+load("libxmu/1.1.4")
+load("libxpm/3.5.12")
+load("libxaw/1.0.13")
+load("udunits/2.2.28")
+load("ncview/2.1.9")
+load("netcdf-cxx4/4.3.1")
+load("core/rocoto/1.3.5")
+load("prod_util/2.0.14")
+
+load("py-setuptools/63.4.3")
+load("py-jinja2/3.1.2")
+load("py-netcdf4/1.5.8")
+load("py-pybind11/2.11.1")
+load("py-pycodestyle/2.11.0")
+load("py-pyyaml/5.4.1")
+load("py-scipy/1.10.1")
+load("py-xarray/2023.7.0")
+load("py-f90nml/1.4.3")
+load("py-pip/23.1.2")
+load("py-bottleneck/1.3.7")
+load("py-numexpr/2.8.4")
+load("py-six/1.16.0")
+load("py-python-dateutil/2.8.2")
+load("py-pytz/2023.3")
+load("py-pandas/1.5.3")
+load("py-numpy/1.24.4")
+load("py-markupsafe/2.1.3")
+load("py-cftime/1.0.3.4")
+load("py-packaging/23.1")
+
+setenv("CC","cc")
+setenv("CXX","CC")
+setenv("FC","ftn")
+
+-- stack-intel/19.1.3.304 sets compiler flags "-static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -lm -lpthread"
+-- flags trigger "warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance"
+-- TODO: remove unsetenv lines when complier flags are removed from the wcoss2 spack-stack build
+unsetenv("CFLAGS")
+unsetenv("CXXFLAGS")
+unsetenv("FFLAGS")
+
+local mpiexec = '/opt/cray/pals/1.3.2/bin/mpirun'
+local mpinproc = '-n'
+setenv('MPIEXEC_EXEC', mpiexec)
+setenv('MPIEXEC_NPROC', mpinproc)
+
+setenv("CRTM_FIX","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/fix/crtm/2.4.0")
+setenv("GDASAPP_TESTDATA","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/testdata")
+setenv("GDASAPP_UNIT_TEST_DATA_PATH", "/lfs/h2/emc/da/noscrub/emc.da/GDASApp/unittestdata")
path: modulefiles/RDAS/wcoss2.intel.lua
user: login: TingLei-NOAA
body: @guoqing-noaa  So, CRTM_FIX is not used too? 
created_at: 2025-03-31T18:05:25Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,102 @@
+help([[
+Load environment for running the GDAS application with Intel compilers and MPI.
+]])
+
+local pkgName    = myModuleName()
+local pkgVersion = myModuleVersion() or "1.0"
+local pkgNameVer = myModuleFullName()
+
+prepend_path("MODULEPATH", "/apps/ops/test/spack-stack-1.6.0-nco/envs/nco-intel-19.1.3.304/install/modulefiles/Core")
+
+load("PrgEnv-intel/8.3.3")
+load("stack-intel/19.1.3.304")
+load("stack-cray-mpich/8.1.9")
+load("stack-python/3.10.13")
+load("craype/2.7.17")
+load("cray-pals/1.3.2")
+load("cmake/3.23.1")
+load("gettext/0.19.7")
+load("pcre2/10.42")
+load("curl/8.4.0")
+load("zlib/1.2.13")
+load("git/2.35.3")
+load("git-lfs/2.11.0")
+load("pkg-config/0.29.2")
+load("hdf5/1.14.0")
+load("parallel-netcdf/1.12.2")
+load("netcdf-c/4.9.2")
+load("nccmp/1.9.0.1")
+load("netcdf-fortran/4.6.1")
+load("nco/5.0.6")
+load("parallelio/2.5.10")
+load("boost/1.83.0")
+load("bufr/12.0.1")
+load("ecbuild/3.7.2")
+load("openjpeg/2.5.0")
+load("eigen/3.4.0")
+load("openblas/0.3.24")
+load("eckit/1.24.5")
+load("fftw/3.3.10")
+load("fckit/0.11.0")
+load("fms/2023.04")
+load("esmf/8.5.0")
+load("atlas/0.35.0")
+load("sp/2.5.0")
+load("gsl-lite/0.37.0")
+load("libjpeg/2.1.0")
+load("libpng/1.6.37")
+load("libxt/1.1.5")
+load("libxmu/1.1.4")
+load("libxpm/3.5.12")
+load("libxaw/1.0.13")
+load("udunits/2.2.28")
+load("ncview/2.1.9")
+load("netcdf-cxx4/4.3.1")
+load("core/rocoto/1.3.5")
+load("prod_util/2.0.14")
+
+load("py-setuptools/63.4.3")
+load("py-jinja2/3.1.2")
+load("py-netcdf4/1.5.8")
+load("py-pybind11/2.11.1")
+load("py-pycodestyle/2.11.0")
+load("py-pyyaml/5.4.1")
+load("py-scipy/1.10.1")
+load("py-xarray/2023.7.0")
+load("py-f90nml/1.4.3")
+load("py-pip/23.1.2")
+load("py-bottleneck/1.3.7")
+load("py-numexpr/2.8.4")
+load("py-six/1.16.0")
+load("py-python-dateutil/2.8.2")
+load("py-pytz/2023.3")
+load("py-pandas/1.5.3")
+load("py-numpy/1.24.4")
+load("py-markupsafe/2.1.3")
+load("py-cftime/1.0.3.4")
+load("py-packaging/23.1")
+
+setenv("CC","cc")
+setenv("CXX","CC")
+setenv("FC","ftn")
+
+-- stack-intel/19.1.3.304 sets compiler flags "-static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -lm -lpthread"
+-- flags trigger "warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance"
+-- TODO: remove unsetenv lines when complier flags are removed from the wcoss2 spack-stack build
+unsetenv("CFLAGS")
+unsetenv("CXXFLAGS")
+unsetenv("FFLAGS")
+
+local mpiexec = '/opt/cray/pals/1.3.2/bin/mpirun'
+local mpinproc = '-n'
+setenv('MPIEXEC_EXEC', mpiexec)
+setenv('MPIEXEC_NPROC', mpinproc)
+
+setenv("CRTM_FIX","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/fix/crtm/2.4.0")
+setenv("GDASAPP_TESTDATA","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/testdata")
+setenv("GDASAPP_UNIT_TEST_DATA_PATH", "/lfs/h2/emc/da/noscrub/emc.da/GDASApp/unittestdata")
path: modulefiles/RDAS/wcoss2.intel.lua
user: login: guoqing-noaa
body: We get that from `${HOMErrfs}/fix`
created_at: 2025-03-31T18:08:37Z
author_association: COLLABORATOR
diff_hunk: @@ -0,0 +1,102 @@
+help([[
+Load environment for running the GDAS application with Intel compilers and MPI.
+]])
+
+local pkgName    = myModuleName()
+local pkgVersion = myModuleVersion() or "1.0"
+local pkgNameVer = myModuleFullName()
+
+prepend_path("MODULEPATH", "/apps/ops/test/spack-stack-1.6.0-nco/envs/nco-intel-19.1.3.304/install/modulefiles/Core")
+
+load("PrgEnv-intel/8.3.3")
+load("stack-intel/19.1.3.304")
+load("stack-cray-mpich/8.1.9")
+load("stack-python/3.10.13")
+load("craype/2.7.17")
+load("cray-pals/1.3.2")
+load("cmake/3.23.1")
+load("gettext/0.19.7")
+load("pcre2/10.42")
+load("curl/8.4.0")
+load("zlib/1.2.13")
+load("git/2.35.3")
+load("git-lfs/2.11.0")
+load("pkg-config/0.29.2")
+load("hdf5/1.14.0")
+load("parallel-netcdf/1.12.2")
+load("netcdf-c/4.9.2")
+load("nccmp/1.9.0.1")
+load("netcdf-fortran/4.6.1")
+load("nco/5.0.6")
+load("parallelio/2.5.10")
+load("boost/1.83.0")
+load("bufr/12.0.1")
+load("ecbuild/3.7.2")
+load("openjpeg/2.5.0")
+load("eigen/3.4.0")
+load("openblas/0.3.24")
+load("eckit/1.24.5")
+load("fftw/3.3.10")
+load("fckit/0.11.0")
+load("fms/2023.04")
+load("esmf/8.5.0")
+load("atlas/0.35.0")
+load("sp/2.5.0")
+load("gsl-lite/0.37.0")
+load("libjpeg/2.1.0")
+load("libpng/1.6.37")
+load("libxt/1.1.5")
+load("libxmu/1.1.4")
+load("libxpm/3.5.12")
+load("libxaw/1.0.13")
+load("udunits/2.2.28")
+load("ncview/2.1.9")
+load("netcdf-cxx4/4.3.1")
+load("core/rocoto/1.3.5")
+load("prod_util/2.0.14")
+
+load("py-setuptools/63.4.3")
+load("py-jinja2/3.1.2")
+load("py-netcdf4/1.5.8")
+load("py-pybind11/2.11.1")
+load("py-pycodestyle/2.11.0")
+load("py-pyyaml/5.4.1")
+load("py-scipy/1.10.1")
+load("py-xarray/2023.7.0")
+load("py-f90nml/1.4.3")
+load("py-pip/23.1.2")
+load("py-bottleneck/1.3.7")
+load("py-numexpr/2.8.4")
+load("py-six/1.16.0")
+load("py-python-dateutil/2.8.2")
+load("py-pytz/2023.3")
+load("py-pandas/1.5.3")
+load("py-numpy/1.24.4")
+load("py-markupsafe/2.1.3")
+load("py-cftime/1.0.3.4")
+load("py-packaging/23.1")
+
+setenv("CC","cc")
+setenv("CXX","CC")
+setenv("FC","ftn")
+
+-- stack-intel/19.1.3.304 sets compiler flags "-static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -lm -lpthread"
+-- flags trigger "warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance"
+-- TODO: remove unsetenv lines when complier flags are removed from the wcoss2 spack-stack build
+unsetenv("CFLAGS")
+unsetenv("CXXFLAGS")
+unsetenv("FFLAGS")
+
+local mpiexec = '/opt/cray/pals/1.3.2/bin/mpirun'
+local mpinproc = '-n'
+setenv('MPIEXEC_EXEC', mpiexec)
+setenv('MPIEXEC_NPROC', mpinproc)
+
+setenv("CRTM_FIX","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/fix/crtm/2.4.0")
+setenv("GDASAPP_TESTDATA","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/testdata")
+setenv("GDASAPP_UNIT_TEST_DATA_PATH", "/lfs/h2/emc/da/noscrub/emc.da/GDASApp/unittestdata")
path: modulefiles/RDAS/wcoss2.intel.lua
user: login: guoqing-noaa
body: it looks like GDASApp already uses crtm/2.4.0?

Do wen want to update crtm as well?  @xyzemc @HaidaoLin-NOAA 
created_at: 2025-03-31T18:10:04Z
author_association: COLLABORATOR
diff_hunk: @@ -5,6 +5,9 @@ source ${ushdir}/detect_machine.sh
 basedir="$(dirname "$ushdir")"
 
 case ${MACHINE_ID} in
+  wcoss2)
+    RDAS_DATA=/lfs/h2/emc/da/noscrub/Ting.Lei/dr-rdas-data/RDAS_DATA
+    ;;
path: ush/init.sh
user: login: SamuelDegelia-NOAA
body: @TingLei-NOAA My build on WCOSS2 fails because I do not have access to this directory. Can you set the permissions? 
created_at: 2025-03-31T18:22:18Z
author_association: CONTRIBUTOR
diff_hunk: @@ -5,6 +5,9 @@ source ${ushdir}/detect_machine.sh
 basedir="$(dirname "$ushdir")"
 
 case ${MACHINE_ID} in
+  wcoss2)
+    RDAS_DATA=/lfs/h2/emc/da/noscrub/Ting.Lei/dr-rdas-data/RDAS_DATA
+    ;;
path: ush/init.sh
user: login: TingLei-NOAA
body: My apology! , Please try it now. 
created_at: 2025-03-31T18:32:37Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,102 @@
+help([[
+Load environment for running the GDAS application with Intel compilers and MPI.
+]])
+
+local pkgName    = myModuleName()
+local pkgVersion = myModuleVersion() or "1.0"
+local pkgNameVer = myModuleFullName()
+
+prepend_path("MODULEPATH", "/apps/ops/test/spack-stack-1.6.0-nco/envs/nco-intel-19.1.3.304/install/modulefiles/Core")
+
+load("PrgEnv-intel/8.3.3")
+load("stack-intel/19.1.3.304")
+load("stack-cray-mpich/8.1.9")
+load("stack-python/3.10.13")
+load("craype/2.7.17")
+load("cray-pals/1.3.2")
+load("cmake/3.23.1")
+load("gettext/0.19.7")
+load("pcre2/10.42")
+load("curl/8.4.0")
+load("zlib/1.2.13")
+load("git/2.35.3")
+load("git-lfs/2.11.0")
+load("pkg-config/0.29.2")
+load("hdf5/1.14.0")
+load("parallel-netcdf/1.12.2")
+load("netcdf-c/4.9.2")
+load("nccmp/1.9.0.1")
+load("netcdf-fortran/4.6.1")
+load("nco/5.0.6")
+load("parallelio/2.5.10")
+load("boost/1.83.0")
+load("bufr/12.0.1")
+load("ecbuild/3.7.2")
+load("openjpeg/2.5.0")
+load("eigen/3.4.0")
+load("openblas/0.3.24")
+load("eckit/1.24.5")
+load("fftw/3.3.10")
+load("fckit/0.11.0")
+load("fms/2023.04")
+load("esmf/8.5.0")
+load("atlas/0.35.0")
+load("sp/2.5.0")
+load("gsl-lite/0.37.0")
+load("libjpeg/2.1.0")
+load("libpng/1.6.37")
+load("libxt/1.1.5")
+load("libxmu/1.1.4")
+load("libxpm/3.5.12")
+load("libxaw/1.0.13")
+load("udunits/2.2.28")
+load("ncview/2.1.9")
+load("netcdf-cxx4/4.3.1")
+load("core/rocoto/1.3.5")
+load("prod_util/2.0.14")
+
+load("py-setuptools/63.4.3")
+load("py-jinja2/3.1.2")
+load("py-netcdf4/1.5.8")
+load("py-pybind11/2.11.1")
+load("py-pycodestyle/2.11.0")
+load("py-pyyaml/5.4.1")
+load("py-scipy/1.10.1")
+load("py-xarray/2023.7.0")
+load("py-f90nml/1.4.3")
+load("py-pip/23.1.2")
+load("py-bottleneck/1.3.7")
+load("py-numexpr/2.8.4")
+load("py-six/1.16.0")
+load("py-python-dateutil/2.8.2")
+load("py-pytz/2023.3")
+load("py-pandas/1.5.3")
+load("py-numpy/1.24.4")
+load("py-markupsafe/2.1.3")
+load("py-cftime/1.0.3.4")
+load("py-packaging/23.1")
+
+setenv("CC","cc")
+setenv("CXX","CC")
+setenv("FC","ftn")
+
+-- stack-intel/19.1.3.304 sets compiler flags "-static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -lm -lpthread"
+-- flags trigger "warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance"
+-- TODO: remove unsetenv lines when complier flags are removed from the wcoss2 spack-stack build
+unsetenv("CFLAGS")
+unsetenv("CXXFLAGS")
+unsetenv("FFLAGS")
+
+local mpiexec = '/opt/cray/pals/1.3.2/bin/mpirun'
+local mpinproc = '-n'
+setenv('MPIEXEC_EXEC', mpiexec)
+setenv('MPIEXEC_NPROC', mpinproc)
+
+setenv("CRTM_FIX","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/fix/crtm/2.4.0")
+setenv("GDASAPP_TESTDATA","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/testdata")
+setenv("GDASAPP_UNIT_TEST_DATA_PATH", "/lfs/h2/emc/da/noscrub/emc.da/GDASApp/unittestdata")
+
+whatis("Name: ".. pkgName)
+whatis("Version: ".. pkgVersion)
+whatis("Category: GDASApp")
+whatis("Description: Load all libraries needed for GDASApp")
path: modulefiles/RDAS/wcoss2.intel.lua
user: login: TingLei-NOAA
body: Done!
created_at: 2025-03-31T18:40:26Z
author_association: CONTRIBUTOR
diff_hunk: @@ -5,6 +5,9 @@ source ${ushdir}/detect_machine.sh
 basedir="$(dirname "$ushdir")"
 
 case ${MACHINE_ID} in
+  wcoss2)
+    RDAS_DATA=/lfs/h2/emc/da/noscrub/Ting.Lei/dr-rdas-data/RDAS_DATA
+    ;;
path: ush/init.sh
user: login: SamuelDegelia-NOAA
body: Things are building now, thanks! 
created_at: 2025-03-31T18:43:03Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,102 @@
+help([[
+Load environment for running the GDAS application with Intel compilers and MPI.
+]])
+
+local pkgName    = myModuleName()
+local pkgVersion = myModuleVersion() or "1.0"
+local pkgNameVer = myModuleFullName()
+
+prepend_path("MODULEPATH", "/apps/ops/test/spack-stack-1.6.0-nco/envs/nco-intel-19.1.3.304/install/modulefiles/Core")
+
+load("PrgEnv-intel/8.3.3")
+load("stack-intel/19.1.3.304")
+load("stack-cray-mpich/8.1.9")
+load("stack-python/3.10.13")
+load("craype/2.7.17")
+load("cray-pals/1.3.2")
+load("cmake/3.23.1")
+load("gettext/0.19.7")
+load("pcre2/10.42")
+load("curl/8.4.0")
+load("zlib/1.2.13")
+load("git/2.35.3")
+load("git-lfs/2.11.0")
+load("pkg-config/0.29.2")
+load("hdf5/1.14.0")
+load("parallel-netcdf/1.12.2")
+load("netcdf-c/4.9.2")
+load("nccmp/1.9.0.1")
+load("netcdf-fortran/4.6.1")
+load("nco/5.0.6")
+load("parallelio/2.5.10")
+load("boost/1.83.0")
+load("bufr/12.0.1")
+load("ecbuild/3.7.2")
+load("openjpeg/2.5.0")
+load("eigen/3.4.0")
+load("openblas/0.3.24")
+load("eckit/1.24.5")
+load("fftw/3.3.10")
+load("fckit/0.11.0")
+load("fms/2023.04")
+load("esmf/8.5.0")
+load("atlas/0.35.0")
+load("sp/2.5.0")
+load("gsl-lite/0.37.0")
+load("libjpeg/2.1.0")
+load("libpng/1.6.37")
+load("libxt/1.1.5")
+load("libxmu/1.1.4")
+load("libxpm/3.5.12")
+load("libxaw/1.0.13")
+load("udunits/2.2.28")
+load("ncview/2.1.9")
+load("netcdf-cxx4/4.3.1")
+load("core/rocoto/1.3.5")
+load("prod_util/2.0.14")
+
+load("py-setuptools/63.4.3")
+load("py-jinja2/3.1.2")
+load("py-netcdf4/1.5.8")
+load("py-pybind11/2.11.1")
+load("py-pycodestyle/2.11.0")
+load("py-pyyaml/5.4.1")
+load("py-scipy/1.10.1")
+load("py-xarray/2023.7.0")
+load("py-f90nml/1.4.3")
+load("py-pip/23.1.2")
+load("py-bottleneck/1.3.7")
+load("py-numexpr/2.8.4")
+load("py-six/1.16.0")
+load("py-python-dateutil/2.8.2")
+load("py-pytz/2023.3")
+load("py-pandas/1.5.3")
+load("py-numpy/1.24.4")
+load("py-markupsafe/2.1.3")
+load("py-cftime/1.0.3.4")
+load("py-packaging/23.1")
+
+setenv("CC","cc")
+setenv("CXX","CC")
+setenv("FC","ftn")
+
+-- stack-intel/19.1.3.304 sets compiler flags "-static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -lm -lpthread"
+-- flags trigger "warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance"
+-- TODO: remove unsetenv lines when complier flags are removed from the wcoss2 spack-stack build
+unsetenv("CFLAGS")
+unsetenv("CXXFLAGS")
+unsetenv("FFLAGS")
+
+local mpiexec = '/opt/cray/pals/1.3.2/bin/mpirun'
+local mpinproc = '-n'
+setenv('MPIEXEC_EXEC', mpiexec)
+setenv('MPIEXEC_NPROC', mpinproc)
+
+setenv("CRTM_FIX","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/fix/crtm/2.4.0")
+setenv("GDASAPP_TESTDATA","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/testdata")
+setenv("GDASAPP_UNIT_TEST_DATA_PATH", "/lfs/h2/emc/da/noscrub/emc.da/GDASApp/unittestdata")
path: modulefiles/RDAS/wcoss2.intel.lua
user: login: guoqing-noaa
body: @TingLei-NOAA I think we don't need line 95.  @xyzemc may test that on wcoss2.

You can see we don't have `CRTM_FIX` in the module files in other machines.
If it is not needed, we better to remove it to avoid confusions.
created_at: 2025-03-31T18:49:22Z
author_association: COLLABORATOR
diff_hunk: @@ -0,0 +1,102 @@
+help([[
+Load environment for running the GDAS application with Intel compilers and MPI.
+]])
+
+local pkgName    = myModuleName()
+local pkgVersion = myModuleVersion() or "1.0"
+local pkgNameVer = myModuleFullName()
+
+prepend_path("MODULEPATH", "/apps/ops/test/spack-stack-1.6.0-nco/envs/nco-intel-19.1.3.304/install/modulefiles/Core")
+
+load("PrgEnv-intel/8.3.3")
+load("stack-intel/19.1.3.304")
+load("stack-cray-mpich/8.1.9")
+load("stack-python/3.10.13")
+load("craype/2.7.17")
+load("cray-pals/1.3.2")
+load("cmake/3.23.1")
+load("gettext/0.19.7")
+load("pcre2/10.42")
+load("curl/8.4.0")
+load("zlib/1.2.13")
+load("git/2.35.3")
+load("git-lfs/2.11.0")
+load("pkg-config/0.29.2")
+load("hdf5/1.14.0")
+load("parallel-netcdf/1.12.2")
+load("netcdf-c/4.9.2")
+load("nccmp/1.9.0.1")
+load("netcdf-fortran/4.6.1")
+load("nco/5.0.6")
+load("parallelio/2.5.10")
+load("boost/1.83.0")
+load("bufr/12.0.1")
+load("ecbuild/3.7.2")
+load("openjpeg/2.5.0")
+load("eigen/3.4.0")
+load("openblas/0.3.24")
+load("eckit/1.24.5")
+load("fftw/3.3.10")
+load("fckit/0.11.0")
+load("fms/2023.04")
+load("esmf/8.5.0")
+load("atlas/0.35.0")
+load("sp/2.5.0")
+load("gsl-lite/0.37.0")
+load("libjpeg/2.1.0")
+load("libpng/1.6.37")
+load("libxt/1.1.5")
+load("libxmu/1.1.4")
+load("libxpm/3.5.12")
+load("libxaw/1.0.13")
+load("udunits/2.2.28")
+load("ncview/2.1.9")
+load("netcdf-cxx4/4.3.1")
+load("core/rocoto/1.3.5")
+load("prod_util/2.0.14")
+
+load("py-setuptools/63.4.3")
+load("py-jinja2/3.1.2")
+load("py-netcdf4/1.5.8")
+load("py-pybind11/2.11.1")
+load("py-pycodestyle/2.11.0")
+load("py-pyyaml/5.4.1")
+load("py-scipy/1.10.1")
+load("py-xarray/2023.7.0")
+load("py-f90nml/1.4.3")
+load("py-pip/23.1.2")
+load("py-bottleneck/1.3.7")
+load("py-numexpr/2.8.4")
+load("py-six/1.16.0")
+load("py-python-dateutil/2.8.2")
+load("py-pytz/2023.3")
+load("py-pandas/1.5.3")
+load("py-numpy/1.24.4")
+load("py-markupsafe/2.1.3")
+load("py-cftime/1.0.3.4")
+load("py-packaging/23.1")
+
+setenv("CC","cc")
+setenv("CXX","CC")
+setenv("FC","ftn")
+
+-- stack-intel/19.1.3.304 sets compiler flags "-static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -lm -lpthread"
+-- flags trigger "warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance"
+-- TODO: remove unsetenv lines when complier flags are removed from the wcoss2 spack-stack build
+unsetenv("CFLAGS")
+unsetenv("CXXFLAGS")
+unsetenv("FFLAGS")
+
+local mpiexec = '/opt/cray/pals/1.3.2/bin/mpirun'
+local mpinproc = '-n'
+setenv('MPIEXEC_EXEC', mpiexec)
+setenv('MPIEXEC_NPROC', mpinproc)
+
+setenv("CRTM_FIX","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/fix/crtm/2.4.0")
+setenv("GDASAPP_TESTDATA","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/testdata")
+setenv("GDASAPP_UNIT_TEST_DATA_PATH", "/lfs/h2/emc/da/noscrub/emc.da/GDASApp/unittestdata")
path: modulefiles/RDAS/wcoss2.intel.lua
user: login: TingLei-NOAA
body: Done @guoqing-noaa 
created_at: 2025-03-31T18:54:40Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,102 @@
+help([[
+Load environment for running the GDAS application with Intel compilers and MPI.
+]])
+
+local pkgName    = myModuleName()
+local pkgVersion = myModuleVersion() or "1.0"
+local pkgNameVer = myModuleFullName()
+
+prepend_path("MODULEPATH", "/apps/ops/test/spack-stack-1.6.0-nco/envs/nco-intel-19.1.3.304/install/modulefiles/Core")
+
+load("PrgEnv-intel/8.3.3")
+load("stack-intel/19.1.3.304")
+load("stack-cray-mpich/8.1.9")
+load("stack-python/3.10.13")
+load("craype/2.7.17")
+load("cray-pals/1.3.2")
+load("cmake/3.23.1")
+load("gettext/0.19.7")
+load("pcre2/10.42")
+load("curl/8.4.0")
+load("zlib/1.2.13")
+load("git/2.35.3")
+load("git-lfs/2.11.0")
+load("pkg-config/0.29.2")
+load("hdf5/1.14.0")
+load("parallel-netcdf/1.12.2")
+load("netcdf-c/4.9.2")
+load("nccmp/1.9.0.1")
+load("netcdf-fortran/4.6.1")
+load("nco/5.0.6")
+load("parallelio/2.5.10")
+load("boost/1.83.0")
+load("bufr/12.0.1")
+load("ecbuild/3.7.2")
+load("openjpeg/2.5.0")
+load("eigen/3.4.0")
+load("openblas/0.3.24")
+load("eckit/1.24.5")
+load("fftw/3.3.10")
+load("fckit/0.11.0")
+load("fms/2023.04")
+load("esmf/8.5.0")
+load("atlas/0.35.0")
+load("sp/2.5.0")
+load("gsl-lite/0.37.0")
+load("libjpeg/2.1.0")
+load("libpng/1.6.37")
+load("libxt/1.1.5")
+load("libxmu/1.1.4")
+load("libxpm/3.5.12")
+load("libxaw/1.0.13")
+load("udunits/2.2.28")
+load("ncview/2.1.9")
+load("netcdf-cxx4/4.3.1")
+load("core/rocoto/1.3.5")
+load("prod_util/2.0.14")
+
+load("py-setuptools/63.4.3")
+load("py-jinja2/3.1.2")
+load("py-netcdf4/1.5.8")
+load("py-pybind11/2.11.1")
+load("py-pycodestyle/2.11.0")
+load("py-pyyaml/5.4.1")
+load("py-scipy/1.10.1")
+load("py-xarray/2023.7.0")
+load("py-f90nml/1.4.3")
+load("py-pip/23.1.2")
+load("py-bottleneck/1.3.7")
+load("py-numexpr/2.8.4")
+load("py-six/1.16.0")
+load("py-python-dateutil/2.8.2")
+load("py-pytz/2023.3")
+load("py-pandas/1.5.3")
+load("py-numpy/1.24.4")
+load("py-markupsafe/2.1.3")
+load("py-cftime/1.0.3.4")
+load("py-packaging/23.1")
+
+setenv("CC","cc")
+setenv("CXX","CC")
+setenv("FC","ftn")
+
+-- stack-intel/19.1.3.304 sets compiler flags "-static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -lm -lpthread"
+-- flags trigger "warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance"
+-- TODO: remove unsetenv lines when complier flags are removed from the wcoss2 spack-stack build
+unsetenv("CFLAGS")
+unsetenv("CXXFLAGS")
+unsetenv("FFLAGS")
+
+local mpiexec = '/opt/cray/pals/1.3.2/bin/mpirun'
+local mpinproc = '-n'
+setenv('MPIEXEC_EXEC', mpiexec)
+setenv('MPIEXEC_NPROC', mpinproc)
+
+setenv("CRTM_FIX","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/fix/crtm/2.4.0")
+setenv("GDASAPP_TESTDATA","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/testdata")
+setenv("GDASAPP_UNIT_TEST_DATA_PATH", "/lfs/h2/emc/da/noscrub/emc.da/GDASApp/unittestdata")
path: modulefiles/RDAS/wcoss2.intel.lua
user: login: guoqing-noaa
body: Thanks, @TingLei-NOAA 
created_at: 2025-03-31T18:55:44Z
author_association: COLLABORATOR
diff_hunk: @@ -0,0 +1,102 @@
+help([[
+Load environment for running the GDAS application with Intel compilers and MPI.
+]])
+
+local pkgName    = myModuleName()
+local pkgVersion = myModuleVersion() or "1.0"
+local pkgNameVer = myModuleFullName()
+
+prepend_path("MODULEPATH", "/apps/ops/test/spack-stack-1.6.0-nco/envs/nco-intel-19.1.3.304/install/modulefiles/Core")
+
+load("PrgEnv-intel/8.3.3")
+load("stack-intel/19.1.3.304")
+load("stack-cray-mpich/8.1.9")
+load("stack-python/3.10.13")
+load("craype/2.7.17")
+load("cray-pals/1.3.2")
+load("cmake/3.23.1")
+load("gettext/0.19.7")
+load("pcre2/10.42")
+load("curl/8.4.0")
+load("zlib/1.2.13")
+load("git/2.35.3")
+load("git-lfs/2.11.0")
+load("pkg-config/0.29.2")
+load("hdf5/1.14.0")
+load("parallel-netcdf/1.12.2")
+load("netcdf-c/4.9.2")
+load("nccmp/1.9.0.1")
+load("netcdf-fortran/4.6.1")
+load("nco/5.0.6")
+load("parallelio/2.5.10")
+load("boost/1.83.0")
+load("bufr/12.0.1")
+load("ecbuild/3.7.2")
+load("openjpeg/2.5.0")
+load("eigen/3.4.0")
+load("openblas/0.3.24")
+load("eckit/1.24.5")
+load("fftw/3.3.10")
+load("fckit/0.11.0")
+load("fms/2023.04")
+load("esmf/8.5.0")
+load("atlas/0.35.0")
+load("sp/2.5.0")
+load("gsl-lite/0.37.0")
+load("libjpeg/2.1.0")
+load("libpng/1.6.37")
+load("libxt/1.1.5")
+load("libxmu/1.1.4")
+load("libxpm/3.5.12")
+load("libxaw/1.0.13")
+load("udunits/2.2.28")
+load("ncview/2.1.9")
+load("netcdf-cxx4/4.3.1")
+load("core/rocoto/1.3.5")
+load("prod_util/2.0.14")
+
+load("py-setuptools/63.4.3")
+load("py-jinja2/3.1.2")
+load("py-netcdf4/1.5.8")
+load("py-pybind11/2.11.1")
+load("py-pycodestyle/2.11.0")
+load("py-pyyaml/5.4.1")
+load("py-scipy/1.10.1")
+load("py-xarray/2023.7.0")
+load("py-f90nml/1.4.3")
+load("py-pip/23.1.2")
+load("py-bottleneck/1.3.7")
+load("py-numexpr/2.8.4")
+load("py-six/1.16.0")
+load("py-python-dateutil/2.8.2")
+load("py-pytz/2023.3")
+load("py-pandas/1.5.3")
+load("py-numpy/1.24.4")
+load("py-markupsafe/2.1.3")
+load("py-cftime/1.0.3.4")
+load("py-packaging/23.1")
+
+setenv("CC","cc")
+setenv("CXX","CC")
+setenv("FC","ftn")
+
+-- stack-intel/19.1.3.304 sets compiler flags "-static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -lm -lpthread"
+-- flags trigger "warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance"
+-- TODO: remove unsetenv lines when complier flags are removed from the wcoss2 spack-stack build
+unsetenv("CFLAGS")
+unsetenv("CXXFLAGS")
+unsetenv("FFLAGS")
+
+local mpiexec = '/opt/cray/pals/1.3.2/bin/mpirun'
+local mpinproc = '-n'
+setenv('MPIEXEC_EXEC', mpiexec)
+setenv('MPIEXEC_NPROC', mpinproc)
+
+setenv("CRTM_FIX","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/fix/crtm/2.4.0")
+setenv("GDASAPP_TESTDATA","/lfs/h2/emc/da/noscrub/emc.da/GDASApp/testdata")
+setenv("GDASAPP_UNIT_TEST_DATA_PATH", "/lfs/h2/emc/da/noscrub/emc.da/GDASApp/unittestdata")
+
+whatis("Name: ".. pkgName)
+whatis("Version: ".. pkgVersion)
+whatis("Category: GDASApp")
+whatis("Description: Load all libraries needed for GDASApp")
path: modulefiles/RDAS/wcoss2.intel.lua
user: login: guoqing-noaa
body: Thanks, @TingLei-NOAA 
created_at: 2025-03-31T18:56:01Z
author_association: COLLABORATOR

PR comments:
user: login: guoqing-noaa
created_at: 2025-03-31T20:30:13Z
body: @TingLei-NOAA Could you update README.md by adding "WCOSS2" there? Thanks!
author_association: COLLABORATOR
user: login: TingLei-NOAA
created_at: 2025-03-31T20:46:09Z
body: > @TingLei-NOAA Could you update README.md by adding "WCOSS2" there? Thanks!

Done. Thanks!
author_association: CONTRIBUTOR
user: login: xyzemc
created_at: 2025-04-01T03:33:30Z
body: I have build this branch successfully on wcoss2.
author_association: CONTRIBUTOR