builds godot
Diffstat (limited to '.github/workflows/reusable-build.yml')
-rw-r--r--.github/workflows/reusable-build.yml90
1 files changed, 47 insertions, 43 deletions
diff --git a/.github/workflows/reusable-build.yml b/.github/workflows/reusable-build.yml
index 97afc25..20d7b61 100644
--- a/.github/workflows/reusable-build.yml
+++ b/.github/workflows/reusable-build.yml
@@ -36,7 +36,7 @@ jobs:
runs-on: ubuntu-20.04
strategy:
matrix:
- target: [release, release_debug]
+ target: [template_release, template_debug]
bits: [64]
steps:
- name: Compilation
@@ -44,17 +44,17 @@ jobs:
with:
target: ${{ matrix.target }}
flags: bits=${{ matrix.bits }} ${{ env.flags }}
- platform: x11
+ platform: linuxbsd
- name: Upload artifact
uses: bend-n/godot-builds/.github/actions/upload-artifact@main
with:
- path: godot/bin/*.64
+ path: godot/bin/*.x86_64
windows:
strategy:
matrix:
- target: [release, release_debug]
+ target: [template_release, template_debug]
bits: [64]
name: Win temps
runs-on: windows-latest
@@ -76,7 +76,7 @@ jobs:
runs-on: ubuntu-20.04
strategy:
matrix:
- target: [release, release_debug]
+ target: [template_release, template_debug]
steps:
- name: Set up Java 11
uses: actions/setup-java@v3
@@ -111,11 +111,23 @@ jobs:
macos:
strategy:
matrix:
- target: [release, release_debug]
+ target: [template_release, template_debug]
- name: MacOS temps
+ name: macOS temps
runs-on: macos-latest
steps:
+ - name: Install MoltenVK
+ run: |
+ #https://github.com/godotengine/godot/blob/0ff8742919af72c7412e63ef0f646cb4e7bd7d8f/misc/scripts/install_vulkan_sdk_macos.sh
+ set -euo pipefail
+ IFS=$'\n\t'
+ curl -L "https://sdk.lunarg.com/sdk/download/latest/mac/vulkan-sdk.dmg" -o /tmp/vulkan-sdk.dmg
+ hdiutil attach /tmp/vulkan-sdk.dmg -mountpoint /Volumes/vulkan-sdk
+ /Volumes/vulkan-sdk/InstallVulkan.app/Contents/MacOS/InstallVulkan \
+ --accept-licenses --default-answer --confirm-command install
+ hdiutil detach /Volumes/vulkan-sdk
+ rm -f /tmp/vulkan-sdk.dmg
+
- name: Compilation(x86_64)
uses: bend-n/godot-builds/.github/actions/build-godot@main
with:
@@ -134,40 +146,39 @@ jobs:
run: |
[[ "${{ matrix.target }}" == *"debug"* ]] && target='.debug'
cd godot
- intel=bin/godot.osx.*.x86_64
- arm=bin/godot.osx.*.arm64
- lipo -create $intel $arm -output "bin/godot.osx.opt$target.universal"
- strip "bin/godot.osx.opt$target.universal"
+ intel=bin/godot.macos.*.x86_64
+ arm=bin/godot.macos.*.arm64
+ lipo -create $intel $arm -output "bin/godot.macos.opt$target.universal"
+ strip "bin/godot.macos.opt$target.universal"
- name: Upload artifact
uses: bend-n/godot-builds/.github/actions/upload-artifact@main
with:
path: godot/bin/*.universal
- javascript:
+ web:
strategy:
matrix:
- target: [release, release_debug]
- flags: [gdnative_enabled=yes, threads_enabled=yes, ""]
+ target: [template_release, template_debug]
+ flags: [dlink_enabled=yes, ""]
name: JS temps
runs-on: ubuntu-20.04
steps:
- - name: Set up Emscripten 3.1.10
+ - name: Set up Emscripten 3.1.18
uses: mymindstorm/setup-emsdk@v11
with:
- version: 3.1.10
+ version: 3.1.18
- name: Verify Emscripten setup
- run: |
- emcc -v
+ run: emcc -v
- name: Compilation
uses: bend-n/godot-builds/.github/actions/build-godot@main
with:
target: ${{ matrix.target }}
flags: ${{ env.flags }} ${{ matrix.flags }}
- platform: javascript
+ platform: web
- name: Upload artifact
uses: bend-n/godot-builds/.github/actions/upload-artifact@main
@@ -175,7 +186,7 @@ jobs:
path: godot/bin/*.zip
templates:
- needs: [javascript, macos, windows, linux, android]
+ needs: [web, macos, windows, linux, android]
name: Bundle all templates
runs-on: ubuntu-latest
env:
@@ -188,9 +199,10 @@ jobs:
run: |
mkdir -vp ${tmps}
git clone --depth 1 'https://github.com/godotengine/godot' -b 3.x godot-repo
+ ls -R
echo "Preparing linux"
- mv linux/godot.x11.opt.64 ${tmps}/linux_x11_64_release
- mv linux/godot.x11.opt.debug.64 ${tmps}/linux_x11_64_debug
+ mv linux/godot.linuxbsd.opt.64 ${tmps}/linux_linuxbsd_64_release
+ mv linux/godot.linuxbsd.opt.debug.64 ${tmps}/linux_linuxbsd_64_debug
echo "Preparing windows"
mv windows/godot.windows.opt.64.exe ${tmps}/windows_64_release.exe
@@ -203,18 +215,16 @@ jobs:
echo "Preparing macos"
cp -r godot-repo/misc/dist/osx_template.app .
mkdir -p osx_template.app/Contents/MacOS
- cp macos/godot.osx.opt.universal osx_template.app/Contents/MacOS/godot_osx_release.64
- cp macos/godot.osx.opt.debug.universal osx_template.app/Contents/MacOS/godot_osx_debug.64
+ cp macos/godot.macos.opt.universal osx_template.app/Contents/MacOS/godot_osx_release.64
+ cp macos/godot.macos.opt.debug.universal osx_template.app/Contents/MacOS/godot_osx_debug.64
chmod +x osx_template.app/Contents/MacOS/godot_osx_*.64
zip -q -9 -r ${tmps}/osx.zip osx_template.app
echo "Preparing web"
- mv javascript/godot.javascript.opt.zip ${tmps}/webassembly_release.zip
- mv javascript/godot.javascript.opt.debug.zip ${tmps}/webassembly_debug.zip
- mv javascript/godot.javascript.opt.threads.zip ${tmps}/webassembly_threads_release.zip
- mv javascript/godot.javascript.opt.debug.threads.zip ${tmps}/webassembly_threads_debug.zip
- mv javascript/godot.javascript.opt.gdnative.zip ${tmps}/webassembly_gdnative_release.zip
- mv javascript/godot.javascript.opt.debug.gdnative.zip ${tmps}/webassembly_gdnative_debug.zip
+ mv web/godot.web.opt.zip ${tmps}/web_release.zip
+ mv web/godot.web.opt.debug.zip ${tmps}/web_debug.zip
+ mv web/godot.web.opt.dlink.zip ${tmps}/web_dlink_release.zip
+ mv web/godot.web.opt.debug.dlink.zip ${tmps}/web_dlink_debug.zip
- name: Prepare bundle
run: "cd ${tmps} && zip -q -9 -r templates.tpz ./*"
@@ -224,33 +234,27 @@ jobs:
with:
path: ${{ env.tmps }}/templates.tpz
- tools:
- strategy:
- matrix:
- platform: [server, x11]
-
+ editor:
name: Linux tools
runs-on: ubuntu-20.04
steps:
- name: Compilation
uses: bend-n/godot-builds/.github/actions/build-godot@main
with:
- platform: ${{ matrix.platform }}
- target: release_debug
- env:
- tools: yes
+ platform: linuxbsd
+ target: editor
- name: Upload artifact
uses: bend-n/godot-builds/.github/actions/upload-artifact@main
with:
- name: ${{ matrix.platform }}-tools-release
- path: godot/bin/*.64
+ name: linuxbsd-editor-release
+ path: godot/bin/*.x86_64
image:
permissions: write-all
name: Docker image
runs-on: ubuntu-latest
- needs: [tools, templates]
+ needs: [editor, templates]
steps:
- uses: bend-n/godot-builds/.github/actions/build-upload-image@main
with:
@@ -260,7 +264,7 @@ jobs:
release:
name: Create/update a release
runs-on: ubuntu-latest
- needs: [tools, templates]
+ needs: [editor, templates]
steps:
- uses: bend-n/godot-builds/.github/actions/release@main
with: