|
33 | 33 |
|
34 | 34 | jobs:
|
35 | 35 |
|
36 |
| - # Calculate some useful variables that can be used through the workflow |
37 |
| - # Currently this can be used to exclude all but certain targets in matrices |
38 |
| - workflow_vars: |
39 |
| - runs-on: ubuntu-22.04 |
40 |
| - outputs: |
41 |
| - matrix_only_linux_x86_64_aarch64: ${{ steps.vars.outputs.matrix_only_linux_x86_64_aarch64 }} |
42 |
| - matrix_only_linux_x86_64: ${{ steps.vars.outputs.matrix_only_linux_x86_64 }} |
43 |
| - steps: |
44 |
| - - id: vars |
45 |
| - # TODO: If we expand on this, come up with a more programmatical way of doing only certain targets. |
46 |
| - # These variables are for excluding certain targets from the total list, which is why just including |
47 |
| - # two targets is a long list of excludes |
48 |
| - run: | |
49 |
| - echo matrix_only_linux_x86_64_aarch64="[ {\"target\": \"host_arm_linux\"}, {\"target\": \"host_riscv64_linux\"}, {\"target\": \"host_refsi_linux\"}, {\"target\": \"host_i686_linux\"}, {\"target\": \"host_x86_64_windows\"}]" >> $GITHUB_OUTPUT |
50 |
| - echo matrix_only_linux_x86_64="[ {\"target\": \"host_aarch64_linux\"}, {\"target\": \"host_riscv64_linux\"}, {\"target\": \"host_arm_linux\"}, {\"target\": \"host_refsi_linux\"}, {\"target\": \"host_i686_linux\"}, {\"target\": \"host_x86_64_windows\"}]" >> $GITHUB_OUTPUT |
51 |
| - cat $GITHUB_OUTPUT |
52 |
| -
|
53 |
| -
|
54 |
| - create_ock_artefacts: |
55 |
| - needs: [workflow_vars] |
56 |
| - strategy: |
57 |
| - matrix: |
58 |
| - target: ${{ fromJson(inputs.target_list) }} |
59 |
| - exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64_aarch64) }} |
60 |
| - |
61 |
| - # risc-v needs ubuntu 24.04 so we get the latest qemu as well as how we |
62 |
| - # build llvm. Otherwise we choose windows or ubuntu-22.04 depending on the |
63 |
| - # target. |
64 |
| - runs-on: ${{ (contains(matrix.target, 'host_riscv') && 'ubuntu-24.04') || (contains(matrix.target, 'windows') && 'windows-2019' || 'ubuntu-22.04' ) }} |
65 |
| - if : inputs.ock |
66 |
| - steps: |
67 |
| - - name: Checkout repo |
68 |
| - uses: actions/checkout@v4 |
69 |
| - - name: build ock artefact |
70 |
| - uses: ./.github/actions/do_build_ock_artefact |
71 |
| - with: |
72 |
| - target: ${{ matrix.target }} |
73 |
| - llvm_version: ${{ inputs.llvm_version }} |
74 |
| - |
75 |
| - build_icd: |
76 |
| - if: inputs.test_tornado || inputs.test_opencl_cts || inputs.test_sycl_cts |
77 |
| - needs: [workflow_vars] |
78 |
| - strategy: |
79 |
| - matrix: |
80 |
| - target: ${{ fromJson(inputs.target_list) }} |
81 |
| - exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64_aarch64) }} |
82 |
| - |
83 |
| - runs-on: ubuntu-22.04 |
84 |
| - steps: |
85 |
| - - name: clone ock platform |
86 |
| - uses: actions/checkout@v4 |
87 |
| - with: |
88 |
| - sparse-checkout: | |
89 |
| - platform |
90 |
| - .github |
91 |
| - - name : build and upload icd ${{matrix.target}} |
92 |
| - uses: ./.github/actions/do_build_icd |
93 |
| - with: |
94 |
| - target: ${{matrix.target}} |
95 |
| - |
96 |
| - |
97 |
| - # Currently only builds and runs on x86_64 linux |
98 |
| - build_run_tornado: |
99 |
| - if: inputs.test_tornado |
100 |
| - needs: [ workflow_vars, build_icd, create_ock_artefacts ] |
101 |
| - strategy: |
102 |
| - matrix: |
103 |
| - target: ${{ fromJson(inputs.target_list) }} |
104 |
| - exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64) }} |
105 |
| - |
106 |
| - # Todo: expand for aarch64 |
107 |
| - runs-on: ubuntu-22.04 |
108 |
| - steps: |
109 |
| - - name: clone ock platform |
110 |
| - uses: actions/checkout@v4 |
111 |
| - with: |
112 |
| - sparse-checkout: | |
113 |
| - platform |
114 |
| - .github |
115 |
| - # TODO: Consider separating out tornado build and run in the future |
116 |
| - - name : build and upload tornado |
117 |
| - uses: ./.github/actions/do_build_tornado |
118 |
| - with: |
119 |
| - target: ${{ matrix.target }} |
120 |
| - - name : run tornado |
121 |
| - uses: ./.github/actions/run_tornado |
122 |
| - with: |
123 |
| - target: ${{ matrix.target }} |
124 |
| - |
125 | 36 | # Currently only builds and runs (default: quick) on x86_64 linux
|
126 | 37 | build_run_opencl_cts:
|
127 | 38 | if: inputs.test_opencl_cts
|
@@ -152,56 +63,3 @@ jobs:
|
152 | 63 | uses: ./.github/actions/run_opencl_cts
|
153 | 64 | with:
|
154 | 65 | target: ${{ matrix.target }}
|
155 |
| - |
156 |
| - build_dpcpp_native_host: |
157 |
| - needs: [workflow_vars] |
158 |
| - strategy: |
159 |
| - matrix: |
160 |
| - target: ${{ fromJson(inputs.target_list) }} |
161 |
| - exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64) }} |
162 |
| - |
163 |
| - runs-on: ${{ contains(matrix.target, 'windows') && 'windows-2019' || 'ubuntu-22.04' }} |
164 |
| - if : inputs.test_sycl_cts |
165 |
| - steps: |
166 |
| - - name: Checkout repo |
167 |
| - uses: actions/checkout@v4 |
168 |
| - - name: build dpc++ artefact |
169 |
| - uses: ./.github/actions/do_build_dpcpp |
170 |
| - with: |
171 |
| - target: ${{ matrix.target }} |
172 |
| - |
173 |
| - build_sycl_cts: |
174 |
| - needs: [workflow_vars, build_icd, build_dpcpp_native_host] |
175 |
| - strategy: |
176 |
| - matrix: |
177 |
| - target: ${{ fromJson(inputs.target_list) }} |
178 |
| - # TODO: For now just linux x86_64 |
179 |
| - exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64) }} |
180 |
| - |
181 |
| - runs-on: 'ubuntu-22.04' |
182 |
| - if : inputs.test_sycl_cts |
183 |
| - steps: |
184 |
| - - name: Checkout repo |
185 |
| - uses: actions/checkout@v4 |
186 |
| - - name: build dpc++ artefact |
187 |
| - uses: ./.github/actions/do_build_sycl_cts |
188 |
| - with: |
189 |
| - target: ${{ matrix.target }} |
190 |
| - |
191 |
| - run_sycl_cts: |
192 |
| - needs: [workflow_vars, create_ock_artefacts, build_dpcpp_native_host, build_sycl_cts] |
193 |
| - strategy: |
194 |
| - matrix: |
195 |
| - target: ${{ fromJson(inputs.target_list) }} |
196 |
| - # TODO: For now just linux x86_64 |
197 |
| - exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64) }} |
198 |
| - |
199 |
| - runs-on: 'ubuntu-22.04' |
200 |
| - if : inputs.test_sycl_cts |
201 |
| - steps: |
202 |
| - - name: Checkout repo |
203 |
| - uses: actions/checkout@v4 |
204 |
| - - name: build dpc++ artefact |
205 |
| - uses: ./.github/actions/run_sycl_cts |
206 |
| - with: |
207 |
| - target: ${{ matrix.target }} |
0 commit comments