Skip to content

Fix runtime data races, memory leak, and shutdown safety #4995

Fix runtime data races, memory leak, and shutdown safety

Fix runtime data races, memory leak, and shutdown safety #4995

Workflow file for this run

name: Build for Android
on:
push:
branches:
- master
- main
- dev
- dev/*
- release/*
- buildme/*
- maharrim/*
pull_request:
branches:
- master
- main
- dev
# Least-privilege GITHUB_TOKEN scope: this workflow only checks out source
# and builds + uploads artifacts (upload-artifact uses its own per-run SAS,
# not GITHUB_TOKEN). Explicit block satisfies CodeQL rule
# actions/missing-workflow-permissions if Actions analysis is enabled.
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
jobs:
build:
runs-on: windows-latest
name: Build for Android
steps:
- name: Checkout
uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4.4.0
with:
submodules: false
- name: Update submodules
run: |
git submodule sync
git config --global submodule.lib/modules.update none
git -c protocol.version=2 submodule update --init --force --depth=1
- name: Setup Java
uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5.7.0
with:
distribution: 'adopt'
java-version: '17'
- name: Remove default github maven configuration
# Workaround for: 'Unable to decrypt local Maven settings credentials'
run: rm $Env:USERPROFILE\.m2\settings.xml
- name: Setup Android SDK
uses: android-actions/setup-android@9fc6c4e9069bf8d3d10b2204b1fb8f6ef7065407 # v3.2.2
- name: Install NDK
run: |
java -version
gci env:* | sort-object name
new-item "$Env:USERPROFILE\.android\repositories.cfg" -ItemType "file"
echo yes | sdkmanager "ndk-bundle" "cmake;3.22.1" "ndk;27.0.12077973" --sdk_root=$Env:ANDROID_SDK_ROOT
- name: Chocolatey
run: |
choco install --no-progress -y ninja
- name: List CMake
run: |
pwd
echo "=================="
gci -r -i "CMake*" -Name
echo "=================="
gci -r -i "gtest-all*" -Name
echo "=================="
gci third_party/ -Name
echo "=================="
gci third_party/googletest -Name
- name: Gradle Build
run: |
.\gradlew.bat maesdk:assemble app:assemble
working-directory: lib\android_build
- name: Java Unit test
run: |
.\gradlew.bat maesdk:test
working-directory: lib\android_build
- name: Upload Reports
if: failure()
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: reports
path: lib\android_build\maesdk\build\reports