mirror of
https://github.com/stenzek/duckstation.git
synced 2025-06-06 03:25:36 +00:00
CI: Build armhf AppImages
This commit is contained in:
parent
3f0abccb59
commit
ae9023ddf3
26
.github/workflows/linux-cross-appimage-build.yml
vendored
26
.github/workflows/linux-cross-appimage-build.yml
vendored
@ -2,17 +2,19 @@ name: 🐧 Linux Cross-Compiled AppImage
|
|||||||
|
|
||||||
on:
|
on:
|
||||||
workflow_call:
|
workflow_call:
|
||||||
inputs:
|
workflow_dispatch:
|
||||||
arch:
|
|
||||||
required: false
|
|
||||||
type: string
|
|
||||||
default: "arm64"
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
|
name: "Build"
|
||||||
|
strategy:
|
||||||
|
fail-fast: true
|
||||||
|
matrix:
|
||||||
|
arch: ["arm64", "armhf"]
|
||||||
|
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
container:
|
container:
|
||||||
image: ghcr.io/duckstation/cross-build-${{ inputs.arch }}:latest
|
image: ghcr.io/duckstation/cross-build-${{ matrix.arch }}:latest
|
||||||
|
|
||||||
timeout-minutes: 120
|
timeout-minutes: 120
|
||||||
steps:
|
steps:
|
||||||
@ -25,13 +27,13 @@ jobs:
|
|||||||
uses: actions/cache@v4
|
uses: actions/cache@v4
|
||||||
with:
|
with:
|
||||||
path: ~/deps
|
path: ~/deps
|
||||||
key: deps-cross ${{ inputs.arch }} ${{ hashFiles('scripts/deps/build-dependencies-linux.sh', 'scripts/deps/build-dependencies-linux-cross.sh') }}
|
key: deps-cross ${{ matrix.arch }} ${{ hashFiles('scripts/deps/build-dependencies-linux.sh', 'scripts/deps/build-dependencies-linux-cross.sh') }}
|
||||||
|
|
||||||
- name: Build Dependencies
|
- name: Build Dependencies
|
||||||
if: steps.cache-deps.outputs.cache-hit != 'true'
|
if: steps.cache-deps.outputs.cache-hit != 'true'
|
||||||
run: |
|
run: |
|
||||||
scripts/deps/build-dependencies-linux.sh -skip-cleanup "$HOME/deps/host"
|
scripts/deps/build-dependencies-linux.sh -skip-cleanup "$HOME/deps/host"
|
||||||
scripts/deps/build-dependencies-linux-cross.sh -skip-download "$HOME/deps/host" "${{ inputs.arch }}" "/${{ inputs.arch }}-chroot" "$HOME/deps/cross"
|
scripts/deps/build-dependencies-linux-cross.sh -skip-download "$HOME/deps/host" "${{ matrix.arch }}" "/${{ matrix.arch }}-chroot" "$HOME/deps/cross"
|
||||||
|
|
||||||
# Work around container ownership issue
|
# Work around container ownership issue
|
||||||
- name: Set Safe Directory
|
- name: Set Safe Directory
|
||||||
@ -62,7 +64,7 @@ jobs:
|
|||||||
- name: Set Build Tag Asset
|
- name: Set Build Tag Asset
|
||||||
if: github.ref == 'refs/heads/master' || github.ref == 'refs/heads/dev'
|
if: github.ref == 'refs/heads/master' || github.ref == 'refs/heads/dev'
|
||||||
run: |
|
run: |
|
||||||
echo '#define SCM_RELEASE_ASSET "DuckStation-${{ inputs.arch }}.AppImage"' >> src/scmversion/tag.h
|
echo '#define SCM_RELEASE_ASSET "DuckStation-${{ matrix.arch }}.AppImage"' >> src/scmversion/tag.h
|
||||||
echo '#define SCM_RELEASE_TAGS {"latest", "preview"}' >> src/scmversion/tag.h
|
echo '#define SCM_RELEASE_TAGS {"latest", "preview"}' >> src/scmversion/tag.h
|
||||||
|
|
||||||
- name: Tag as Preview Release
|
- name: Tag as Preview Release
|
||||||
@ -91,11 +93,11 @@ jobs:
|
|||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
cmake --build build --parallel
|
cmake --build build --parallel
|
||||||
scripts/packaging/appimage/make-cross-appimage.sh duckstation-qt ${{ inputs.arch }} "$(realpath build)" "$HOME/deps/cross" "/${{ inputs.arch }}-chroot"
|
scripts/packaging/appimage/make-cross-appimage.sh duckstation-qt ${{ matrix.arch }} "$(realpath build)" "$HOME/deps/cross" "/${{ matrix.arch }}-chroot"
|
||||||
scripts/packaging/appimage/make-cross-appimage.sh -inject-libc duckstation-mini ${{ inputs.arch }} "$(realpath build)" "$HOME/deps/cross" "/${{ inputs.arch }}-chroot"
|
scripts/packaging/appimage/make-cross-appimage.sh -inject-libc duckstation-mini ${{ matrix.arch }} "$(realpath build)" "$HOME/deps/cross" "/${{ matrix.arch }}-chroot"
|
||||||
|
|
||||||
- name: Upload AppImages
|
- name: Upload AppImages
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: "linux-${{ inputs.arch }}-appimage"
|
name: "linux-${{ matrix.arch }}-appimage"
|
||||||
path: "DuckStation-*.AppImage"
|
path: "DuckStation-*.AppImage"
|
||||||
|
4
.github/workflows/main.yml
vendored
4
.github/workflows/main.yml
vendored
@ -68,6 +68,8 @@ jobs:
|
|||||||
./artifacts/linux-x64-sse2-appimage/DuckStation-x64-SSE2.AppImage
|
./artifacts/linux-x64-sse2-appimage/DuckStation-x64-SSE2.AppImage
|
||||||
./artifacts/linux-arm64-appimage/DuckStation-arm64.AppImage
|
./artifacts/linux-arm64-appimage/DuckStation-arm64.AppImage
|
||||||
./artifacts/linux-arm64-appimage/DuckStation-Mini-arm64.AppImage
|
./artifacts/linux-arm64-appimage/DuckStation-Mini-arm64.AppImage
|
||||||
|
./artifacts/linux-armhf-appimage/DuckStation-armhf.AppImage
|
||||||
|
./artifacts/linux-armhf-appimage/DuckStation-Mini-armhf.AppImage
|
||||||
./artifacts/linux-flatpak-x86_64/duckstation-x86_64.flatpak
|
./artifacts/linux-flatpak-x86_64/duckstation-x86_64.flatpak
|
||||||
./artifacts/linux-flatpak-aarch64/duckstation-aarch64.flatpak
|
./artifacts/linux-flatpak-aarch64/duckstation-aarch64.flatpak
|
||||||
./artifacts/macos/duckstation-mac-release.zip
|
./artifacts/macos/duckstation-mac-release.zip
|
||||||
@ -91,6 +93,8 @@ jobs:
|
|||||||
./artifacts/linux-x64-sse2-appimage/DuckStation-x64-SSE2.AppImage
|
./artifacts/linux-x64-sse2-appimage/DuckStation-x64-SSE2.AppImage
|
||||||
./artifacts/linux-arm64-appimage/DuckStation-arm64.AppImage
|
./artifacts/linux-arm64-appimage/DuckStation-arm64.AppImage
|
||||||
./artifacts/linux-arm64-appimage/DuckStation-Mini-arm64.AppImage
|
./artifacts/linux-arm64-appimage/DuckStation-Mini-arm64.AppImage
|
||||||
|
./artifacts/linux-armhf-appimage/DuckStation-armhf.AppImage
|
||||||
|
./artifacts/linux-armhf-appimage/DuckStation-Mini-armhf.AppImage
|
||||||
./artifacts/linux-flatpak-x86_64/duckstation-x86_64.flatpak
|
./artifacts/linux-flatpak-x86_64/duckstation-x86_64.flatpak
|
||||||
./artifacts/linux-flatpak-aarch64/duckstation-aarch64.flatpak
|
./artifacts/linux-flatpak-aarch64/duckstation-aarch64.flatpak
|
||||||
./artifacts/macos/duckstation-mac-release.zip
|
./artifacts/macos/duckstation-mac-release.zip
|
||||||
|
Loading…
x
Reference in New Issue
Block a user