name: Setup Linux toolchain inputs: arch: required: true runs: using: "composite" steps: - name: Set up environment shell: bash run: | # ! Settings: TOOLCHAIN_64_URL=https://github.com/godotengine/buildroot/releases/download/godot-2020.11.x-2/x86_64-godot-linux-gnu_sdk-buildroot.tar.bz2 TOOLCHAIN_64_SHA=16c8302fcb676c1f0fb9df73d6cff250ba1f4286 TOOLCHAIN_32_URL=https://github.com/godotengine/buildroot/releases/download/godot-2020.11.x-2/i686-godot-linux-gnu_sdk-buildroot.tar.bz2 TOOLCHAIN_32_SHA=6171652abc54ef219e5187bc53660ee4e2f796f4 TOOLCHAIN_ARM64_URL=https://github.com/godotengine/buildroot/releases/download/godot-2023.08.x-3/aarch64-godot-linux-gnu_sdk-buildroot.tar.bz2 TOOLCHAIN_ARM64_SHA=73bed3d26b92c8b9a93c0ceb6bcce8fe567d1764 TOOLCHAIN_ARM32_URL=https://github.com/godotengine/buildroot/releases/download/godot-2023.08.x-3/arm-godot-linux-gnueabihf_sdk-buildroot.tar.bz2 TOOLCHAIN_ARM32_SHA=aa5853fd73faec3837c6127649471275d7e61cb2 # ! 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" elif [[ "${{ inputs.arch }}" == "arm64" ]]; then echo "TOOLCHAIN_URL=${TOOLCHAIN_ARM64_URL}" >> "$GITHUB_ENV" echo "TOOLCHAIN_SHA=${TOOLCHAIN_ARM64_SHA}" >> "$GITHUB_ENV" elif [[ "${{ inputs.arch }}" == "arm32" ]]; then echo "TOOLCHAIN_URL=${TOOLCHAIN_ARM32_URL}" >> "$GITHUB_ENV" echo "TOOLCHAIN_SHA=${TOOLCHAIN_ARM32_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 ..