This repository has been archived by the owner on May 13, 2024. It is now read-only.
Workaround for stupid GL header version problems #1250
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: build | |
# build on c/cpp changes or workflow changes | |
on: | |
- push | |
- pull_request | |
jobs: | |
linux-gl: | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install deps | |
run: | | |
sudo apt-get update | |
sudo apt-get install g++ cmake libxi-dev libgl1-mesa-dev libpng-dev libjpeg-dev zlib1g-dev -qyy | |
- name: Build | |
run: | | |
cmake . -DUSE_SDL2=OFF | |
make VERBOSE=1 -j2 | |
- name: Test | |
run: | | |
ctest --output-on-failure | |
- name: Package | |
run: | | |
make DESTDIR=$PWD/_install install | |
tar -c -I "gzip -9" -f irrlicht-linux.tar.gz -C ./_install/usr/local . | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: irrlicht-linux | |
path: ./irrlicht-linux.tar.gz | |
linux-gles: | |
# Xvfb test is broken on 20.04 for unknown reasons (not our bug) | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install deps | |
run: | | |
sudo apt-get update | |
sudo apt-get install g++ cmake libxi-dev libgles2-mesa-dev libpng-dev libjpeg-dev zlib1g-dev xvfb -qyy | |
- name: Build | |
run: | | |
cmake . -DBUILD_EXAMPLES=1 -DUSE_SDL2=OFF -DENABLE_OPENGL=OFF -DENABLE_GLES2=ON | |
make -j2 | |
- name: Test (headless) | |
run: | | |
cd bin/Linux | |
./AutomatedTest null | |
- name: Test (Xvfb) | |
run: | | |
cd bin/Linux | |
LIBGL_ALWAYS_SOFTWARE=true xvfb-run ./AutomatedTest ogles2 | |
linux-sdl: | |
# something is wrong with the SDL cmake files on 20.04 | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install deps | |
run: | | |
sudo apt-get update | |
sudo apt-get install g++ cmake libsdl2-dev libpng-dev libjpeg-dev zlib1g-dev -qyy | |
- name: Build | |
run: | | |
cmake . -DBUILD_EXAMPLES=1 -DUSE_SDL2=ON | |
make -j2 | |
- name: Test (headless) | |
run: | | |
cd bin/Linux | |
./AutomatedTest null | |
linux-sdl-gl3: | |
# Xvfb test is broken on 20.04 for unknown reasons (not our bug) | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install deps | |
run: | | |
sudo apt-get update | |
sudo apt-get install g++ cmake libsdl2-dev libpng-dev libjpeg-dev zlib1g-dev xvfb -qyy | |
- name: Build | |
run: | | |
cmake . -DBUILD_EXAMPLES=1 -DUSE_SDL2=ON -DENABLE_OPENGL=OFF -DENABLE_OPENGL3=ON | |
make -j2 | |
- name: Test (headless) | |
run: | | |
cd bin/Linux | |
./AutomatedTest null | |
- name: Test (Xvfb) | |
run: | | |
cd bin/Linux | |
LIBGL_ALWAYS_SOFTWARE=true xvfb-run ./AutomatedTest opengl3 | |
linux-sdl-gles2: | |
# something is wrong with the SDL cmake files on 20.04 | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install deps | |
run: | | |
sudo apt-get update | |
sudo apt-get install g++ cmake libsdl2-dev libpng-dev libjpeg-dev zlib1g-dev xvfb -qyy | |
- name: Build | |
run: | | |
cmake . -DBUILD_EXAMPLES=1 -DUSE_SDL2=ON -DENABLE_OPENGL=OFF -DENABLE_GLES2=ON | |
make -j2 | |
- name: Test (headless) | |
run: | | |
cd bin/Linux | |
./AutomatedTest null | |
- name: Test (Xvfb) | |
run: | | |
cd bin/Linux | |
LIBGL_ALWAYS_SOFTWARE=true xvfb-run ./AutomatedTest ogles2 | |
mingw: | |
name: "MinGW ${{matrix.config.variant}}${{matrix.config.extras}}" | |
runs-on: ubuntu-22.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- {variant: win32, arch: i686} | |
- {variant: win64, arch: x86_64} | |
- {variant: win32, arch: i686, extras: "-sdl"} | |
- {variant: win64, arch: x86_64, extras: "-sdl"} | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install compiler | |
run: | | |
sudo apt-get update && sudo apt-get install cmake -qyy | |
./scripts/ci-get-mingw.sh | |
- name: Build | |
run: | | |
./scripts/ci-build-mingw.sh package | |
env: | |
CC: ${{matrix.config.arch}}-w64-mingw32-clang | |
CXX: ${{matrix.config.arch}}-w64-mingw32-clang++ | |
extras: ${{matrix.config.extras}} | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: irrlicht-${{matrix.config.variant}}${{matrix.config.extras}} | |
path: ./irrlicht-${{matrix.config.variant}}${{matrix.config.extras}}.zip | |
macos: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install deps | |
run: | | |
brew update | |
brew install cmake libpng jpeg | |
- name: Build | |
run: | | |
cmake . -DCMAKE_FIND_FRAMEWORK=LAST -DBUILD_EXAMPLES=1 | |
make -j3 | |
- name: Test (headless) | |
run: | | |
./bin/OSX/AutomatedTest null | |
macos-sdl: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install deps | |
run: | | |
brew update | |
brew install cmake libpng jpeg sdl2 | |
- name: Build | |
run: | | |
cmake . -DCMAKE_FIND_FRAMEWORK=LAST -DBUILD_EXAMPLES=1 -DUSE_SDL2=1 | |
make -j3 | |
msvc: | |
name: VS 2019 ${{ matrix.config.arch }} ${{ matrix.sdl.label }} | |
runs-on: windows-2019 | |
env: | |
VCPKG_VERSION: 8eb57355a4ffb410a2e94c07b4dca2dffbee8e50 | |
# 2023.10.19 | |
vcpkg_packages: zlib libpng libjpeg-turbo opengl-registry | |
strategy: | |
fail-fast: false | |
matrix: | |
config: | |
- | |
arch: x86 | |
generator: "-G'Visual Studio 16 2019' -A Win32" | |
vcpkg_triplet: x86-windows | |
- | |
arch: x64 | |
generator: "-G'Visual Studio 16 2019' -A x64" | |
vcpkg_triplet: x64-windows | |
sdl: | |
- | |
use: FALSE | |
label: '(no SDL)' | |
- | |
use: TRUE | |
label: '(with SDL)' | |
vcpkg_packages: sdl2 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Restore from cache and run vcpkg | |
uses: lukka/run-vcpkg@v7 | |
with: | |
vcpkgArguments: ${{env.vcpkg_packages}} ${{matrix.sdl.vcpkg_packages}} | |
vcpkgDirectory: '${{ github.workspace }}\vcpkg' | |
appendedCacheKey: ${{ matrix.config.vcpkg_triplet }} | |
vcpkgGitCommitId: ${{ env.VCPKG_VERSION }} | |
vcpkgTriplet: ${{ matrix.config.vcpkg_triplet }} | |
- name: CMake | |
run: | | |
cmake ${{matrix.config.generator}} ` | |
-DUSE_SDL2=${{matrix.sdl.use}} ` | |
-DCMAKE_TOOLCHAIN_FILE="${{ github.workspace }}\vcpkg\scripts\buildsystems\vcpkg.cmake" ` | |
-DCMAKE_BUILD_TYPE=Release . | |
- name: Build | |
run: cmake --build . --config Release | |
- name: Create artifact folder | |
run: | | |
mkdir artifact/ | |
mkdir artifact/lib/ | |
- name: Move dlls into artifact folder | |
run: move bin\Win32-VisualStudio\Release\* artifact\lib\ | |
- name: Move includes into artifact folder | |
run: move include artifact/ | |
- name: Upload Artifact | |
uses: actions/upload-artifact@v3 | |
with: | |
name: msvc-${{ matrix.config.arch }} | |
path: artifact/ | |
android: | |
name: Android ${{ matrix.arch }} | |
runs-on: ubuntu-20.04 | |
env: | |
ndk_version: "r25c" | |
ANDROID_NDK: ${{ github.workspace }}/android-ndk | |
strategy: | |
matrix: | |
arch: [armeabi-v7a, arm64-v8a, x86, x86_64] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install deps | |
run: | | |
sudo rm /var/lib/man-db/auto-update | |
sudo apt-get update | |
sudo apt-get install -qyy wget unzip zip gcc-multilib make cmake | |
- name: Cache NDK | |
id: cache-ndk | |
uses: actions/cache@v3 | |
with: | |
key: android-ndk-${{ env.ndk_version }}-linux | |
path: ${{ env.ANDROID_NDK }} | |
- name: Install NDK | |
run: | | |
wget --progress=bar:force "http://dl.google.com/android/repository/android-ndk-${ndk_version}-linux.zip" | |
unzip -q "android-ndk-${ndk_version}-linux.zip" | |
rm "android-ndk-${ndk_version}-linux.zip" | |
mv "android-ndk-${ndk_version}" "${ANDROID_NDK}" | |
if: ${{ steps.cache-ndk.outputs.cache-hit != 'true' }} | |
- name: Build | |
run: ./scripts/ci-build-android.sh ${{ matrix.arch }} | |
#- name: Upload Artifact | |
# uses: actions/upload-artifact@v3 | |
# with: | |
# name: irrlicht-android-${{ matrix.arch }} | |
# path: ${{ runner.temp }}/pkg/${{ matrix.arch }} |