Skip to content

perhaps my indentation was wrong #18

perhaps my indentation was wrong

perhaps my indentation was wrong #18

Workflow file for this run

name: Continuous Integration (cmake)
on: [push, pull_request]
env:
# Only used for the cache key. Increment version to force clean build.
GODOT_BASE_BRANCH: master
concurrency:
group: ci-${{github.actor}}-${{github.head_ref || github.run_number}}-${{github.ref}}
cancel-in-progress: true
jobs:
build-windows-cmake-mingw:
name: 🏁 Windows.MinGW64.windows
runs-on: windows-2019
defaults:
run:
shell: msys2 {0}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
# Install OS Level deps
- name: Install MSYS2 and Dependencies
uses: msys2/setup-msys2@v2
with:
pacboy: >-
gcc:p
cmake:p
ninja:p
# Cmake configure and build godot-cpp
- name: Configure godot-cpp
run: >-
cmake -B build
-DCMAKE_BUILD_TYPE=Release
-GNinja .
- name: Build godot-cpp
run:
cmake --build build -j $(nproc)
# Configure and build test extension
- name: Configure godot-cpp/test
run: >-
cmake -B build -S test
-DCMAKE_BUILD_TYPE=Release
-DGODOT_HEADERS_PATH="./godot-headers"
-DCPP_BINDINGS_PATH="."
-GNinja .
- name: Build godot-cpp/test
run:
cmake --build build -j $(nproc)
# Perform testing
- name: Download latest Godot artifacts
uses: dsnopek/action-download-artifact@1322f74e2dac9feed2ee76a32d9ae1ca3b4cf4e9
with:
repo: godotengine/godot
branch: master
event: push
workflow: windows_builds.yml
workflow_conclusion: success
name: windows-editor
search_artifacts: true
check_artifacts: true
ensure_latest: true
path: godot-artifacts
- name: Run tests
run: |
chmod +x ./godot-artifacts/godot.windows.editor.x86_64.exe
./godot-artifacts/godot.windows.editor.x86_64.exe --headless --version
cd test
# Need to run the editor so .godot is generated... but it crashes! Ignore that :-)
(cd project && (timeout 10 ../../godot-artifacts/godot.windows.editor.x86_64.exe --editor --headless --quit >/dev/null 2>&1 || true))
GODOT=../godot-artifacts/godot.windows.editor.x86_64.exe ./run-tests.sh
# - name: Upload artifact
#uses: actions/upload-artifact@v3
#with:
#name: ${{ matrix.platforms.artifact-name }}-${{ matrix.builder.name }}
#path: ${{ matrix.builder.artifact-dir}}${{ matrix.platforms.artifact-path }}
#if-no-files-found: error
build:
name: ${{ matrix.icon }} ${{ matrix.platform }}(${{matrix.arch}}, ${{ matrix.compiler }} ${{ matrix.extra_label }})
runs-on: ${{ matrix.runner }}
strategy:
fail-fast: false
matrix:
# runner: [ubuntu-20.04, windows-2019, macos-11]
# platform`: [android, ios, linux, macos, web, windows]
# arch: [arm32, arm64, ppc32, ppc64, rv64, wasm32, x86_32, x86_64]
# target: [editor, release]
# compiler: [gcc, clang, msvc, mingw]
# build_type: [release, debug]
# precision: [single, double]
# icon: [πŸ§πŸπŸŽπŸ€–πŸπŸŒ]
include:
- runner: ubuntu-20.04
icon: 🐧
platform: linux
arch: x86_64
compiler: gcc
- runner: ubuntu-20.04
icon: 🐧
platform: linux
arch: x86_64
compiler: gcc
extra_label: double
extra_config: -DFLOAT_PRECISION:STRING=double
# - runner: ubuntu-20.04
#icon: πŸ€–
#platform: android
#arch: arm64
#compiler: gcc
#extra_config: >-
#-DCMAKE_TOOLCHAIN_FILE:PATH=$ANDROID_NDK/build/cmake/android.toolchain.cmake
#-DANDROID_TOOLCHAIN_NAME:STRING=arm-linux-androidabi-4.9
- runner: windows-2019
icon: 🏁
platform: windows
arch: x86_64
compiler: msvc
env:
SCONS_CACHE: ${{ github.workspace }}/.scons-cache/
EM_VERSION: 3.1.39
EM_CACHE_FOLDER: "emsdk-cache"
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
# Install OS Level deps
- name: Install Linux Build Tools
if: ${{ matrix.runner == 'ubuntu-20.04' }}
run: |
sudo apt-get update -qq
sudo apt-get install -qqq build-essential pkg-config cmake ninja-build
- name: Install MSys2
if: ${{ matrix.runner == 'windows-2019' && matrix.compiler == 'mingw' }}
uses: msys2/setup-msys2@v2
with:
pacboy: >-
cmake:p
- name: Android dependencies
if: ${{ matrix.platform == 'android' }}
uses: nttld/setup-ndk@v1
with:
ndk-version: r23c
link-to-sdk: true
env:
ANDROID_NDK: ${{ steps.setup-ndk.outputs.ndk-path }}
- name: Web dependencies
if: ${{ matrix.platform == 'web' }}
uses: mymindstorm/setup-emsdk@v13
with:
version: ${{env.EM_VERSION}}
actions-cache-folder: ${{env.EM_CACHE_FOLDER}}
# Cmake configure and build godot-cpp
- name: Configure godot-cpp (Linux)
if: ${{ matrix.runner == 'ubuntu-20.04' }}
run:
cmake -DCMAKE_BUILD_TYPE=Release ${{ matrix.extra_config}} -GNinja .
- name: Configure godot-cpp (Windows, MSVC)
if: ${{ matrix.compiler == 'msvc' }}
run:
cmake -DCMAKE_BUILD_TYPE=Release ${{matrix.extra_config}} -G"Visual Studio 16 2019" .
- name: Configure godot-cpp (Windows, mingw)
if: ${{ matrix.compiler == 'mingw' }}
run:
cmake -DCMAKE_BUILD_TYPE=Release ${{matrix.extra_config}} -G"Visual Studio 16 2019" .
- name: Build godot-cpp
run:
cmake --build . -j $(nproc) --verbose
# Configure and build test extension
- name: Configure godot-cpp/test (Linux)
if: ${{ matrix.runner == 'ubuntu-20.04' }}
run:
cd test && cmake -DCMAKE_BUILD_TYPE=Release -DGODOT_HEADERS_PATH="../godot-headers" -DCPP_BINDINGS_PATH=".." -GNinja .
- name: Configure godot-cpp/test (Windows)
if: ${{ matrix.compiler == 'msvc' }}
run:
cd test && cmake -DCMAKE_BUILD_TYPE=Release -DGODOT_HEADERS_PATH="../godot-headers" -DCPP_BINDINGS_PATH=".." -G"Visual Studio 16 2019" .
- name: Build godot-cpp/test
run: |
cmake --build . -j $(nproc) --verbose