mirror of
https://github.com/godotengine/godot-git-plugin.git
synced 2026-01-01 01:48:28 +03:00
- Enforce min CMake version targeted for libssh2 - Downgrade Xcode to 16.2 as that's the last version before upgrading to LLVM 19 which seems to break building libgit2's bundled zlib
99 lines
3.0 KiB
YAML
99 lines
3.0 KiB
YAML
name: C/C++ CI
|
|
|
|
on: [push, pull_request]
|
|
|
|
env:
|
|
# Only used for the cache key. Increment version to force clean build.
|
|
GODOT_BASE_BRANCH: master
|
|
SCONS_CACHE: ${{ github.workspace }}/.scons-cache/
|
|
|
|
jobs:
|
|
linux-x64:
|
|
runs-on: ubuntu-22.04
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
submodules: recursive
|
|
- name: Setup Godot build cache
|
|
uses: ./godot-cpp/.github/actions/godot-cache
|
|
with:
|
|
cache-name: linux-x86_64
|
|
continue-on-error: true
|
|
- name: Build for Linux editor x86_64
|
|
run: |
|
|
pip3 install scons
|
|
scons platform=linux arch=x86_64 target=editor generate_bindings=yes
|
|
ldd addons/godot-git-plugin/linux/*.so
|
|
- name: Prepare artifact
|
|
run: |
|
|
mkdir out
|
|
mv addons out/
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: libgit_plugin.linux.x86_64.editor.so-${{ github.sha }}
|
|
if-no-files-found: error
|
|
path: |
|
|
out/
|
|
|
|
windows-x64:
|
|
runs-on: windows-2022
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
submodules: recursive
|
|
- name: Setup Godot build cache
|
|
uses: ./godot-cpp/.github/actions/godot-cache
|
|
with:
|
|
cache-name: windows-x86_64
|
|
- uses: ilammy/msvc-dev-cmd@v1 # For dumpbin.
|
|
- uses: ilammy/setup-nasm@v1
|
|
- name: Build for Windows editor x86_64
|
|
shell: powershell
|
|
run: |
|
|
pip3 install scons
|
|
scons platform=windows arch=x86_64 target=editor generate_bindings=yes
|
|
dumpbin /dependents .\addons\godot-git-plugin\windows\*.dll
|
|
- name: Prepare artifact
|
|
shell: bash
|
|
run: |
|
|
# Not needed to use the plugin.
|
|
rm -f addons/godot-git-plugin/windows/*.{exp,lib}
|
|
mkdir out
|
|
mv addons out/
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: libgit_plugin.windows.x86_64.editor.dll-${{ github.sha }}
|
|
if-no-files-found: error
|
|
path: |
|
|
out/
|
|
|
|
macos-universal:
|
|
runs-on: macos-15
|
|
steps:
|
|
- name: Setup Xcode 16.2 (16.3+ incompatible with libgit2's zlib)
|
|
uses: maxim-lobanov/setup-xcode@v1
|
|
with:
|
|
xcode-version: '16.2'
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
submodules: recursive
|
|
- name: Setup Godot build cache
|
|
uses: ./godot-cpp/.github/actions/godot-cache
|
|
with:
|
|
cache-name: macos-universal
|
|
- name: Build for macOS editor universal
|
|
run: |
|
|
pip install scons
|
|
scons platform=macos arch=universal target=editor generate_bindings=yes macos_deployment_target=10.13
|
|
otool -L addons/godot-git-plugin/macos/*.dylib
|
|
- name: Prepare artifact
|
|
run: |
|
|
mkdir out
|
|
mv addons out/
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: libgit_plugin.macos.universal.editor.dylib-${{ github.sha }}
|
|
if-no-files-found: error
|
|
path: |
|
|
out/
|