Skip to content

chore(deps): update dependency kitware/cmake to v3.31.2 (#186) #552

chore(deps): update dependency kitware/cmake to v3.31.2 (#186)

chore(deps): update dependency kitware/cmake to v3.31.2 (#186) #552

Workflow file for this run

name: Build native deps
on:
push:
paths:
- 'stages/**'
- 'patches/**'
- 'scripts/**'
- 'Dockerfile'
- '.github/workflows/release.yml'
branches:
- main
pull_request:
paths:
- 'stages/**'
- 'patches/**'
- 'scripts/**'
- 'Dockerfile'
- '.github/workflows/release.yml'
workflow_dispatch:
# Cancel previous runs of the same workflow on the same branch.
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build-native-deps:
strategy:
matrix:
settings:
- target: x86_64-iossim-apple
- target: aarch64-iossim-apple
- target: aarch64-ios-apple
- target: x86_64-darwin-apple
- target: aarch64-darwin-apple
- target: x86_64-windows-gnu
- target: aarch64-windows-gnu
- target: x86_64-linux-gnu
- target: aarch64-linux-gnu
- target: x86_64-linux-musl
- target: aarch64-linux-musl
- target: x86_64-linux-android
- target: aarch64-linux-android
name: Build native-deps ${{ matrix.settings.target }}
runs-on: ubuntu-latest
defaults:
run:
shell: bash
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
with:
install: true
platforms: linux/amd64
driver-opts: |
image=moby/buildkit:master
network=host
- name: Build native-deps
run: |
set -euxo pipefail
TARGET=${{ matrix.settings.target }}
OS_IPHONE=0
if [ "$TARGET" = 'x86_64-iossim-apple' ]; then
TARGET='x86_64-darwin-apple'
OS_IPHONE=2
elif [ "$TARGET" = 'aarch64-iossim-apple' ]; then
TARGET='aarch64-darwin-apple'
OS_IPHONE=2
elif [ "$TARGET" = 'aarch64-ios-apple' ]; then
TARGET='aarch64-darwin-apple'
OS_IPHONE=1
fi
docker build --no-cache --build-arg TARGET="$TARGET" --build-arg OS_IPHONE="$OS_IPHONE" --build-arg VERSION="$(echo ${{ github.ref }} | sed -E 's/refs\/tags\/v?//g' | sed -E 's/[^0-9.]//g')" -o . .
mv out/src.tar.xz ./native-deps-${{ matrix.settings.target }}-src.tar.xz
export XZ_OPT='-T0 -7'
tar -cJf "native-deps-${{ matrix.settings.target }}.tar.xz" -C out .
- name: Publish native-deps
uses: actions/upload-artifact@v4
with:
name: native-deps-${{ matrix.settings.target }}
path: native-deps-${{ matrix.settings.target }}.tar.xz
if-no-files-found: error
- name: Publish built source
uses: actions/upload-artifact@v4
with:
name: native-deps-${{ matrix.settings.target }}-src
path: native-deps-${{ matrix.settings.target }}-src.tar.xz
if-no-files-found: warn
release:
if: startsWith(github.ref, 'refs/tags/')
runs-on: ubuntu-latest
name: Create Release
needs: build-native-deps
permissions:
contents: write
steps:
- name: Download artifacts
uses: actions/download-artifact@v4
- name: Create Release
uses: softprops/action-gh-release@v2
with:
draft: true
files: '*/**'