Compare commits
7 Commits
2f326e5b6f
...
bc2c4a26ac
Author | SHA1 | Date |
---|---|---|
Serhii Snitsaruk | bc2c4a26ac | |
Serhii Snitsaruk | 83214fc93b | |
Serhii Snitsaruk | e062669cf7 | |
Serhii Snitsaruk | 2e94bf8bf2 | |
Serhii Snitsaruk | e8816091e6 | |
Serhii Snitsaruk | fc1b99a5b1 | |
Serhii Snitsaruk | 04300e5222 |
|
@ -0,0 +1,47 @@
|
||||||
|
name: Setup Linux toolchain
|
||||||
|
|
||||||
|
inputs:
|
||||||
|
arch:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
runs:
|
||||||
|
using: "composite"
|
||||||
|
steps:
|
||||||
|
- name: Set up environment
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
# ! Settings:
|
||||||
|
TOOLCHAIN_64_URL=https://downloads.tuxfamily.org/godotengine/toolchains/linux/2021-02-11/x86_64-godot-linux-gnu_sdk-buildroot.tar.bz2
|
||||||
|
TOOLCHAIN_64_SHA=16c8302fcb676c1f0fb9df73d6cff250ba1f4286
|
||||||
|
TOOLCHAIN_32_URL=https://downloads.tuxfamily.org/godotengine/toolchains/linux/2021-02-11/i686-godot-linux-gnu_sdk-buildroot.tar.bz2
|
||||||
|
TOOLCHAIN_32_SHA=6171652abc54ef219e5187bc53660ee4e2f796f4
|
||||||
|
# ! Export variables:
|
||||||
|
if [[ "${{ inputs.arch }}" == "x86_64" ]]; then
|
||||||
|
echo "TOOLCHAIN_URL=${TOOLCHAIN_64_URL}" >> "$GITHUB_ENV"
|
||||||
|
echo "TOOLCHAIN_SHA=${TOOLCHAIN_64_SHA}" >> "$GITHUB_ENV"
|
||||||
|
elif [[ "${{ inputs.arch }}" == "x86_32" ]]; then
|
||||||
|
echo "TOOLCHAIN_URL=${TOOLCHAIN_32_URL}" >> "$GITHUB_ENV"
|
||||||
|
echo "TOOLCHAIN_SHA=${TOOLCHAIN_32_SHA}" >> "$GITHUB_ENV"
|
||||||
|
fi
|
||||||
|
|
||||||
|
- name: Cache buildroot
|
||||||
|
id: cache-buildroot
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: buildroot
|
||||||
|
key: ${{env.TOOLCHAIN_SHA}}
|
||||||
|
|
||||||
|
- name: Set up buildroot
|
||||||
|
if: steps.cache-buildroot.outputs.cache-hit != 'true'
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
mkdir buildroot
|
||||||
|
wget ${TOOLCHAIN_URL} -O buildroot/buildroot.tar.bz2
|
||||||
|
cd buildroot
|
||||||
|
echo "${TOOLCHAIN_SHA} buildroot.tar.bz2"
|
||||||
|
echo "${TOOLCHAIN_SHA} buildroot.tar.bz2" | shasum --check
|
||||||
|
tar -xjf buildroot.tar.bz2 --strip-components=1
|
||||||
|
ls -l
|
||||||
|
rm buildroot.tar.bz2
|
||||||
|
./relocate-sdk.sh
|
||||||
|
cd ..
|
|
@ -36,6 +36,7 @@ env:
|
||||||
SCONSFLAGS: dev_build=no debug_symbols=no
|
SCONSFLAGS: dev_build=no debug_symbols=no
|
||||||
EM_VERSION: 3.1.45
|
EM_VERSION: 3.1.45
|
||||||
EM_CACHE_FOLDER: "emsdk-cache"
|
EM_CACHE_FOLDER: "emsdk-cache"
|
||||||
|
GODOT_VERSION: 4.2-stable
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
gdextension:
|
gdextension:
|
||||||
|
@ -132,25 +133,11 @@ jobs:
|
||||||
id: output-name-prefix
|
id: output-name-prefix
|
||||||
run: echo "name-prefix=${NAME_PREFIX}" >> $GITHUB_OUTPUT
|
run: echo "name-prefix=${NAME_PREFIX}" >> $GITHUB_OUTPUT
|
||||||
|
|
||||||
- name: Set up Linux buildroot x86_64
|
- name: Setup Linux toolchain
|
||||||
if: matrix.opts.platform == 'linux' && matrix.opts.arch == 'x86_64'
|
if: matrix.opts.platform == 'linux'
|
||||||
run: |
|
uses: ./limboai/.github/actions/setup-linux-toolchain
|
||||||
wget https://downloads.tuxfamily.org/godotengine/toolchains/linux/2021-02-11/x86_64-godot-linux-gnu_sdk-buildroot.tar.bz2
|
with:
|
||||||
tar -xjf x86_64-godot-linux-gnu_sdk-buildroot.tar.bz2
|
arch: ${{matrix.opts.arch}}
|
||||||
mv x86_64-godot-linux-gnu_sdk-buildroot buildroot
|
|
||||||
cd buildroot
|
|
||||||
./relocate-sdk.sh
|
|
||||||
cd ..
|
|
||||||
|
|
||||||
- name: Set up Linux buildroot x86_32
|
|
||||||
if: matrix.opts.platform == 'linux' && matrix.opts.arch == 'x86_32'
|
|
||||||
run: |
|
|
||||||
wget https://downloads.tuxfamily.org/godotengine/toolchains/linux/2021-02-11/i686-godot-linux-gnu_sdk-buildroot.tar.bz2
|
|
||||||
tar -xjf i686-godot-linux-gnu_sdk-buildroot.tar.bz2
|
|
||||||
mv i686-godot-linux-gnu_sdk-buildroot buildroot
|
|
||||||
cd buildroot
|
|
||||||
./relocate-sdk.sh
|
|
||||||
cd ..
|
|
||||||
|
|
||||||
- name: Set up Python 3.x
|
- name: Set up Python 3.x
|
||||||
if: matrix.opts.platform == 'windows' || matrix.opts.platform == 'macos'
|
if: matrix.opts.platform == 'windows' || matrix.opts.platform == 'macos'
|
||||||
|
@ -251,8 +238,8 @@ jobs:
|
||||||
name: ${{ env.NAME }}
|
name: ${{ env.NAME }}
|
||||||
path: out/*
|
path: out/*
|
||||||
|
|
||||||
merge-artifacts:
|
package-extension:
|
||||||
name: Merge artifacts
|
name: 📦 Package extension
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: gdextension
|
needs: gdextension
|
||||||
|
|
||||||
|
@ -263,3 +250,47 @@ jobs:
|
||||||
name: ${{needs.gdextension.outputs.name-prefix}}
|
name: ${{needs.gdextension.outputs.name-prefix}}
|
||||||
pattern: tmp-gdextension.*
|
pattern: tmp-gdextension.*
|
||||||
delete-merged: true
|
delete-merged: true
|
||||||
|
|
||||||
|
- name: Download artifact
|
||||||
|
uses: actions/download-artifact@v4
|
||||||
|
with:
|
||||||
|
name: ${{needs.gdextension.outputs.name-prefix}}
|
||||||
|
path: out/
|
||||||
|
|
||||||
|
- name: Setup Godot
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
echo "Downloading Godot ${GODOT_VERSION}"
|
||||||
|
mkdir bin
|
||||||
|
cd bin
|
||||||
|
wget "https://github.com/godotengine/godot/releases/download/${GODOT_VERSION}/Godot_v${GODOT_VERSION}_linux.x86_64.zip" -O godot.zip
|
||||||
|
unzip godot.zip
|
||||||
|
rm godot.zip
|
||||||
|
mv Godot_* godot
|
||||||
|
chmod u+x godot
|
||||||
|
ls -l
|
||||||
|
cd ..
|
||||||
|
./bin/godot --version
|
||||||
|
|
||||||
|
- name: Generate icon .import files
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
touch out/project.godot
|
||||||
|
timeout 20s ./bin/godot --headless --editor --path ./out/ || /bin/true
|
||||||
|
rm out/project.godot
|
||||||
|
rm -rf out/.godot/
|
||||||
|
|
||||||
|
- name: Change editor scale import settings
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
echo "--- Listing icons dir:"
|
||||||
|
ls out/addons/limboai/icons/
|
||||||
|
echo "--- (end of listing)"
|
||||||
|
sed -i 's|editor/scale_with_editor_scale=false|editor/scale_with_editor_scale=true|' out/addons/limboai/icons/*.import
|
||||||
|
|
||||||
|
- name: Upload artifact
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: ${{needs.gdextension.outputs.name-prefix}}
|
||||||
|
path: out/*
|
||||||
|
overwrite: true
|
||||||
|
|
|
@ -139,27 +139,10 @@ jobs:
|
||||||
# Inits GODOT_VERSION, LIMBOAI_VERSION and NAME_PREFIX environment variables.
|
# Inits GODOT_VERSION, LIMBOAI_VERSION and NAME_PREFIX environment variables.
|
||||||
- uses: ./modules/limboai/.github/actions/init-version
|
- uses: ./modules/limboai/.github/actions/init-version
|
||||||
|
|
||||||
# About sed see: https://github.com/godotengine/buildroot/issues/6
|
- name: Set up Linux toolchain
|
||||||
- name: Set up buildroot x86_64
|
uses: ./modules/limboai/.github/actions/setup-linux-toolchain
|
||||||
if: matrix.opts.arch == 'x86_64'
|
with:
|
||||||
run: |
|
arch: ${{matrix.opts.arch}}
|
||||||
wget https://download.tuxfamily.org/godotengine/toolchains/linux/x86_64-godot-linux-gnu_sdk-buildroot.tar.bz2
|
|
||||||
tar -xjf x86_64-godot-linux-gnu_sdk-buildroot.tar.bz2
|
|
||||||
mv x86_64-godot-linux-gnu_sdk-buildroot buildroot
|
|
||||||
cd buildroot
|
|
||||||
sed -i x86_64-godot-linux-gnu/sysroot/usr/lib/pkgconfig/dbus-1.pc -e "s@/lib@/lib64@g"
|
|
||||||
./relocate-sdk.sh
|
|
||||||
cd ..
|
|
||||||
|
|
||||||
- name: Set up buildroot x86_32
|
|
||||||
if: matrix.opts.arch == 'x86_32'
|
|
||||||
run: |
|
|
||||||
wget https://download.tuxfamily.org/godotengine/toolchains/linux/i686-godot-linux-gnu_sdk-buildroot.tar.bz2
|
|
||||||
tar -xjf i686-godot-linux-gnu_sdk-buildroot.tar.bz2
|
|
||||||
mv i686-godot-linux-gnu_sdk-buildroot buildroot
|
|
||||||
cd buildroot
|
|
||||||
./relocate-sdk.sh
|
|
||||||
cd ..
|
|
||||||
|
|
||||||
- name: Set up scons cache
|
- name: Set up scons cache
|
||||||
uses: actions/cache@v4
|
uses: actions/cache@v4
|
||||||
|
|
|
@ -52,16 +52,10 @@ jobs:
|
||||||
with:
|
with:
|
||||||
path: modules/limboai
|
path: modules/limboai
|
||||||
|
|
||||||
# About sed see: https://github.com/godotengine/buildroot/issues/6
|
- name: Set up Linux toolchain
|
||||||
- name: Set up buildroot x86_64
|
uses: ./modules/limboai/.github/actions/setup-linux-toolchain
|
||||||
run: |
|
with:
|
||||||
wget https://download.tuxfamily.org/godotengine/toolchains/linux/x86_64-godot-linux-gnu_sdk-buildroot.tar.bz2
|
arch: x86_64
|
||||||
tar -xjf x86_64-godot-linux-gnu_sdk-buildroot.tar.bz2
|
|
||||||
mv x86_64-godot-linux-gnu_sdk-buildroot buildroot
|
|
||||||
cd buildroot
|
|
||||||
sed -i x86_64-godot-linux-gnu/sysroot/usr/lib/pkgconfig/dbus-1.pc -e "s@/lib@/lib64@g"
|
|
||||||
./relocate-sdk.sh
|
|
||||||
cd ..
|
|
||||||
|
|
||||||
- name: Set up scons cache
|
- name: Set up scons cache
|
||||||
uses: actions/cache@v4
|
uses: actions/cache@v4
|
||||||
|
|
Loading…
Reference in New Issue