From 28429a54c57ea653a23732a04375f2dba5d053a7 Mon Sep 17 00:00:00 2001 From: Edward Hartnett Date: Thu, 27 Aug 2020 12:26:00 -0600 Subject: [PATCH 01/10] fixing MPIEXEC in library summary for CMake builds --- CMakeLists.txt | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 11cdcf8a540..a5a815e4612 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -112,8 +112,10 @@ endif() # Set a variable that appears in the config.h.in file. if(PIO_ENABLE_LOGGING) set(ENABLE_LOGGING 1) + set(HAS_LOGGING "yes") else() set(ENABLE_LOGGING 0) + set(HAS_LOGGING "no") endif() # Set a variable that appears in the config.h.in file. @@ -381,6 +383,14 @@ else () set(HAVE_NETCDF_INTEGRATION 0) endif () +# Configure testing with MPIEXEC. +if (NOT WITH_MPIEXEC) + set(WITH_MPIEXEC mpiexec) +endif() +#set(MPIEXEC "${WITH_MPIEXEC}" CACHE INTERNAL "") +set(MPIEXEC "${WITH_MPIEXEC}") +set_property(GLOBAL PROPERTY WITH_MPIEXEC "${WITH_MPIEXEC}") + ##### # Configure and print the libpio.settings file. ##### @@ -461,10 +471,3 @@ configure_file ( "${PROJECT_SOURCE_DIR}/cmake_config.h.in" "${PROJECT_BINARY_DIR}/config.h" ) - -# Configure test scripts. -if (NOT WITH_MPIEXEC) - set(WITH_MPIEXEC mpiexec) -endif() -set(MPIEXEC "${WITH_MPIEXEC}" CACHE INTERNAL "") -set_property(GLOBAL PROPERTY WITH_MPIEXEC "${WITH_MPIEXEC}") From d677d07655869aac0756a8bf5ee5af70f70b0cc9 Mon Sep 17 00:00:00 2001 From: Edward Hartnett Date: Thu, 27 Aug 2020 12:45:31 -0600 Subject: [PATCH 02/10] adding mpich workflow --- .github/workflows/a4.yml | 50 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 .github/workflows/a4.yml diff --git a/.github/workflows/a4.yml b/.github/workflows/a4.yml new file mode 100644 index 00000000000..8e0337e72e0 --- /dev/null +++ b/.github/workflows/a4.yml @@ -0,0 +1,50 @@ +name: netcdf-4.7.4_pnetcdf-12.1_ncint_mpich-3.3 + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + + runs-on: ubuntu-latest + + env: + CPPFLAGS: "-I/home/runner/mpich/include -I/home/runner/hdf5/include -I/home/runner/netcdf-c/include -I/home/runner/netcdf-fortran/include -I/home/runner/pnetcdf/include" + LDFLAGS: "-L/home/runner/mpich/lib -L/home/runner/hdf5/lib -L/home/runner/netcdf-c/lib -L/home/runner/netcdf-fortran/lib -L/home/runner/pnetcdf/lib" + + steps: + - uses: actions/checkout@v2 + - name: Installs + run: | + sudo apt-get install doxygen graphviz wget gfortran libjpeg-dev libz-dev + - name: cache-mpich + id: cache-mpich + uses: actions/cache@v2 + with: + path: ~/mpich + key: mpich-${{ runner.os }}-3.3.2 + + - name: build-mpich + if: steps.cache-mpich.outputs.cache-hit != 'true' + run: | + wget http://www.mpich.org/static/downloads/3.3.2/mpich-3.3.2.tar.gz &> /dev/null + tar -xzf mpich-3.3.2.tar.gz + pushd mpich-3.3.2 + ./configure --prefix=/home/runner/mpich + make + sudo make install + popd + - name: autotools build + run: | + set -x + echo 'export PATH=/home/runner/mpich/bin:$PATH' > .bashrc + source .bashrc + export PATH="/home/runner/mpich/bin:$PATH" + export CC=/home/runner/mpich/bin/mpicc + autoreconf -i + + + From 138f4f14acb19994e987555dd7467ab8185ba3d0 Mon Sep 17 00:00:00 2001 From: Edward Hartnett Date: Thu, 27 Aug 2020 14:40:34 -0600 Subject: [PATCH 03/10] adding mpich workflow --- .github/workflows/a4.yml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/.github/workflows/a4.yml b/.github/workflows/a4.yml index 8e0337e72e0..482876f9450 100644 --- a/.github/workflows/a4.yml +++ b/.github/workflows/a4.yml @@ -37,6 +37,26 @@ jobs: make sudo make install popd + - name: cache-hdf5 + id: cache-hdf5 + uses: actions/cache@v2 + with: + path: ~/hdf5 + key: hdf5-${{ runner.os }}-1.10.6-mpich-3.3.2 + + - name: build-hdf5 + if: steps.cache-hdf5.outputs.cache-hit != 'true' + run: | + set -x + export PATH="/home/runner/mpich/bin:$PATH" + export CC=/home/runner/mpich/bin/mpicc + wget https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.10/hdf5-1.10.6/src/hdf5-1.10.6.tar.gz &> /dev/null + tar -xzf hdf5-1.10.6.tar.gz + pushd hdf5-1.10.6 + ./configure --prefix=/home/runner/hdf5 --enable-parallel --disable-tools --disable-fortran --disable-cxx --enable-parallel-tests + make + sudo make install + popd - name: autotools build run: | set -x From a31c6f8e080e7e4edcb7df9024f0500fe2c5609b Mon Sep 17 00:00:00 2001 From: Edward Hartnett Date: Thu, 27 Aug 2020 18:01:13 -0600 Subject: [PATCH 04/10] adding mpich workflow --- .github/workflows/a4.yml | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/.github/workflows/a4.yml b/.github/workflows/a4.yml index 482876f9450..7a4c6310692 100644 --- a/.github/workflows/a4.yml +++ b/.github/workflows/a4.yml @@ -57,6 +57,46 @@ jobs: make sudo make install popd + - name: cache-netcdf-c + id: cache-netcdf-c + uses: actions/cache@v2 + with: + path: ~/netcdf-c + key: netcdf-c-${{ runner.os }}-4.7.4-mpich-3.3.2 + + - name: build-netcdf-c + if: steps.cache-netcdf-c.outputs.cache-hit != 'true' + run: | + set -x + export PATH="/home/runner/mpich/bin:$PATH" + export CC=/home/runner/mpich/bin/mpicc + wget https://www.unidata.ucar.edu/downloads/netcdf/ftp/netcdf-c-4.7.4.tar.gz &> /dev/null + tar -xzf netcdf-c-4.7.4.tar.gz + pushd netcdf-c-4.7.4 + ./configure --prefix=/home/runner/netcdf-c --disable-dap --disable-utilities + make -j + sudo make install + popd + - name: cache-netcdf-fortran + id: cache-netcdf-fortran + uses: actions/cache@v2 + with: + path: ~/netcdf-fortran + key: netcdf-fortran-${{ runner.os }}-4.5.3-mpich-3.3.2 + + - name: build-netcdf-fortran + if: steps.cache-netcdf-fortran.outputs.cache-hit != 'true' + run: | + set -x + export PATH="/home/runner/mpich/bin:$PATH" + export CC=/home/runner/mpich/bin/mpicc + wget https://github.com/Unidata/netcdf-fortran/archive/v4.5.3.tar.gz &> /dev/null + tar -xzf v4.5.3.tar.gz + pushd netcdf-fortran-4.5.3 + ./configure --prefix=/home/runner/netcdf-fortran + make -j + sudo make install + popd - name: autotools build run: | set -x From 1733a7a488c4b21fc6dfc6d3471e8bbe8414172f Mon Sep 17 00:00:00 2001 From: Edward Hartnett Date: Thu, 27 Aug 2020 18:14:16 -0600 Subject: [PATCH 05/10] adding mpich workflow --- .github/workflows/a4.yml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/.github/workflows/a4.yml b/.github/workflows/a4.yml index 7a4c6310692..54d8280aaef 100644 --- a/.github/workflows/a4.yml +++ b/.github/workflows/a4.yml @@ -97,6 +97,26 @@ jobs: make -j sudo make install popd + - name: cache-pnetcdf + id: cache-pnetcdf + uses: actions/cache@v2 + with: + path: ~/pnetcdf + key: pnetcdf-${{ runner.os }}-1.12.1-mpich-3.3.2 + + - name: build-pnetcdf + if: steps.cache-pnetcdf.outputs.cache-hit != 'true' + run: | + set -x + export PATH="/home/runner/mpich/bin:$PATH" + export CC=/home/runner/mpich/bin/mpicc + wget https://parallel-netcdf.github.io/Release/pnetcdf-1.12.1.tar.gz &> /dev/null + tar -xzf pnetcdf-1.12.1.tar.gz + pushd pnetcdf-1.12.1 + ./configure --prefix=/home/runner/pnetcdf --enable-shared --disable-cxx + make + sudo make install + popd - name: autotools build run: | set -x From dd0400c9bbb0e425af30f857d42887a30d1e0939 Mon Sep 17 00:00:00 2001 From: Edward Hartnett Date: Fri, 28 Aug 2020 04:00:30 -0600 Subject: [PATCH 06/10] more testing in new workflow --- .github/workflows/a4.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/a4.yml b/.github/workflows/a4.yml index 54d8280aaef..adfda2dd942 100644 --- a/.github/workflows/a4.yml +++ b/.github/workflows/a4.yml @@ -125,6 +125,9 @@ jobs: export PATH="/home/runner/mpich/bin:$PATH" export CC=/home/runner/mpich/bin/mpicc autoreconf -i + ./configure --with-mpiexec='mpiexec --oversubscribe' + which mpiexec + make check From 87e38c547d29e45bdcbd2171345a043a0850a3eb Mon Sep 17 00:00:00 2001 From: Edward Hartnett Date: Fri, 28 Aug 2020 04:05:24 -0600 Subject: [PATCH 07/10] more testing in new workflow --- .github/workflows/a4.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/a4.yml b/.github/workflows/a4.yml index adfda2dd942..f0a107d0295 100644 --- a/.github/workflows/a4.yml +++ b/.github/workflows/a4.yml @@ -128,6 +128,4 @@ jobs: ./configure --with-mpiexec='mpiexec --oversubscribe' which mpiexec make check - - From c2919cb039f210354e520b5cb5d86138687575e5 Mon Sep 17 00:00:00 2001 From: Edward Hartnett Date: Fri, 28 Aug 2020 04:06:20 -0600 Subject: [PATCH 08/10] more testing in new workflow --- .github/workflows/a4.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/a4.yml b/.github/workflows/a4.yml index f0a107d0295..e943a8efb3f 100644 --- a/.github/workflows/a4.yml +++ b/.github/workflows/a4.yml @@ -125,7 +125,7 @@ jobs: export PATH="/home/runner/mpich/bin:$PATH" export CC=/home/runner/mpich/bin/mpicc autoreconf -i - ./configure --with-mpiexec='mpiexec --oversubscribe' + ./configure which mpiexec make check From 71eace1ca0861b6986dab5aa06ad04e3d374fb6a Mon Sep 17 00:00:00 2001 From: Edward Hartnett Date: Fri, 28 Aug 2020 04:20:19 -0600 Subject: [PATCH 09/10] more testing in new workflow --- .github/workflows/a4.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/a4.yml b/.github/workflows/a4.yml index e943a8efb3f..e39de970e47 100644 --- a/.github/workflows/a4.yml +++ b/.github/workflows/a4.yml @@ -122,10 +122,8 @@ jobs: set -x echo 'export PATH=/home/runner/mpich/bin:$PATH' > .bashrc source .bashrc - export PATH="/home/runner/mpich/bin:$PATH" export CC=/home/runner/mpich/bin/mpicc autoreconf -i ./configure - which mpiexec - make check + From 5f8e9fa71603e6838b055907d796b96aea192edf Mon Sep 17 00:00:00 2001 From: Edward Hartnett Date: Fri, 28 Aug 2020 04:35:14 -0600 Subject: [PATCH 10/10] more testing in new workflow --- .github/workflows/a4.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/a4.yml b/.github/workflows/a4.yml index e39de970e47..7259530c24e 100644 --- a/.github/workflows/a4.yml +++ b/.github/workflows/a4.yml @@ -125,5 +125,5 @@ jobs: export CC=/home/runner/mpich/bin/mpicc autoreconf -i ./configure - + make -j check