@@ -13,41 +13,73 @@ jobs:
1313 ci-format :
1414 strategy :
1515 matrix :
16- os : [ubuntu-22.04 ]
16+ os : [ubuntu-latest ]
1717 # The type of runner that the job will run on
1818 runs-on : ${{ matrix.os }}
1919
2020 # Steps represent a sequence of tasks that will be executed as part of the job
2121 steps :
22- - uses : actions/checkout@v2
22+ - uses : actions/checkout@v4
2323 with :
2424 submodules : false # LVGL makefile manually installs the submodule
25+ show-progress : false
2526 - name : Disable wget progress output
2627 run : |
2728 echo "verbose = off" >> $HOME/.wgetrc
2829 - name : ci-format
2930 run : pushd examples; ./format_all.sh || exit; popd
3031
3132 ci-build :
33+ # Build on the newest-available OS with newest-available compilers and with
34+ # default compiler versions from the oldest current Ubuntu LTS
3235 strategy :
3336 matrix :
34- os : [ubuntu-22.04]
35- # The type of runner that the job will run on
37+ os : [ubuntu-latest, ubuntu-22.04]
3638 runs-on : ${{ matrix.os }}
3739
38- # Steps represent a sequence of tasks that will be executed as part of the job
3940 steps :
40- - uses : actions/checkout@v2
41+ # ##########################################
42+ # Install toolchains for ubuntu-latest
43+ - name : Install ARM toolchain (ubuntu latest)
44+ if : ${{ matrix.os == 'ubuntu-latest' }}
45+ uses : carlosperate/arm-none-eabi-gcc-action@v1
46+ with :
47+ release : ' latest'
48+ - name : Install RISC-V toolchain (ubuntu latest)
49+ if : ${{ matrix.os == 'ubuntu-latest' }}
50+ # Install latest RISC-V toolchains, uses xPack
51+ # https://xpack-dev-tools.github.io/
52+ run : |
53+ npm install --location=global xpm@latest
54+ xpm install --global @xpack-dev-tools/riscv-none-elf-gcc@latest
55+ tree -a "$HOME/.local/xPacks/@xpack-dev-tools/riscv-none-elf-gcc/" || echo "nope"
56+ echo "$HOME/.local/xPacks/@xpack-dev-tools/riscv-none-elf-gcc/14.2.0-3.1/.content/bin" >> "$GITHUB_PATH"
57+
58+ # ##########################################
59+ # Install toolchains for ubuntu LTS
60+ # Use apt to ensure we are matching 'out of the box' LTS
61+ - name : Install Toolchains
62+ if : ${{ matrix.os == 'ubuntu-22.04' }}
63+ run : sudo apt-get install -y gcc-arm-none-eabi gcc-riscv64-unknown-elf
64+
65+ # ##########################################
66+ # Report what toolchains are installed
67+ - name : report-toolchain-versions
68+ run : |
69+ arm-none-eabi-gcc --version
70+ riscv-none-elf-gcc --version || riscv64-unknown-elf-gcc --version
71+
72+ # ##########################################
73+ # libtock-c specific build steps begin here
74+ - uses : actions/checkout@v4
4175 with :
4276 submodules : recursive
43- - uses : carlosperate/arm-none-eabi-gcc-action@v1
44- - run : arm-none-eabi-gcc --version
45- - name : setup-riscv-toolchain
46- run : sudo apt-get install -y gcc-riscv64-unknown-elf
77+ show-progress : false
4778 - name : Disable wget progress output
4879 run : |
4980 echo "verbose = off" >> $HOME/.wgetrc
5081 - name : ci-build
5182 run : pushd examples; ./build_all.sh || exit; popd
5283 - name : ci-debug-build
5384 run : pushd examples/blink; make debug RAM_START=0x20004000 FLASH_INIT=0x30051 || exit; popd
85+
0 commit comments