From df960791b6f8087b26c205aa9bf3535044cc7cc3 Mon Sep 17 00:00:00 2001 From: Parth Date: Mon, 4 Aug 2025 12:42:01 +0530 Subject: [PATCH 1/3] update workflow to support ARM64 builds --- .github/workflows/push_pr_build_cmake.yml | 22 +++++++++++++--------- .github/workflows/release_cmake.yml | 23 +++++++++++++---------- 2 files changed, 26 insertions(+), 19 deletions(-) diff --git a/.github/workflows/push_pr_build_cmake.yml b/.github/workflows/push_pr_build_cmake.yml index da2a6b5..bea7493 100644 --- a/.github/workflows/push_pr_build_cmake.yml +++ b/.github/workflows/push_pr_build_cmake.yml @@ -12,10 +12,14 @@ jobs: # well on Windows or Mac. You can convert this to a matrix build if you need # cross-platform coverage. # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix - runs-on: ${{matrix.os}} + runs-on: ${{matrix.runner}} strategy: matrix: - os: [ubuntu-latest] + include: + - runner: ubuntu-latest + arch: x86_64 + - runner: ubuntu-latest-arm64 + arch: arm64 steps: - uses: actions/checkout@v4 @@ -45,16 +49,16 @@ jobs: - name: Rename build files run: | - mv ${{github.workspace}}/build/ydotool ${{github.workspace}}/build/ydotool-${{matrix.os}} - mv ${{github.workspace}}/build/ydotoold ${{github.workspace}}/build/ydotoold-${{matrix.os}} - mv ${{github.workspace}}/build/ydotoold.service ${{github.workspace}}/build/ydotoold-${{matrix.os}}.service + mv ${{github.workspace}}/build/ydotool ${{github.workspace}}/build/ydotool-${{matrix.arch}} + mv ${{github.workspace}}/build/ydotoold ${{github.workspace}}/build/ydotoold-${{matrix.arch}} + mv ${{github.workspace}}/build/ydotoold.service ${{github.workspace}}/build/ydotoold-${{matrix.arch}}.service - name: Archive production artifacts uses: actions/upload-artifact@v4 with: - name: ${{matrix.os}} build artifact + name: ${{matrix.arch}} build artifact path: | - ${{github.workspace}}/build/ydotool-${{matrix.os}} - ${{github.workspace}}/build/ydotoold-${{matrix.os}} - ${{github.workspace}}/build/ydotoold-${{matrix.os}}.service + ${{github.workspace}}/build/ydotool-${{matrix.arch}} + ${{github.workspace}}/build/ydotoold-${{matrix.arch}} + ${{github.workspace}}/build/ydotoold-${{matrix.arch}}.service diff --git a/.github/workflows/release_cmake.yml b/.github/workflows/release_cmake.yml index 41975c2..c87e497 100644 --- a/.github/workflows/release_cmake.yml +++ b/.github/workflows/release_cmake.yml @@ -15,11 +15,14 @@ jobs: # well on Windows or Mac. You can convert this to a matrix build if you need # cross-platform coverage. # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix - runs-on: ${{matrix.os}} + runs-on: ${{matrix.runner}} strategy: matrix: - os: [ubuntu-latest] - + include: + - runner: ubuntu-latest + arch: x86_64 + - runner: ubuntu-latest-arm64 + arch: arm64 steps: - uses: actions/checkout@v4 @@ -49,24 +52,24 @@ jobs: - name: Rename build files run: | - mv ${{github.workspace}}/build/ydotool ${{github.workspace}}/build/ydotool-release-${{matrix.os}} - mv ${{github.workspace}}/build/ydotoold ${{github.workspace}}/build/ydotoold-release-${{matrix.os}} + mv ${{github.workspace}}/build/ydotool ${{github.workspace}}/build/ydotool-release-${{matrix.arch}} + mv ${{github.workspace}}/build/ydotoold ${{github.workspace}}/build/ydotoold-release-${{matrix.arch}} - name: Archive production artifacts uses: actions/upload-artifact@v4 with: - name: ${{matrix.os}} build artifact + name: ${{matrix.arch}} build artifact path: | - ${{github.workspace}}/build/ydotool-release-${{matrix.os}} - ${{github.workspace}}/build/ydotoold-release-${{matrix.os}} + ${{github.workspace}}/build/ydotool-release-${{matrix.arch}} + ${{github.workspace}}/build/ydotoold-release-${{matrix.arch}} - name: Release uses: softprops/action-gh-release@v1 if: startsWith(github.ref, 'refs/tags/') with: files: | - ${{github.workspace}}/build/ydotool-release-${{matrix.os}} - ${{github.workspace}}/build/ydotoold-release-${{matrix.os}} + ${{github.workspace}}/build/ydotool-release-${{matrix.arch}} + ${{github.workspace}}/build/ydotoold-release-${{matrix.arch}} env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From bad19ba7b46444906b82575898fd4220e716a575 Mon Sep 17 00:00:00 2001 From: Parth <143103116+parthsidpara@users.noreply.github.com> Date: Fri, 8 Aug 2025 10:02:04 +0530 Subject: [PATCH 2/3] Update push_pr_build_cmake.yml --- .github/workflows/push_pr_build_cmake.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/push_pr_build_cmake.yml b/.github/workflows/push_pr_build_cmake.yml index bea7493..a7ee5ae 100644 --- a/.github/workflows/push_pr_build_cmake.yml +++ b/.github/workflows/push_pr_build_cmake.yml @@ -18,7 +18,7 @@ jobs: include: - runner: ubuntu-latest arch: x86_64 - - runner: ubuntu-latest-arm64 + - runner: ubuntu-24.04-arm arch: arm64 steps: From d8bb4b4ea0cae457c24c54e728fea55ea660bd39 Mon Sep 17 00:00:00 2001 From: Parth <143103116+parthsidpara@users.noreply.github.com> Date: Fri, 8 Aug 2025 10:02:41 +0530 Subject: [PATCH 3/3] Update release_cmake.yml --- .github/workflows/release_cmake.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release_cmake.yml b/.github/workflows/release_cmake.yml index c87e497..7ad6c1f 100644 --- a/.github/workflows/release_cmake.yml +++ b/.github/workflows/release_cmake.yml @@ -21,7 +21,7 @@ jobs: include: - runner: ubuntu-latest arch: x86_64 - - runner: ubuntu-latest-arm64 + - runner: ubuntu-24.04-arm arch: arm64 steps: - uses: actions/checkout@v4