SDL
53 строки · 1.7 Кб
1name: 'Setup LoongArch64 toolchain'
2description: 'Download Linux LoongArch64 toolchain and set output variables'
3inputs:
4version:
5description: 'LoongArch64 version'
6default: '2022.09.06'
7outputs:
8prefix:
9description: "LoongArch toolchain prefix"
10value: ${{ steps.final.outputs.prefix }}
11cc:
12description: "LoongArch C compiler"
13value: ${{ steps.final.outputs.cc }}
14cxx:
15description: "LoongArch C++ compiler"
16value: ${{ steps.final.outputs.cxx }}
17runs:
18using: 'composite'
19steps:
20- uses: actions/cache/restore@v4
21id: restore-cache
22with:
23path: /opt/cross-tools
24key: loongarch64-${{ inputs.version }}
25
26- name: 'Download LoongArch64 gcc+glibc toolchain'
27if: ${{ !steps.restore-cache.outputs.cache-hit }}
28shell: bash
29run: |
30url="https://github.com/loongson/build-tools/releases/download/${{ inputs.version }}/loongarch64-clfs-6.3-cross-tools-gcc-glibc.tar.xz"
31
32wget "$url" -O /tmp/toolchain.tar.xz
33
34mkdir -p /opt
35tar -C /opt -x -f /tmp/toolchain.tar.xz
36
37- uses: actions/cache/save@v4
38if: ${{ !steps.restore-cache.outputs.cache-hit }}
39with:
40path: /opt/cross-tools
41key: loongarch64-${{ inputs.version }}
42- name: 'Set output vars'
43id: final
44shell: bash
45run: |
46prefix=/opt/cross-tools
47echo "prefix=${prefix}" >> $GITHUB_OUTPUT
48cc="${prefix}/bin/loongarch64-unknown-linux-gnu-gcc"
49cxx="${prefix}/bin/loongarch64-unknown-linux-gnu-g++"
50echo "cc=${cc}" >> $GITHUB_OUTPUT
51echo "cxx=${cxx}" >> $GITHUB_OUTPUT
52echo "LOONGARCH64_CC=${cc}" >>$GITHUB_ENV
53echo "LOONGARCH64_CXX=${cxx}" >>$GITHUB_ENV
54