@@ -13,41 +13,73 @@ jobs:
13
13
ci-format :
14
14
strategy :
15
15
matrix :
16
- os : [ubuntu-22.04 ]
16
+ os : [ubuntu-latest ]
17
17
# The type of runner that the job will run on
18
18
runs-on : ${{ matrix.os }}
19
19
20
20
# Steps represent a sequence of tasks that will be executed as part of the job
21
21
steps :
22
- - uses : actions/checkout@v2
22
+ - uses : actions/checkout@v4
23
23
with :
24
24
submodules : false # LVGL makefile manually installs the submodule
25
+ show-progress : false
25
26
- name : Disable wget progress output
26
27
run : |
27
28
echo "verbose = off" >> $HOME/.wgetrc
28
29
- name : ci-format
29
30
run : pushd examples; ./format_all.sh || exit; popd
30
31
31
32
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
32
35
strategy :
33
36
matrix :
34
- os : [ubuntu-22.04]
35
- # The type of runner that the job will run on
37
+ os : [ubuntu-latest, ubuntu-22.04]
36
38
runs-on : ${{ matrix.os }}
37
39
38
- # Steps represent a sequence of tasks that will be executed as part of the job
39
40
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
41
75
with :
42
76
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
47
78
- name : Disable wget progress output
48
79
run : |
49
80
echo "verbose = off" >> $HOME/.wgetrc
50
81
- name : ci-build
51
82
run : pushd examples; ./build_all.sh || exit; popd
52
83
- name : ci-debug-build
53
84
run : pushd examples/blink; make debug RAM_START=0x20004000 FLASH_INIT=0x30051 || exit; popd
85
+
0 commit comments