You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
107 lines
4.0 KiB
YAML
107 lines
4.0 KiB
YAML
name: 🛠️ Builds
|
|
on:
|
|
push:
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ${{ matrix.runner }}
|
|
name: ${{ matrix.name }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- identifier: linux
|
|
name: Linux
|
|
runner: ubuntu-18.04
|
|
- identifier: windows
|
|
name: Windows
|
|
runner: ubuntu-20.04
|
|
- identifier: android
|
|
name: Android
|
|
runner: ubuntu-20.04
|
|
|
|
steps:
|
|
- name: Get version name
|
|
id: version
|
|
run: echo ::set-output name=version::${GITHUB_REF#refs/*/}
|
|
|
|
- name: (Bionic) Change package sources and install base dependencies
|
|
if: ${{ matrix.runner == 'ubuntu-18.04' }}
|
|
shell: sh
|
|
run: |
|
|
sudo rm -f /etc/apt/sources.list.d/*
|
|
sudo tee -a /etc/apt/sources.list << EOT
|
|
deb http://archive.ubuntu.com/ubuntu/ bionic main restricted universe multiverse
|
|
deb http://archive.ubuntu.com/ubuntu/ bionic-updates main restricted universe multiverse
|
|
deb http://archive.ubuntu.com/ubuntu/ bionic-security main restricted universe multiverse
|
|
deb http://archive.ubuntu.com/ubuntu/ bionic-backports main restricted universe multiverse
|
|
EOT
|
|
|
|
sudo apt-get update
|
|
sudo apt-get install build-essential scons pkg-config libx11-dev libxcursor-dev libxinerama-dev libgl1-mesa-dev libglu-dev libasound2-dev libpulse-dev libudev-dev libxi-dev libxrandr-dev yasm
|
|
|
|
- name: (Focal) Change package sources and install base dependencies
|
|
if: ${{ matrix.runner == 'ubuntu-20.04' }}
|
|
shell: sh
|
|
run: |
|
|
sudo rm -f /etc/apt/sources.list.d/*
|
|
sudo tee -a /etc/apt/sources.list << EOT
|
|
deb http://archive.ubuntu.com/ubuntu/ focal main restricted universe multiverse
|
|
deb http://archive.ubuntu.com/ubuntu/ focal-updates main restricted universe multiverse
|
|
deb http://archive.ubuntu.com/ubuntu/ focal-security main restricted universe multiverse
|
|
deb http://archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse
|
|
EOT
|
|
|
|
sudo apt-get update
|
|
sudo apt-get install build-essential scons pkg-config libx11-dev libxcursor-dev libxinerama-dev libgl1-mesa-dev libglu-dev libasound2-dev libpulse-dev libudev-dev libxi-dev libxrandr-dev yasm
|
|
|
|
- name: (Windows) Install mingw64
|
|
if: ${{ matrix.identifier == 'windows' }}
|
|
shell: sh
|
|
run: |
|
|
sudo apt-get install mingw-w64
|
|
sudo update-alternatives --set x86_64-w64-mingw32-gcc /usr/bin/x86_64-w64-mingw32-gcc-posix
|
|
sudo update-alternatives --set x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix
|
|
|
|
- name: (Android) Setup Java 11
|
|
if: ${{ matrix.identifier == 'android' }}
|
|
uses: actions/setup-java@v1
|
|
with:
|
|
java-version: 11
|
|
|
|
- name: (Android) Setup Android SDK
|
|
if: ${{ matrix.identifier == 'android' }}
|
|
uses: android-actions/setup-android@v2
|
|
|
|
- name: (Android) Install Android Tools
|
|
if: ${{ matrix.identifier == 'android' }}
|
|
shell: sh
|
|
run: |
|
|
"$ANDROID_SDK_ROOT"/cmdline-tools/latest/bin/sdkmanager --sdk_root="$ANDROID_SDK_ROOT" "platform-tools" "build-tools;30.0.3" "platforms;android-29" "cmdline-tools;latest" "cmake;3.10.2.4988404" "ndk;21.4.7075529"
|
|
|
|
- name: Setup Python
|
|
uses: actions/setup-python@v2
|
|
|
|
- name: Setup Scons
|
|
shell: bash
|
|
run: |
|
|
python -c "import sys; print(sys.version)"
|
|
python -m pip install scons
|
|
scons --version
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Compile Extension
|
|
shell: sh
|
|
run: |
|
|
scons target=release
|
|
scons target=debug
|
|
ls -l addons/example/bin/
|
|
|
|
- name: Upload Artifact
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: example_${{ steps.version.outputs.version }}
|
|
path: ${{ github.workspace }}/addons/
|