Skip to content

Commit

Permalink
Merge pull request #252 from limbonaut/gha-mingw-windows
Browse files Browse the repository at this point in the history
GHA: Improve Windows builds: MinGW/GCC with LTO, D3D12, ANGLE
  • Loading branch information
limbonaut authored Dec 1, 2024
2 parents ba90dea + 8b0b15f commit 6644f19
Show file tree
Hide file tree
Showing 8 changed files with 188 additions and 73 deletions.
5 changes: 4 additions & 1 deletion .github/actions/build-dotnet-assemblies/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ inputs:
- linuxbsd
- windows
- macos
bin:
required: true
type: string

runs:
using: "composite"
Expand All @@ -22,7 +25,7 @@ runs:
- name: Generate C# glue
shell: bash
run: |
./bin/${BIN} --headless --generate-mono-glue ./modules/mono/glue || true
./bin/${{inputs.bin}} --headless --generate-mono-glue ./modules/mono/glue || true
- name: Build .NET assemblies
shell: bash
Expand Down
19 changes: 10 additions & 9 deletions .github/workflows/android.yml
Original file line number Diff line number Diff line change
Expand Up @@ -165,15 +165,16 @@ jobs:
python --version
scons --version
- name: Set up scons cache
uses: actions/cache@v4
with:
path: ${{github.workspace}}/.scons_cache/
key: ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
restore-keys: |
${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}
${{env.BIN}}-${{inputs.godot-ref}}
# ! Note: we stopped using the scons cache in release builds.
# - name: Set up scons cache
# uses: actions/cache@v4
# with:
# path: ${{github.workspace}}/.scons_cache/
# key: ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
# restore-keys: |
# ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
# ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}
# ${{env.BIN}}-${{inputs.godot-ref}}

- name: Compilation
env:
Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/gdextension.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ on:
type: string
default: master
test-build:
description: Limit the number of test builds
description: Limit to pre-defined test builds
type: boolean
default: false
debug-symbols:
Expand All @@ -30,7 +30,7 @@ on:
type: string
default: master
test-build:
description: Limit the number of test builds
description: Limit to pre-defined test builds
type: boolean
default: false
debug-symbols:
Expand Down Expand Up @@ -285,6 +285,7 @@ jobs:
uses: ammaraskar/msvc-problem-matcher@master

- name: Set up scons cache
if: inputs.test-build # ! Only cache test/PR builds
uses: actions/cache@v4
with:
path: ${{github.workspace}}/.scons_cache/
Expand Down
19 changes: 10 additions & 9 deletions .github/workflows/ios.yml
Original file line number Diff line number Diff line change
Expand Up @@ -145,15 +145,16 @@ jobs:
rm -Rf /tmp/InstallVulkan.app
rm -f /tmp/vulkan-sdk.zip
- name: Set up scons cache
uses: actions/cache@v4
with:
path: ${{github.workspace}}/.scons_cache/
key: ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
restore-keys: |
${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}
${{env.BIN}}-${{inputs.godot-ref}}
# ! Note: we stopped using the scons cache in release builds.
# - name: Set up scons cache
# uses: actions/cache@v4
# with:
# path: ${{github.workspace}}/.scons_cache/
# key: ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
# restore-keys: |
# ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
# ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}
# ${{env.BIN}}-${{inputs.godot-ref}}

- name: Compilation
env:
Expand Down
6 changes: 4 additions & 2 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ on:
type: string
default: master
test-build:
description: Should we perform only a limited number of test builds?
description: Limit to pre-defined test builds
type: boolean
default: false

Expand All @@ -26,7 +26,7 @@ on:
type: string
default: master
test-build:
description: Should we perform only a limited number of test builds?
description: Limit to pre-defined test builds
type: boolean
default: false

Expand Down Expand Up @@ -227,6 +227,7 @@ jobs:
sudo apt-get install libwayland-dev
- name: Set up scons cache
if: inputs.test-build # ! Only cache test/PR builds
uses: actions/cache@v4
with:
path: ${{github.workspace}}/.scons_cache/
Expand All @@ -248,6 +249,7 @@ jobs:
uses: ./modules/limboai/.github/actions/build-dotnet-assemblies
with:
platform: linuxbsd
bin: ${{env.BIN}}

- name: Prepare artifact
env:
Expand Down
6 changes: 4 additions & 2 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ on:
type: string
default: master
test-build:
description: Should we perform only a limited number of test builds?
description: Limit to pre-defined test builds
type: boolean
default: false

Expand All @@ -26,7 +26,7 @@ on:
type: string
default: master
test-build:
description: Should we perform only a limited number of test builds?
description: Limit to pre-defined test builds
type: boolean
default: false

Expand Down Expand Up @@ -175,6 +175,7 @@ jobs:
rm -f /tmp/vulkan-sdk.zip
- name: Set up scons cache
if: inputs.test-build # ! Only cache test/PR builds
uses: actions/cache@v4
with:
path: ${{github.workspace}}/.scons_cache/
Expand All @@ -195,6 +196,7 @@ jobs:
uses: ./modules/limboai/.github/actions/build-dotnet-assemblies
with:
platform: macos
bin: ${{env.BIN}}

- name: Prepare artifact
run: |
Expand Down
19 changes: 10 additions & 9 deletions .github/workflows/web.yml
Original file line number Diff line number Diff line change
Expand Up @@ -120,15 +120,16 @@ jobs:
python --version
scons --version
- name: Set up scons cache
uses: actions/cache@v4
with:
path: ${{github.workspace}}/.scons_cache/
key: ${{env.CACHE_NAME}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
restore-keys: |
${{env.CACHE_NAME}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
${{env.CACHE_NAME}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}
${{env.CACHE_NAME}}-${{inputs.godot-ref}}
# ! Note: we stopped using the scons cache in release builds.
# - name: Set up scons cache
# uses: actions/cache@v4
# with:
# path: ${{github.workspace}}/.scons_cache/
# key: ${{env.CACHE_NAME}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
# restore-keys: |
# ${{env.CACHE_NAME}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
# ${{env.CACHE_NAME}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}
# ${{env.CACHE_NAME}}-${{inputs.godot-ref}}

- name: Compilation
env:
Expand Down
Loading

0 comments on commit 6644f19

Please sign in to comment.