Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/build-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:
platforms: linux/arm64
runs-on: ubuntu-24.04-arm
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Login to GitHub Container Registry
uses: docker/login-action@v3
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile_manylinux_2_28_aarch64
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
FROM quay.io/pypa/manylinux_2_28_aarch64

ENV HDF5_VERSION=1.14.6
ENV HDF5_VERSION=2.0.0
ENV HDF5_DIR=/usr/local

COPY install_libaec.sh /tmp/install_libaec.sh
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile_manylinux_2_28_x86_64
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
FROM quay.io/pypa/manylinux_2_28_x86_64

ENV HDF5_VERSION=1.14.6
ENV HDF5_VERSION=2.0.0
ENV HDF5_DIR=/usr/local

COPY install_libaec.sh /tmp/install_libaec.sh
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile_musllinux_1_2_aarch64
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
FROM quay.io/pypa/musllinux_1_2_aarch64

ENV HDF5_VERSION=1.14.6
ENV HDF5_VERSION=2.0.0
ENV HDF5_DIR=/usr/local

COPY install_libaec.sh /tmp/install_libaec.sh
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile_musllinux_1_2_x86_64
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
FROM quay.io/pypa/musllinux_1_2_x86_64

ENV HDF5_VERSION=1.14.6
ENV HDF5_VERSION=2.0.0
ENV HDF5_DIR=/usr/local

COPY install_libaec.sh /tmp/install_libaec.sh
Expand Down
21 changes: 16 additions & 5 deletions install_hdf5.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,14 +22,25 @@ fi
echo "Downloading & unpacking HDF5 ${HDF5_VERSION}"
HDF5_TAG="hdf5_${HDF5_VERSION}"
curl -fsSLO "https://github.com/HDFGroup/hdf5/archive/refs/tags/${HDF5_TAG}.tar.gz"
tar -xzvf $HDF5_TAG.tar.gz
tar -xzf $HDF5_TAG.tar.gz
pushd hdf5-$HDF5_TAG
chmod u+x autogen.sh

echo "Configuring, building & installing HDF5 ${HDF5_VERSION} to ${HDF5_DIR}"
./configure --prefix $HDF5_DIR --enable-build-mode=production --with-szlib
make -j $(nproc)
make install
mkdir build
cmake -S . -B build \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX="$HDF5_DIR" \
-D BUILD_TESTING=OFF \
-D BUILD_STATIC_LIBS=OFF \
-D HDF5_BUILD_EXAMPLES=OFF \
-D HDF5_BUILD_TOOLS=OFF \
-D HDF5_BUILD_UTILS=OFF \
-D HDF5_ALLOW_EXTERNAL_SUPPORT:STRING=NO \
-D HDF5_ENABLE_ZLIB_SUPPORT=ON \
-D HDF5_ENABLE_SZIP_SUPPORT=ON

make -C build -j "$(nproc)"
make -C build install
popd

# Clean up to limit the size of the Docker image
Expand Down
21 changes: 12 additions & 9 deletions install_libaec.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,22 @@ set -euo pipefail

pushd /tmp

aec_version="1.1.3"
aec_version="1.1.4"

echo "Downloading libaec"
# The URL includes a hash, so it needs to change if the version does
curl -fsSLO https://gitlab.dkrz.de/-/project/117/uploads/dc5fc087b645866c14fa22320d91fb27/libaec-${aec_version}.tar.gz
tar zxf libaec-$aec_version.tar.gz
curl -fsSLO https://gitlab.dkrz.de/k202009/libaec/-/archive/v${aec_version}/libaec-v${aec_version}.tar.gz
tar zxf libaec-v$aec_version.tar.gz

echo "Building & installing libaec"
pushd libaec-$aec_version
./configure
make
make install
pushd libaec-v$aec_version
mkdir build
cmake -S . -B build \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_STATIC_LIBS=OFF \
-D BUILD_TESTING=OFF
make -C build -j "$(nproc)"
make -C build install

# Clean up the files from the build
popd
rm -r libaec-$aec_version libaec-$aec_version.tar.gz
rm -r libaec-v$aec_version libaec-v$aec_version.tar.gz