summaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
Diffstat (limited to '.github')
-rw-r--r--.github/actions/godot-build/action.yml6
-rw-r--r--.github/workflows/linux_builds.yml24
-rw-r--r--.github/workflows/static_checks.yml2
-rw-r--r--.github/workflows/windows_builds.yml4
4 files changed, 22 insertions, 14 deletions
diff --git a/.github/actions/godot-build/action.yml b/.github/actions/godot-build/action.yml
index 13d4abe2a7..7af3516f71 100644
--- a/.github/actions/godot-build/action.yml
+++ b/.github/actions/godot-build/action.yml
@@ -20,8 +20,9 @@ inputs:
default: "${{ github.workspace }}/.scons-cache/"
scons-cache-limit:
description: The scons cache size limit.
- # actions/cache has 10 GiB limit. Allow 10 GiB minus 256 MiB.
- default: 9984
+ # actions/cache has 10 GiB limit, and GitHub runners have a 14 GiB disk.
+ # Limit to 7 GiB to avoid having the extracted cache fill the disk.
+ default: 7168
runs:
using: "composite"
steps:
@@ -33,5 +34,6 @@ runs:
SCONS_CACHE_LIMIT: ${{ inputs.scons-cache-limit }}
run: |
echo "Building with flags:" ${{ env.SCONSFLAGS }}
+ if ! ${{ inputs.tools }}; then rm -rf editor; fi # Ensure we don't include editor code.
scons p=${{ inputs.platform }} target=${{ inputs.target }} tools=${{ inputs.tools }} tests=${{ inputs.tests }} --jobs=2 ${{ env.SCONSFLAGS }}
ls -l bin/
diff --git a/.github/workflows/linux_builds.yml b/.github/workflows/linux_builds.yml
index c9f1b2f41e..7ac364c45f 100644
--- a/.github/workflows/linux_builds.yml
+++ b/.github/workflows/linux_builds.yml
@@ -30,7 +30,7 @@ jobs:
build-mono: true
artifact: true
- - name: Editor with doubles and sanitizers (target=debug, tools=yes, float=64, tests=yes, use_asan=yes, use_ubsan=yes)
+ - name: Editor with doubles and GCC sanitizers (target=debug, tools=yes, float=64, tests=yes, use_asan=yes, use_ubsan=yes)
cache-name: linux-editor-double-sanitizers
target: debug
tools: true
@@ -45,6 +45,17 @@ jobs:
# Skip 2GiB artifact speeding up action.
artifact: false
+ - name: Editor with clang sanitizers (target=debug, tools=yes, use_asan=yes, use_ubsan=yes, use_llvm=yes)
+ cache-name: linux-editor-llvm-sanitizers
+ target: debug
+ tools: true
+ tests: true
+ sconsflags: use_asan=yes use_ubsan=yes use_llvm=yes
+ bin: "./bin/godot.linuxbsd.tools.64.llvm.san"
+ build-mono: false
+ # Skip 2GiB artifact speeding up action.
+ artifact: false
+
- name: Template w/ Mono (target=release, tools=no)
cache-name: linux-template-mono
target: release
@@ -75,7 +86,8 @@ jobs:
# The actual dependencies
sudo apt-get install build-essential pkg-config libx11-dev libxcursor-dev \
libxinerama-dev libgl1-mesa-dev libglu-dev libasound2-dev libpulse-dev \
- libdbus-1-dev libudev-dev libxi-dev libxrandr-dev yasm xvfb wget unzip
+ libdbus-1-dev libudev-dev libxi-dev libxrandr-dev yasm xvfb wget unzip \
+ llvm
- name: Setup Godot build cache
uses: ./.github/actions/godot-cache
@@ -181,14 +193,6 @@ jobs:
cp -f extension_api.json godot-cpp/godot-headers/
cp -f core/extension/gdnative_interface.h godot-cpp/godot-headers/godot/
- # Build godot-cpp library
- - name: Build godot-cpp library
- if: ${{ matrix.godot-cpp-test }}
- run: |
- cd godot-cpp
- scons target=${{ matrix.target }} generate_bindings=yes -j2
- cd ..
-
# Build godot-cpp test extension
- name: Build godot-cpp test extension
if: ${{ matrix.godot-cpp-test }}
diff --git a/.github/workflows/static_checks.yml b/.github/workflows/static_checks.yml
index 724bebbd13..5531509007 100644
--- a/.github/workflows/static_checks.yml
+++ b/.github/workflows/static_checks.yml
@@ -27,7 +27,7 @@ jobs:
sudo apt-get install -qq dos2unix recode clang-format-13 libxml2-utils
sudo update-alternatives --remove-all clang-format
sudo update-alternatives --install /usr/bin/clang-format clang-format /usr/bin/clang-format-13 100
- sudo pip3 install black==21.10b0 pygments
+ sudo pip3 install black==22.3.0 pygments
- name: File formatting checks (file_format.sh)
run: |
diff --git a/.github/workflows/windows_builds.yml b/.github/workflows/windows_builds.yml
index 8c88c8fa64..4919f34cf0 100644
--- a/.github/workflows/windows_builds.yml
+++ b/.github/workflows/windows_builds.yml
@@ -5,7 +5,7 @@ on: [push, pull_request]
# SCONS_CACHE for windows must be set in the build environment
env:
# Only used for the cache key. Increment version to force clean build.
- GODOT_BASE_BRANCH: master
+ GODOT_BASE_BRANCH: master-v2
SCONSFLAGS: verbose=yes warnings=all werror=yes module_text_server_fb_enabled=yes
SCONS_CACHE_MSVC_CONFIG: true
@@ -27,6 +27,8 @@ jobs:
target: release_debug
tools: true
tests: true
+ # Skip debug symbols, they're way too big with MSVC.
+ sconsflags: debug_symbols=no
bin: "./bin/godot.windows.opt.tools.64.exe"
- name: Template (target=release, tools=no)