From 9b7ee427db11f5101638830f6c9e7dfa84aa78a6 Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Mon, 31 Jul 2023 10:51:06 +0200 Subject: [PATCH 1/6] [godot] Add self-hosted macOS runner for debugging GH workflow. --- .github/workflows/spine-godot-v4.yml | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/.github/workflows/spine-godot-v4.yml b/.github/workflows/spine-godot-v4.yml index 9f2092ab2..4b8ff1d7e 100644 --- a/.github/workflows/spine-godot-v4.yml +++ b/.github/workflows/spine-godot-v4.yml @@ -114,6 +114,32 @@ jobs: name: ${{ format('{0}-{1}{2}.zip', 'godot-editor-macos', env.GODOT_TAG, env.GODOT_MONO_UPLOAD_SUFFIX) }} path: spine-godot/godot/bin/godot-editor-macos.zip + godot-editor-macos-self-hosted: + runs-on: Marios-MacBook-Pro + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Setup python and scons + uses: ./.github/actions/setup-godot-deps + + - name: Build Godot artifact + shell: bash + run: | + ./spine-godot/build/install-macos-vulkan-sdk.sh + ./spine-godot/build/setup.sh $GODOT_TAG false $GODOT_MONO + ./spine-godot/build/build-v4.sh $GODOT_MONO + pushd spine-godot/godot/bin + zip -r godot-editor-macos.zip Godot.app + popd + + - name: Upload artifacts + uses: actions/upload-artifact@v3 + with: + name: ${{ format('{0}-{1}{2}.zip', 'godot-editor-macos', env.GODOT_TAG, env.GODOT_MONO_UPLOAD_SUFFIX) }} + path: spine-godot/godot/bin/godot-editor-macos.zip + godot-template-ios: runs-on: macos-latest if: ${{ inputs.godot_mono == false }} From 254458a42150fef546b3727c5568d4acd6f02c54 Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Mon, 31 Jul 2023 10:55:13 +0200 Subject: [PATCH 2/6] [godot] Use self-hosted label instead of runner name. --- .github/workflows/spine-godot-v4.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/spine-godot-v4.yml b/.github/workflows/spine-godot-v4.yml index 4b8ff1d7e..b6a8d6c18 100644 --- a/.github/workflows/spine-godot-v4.yml +++ b/.github/workflows/spine-godot-v4.yml @@ -115,7 +115,7 @@ jobs: path: spine-godot/godot/bin/godot-editor-macos.zip godot-editor-macos-self-hosted: - runs-on: Marios-MacBook-Pro + runs-on: self-hosted steps: - uses: actions/checkout@v3 with: From 8c1504a949e247cd9d631e510ad9f723727cf86d Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Mon, 31 Jul 2023 10:58:42 +0200 Subject: [PATCH 3/6] [godot] Don't setup Godot dependencies on self-hosted runner. --- .github/workflows/spine-godot-v4.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/spine-godot-v4.yml b/.github/workflows/spine-godot-v4.yml index b6a8d6c18..f7e1f042c 100644 --- a/.github/workflows/spine-godot-v4.yml +++ b/.github/workflows/spine-godot-v4.yml @@ -121,8 +121,8 @@ jobs: with: fetch-depth: 0 - - name: Setup python and scons - uses: ./.github/actions/setup-godot-deps + #- name: Setup python and scons + # uses: ./.github/actions/setup-godot-deps - name: Build Godot artifact shell: bash From a0c986e2d1cb332b55adacc79343884444f60c21 Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Mon, 31 Jul 2023 11:13:58 +0200 Subject: [PATCH 4/6] [godot] Remove self-hosted runner. --- .github/workflows/spine-godot-v4.yml | 26 -------------------------- 1 file changed, 26 deletions(-) diff --git a/.github/workflows/spine-godot-v4.yml b/.github/workflows/spine-godot-v4.yml index f7e1f042c..9f2092ab2 100644 --- a/.github/workflows/spine-godot-v4.yml +++ b/.github/workflows/spine-godot-v4.yml @@ -114,32 +114,6 @@ jobs: name: ${{ format('{0}-{1}{2}.zip', 'godot-editor-macos', env.GODOT_TAG, env.GODOT_MONO_UPLOAD_SUFFIX) }} path: spine-godot/godot/bin/godot-editor-macos.zip - godot-editor-macos-self-hosted: - runs-on: self-hosted - steps: - - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - #- name: Setup python and scons - # uses: ./.github/actions/setup-godot-deps - - - name: Build Godot artifact - shell: bash - run: | - ./spine-godot/build/install-macos-vulkan-sdk.sh - ./spine-godot/build/setup.sh $GODOT_TAG false $GODOT_MONO - ./spine-godot/build/build-v4.sh $GODOT_MONO - pushd spine-godot/godot/bin - zip -r godot-editor-macos.zip Godot.app - popd - - - name: Upload artifacts - uses: actions/upload-artifact@v3 - with: - name: ${{ format('{0}-{1}{2}.zip', 'godot-editor-macos', env.GODOT_TAG, env.GODOT_MONO_UPLOAD_SUFFIX) }} - path: spine-godot/godot/bin/godot-editor-macos.zip - godot-template-ios: runs-on: macos-latest if: ${{ inputs.godot_mono == false }} From 3c40309c46f0817807e3be013c26d5fdc2613bc1 Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Mon, 31 Jul 2023 11:25:19 +0200 Subject: [PATCH 5/6] [godot] Fix v4 template build script with C# support. --- spine-godot/build/build-templates-v4.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/spine-godot/build/build-templates-v4.sh b/spine-godot/build/build-templates-v4.sh index cca85a79a..1695d0972 100755 --- a/spine-godot/build/build-templates-v4.sh +++ b/spine-godot/build/build-templates-v4.sh @@ -69,10 +69,10 @@ elif [ "$platform" = "macos" ]; then # --- macOS --- # generates macos.zip - scons platform=macos tools=no target=template_release arch=x86_64 custom_modules="../spine_godot" --jobs=$cpus - scons platform=macos tools=no target=template_debug arch=x86_64 custom_modules="../spine_godot" --jobs=$cpus - scons platform=macos tools=no target=template_release arch=arm64 custom_modules="../spine_godot" --jobs=$cpus - scons platform=macos tools=no target=template_debug arch=arm64 custom_modules="../spine_godot" --jobs=$cpus + scons platform=macos tools=no target=template_release arch=x86_64 custom_modules="../spine_godot" $mono_module --jobs=$cpus + scons platform=macos tools=no target=template_debug arch=x86_64 custom_modules="../spine_godot" $mono_module --jobs=$cpus + scons platform=macos tools=no target=template_release arch=arm64 custom_modules="../spine_godot" $mono_module --jobs=$cpus + scons platform=macos tools=no target=template_debug arch=arm64 custom_modules="../spine_godot" $mono_module --jobs=$cpus lipo -create "bin/godot.macos.template_release.x86_64$mono_extension" "bin/godot.macos.template_release.arm64$mono_extension" -output bin/godot.macos.universal lipo -create "bin/godot.macos.template_debug.x86_64$mono_extension" "bin/godot.macos.template_debug.arm64$mono_extension" -output bin/godot.macos.debug.universal strip -S -x bin/godot.macos.universal @@ -89,8 +89,8 @@ elif [ "$platform" = "macos" ]; then elif [ "$platform" = "linux" ]; then # --- Linux --- # generates linux_x11_64_release, linux_x11_64_debug - scons platform=linuxbsd tools=no target=template_release bits=64 custom_modules="../spine_godot" --jobs=$cpus - scons platform=linuxbsd tools=no target=template_debug bits=64 custom_modules="../spine_godot" --jobs=$cpus + scons platform=linuxbsd tools=no target=template_release bits=64 custom_modules="../spine_godot" $mono_module --jobs=$cpus + scons platform=linuxbsd tools=no target=template_debug bits=64 custom_modules="../spine_godot" $mono_module --jobs=$cpus strip bin/godot.linuxbsd.template_release.x86_64$mono_extension strip bin/godot.linuxbsd.template_debug.x86_64$mono_extension chmod a+x bin/godot.linuxbsd.template_release.x86_64$mono_extension From 61835faa788f8672aef8759cd8f8a8079bddd199 Mon Sep 17 00:00:00 2001 From: Mario Zechner Date: Mon, 31 Jul 2023 13:04:22 +0200 Subject: [PATCH 6/6] [godot] Fix runtime license header. --- .../spine_godot/SpineSkeletonFileResource.h | 54 +++++++++---------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/spine-godot/spine_godot/SpineSkeletonFileResource.h b/spine-godot/spine_godot/SpineSkeletonFileResource.h index e67da4c76..4fedd592e 100644 --- a/spine-godot/spine_godot/SpineSkeletonFileResource.h +++ b/spine-godot/spine_godot/SpineSkeletonFileResource.h @@ -1,31 +1,31 @@ /****************************************************************************** -* Spine Runtimes License Agreement -* Last updated January 1, 2020. Replaces all prior versions. -* -* Copyright (c) 2013-2020, Esoteric Software LLC -* -* Integration of the Spine Runtimes into software or otherwise creating -* derivative works of the Spine Runtimes is permitted under the terms and -* conditions of Section 2 of the Spine Editor License Agreement: -* http://esotericsoftware.com/spine-editor-license -* -* Otherwise, it is permitted to integrate the Spine Runtimes into software -* or otherwise create derivative works of the Spine Runtimes (collectively, -* "Products"), provided that each user of the Products must obtain their own -* Spine Editor license and redistribution of the Products in any form must -* include this license and copyright notice. -* -* THE SPINE RUNTIMES ARE PROVIDED BY ESOTERIC SOFTWARE LLC "AS IS" AND ANY -* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -* DISCLAIMED. IN NO EVENT SHALL ESOTERIC SOFTWARE LLC BE LIABLE FOR ANY -* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, -* BUSINESS INTERRUPTION, OR LOSS OF USE, DATA, OR PROFITS) HOWEVER CAUSED AND -* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -* THE SPINE RUNTIMES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*****************************************************************************/ + * Spine Runtimes License Agreement + * Last updated July 28, 2023. Replaces all prior versions. + * + * Copyright (c) 2013-2023, Esoteric Software LLC + * + * Integration of the Spine Runtimes into software or otherwise creating + * derivative works of the Spine Runtimes is permitted under the terms and + * conditions of Section 2 of the Spine Editor License Agreement: + * http://esotericsoftware.com/spine-editor-license + * + * Otherwise, it is permitted to integrate the Spine Runtimes into software or + * otherwise create derivative works of the Spine Runtimes (collectively, + * "Products"), provided that each user of the Products must obtain their own + * Spine Editor license and redistribution of the Products in any form must + * include this license and copyright notice. + * + * THE SPINE RUNTIMES ARE PROVIDED BY ESOTERIC SOFTWARE LLC "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL ESOTERIC SOFTWARE LLC BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, + * BUSINESS INTERRUPTION, OR LOSS OF USE, DATA, OR PROFITS) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THE + * SPINE RUNTIMES, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + *****************************************************************************/ #pragma once