From fe09f863d75afe148654a98749ae72685fd75c96 Mon Sep 17 00:00:00 2001 From: Christoph Junghans Date: Thu, 26 Sep 2024 15:10:46 -0600 Subject: [PATCH 1/4] CI: add arm64 builds --- .github/workflows/continuous-integration-workflow.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.github/workflows/continuous-integration-workflow.yml b/.github/workflows/continuous-integration-workflow.yml index 665bc62..de3d2b6 100644 --- a/.github/workflows/continuous-integration-workflow.yml +++ b/.github/workflows/continuous-integration-workflow.yml @@ -38,6 +38,8 @@ jobs: - {dockerfile: 'format', tag: 'latest'} runs-on: ubuntu-latest steps: + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 - name: Login to Gitlab Container Registry @@ -60,6 +62,14 @@ jobs: echo "args<> $GITHUB_OUTPUT echo ${{ matrix.config.build_args }} | sed 's/,/\n/g' >> $GITHUB_OUTPUT echo "EOF" >> $GITHUB_OUTPUT + - name: Generate platforms + id: platforms + run: | + if [ "${{ matrix.config.dockerfile }}::${{ matrix.config.tag }}" = "fedora:latest" ]; then + echo "linux/amd64,linux/arm64" >> $GITHUB_OUTPUT + else + echo "linux/amd64" >> $GITHUB_OUTPUT + fi - name: Build and Push Docker images for all Container Registries uses: docker/build-push-action@v3 with: From bf06c7c8a24353e6adacfe708bec0f0458fd49c4 Mon Sep 17 00:00:00 2001 From: Christoph Junghans Date: Thu, 26 Sep 2024 15:21:53 -0600 Subject: [PATCH 2/4] fedora: fix GMX_SIMD for arm64 --- fedora | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fedora b/fedora index 75a9911..378ab00 100644 --- a/fedora +++ b/fedora @@ -57,7 +57,7 @@ RUN if [ -n "${GMX_BRANCH}" ] && [ "${GMX_BRANCH}" != "none" ]; then \ else \ curl https://gitlab.com/gromacs/gromacs/-/merge_requests/1524.patch | patch -d gromacs -p 1; \ fi && \ - cmake -GNinja -S gromacs -B gromacs/build -DCMAKE_INSTALL_PREFIX=/usr -DGMX_SIMD=SSE2 -DGMX_DOUBLE=${GMX_DOUBLE} ${gmx_cmake_opts} && \ + cmake -GNinja -S gromacs -B gromacs/build -DCMAKE_INSTALL_PREFIX=/usr $(if [ "$(uname -m)" = "x86_64"; then echo -DGMX_SIMD=SSE2; fi) -DGMX_DOUBLE=${GMX_DOUBLE} ${gmx_cmake_opts} && \ cmake --build gromacs/build && \ sudo cmake --install gromacs/build; \ fi From d35a849aaa364355eb657b769f0c0494534cea93 Mon Sep 17 00:00:00 2001 From: Christoph Junghans Date: Thu, 26 Sep 2024 15:27:40 -0600 Subject: [PATCH 3/4] CI: fix some typos --- .github/workflows/continuous-integration-workflow.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/continuous-integration-workflow.yml b/.github/workflows/continuous-integration-workflow.yml index de3d2b6..4bdc122 100644 --- a/.github/workflows/continuous-integration-workflow.yml +++ b/.github/workflows/continuous-integration-workflow.yml @@ -65,10 +65,10 @@ jobs: - name: Generate platforms id: platforms run: | - if [ "${{ matrix.config.dockerfile }}::${{ matrix.config.tag }}" = "fedora:latest" ]; then - echo "linux/amd64,linux/arm64" >> $GITHUB_OUTPUT + if [ "${{ matrix.config.dockerfile }}:${{ matrix.config.tag }}" = "fedora:latest" ]; then + echo "platforms=linux/amd64,linux/arm64" >> $GITHUB_OUTPUT else - echo "linux/amd64" >> $GITHUB_OUTPUT + echo "platforms=linux/amd64" >> $GITHUB_OUTPUT fi - name: Build and Push Docker images for all Container Registries uses: docker/build-push-action@v3 @@ -80,3 +80,4 @@ jobs: build-args: ${{ steps.build_args.outputs.args }} pull: true push: ${{ github.repository_owner == 'votca' && ( github.event_name == 'push' || github.event_name == 'schedule' ) }} + platforms: ${{ steps.platforms.outputs.platforms }} From 3360081edfc77ea300b6380210f6590f44152ea9 Mon Sep 17 00:00:00 2001 From: Christoph Junghans Date: Thu, 26 Sep 2024 15:33:19 -0600 Subject: [PATCH 4/4] fedora: fix a typo --- fedora | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/fedora b/fedora index 378ab00..0a701ce 100644 --- a/fedora +++ b/fedora @@ -57,7 +57,10 @@ RUN if [ -n "${GMX_BRANCH}" ] && [ "${GMX_BRANCH}" != "none" ]; then \ else \ curl https://gitlab.com/gromacs/gromacs/-/merge_requests/1524.patch | patch -d gromacs -p 1; \ fi && \ - cmake -GNinja -S gromacs -B gromacs/build -DCMAKE_INSTALL_PREFIX=/usr $(if [ "$(uname -m)" = "x86_64"; then echo -DGMX_SIMD=SSE2; fi) -DGMX_DOUBLE=${GMX_DOUBLE} ${gmx_cmake_opts} && \ + if [ "$(uname -m)" = "x86_64" ]; then \ + gmx_cmake_opts+=" -DGMX_SIMD=SSE2"; \ + fi && \ + cmake -GNinja -S gromacs -B gromacs/build -DCMAKE_INSTALL_PREFIX=/usr -DGMX_DOUBLE=${GMX_DOUBLE} ${gmx_cmake_opts} && \ cmake --build gromacs/build && \ sudo cmake --install gromacs/build; \ fi