GHA: Action that downloads & caches Linux toolchain
TuxFamily is often down lately, maybe caching could help.
This commit is contained in:
parent
04300e5222
commit
ca6d214345
|
@ -0,0 +1,41 @@
|
||||||
|
name: Setup Linux toolchain
|
||||||
|
|
||||||
|
inputs:
|
||||||
|
arch:
|
||||||
|
required: true
|
||||||
|
|
||||||
|
runs:
|
||||||
|
using: "composite"
|
||||||
|
steps:
|
||||||
|
- name: Set TOOLCHAIN_URL (x86_64)
|
||||||
|
if: inputs.arch == 'x86_64'
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
echo "TOOLCHAIN_URL=https://downloads.tuxfamily.org/godotengine/toolchains/linux/2021-02-11/x86_64-godot-linux-gnu_sdk-buildroot.tar.bz2" >> "$GITHUB_ENV"
|
||||||
|
|
||||||
|
- name: Set TOOLCHAIN_URL (x86_32)
|
||||||
|
if: inputs.arch == 'x86_32'
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
echo "TOOLCHAIN_URL=https://downloads.tuxfamily.org/godotengine/toolchains/linux/2021-02-11/i686-godot-linux-gnu_sdk-buildroot.tar.bz2" >> "$GITHUB_ENV"
|
||||||
|
|
||||||
|
- name: Cache buildroot
|
||||||
|
id: cache-buildroot
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: buildroot
|
||||||
|
key: ${{env.TOOLCHAIN_URL}}
|
||||||
|
|
||||||
|
- 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
|
||||||
|
tar -xjf buildroot.tar.bz2
|
||||||
|
ls -l
|
||||||
|
rm buildroot.tar.bz2
|
||||||
|
cd buildroot
|
||||||
|
./relocate-sdk.sh
|
||||||
|
cd ..
|
|
@ -109,6 +109,7 @@ jobs:
|
||||||
|
|
||||||
env:
|
env:
|
||||||
BIN: liblimboai.${{matrix.opts.platform}}.${{matrix.opts.target}}.${{matrix.opts.arch}}
|
BIN: liblimboai.${{matrix.opts.platform}}.${{matrix.opts.target}}.${{matrix.opts.arch}}
|
||||||
|
TOOLCHAIN_URL:
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Clone godot-cpp
|
- name: Clone godot-cpp
|
||||||
|
@ -133,25 +134,31 @@ 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
|
# - name: Set up Linux buildroot x86_64
|
||||||
if: matrix.opts.platform == 'linux' && matrix.opts.arch == 'x86_32'
|
# if: matrix.opts.platform == 'linux' && matrix.opts.arch == 'x86_64'
|
||||||
run: |
|
# run: |
|
||||||
wget https://downloads.tuxfamily.org/godotengine/toolchains/linux/2021-02-11/i686-godot-linux-gnu_sdk-buildroot.tar.bz2
|
# wget https://downloads.tuxfamily.org/godotengine/toolchains/linux/2021-02-11/x86_64-godot-linux-gnu_sdk-buildroot.tar.bz2
|
||||||
tar -xjf i686-godot-linux-gnu_sdk-buildroot.tar.bz2
|
# tar -xjf x86_64-godot-linux-gnu_sdk-buildroot.tar.bz2
|
||||||
mv i686-godot-linux-gnu_sdk-buildroot buildroot
|
# mv x86_64-godot-linux-gnu_sdk-buildroot buildroot
|
||||||
cd buildroot
|
# cd buildroot
|
||||||
./relocate-sdk.sh
|
# ./relocate-sdk.sh
|
||||||
cd ..
|
# 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'
|
||||||
|
|
|
@ -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