From ae16937f45a4d339d579294b7b53e84beec4749e Mon Sep 17 00:00:00 2001 From: Spartan322 Date: Fri, 7 Jul 2023 12:26:54 -0400 Subject: Add scons-cache support for extension build Copies how Godot handles scons-cache Add openvic-build action Add openvic-cache action Add mingw-cache action Add verbose and progress Scons options to SConstruct This is completely based on how Godot implemented caching with Scons --- .github/workflows/builds.yml | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to '.github/workflows') diff --git a/.github/workflows/builds.yml b/.github/workflows/builds.yml index 79f04aa..9944a9c 100644 --- a/.github/workflows/builds.yml +++ b/.github/workflows/builds.yml @@ -7,6 +7,7 @@ env: GODOT_VERSION_PREFIX: Godot_v GODOT_VERSION_SUFFIX: stable GODOT_VERSION: 4.1 + OPENVIC_BASE_BRANCH: master concurrency: group: ci-${{github.actor}}-${{github.head_ref || github.run_number}}-${{github.ref}}-macos @@ -67,6 +68,12 @@ jobs: with: submodules: recursive + - name: Setup OpenVic build cache + uses: ./.github/actions/openvic-cache + with: + cache-name: ${{ matrix.identifier }} + continue-on-error: true + - name: Setup Environment uses: ./.github/actions/openvic-env @@ -94,12 +101,14 @@ jobs: - name: Setup MinGW for Windows/MinGW build if: ${{ matrix.platform == 'windows' }} - uses: egor-tensin/setup-mingw@v2 + uses: ./.github/actions/mingw-cache - name: Compile Extension - shell: sh - run: | - scons target='${{ matrix.target }}' platform='${{ matrix.platform }}' arch='${{ matrix.arch }}' + uses: ./.github/actions/openvic-build + with: + platform: ${{ matrix.platform }} + target: ${{ matrix.target }} + sconsflags: arch=${{ matrix.arch }} - name: Delete compilation files if: ${{ matrix.platform == 'windows' }} -- cgit v1.2.3-56-ga3b1