From a6babd361495e22dbf72de07439d2fe265137bf3 Mon Sep 17 00:00:00 2001 From: Tom Robinson Date: Thu, 5 Aug 2021 10:06:20 -0400 Subject: [PATCH 1/5] Updates fms Makefile to use LIBS variable --- exec/fms/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exec/fms/Makefile b/exec/fms/Makefile index 4bbd5c7..ff1a9dd 100644 --- a/exec/fms/Makefile +++ b/exec/fms/Makefile @@ -14,7 +14,7 @@ libFMS.a: folder configure build folder: mkdir -p build && cd build && autoreconf -i ${SRCROOT}/FMS configure: folder - cd build && ${SRCROOT}/FMS/configure FC="$(FC)" CC="$(CC)" FCFLAGS="$(FFLAGS)" CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS) $(CPPDEFS)" FPPFLAGS="$(FPPFLAGS)" + cd build && ${SRCROOT}/FMS/configure FC="$(FC)" CC="$(CC)" FCFLAGS="$(FFLAGS)" CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS) $(CPPDEFS)" FPPFLAGS="$(FPPFLAGS)" LIBS="$(LIBS)" build: configure cd build && make -j 20 clean: From 65944981b6238746d19417753f1a9dbeaa8afcc0 Mon Sep 17 00:00:00 2001 From: Tom Robinson Date: Thu, 5 Aug 2021 10:11:21 -0400 Subject: [PATCH 2/5] Updates fms Makefile to include fortran include dirs for netcdf --- exec/templates/intel.mk | 1 + 1 file changed, 1 insertion(+) diff --git a/exec/templates/intel.mk b/exec/templates/intel.mk index 4c7a3e4..a517150 100644 --- a/exec/templates/intel.mk +++ b/exec/templates/intel.mk @@ -91,6 +91,7 @@ FPPFLAGS = -fpp -Wp,-w $(INCLUDES) # Fortran Compiler flags for the NetCDF library ifndef NETCDF_FLAGS FPPFLAGS += $(shell nf-config --fflags) +FFLAGS += $(shell nf-config --fflags) else FPPFLAGS += $(NETCDF_FLAGS) endif From 953f9c019c76deb7114823d633641a637be44af3 Mon Sep 17 00:00:00 2001 From: Tom Robinson Date: Thu, 5 Aug 2021 10:14:15 -0400 Subject: [PATCH 3/5] Updates fms Makefile to use fortran netcdf --- exec/fms/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exec/fms/Makefile b/exec/fms/Makefile index ff1a9dd..8117e32 100644 --- a/exec/fms/Makefile +++ b/exec/fms/Makefile @@ -14,7 +14,7 @@ libFMS.a: folder configure build folder: mkdir -p build && cd build && autoreconf -i ${SRCROOT}/FMS configure: folder - cd build && ${SRCROOT}/FMS/configure FC="$(FC)" CC="$(CC)" FCFLAGS="$(FFLAGS)" CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS) $(CPPDEFS)" FPPFLAGS="$(FPPFLAGS)" LIBS="$(LIBS)" + cd build && ${SRCROOT}/FMS/configure FC="$(FC)" CC="$(CC)" FCFLAGS="$(FFLAGS)" CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS) $(CPPDEFS) $(FPPFLAGS)" FPPFLAGS="$(FPPFLAGS)" LIBS="$(LIBS)" build: configure cd build && make -j 20 clean: From 67b83009991a00e149250b6ad48d90b61cb1ad1f Mon Sep 17 00:00:00 2001 From: Tom Robinson Date: Thu, 5 Aug 2021 10:44:01 -0400 Subject: [PATCH 4/5] Updates to Singularity files to build 2021.03 container --- container/Singularity.intel_am4 | 5 ++++- container/Singularity.intel_netcdf | 10 ++++++++-- container/singularity_build.sh | 4 ++-- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/container/Singularity.intel_am4 b/container/Singularity.intel_am4 index 9e76e3e..3285439 100644 --- a/container/Singularity.intel_am4 +++ b/container/Singularity.intel_am4 @@ -4,9 +4,12 @@ Stage: build ## Singularity def file used to create AM4 %post +LD_LIBRARY_PATH=/opt/netcdf-c/lib:/opt/netcdf-fortran/lib:/opt/hdf5/lib:/opt/intel/oneapi/lib:/opt/intel/oneapi/lib/intel64/:/opt/intel/oneapi/lib/intel64/lib:/opt/intel/oneapi/lib/intel64/libfabric:${LD_LIBRARY_PATH} +export PATH=${PATH}:/opt/netcdf-c/bin:/opt/netcdf-fortran/bin cd /opt ## Build the AM4 from github - git clone --recursive https://github.com/NOAA-GFDL/AM4.git -b main +# git clone --recursive https://github.com/NOAA-GFDL/AM4.git -b main + git clone --recursive https://github.com/thomas-robinson/AM4.git -b main cd AM4/exec make -j 20 HDF_INCLUDE=-I/opt/hdf5/include HDF_LIBS="-L/opt/hdf5/lib -lhdf5 -lhdf5_fortran -lhdf5_hl -lhdf5hl_fortran" SH=sh cp am4_xanadu_2021.03.x /opt/AM4 diff --git a/container/Singularity.intel_netcdf b/container/Singularity.intel_netcdf index d53038f..d2437d5 100644 --- a/container/Singularity.intel_netcdf +++ b/container/Singularity.intel_netcdf @@ -1,14 +1,20 @@ Bootstrap: docker -From: intel/oneapi-hpckit:devel-ubuntu18.04 +From: intel/oneapi-hpckit:2021.2-devel-ubuntu18.04 Stage: build %post ## Set up oneAPI apt-get -yqq update apt-get -yqq upgrade - apt-get -yqq install git make + apt-get -yqq install git + apt-get -yqq install make apt-get -yqq install wget apt-get -yqq install m4 + apt-get -yqq install autoconf + apt-get -yqq install automake + apt-get -yqq install libtool + apt-get -yqq install autogen + apt-get -yqq install intltool # use wget to fetch the Intel repository public key # cd /tmp # wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB diff --git a/container/singularity_build.sh b/container/singularity_build.sh index 5c6e5b4..df11e98 100755 --- a/container/singularity_build.sh +++ b/container/singularity_build.sh @@ -1,4 +1,4 @@ #!/bin/sh -singularity build -f intel_netcdf_ubuntu.sif Singularity.intel_netcdf -singularity build -f am4_2021.02_ubuntu_intel.sif Singularity.intel_am4 +singularity build -f intel_netcdf_ubuntu.sif Singularity.intel2021.2_netcdfc4.7.4 +singularity build -f am4_2021.03_ubuntu_intel.sif Singularity.intel_am4 From 35547b9de463aa3745cc1785721557b02f4f8d1d Mon Sep 17 00:00:00 2001 From: Tom Robinson Date: Thu, 5 Aug 2021 10:52:10 -0400 Subject: [PATCH 5/5] Checks out GFDL AM4 in intel singularity container --- container/Singularity.intel_am4 | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/container/Singularity.intel_am4 b/container/Singularity.intel_am4 index 3285439..b0e784c 100644 --- a/container/Singularity.intel_am4 +++ b/container/Singularity.intel_am4 @@ -8,8 +8,7 @@ LD_LIBRARY_PATH=/opt/netcdf-c/lib:/opt/netcdf-fortran/lib:/opt/hdf5/lib:/opt/int export PATH=${PATH}:/opt/netcdf-c/bin:/opt/netcdf-fortran/bin cd /opt ## Build the AM4 from github -# git clone --recursive https://github.com/NOAA-GFDL/AM4.git -b main - git clone --recursive https://github.com/thomas-robinson/AM4.git -b main + git clone --recursive https://github.com/NOAA-GFDL/AM4.git -b main cd AM4/exec make -j 20 HDF_INCLUDE=-I/opt/hdf5/include HDF_LIBS="-L/opt/hdf5/lib -lhdf5 -lhdf5_fortran -lhdf5_hl -lhdf5hl_fortran" SH=sh cp am4_xanadu_2021.03.x /opt/AM4