Skip to content

0.143.13 Fixed handling of invalid UTF-16 strings #109 with @dzaima #196

0.143.13 Fixed handling of invalid UTF-16 strings #109 with @dzaima

0.143.13 Fixed handling of invalid UTF-16 strings #109 with @dzaima #196

Workflow file for this run

on:
pull_request:
branches:
- 'master'
paths:
- '.github'
- 'platform'
- 'script'
- 'shared'
- 'tests'
push:
branches:
- '**'
tags:
- '[0-9]+.[0-9]+.[0-9]+'
paths-ignore:
- 'docs/**'
- 'examples/**'
- 'extras/**'
- .dockerignore
- .gitignore
- CHANGELOG.md
- Dockerfile
- LICENSE
- README.md
jobs:
build_macos:
runs-on: macos-14
steps:
- uses: actions/checkout@v5
with:
fetch-depth: 0
- run: |
echo "JAVA_HOME=$JAVA_HOME_11_arm64" >> $GITHUB_ENV
echo "$JAVA_HOME_11_arm64/bin" >> $GITHUB_PATH
# x64
- run: python3 script/build.py --arch x64
- run: python3 script/test.py
- run: python3 script/package_platform.py --arch x64
- uses: actions/upload-artifact@v6
with:
name: macos-x64-jars
path: target/skija-macos-x64-*
# arm64
- run: python3 script/clean.py
- run: python3 script/build.py --arch arm64
- run: python3 script/test.py
- run: python3 script/package_platform.py --arch arm64
- uses: actions/upload-artifact@v6
with:
name: macos-arm64-jars
path: target/skija-macos-arm64-*
build_linux:
runs-on: ubuntu-22.04
steps:
- run: |
echo "JAVA_HOME=$JAVA_HOME_11_X64" >> $GITHUB_ENV
echo "$JAVA_HOME_11_X64/bin" >> $GITHUB_PATH
sudo apt-get update
sudo apt-get --quiet --yes install ninja-build libglu1-mesa-dev libegl-dev g\+\+-10-aarch64-linux-gnu libwayland-dev libglvnd-dev libegl1-mesa libegl1-mesa-dev
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 60 --slave /usr/bin/g++ g++ /usr/bin/g++-10
sudo update-alternatives --config gcc
- uses: actions/checkout@v5
with:
fetch-depth: 0
# x64
- run: python3 script/build.py
- run: python3 script/package_shared.py
- uses: actions/upload-artifact@v6
with:
name: shared-jars
path: target/skija-shared-*.jar
- run: python3 script/test.py
- run: python3 script/package_platform.py
- uses: actions/upload-artifact@v6
with:
name: linux-x64-jars
path: target/skija-linux-x64-*
# arm64
- run: python3 script/clean.py
- run: python3 script/build.py --arch arm64
- run: python3 script/package_platform.py --arch arm64
- uses: actions/upload-artifact@v6
with:
name: linux-arm64-jars
path: target/skija-linux-arm64-*
build_android:
runs-on: ubuntu-22.04
strategy:
matrix:
arch: ["arm64", "x64"]
fail-fast: false
steps:
- uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Setup Java
run: |
echo "JAVA_HOME=$JAVA_HOME_17_X64" >> $GITHUB_ENV
echo "$JAVA_HOME_17_X64/bin" >> $GITHUB_PATH
- name: Setup Android NDK
uses: android-actions/setup-android@v3
- name: Install NDK
run: sdkmanager "ndk;25.1.8937393"
- name: Set NDK Home
run: echo "ANDROID_NDK_HOME=${{ env.ANDROID_HOME }}/ndk/25.1.8937393" >> $GITHUB_ENV
- name: Build Android ${{ matrix.arch }}
run: python3 script/build.py --system android --arch ${{ matrix.arch }}
- name: Package Android ${{ matrix.arch }}
run: python3 script/package_platform.py --system android --arch ${{ matrix.arch }}
- uses: actions/upload-artifact@v6
with:
name: android-${{ matrix.arch }}-jars
path: target/skija-android-${{ matrix.arch }}-*
build_windows:
runs-on: windows-2022
steps:
- uses: actions/checkout@v5
- uses: microsoft/setup-msbuild@v1
- uses: ilammy/msvc-dev-cmd@v1
- shell: bash
run: |
echo "JAVA_HOME=$JAVA_HOME_11_X64" >> $GITHUB_ENV
echo "$JAVA_HOME_11_X64/bin" >> $GITHUB_PATH
- run: python3 script/build.py
- shell: bash
run: python3 script/test.py
- run: python3 script/package_platform.py
- uses: actions/upload-artifact@v6
with:
name: windows-x64-jars
path: target/skija-windows-x64-*
release:
if: startsWith(github.ref, 'refs/tags/')
runs-on: ubuntu-latest
needs: [build_windows, build_linux, build_macos, build_android]
steps:
- uses: actions/checkout@v5
- run: |
echo "JAVA_HOME=$JAVA_HOME_11_X64" >> $GITHUB_ENV
echo "$JAVA_HOME_11_X64/bin" >> $GITHUB_PATH
- uses: actions/download-artifact@v6
with:
name: shared-jars
path: target
- uses: actions/download-artifact@v6
with:
name: macos-x64-jars
path: target
- uses: actions/download-artifact@v6
with:
name: macos-arm64-jars
path: target
- uses: actions/download-artifact@v6
with:
name: linux-x64-jars
path: target
- uses: actions/download-artifact@v6
with:
name: linux-arm64-jars
path: target
- uses: actions/download-artifact@v6
with:
name: android-arm64-jars
path: target
- uses: actions/download-artifact@v6
with:
name: android-x64-jars
path: target
- uses: actions/download-artifact@v6
with:
name: windows-x64-jars
path: target
- name: Release to Maven Central
run: |
echo -n "$GPG_SIGNING_KEY" | base64 --decode | gpg --import
python3 ./script/release.py
env:
GPG_SIGNING_KEY: ${{ secrets.GPG_SIGNING_KEY }}
SONATYPE_BEARER_TOKEN: ${{ secrets.SONATYPE_BEARER_TOKEN }}
- name: Delete useless jars
run: |
rm target/skija-macos-*-sources.jar
rm target/skija-macos-*-javadoc.jar
rm target/skija-linux-*-sources.jar
rm target/skija-linux-*-javadoc.jar
rm target/skija-android-*-sources.jar
rm target/skija-android-*-javadoc.jar
rm target/skija-windows-*-sources.jar
rm target/skija-windows-*-javadoc.jar
- uses: softprops/action-gh-release@v2
with:
body_path: RELEASE_NOTES.md
files: |
target/*.jmod
target/*.jar