2
0
Эх сурвалжийг харах

Merge pull request #40646 from akien-mga/ci-gh-action-linux-mono

CI: Add Mono support to Linux builds on GitHub Actions
Rémi Verschelde 5 жил өмнө
parent
commit
819ef12d68

+ 6 - 8
.github/workflows/linux_builds.yml

@@ -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

+ 0 - 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