Merge pull request #40646 from akien-mga/ci-gh-action-linux-mono
CI: Add Mono support to Linux builds on GitHub Actions
This commit is contained in:
commit
819ef12d68
|
@ -8,9 +8,7 @@ env:
|
|||
jobs:
|
||||
linux-editor:
|
||||
runs-on: "ubuntu-20.04"
|
||||
|
||||
# Windows Editor - checkout with the plugin
|
||||
name: Editor (target=release_debug, tools=yes)
|
||||
name: Editor w/ Mono (target=release_debug, tools=yes)
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
@ -25,7 +23,7 @@ jobs:
|
|||
- name: Configure dependencies
|
||||
run: |
|
||||
sudo apt-get install build-essential pkg-config libx11-dev libxcursor-dev \
|
||||
libxinerama-dev libgl1-mesa-dev libglu-dev libasound2-dev libpulse-dev libudev-dev libxi-dev libxrandr-dev yasm
|
||||
libxinerama-dev libgl1-mesa-dev libglu-dev libasound2-dev libpulse-dev libudev-dev libxi-dev libxrandr-dev yasm
|
||||
|
||||
# Upload cache on completion and check it out now
|
||||
# Editing this is pretty dangerous for windows since it can break and needs properly tested with a fresh cache.
|
||||
|
@ -63,11 +61,11 @@ jobs:
|
|||
env:
|
||||
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
||||
run: |
|
||||
scons -j2 verbose=yes warnings=all werror=yes platform=linuxbsd tools=yes target=release_debug
|
||||
scons -j2 verbose=yes warnings=all werror=yes platform=linuxbsd tools=yes target=release_debug module_mono_enabled=yes mono_glue=no
|
||||
|
||||
linux-template:
|
||||
runs-on: "ubuntu-20.04"
|
||||
name: Template (target=release, tools=no)
|
||||
name: Template w/ Mono (target=release, tools=no)
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
@ -82,7 +80,7 @@ jobs:
|
|||
- name: Configure dependencies
|
||||
run: |
|
||||
sudo apt-get install build-essential pkg-config libx11-dev libxcursor-dev \
|
||||
libxinerama-dev libgl1-mesa-dev libglu-dev libasound2-dev libpulse-dev libudev-dev libxi-dev libxrandr-dev yasm
|
||||
libxinerama-dev libgl1-mesa-dev libglu-dev libasound2-dev libpulse-dev libudev-dev libxi-dev libxrandr-dev yasm
|
||||
|
||||
# Upload cache on completion and check it out now
|
||||
# Editing this is pretty dangerous for windows since it can break and needs properly tested with a fresh cache.
|
||||
|
@ -118,4 +116,4 @@ jobs:
|
|||
env:
|
||||
SCONS_CACHE: ${{github.workspace}}/.scons_cache/
|
||||
run: |
|
||||
scons -j2 verbose=yes warnings=all werror=yes platform=linuxbsd target=release tools=no
|
||||
scons -j2 verbose=yes warnings=all werror=yes platform=linuxbsd target=release tools=no module_mono_enabled=yes mono_glue=no
|
||||
|
|
83
.travis.yml
83
.travis.yml
|
@ -1,83 +0,0 @@
|
|||
language: cpp
|
||||
|
||||
# OS config, depends on actual 'os' in build matrix
|
||||
dist: bionic
|
||||
|
||||
stages:
|
||||
- build
|
||||
|
||||
env:
|
||||
global:
|
||||
- SCONS_CACHE=$HOME/.scons_cache/$TRAVIS_BRANCH
|
||||
- SCONS_CACHE_LIMIT=1024
|
||||
- OPTIONS="debug_symbols=no verbose=yes progress=no"
|
||||
|
||||
cache:
|
||||
directories:
|
||||
- $SCONS_CACHE
|
||||
|
||||
matrix:
|
||||
include:
|
||||
- name: Android export template (release_debug, Clang)
|
||||
stage: build
|
||||
env: PLATFORM=android TOOLS=no TARGET=release_debug CACHE_NAME=${PLATFORM}-clang EXTRA_ARGS="warnings=extra werror=yes"
|
||||
os: linux
|
||||
compiler: clang
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- openjdk-8-jdk
|
||||
|
||||
# TODO: iOS MoltenVK support
|
||||
|
||||
# - name: iOS export template (debug, Clang)
|
||||
# stage: build
|
||||
# env: PLATFORM=iphone TOOLS=no TARGET=debug CACHE_NAME=${PLATFORM}-clang
|
||||
# os: osx
|
||||
# osx_image: xcode11.5
|
||||
# compiler: clang
|
||||
# addons:
|
||||
# homebrew:
|
||||
# packages:
|
||||
# - scons
|
||||
|
||||
- name: JavaScript export template (release, emscripten latest)
|
||||
stage: build
|
||||
env: PLATFORM=javascript TOOLS=no TARGET=release CACHE_NAME=${PLATFORM}-emcc-latest EXTRA_ARGS="use_closure_compiler=yes"
|
||||
os: linux
|
||||
compiler: clang
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- *linux_deps
|
||||
|
||||
before_install:
|
||||
- eval "${MATRIX_EVAL}"
|
||||
|
||||
install:
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ]; then
|
||||
pyenv global 3.8 system;
|
||||
pip3 install --user scons;
|
||||
fi
|
||||
- scons --version
|
||||
- if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$PLATFORM" = "android" ]; then
|
||||
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64;
|
||||
export PATH=/usr/lib/jvm/java-8-openjdk-amd64/jre/bin:${PATH};
|
||||
java -version;
|
||||
misc/ci/android-tools-linux.sh;
|
||||
fi
|
||||
- if [ "$PLATFORM" = "javascript" ]; then
|
||||
git clone --depth 1 https://github.com/emscripten-core/emsdk;
|
||||
./emsdk/emsdk install latest;
|
||||
./emsdk/emsdk activate latest;
|
||||
source ./emsdk/emsdk_env.sh;
|
||||
fi
|
||||
|
||||
before_script:
|
||||
- if [ "$PLATFORM" = "android" ]; then
|
||||
export ANDROID_HOME=$TRAVIS_BUILD_DIR/godot-dev/build-tools/android-sdk;
|
||||
export ANDROID_NDK_ROOT=$TRAVIS_BUILD_DIR/godot-dev/build-tools/android-ndk;
|
||||
fi
|
||||
|
||||
script:
|
||||
- scons -j2 CC=$CC CXX=$CXX platform=$PLATFORM tools=$TOOLS target=$TARGET $OPTIONS $EXTRA_ARGS
|
Loading…
Reference in New Issue