Skip to content

Generate md5sum file for tar.gz #24

Generate md5sum file for tar.gz

Generate md5sum file for tar.gz #24

Workflow file for this run

name: Build Skia Artifacts
on:
push:
branches:
- '**'
pull_request:
branches:
- '**'
env:
# Set to "true" to enable Graphite (adds --graphite to build commands)
GRAPHITE: "false"
jobs:
headers:
name: Headers
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
persist-credentials: true
clean: false
- name: Sync Skia dependencies
run: |
export PATH="${GITHUB_WORKSPACE}/depot_tools:${PATH}"
cd depot_tools
./update_depot_tools
cd ../skia
python3 tools/git-sync-deps
- name: Extract headers
run: python3 scripts/build.py headers
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: headers
path: artifacts/*
windows:
name: Windows
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
arch: [x64, arm64]
env:
DEPOT_TOOLS_WIN_TOOLCHAIN: "0"
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
persist-credentials: true
clean: false
- name: Sync Skia dependencies
shell: pwsh
run: |
$env:PATH = "${{ github.workspace }}\depot_tools;" + $env:PATH
Set-Location depot_tools
./update_depot_tools.bat
Set-Location ../skia
../depot_tools/python-bin/python3.bat tools/git-sync-deps
- name: Build (${{ matrix.arch }})
shell: pwsh
run: |
depot_tools/python-bin/python3.bat scripts/build.py windows ${{ matrix.arch }} ${{ env.GRAPHITE == 'true' && '--graphite' || '' }}
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: windows-${{ matrix.arch }}
path: artifacts/*
linux:
name: Linux
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
arch: [x64, arm64, arm]
env:
CLANG_BUILDER_IMAGE: ghcr.io/avaloniaui/clang-cross-builder:latest
steps:
- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
persist-credentials: true
clean: false
- name: Sync Skia dependencies
run: |
export PATH="${GITHUB_WORKSPACE}/depot_tools:${PATH}"
cd depot_tools
./update_depot_tools
cd ../skia
python3 tools/git-sync-deps
- name: Build (arch)
run: |
scripts/build-linux.sh ${{ matrix.arch }} ${{ env.GRAPHITE == 'true' && '--graphite' || '' }}
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: linux-${{ matrix.arch }}
path: artifacts/*
macos:
name: macOS
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
persist-credentials: true
clean: false
- name: Sync Skia dependencies
run: |
export PATH="${GITHUB_WORKSPACE}/depot_tools:${PATH}"
cd depot_tools
./update_depot_tools
cd ../skia
python3 tools/git-sync-deps
- name: Build
run: python3 scripts/build.py macos all ${{ env.GRAPHITE == 'true' && '--graphite' || '' }}
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: macos-all
path: artifacts/*
create-release:
name: Create GitHub Release
runs-on: ubuntu-latest
needs: [linux, windows, macos, headers]
if: github.event_name == 'push'
permissions:
contents: write
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Download all artifacts
uses: actions/download-artifact@v4
with:
path: artifacts
- name: Generate release id
run: ./scripts/genrelease.sh
- name: Create Release
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ env.RELEASE_ID }}
name: ${{ env.RELEASE_ID }}
draft: false
body_path: ./release.txt
prerelease: false
files: release/*