37
37
outputs :
38
38
json : ${{ steps.set-matrix-json.outputs.matrix }}
39
39
steps :
40
- - name : Setup Python
41
- uses : actions/setup-python@v5
42
- with :
43
- python-version : ' 3.x'
44
-
45
40
- name : Checkout TinyUSB
46
41
uses : actions/checkout@v4
47
42
@@ -63,27 +58,22 @@ jobs:
63
58
matrix :
64
59
toolchain :
65
60
- ' aarch64-gcc'
66
- - ' arm-clang'
61
+ # - 'arm-clang'
67
62
- ' arm-gcc'
68
63
- ' msp430-gcc'
69
64
- ' riscv-gcc'
70
- if : >-
71
- matrix.toolchain != 'arm-clang' ||
72
- github.event_name == 'pull_request' ||
73
- (github.event_name == 'push' && github.ref == 'refs/heads/master')
74
65
with :
75
66
build-system : ' cmake'
76
67
toolchain : ${{ matrix.toolchain }}
77
68
toolchain_url : ${{ fromJSON(needs.set-matrix.outputs.json)[matrix.toolchain].toolchain_url }}
78
69
build-args : ${{ toJSON(fromJSON(needs.set-matrix.outputs.json)[matrix.toolchain].family) }}
70
+ one-per-family : ${{ github.event_name != 'pull_request' }}
79
71
80
72
# ---------------------------------------
81
73
# Build Make
82
74
# ---------------------------------------
83
75
make :
84
- if : >-
85
- github.event_name == 'pull_request' ||
86
- (github.event_name == 'push' && github.ref == 'refs/heads/master')
76
+ # if: github.event_name == 'pull_request'
87
77
needs : set-matrix
88
78
uses : ./.github/workflows/build_util.yml
89
79
strategy :
100
90
toolchain : ${{ matrix.toolchain }}
101
91
toolchain_url : ${{ fromJSON(needs.set-matrix.outputs.json)[matrix.toolchain].toolchain_url }}
102
92
build-args : ${{ toJSON(fromJSON(needs.set-matrix.outputs.json)[matrix.toolchain].family) }}
93
+ one-per-family : ${{ github.event_name != 'pull_request' }}
103
94
104
95
# ---------------------------------------
105
96
# Build Make on Windows/MacOS
@@ -114,7 +105,8 @@ jobs:
114
105
os : ${{ matrix.os }}
115
106
build-system : ' make'
116
107
toolchain : ' arm-gcc'
117
- build-args : ' ["-bstm32f411disco"]'
108
+ build-args : ' ["stm32h7"]'
109
+ one-per-family : true
118
110
119
111
# ---------------------------------------
120
112
# Build Espressif
@@ -134,3 +126,33 @@ jobs:
134
126
toolchain : ' esp-idf'
135
127
toolchain_url : ' v5.1.1'
136
128
build-args : ' ["-b${{ matrix.board }}"]'
129
+
130
+ # ---------------------------------------
131
+ # Build IAR on HFP self-hosted
132
+ # ---------------------------------------
133
+ arm-iar :
134
+ if : github.repository_owner == 'hathach'
135
+ needs : set-matrix
136
+ runs-on : [self-hosted, Linux, X64, hifiphile]
137
+ env :
138
+ BUILD_ARGS : ${{ join(fromJSON(needs.set-matrix.outputs.json)['arm-iar'].family, ' ') }}
139
+ steps :
140
+ - name : Clean workspace
141
+ run : |
142
+ echo "Cleaning up previous run"
143
+ rm -rf "${{ github.workspace }}"
144
+ mkdir -p "${{ github.workspace }}"
145
+
146
+ - name : Checkout TinyUSB
147
+ uses : actions/checkout@v4
148
+
149
+ - name : Get Dependencies
150
+ run : python3 tools/get_deps.py $BUILD_ARGS
151
+
152
+ - name : Build
153
+ run : python3 tools/build.py --one-per-family --toolchain iar $BUILD_ARGS
154
+
155
+ - name : Test on actual hardware (hardware in the loop)
156
+ if : github.event_name == 'pull_request'
157
+ run : |
158
+ python3 test/hil/hil_test.py hfp.json
0 commit comments