File tree 3 files changed +119
-2
lines changed
3 files changed +119
-2
lines changed Original file line number Diff line number Diff line change
1
+ #! /usr/bin/env bash
2
+
3
+ version=4.9.2
4
+
5
+ TEMPORARY_FILES=" ${TMPDIR:-/ tmp} "
6
+ export NETCDF_INSTALL_DIR=$( pwd) /netcdf-install
7
+ while [ $# != 0 ]; do
8
+ case " $1 " in
9
+ " --prefix" )
10
+ export NETCDF_INSTALL_DIR=" $2 " ; shift
11
+ ;;
12
+ " --tmpdir" )
13
+ TEMPORARY_FILES=" $2 " ; shift
14
+ ;;
15
+ " --version" )
16
+ version=" $2 " ; shift
17
+ ;;
18
+ " --hdf5-root" )
19
+ export HDF5_ROOT=" $2 " ; shift
20
+ ;;
21
+ * )
22
+ echo " Unrecognized argument '$1 '"
23
+ exit 1
24
+ ;;
25
+ esac
26
+ shift
27
+ done
28
+
29
+ NETCDF_MIRROR=https://downloads.unidata.ucar.edu/netcdf-c/
30
+ NETCDF_VERSION=${version}
31
+
32
+ URL=${NETCDF_MIRROR} /${NETCDF_VERSION} /netcdf-c-${NETCDF_VERSION} .tar.gz
33
+ FOLDER=netcdf-c-${NETCDF_VERSION}
34
+
35
+ if [ ! -d " ${TEMPORARY_FILES} /${FOLDER} " ]; then
36
+ echo " Downloading ${TEMPORARY_FILES} /${FOLDER} from URL [${URL} ]"
37
+ mkdir -p ${TEMPORARY_FILES}
38
+ curl --location \
39
+ " ${URL} " | tar zx -C " ${TEMPORARY_FILES} "
40
+ else
41
+ echo " Download already present in ${TEMPORARY_FILES} /${FOLDER} "
42
+ fi
43
+
44
+ mkdir -p ${TEMPORARY_FILES} /build-${FOLDER} && cd ${TEMPORARY_FILES} /build-${FOLDER}
45
+ rm -rf ./*
46
+ cmake -G Ninja ${TEMPORARY_FILES} /${FOLDER} \
47
+ -DHDF5_DIR=${HDF5_ROOT} /cmake -DCMAKE_INSTALL_PREFIX=" ${NETCDF_INSTALL_DIR} " \
48
+ -DENABLE_TESTS=OFF
49
+ cmake --build . --config Release
50
+ cmake --install .
Original file line number Diff line number Diff line change
1
+ #! /usr/bin/env bash
2
+
3
+ version=4.6.1
4
+
5
+ TEMPORARY_FILES=" ${TMPDIR:-/ tmp} "
6
+ export NETCDF_INSTALL_DIR=$( pwd) /netcdf-install
7
+ while [ $# != 0 ]; do
8
+ case " $1 " in
9
+ " --prefix" )
10
+ export NETCDF_INSTALL_DIR=" $2 " ; shift
11
+ ;;
12
+ " --tmpdir" )
13
+ TEMPORARY_FILES=" $2 " ; shift
14
+ ;;
15
+ " --version" )
16
+ version=" $2 " ; shift
17
+ ;;
18
+ " --netcdf-root" )
19
+ export NETCDF_ROOT=" $2 " ; shift
20
+ ;;
21
+ * )
22
+ echo " Unrecognized argument '$1 '"
23
+ exit 1
24
+ ;;
25
+ esac
26
+ shift
27
+ done
28
+
29
+ NETCDF_MIRROR=https://downloads.unidata.ucar.edu/netcdf-fortran/
30
+ NETCDF_VERSION=${version}
31
+
32
+ URL=${NETCDF_MIRROR} /${NETCDF_VERSION} /netcdf-fortran-${NETCDF_VERSION} .tar.gz
33
+ FOLDER=/netcdf-fortran-${NETCDF_VERSION}
34
+
35
+ if [ ! -d " ${TEMPORARY_FILES} /${FOLDER} " ]; then
36
+ echo " Downloading ${TEMPORARY_FILES} /${FOLDER} from URL [${URL} ]"
37
+ mkdir -p ${TEMPORARY_FILES}
38
+ curl --location \
39
+ " ${URL} " | tar zx -C " ${TEMPORARY_FILES} "
40
+ else
41
+ echo " Download already present in ${TEMPORARY_FILES} /${FOLDER} "
42
+ fi
43
+
44
+
45
+ mkdir -p ${TEMPORARY_FILES} /build-${FOLDER} && cd ${TEMPORARY_FILES} /build-${FOLDER}
46
+ rm -rf ./*
47
+ NETCDF_LIB_DIR=" $( ${NETCDF_ROOT} /bin/nc-config --libdir) "
48
+ cmake -G Ninja ${TEMPORARY_FILES} /${FOLDER} \
49
+ -DnetCDF_LIBRARIES=" ${NETCDF_LIB_DIR} /libnetcdf.so" -DnetCDF_INCLUDE_DIR=" ${NETCDF_ROOT} /include" \
50
+ -DENABLE_TESTS=OFF -DCMAKE_INSTALL_PREFIX=" ${NETCDF_INSTALL_DIR} "
51
+ cmake --build . --config Release
52
+ cmake --install .
Original file line number Diff line number Diff line change @@ -116,12 +116,10 @@ jobs:
116
116
echo "SDKROOT=$(xcrun --show-sdk-path)" >> $GITHUB_ENV
117
117
brew install ninja
118
118
brew install libomp
119
- brew install netcdf-fortran
120
119
brew install coreutils
121
120
else
122
121
sudo apt-get update
123
122
sudo apt-get install ninja-build
124
- sudo apt-get install libnetcdff-dev
125
123
fi
126
124
127
125
pip3 install numpy
@@ -183,6 +181,23 @@ jobs:
183
181
[ -f ${DEPS_DIR}/openmpi/env.sh ] && source ${DEPS_DIR}/openmpi/env.sh
184
182
[ -z ${MPI_HOME+x} ] || echo "MPI_HOME=${MPI_HOME}" >> $GITHUB_ENV
185
183
184
+ - name : Install NetCDF C
185
+ run : |
186
+ if [[ -f ${{ env.DEPS_DIR }}/netcdf/bin/nc-config ]]; then
187
+ echo "::debug::NetCDF C restored from cache"
188
+ else
189
+ ${ECRAD_TOOLS}/install-netcdf-c.sh --prefix ${{ env.DEPS_DIR }}/netcdf --hdf5-root ${HDF5_ROOT}
190
+ fi
191
+ echo "NETCDF_ROOT=${{ env.DEPS_DIR }}/netcdf" >> $GITHUB_ENV
192
+
193
+ - name : Install NetCDF Fortran
194
+ run : |
195
+ if [[ -f ${NETCDF_ROOT}/bin/nf-config ]]; then
196
+ echo "::debug::NetCDF Fortran restored from cache"
197
+ else
198
+ ${ECLAND_TOOLS}/install-netcdf-fortran.sh --prefix ${{ env.DEPS_DIR }}/netcdf --netcdf-root ${NETCDF_ROOT}
199
+ fi
200
+
186
201
- name : Set Build & Test Environment
187
202
run : |
188
203
You can’t perform that action at this time.
0 commit comments