@@ -23,10 +23,12 @@ variables:
2323 LLVM_GCC_TESTSUITE_REF : " release_universal_clang_toolchain"
2424 # TODO: update var below to tags names after related branches are merged in those repos
2525 # XTENSA_CLANG_TOOLCHAIN_REF: "release_universal_clang_toolchain"
26- XTENSA_CLANG_TOOLCHAIN_REF : " build_macos_arm64 "
26+ XTENSA_CLANG_TOOLCHAIN_REF : " universal_toolchain/build_linux_arm64 "
2727
28- PLATFORM_NAME_LINUX_ARM64 : " linux-arm64 "
28+ CROSS_ARM_IMAGE : $CI_DOCKER_REGISTRY/llvm-build-cross-arm:1
2929 PLATFORM_NAME_LINUX : " linux-amd64"
30+ PLATFORM_NAME_LINUX_ARMHF : " linux-armhf"
31+ PLATFORM_NAME_LINUX_ARM64 : " linux-arm64"
3032 PLATFORM_NAME_WIN : " win64"
3133 PLATFORM_NAME_MACOS : " macos"
3234 PLATFORM_NAME_MACOS_ARM64 : " macos-arm64"
@@ -171,7 +173,7 @@ before_script:
171173 # Do not run unit tests for cross-builds.
172174 # Run as non-root user because permission tests fail when run by root.
173175 - if [ "${CONF_HOST}" == "${BUILD_HOST}" ]; then
174- export LLVM_BUILD_PATH=${LLVM_PROJECT_PATH}/llvm/build-Release- ${CONF_HOST};
176+ export LLVM_BUILD_PATH=${LLVM_PROJECT_PATH}/llvm/build-${CONF_HOST}-Release ;
175177 echo "Run unit tests for native build in ${LLVM_BUILD_PATH}";
176178 useradd -m test_runner;
177179 chown -R test_runner ${LLVM_BUILD_PATH};
@@ -184,16 +186,34 @@ before_script:
184186 - *package_toolchain
185187 - popd
186188
187- build_x86_64-linux-gnu :
189+ .build_linux-gnu_template :
188190 extends : .build_template
189191 variables :
190- CONF_HOST : " x86_64-linux-gnu"
191- PLATFORM_NAME : " ${PLATFORM_NAME_LINUX}"
192192 ARCHIVE_TOOL : " ${ARCHIVE_TOOL_LINUX}"
193193 UNARCHIVE_TOOL : " ${UNARCHIVE_TOOL_LINUX}"
194194 ARCHIVE_EXT : " ${ARCHIVE_EXT_LINUX}"
195195 BUILD_TOOLCHAIN_CMD : " ./build-toolchain.sh"
196196
197+ build_x86_64-linux-gnu :
198+ extends : .build_linux-gnu_template
199+ variables :
200+ CONF_HOST : " x86_64-linux-gnu"
201+ PLATFORM_NAME : " ${PLATFORM_NAME_LINUX}"
202+
203+ build_arm-linux-gnueabihf :
204+ extends : .build_linux-gnu_template
205+ image : ${CROSS_ARM_IMAGE}
206+ variables :
207+ CONF_HOST : " arm-linux-gnueabihf"
208+ PLATFORM_NAME : " ${PLATFORM_NAME_LINUX_ARMHF}"
209+
210+ build_aarch64-linux-gnu :
211+ extends : .build_linux-gnu_template
212+ image : ${CROSS_ARM_IMAGE}
213+ variables :
214+ CONF_HOST : " aarch64-linux-gnu"
215+ PLATFORM_NAME : " ${PLATFORM_NAME_LINUX_ARM64}"
216+
197217build_x86_64-w64-mingw32 :
198218 extends : .build_template
199219 needs :
@@ -228,20 +248,19 @@ build_x86_64-w64-mingw32:
228248 ARCHIVE_TOOL : " ${ARCHIVE_TOOL_MACOS}"
229249 UNARCHIVE_TOOL : " ${UNARCHIVE_TOOL_MACOS}"
230250 ARCHIVE_EXT : " ${ARCHIVE_EXT_MACOS}"
251+ BUILD_TOOLCHAIN_CMD : " ./build-toolchain.sh"
231252
232253build_x86_64-apple-darwin :
233254 extends : .build_apple-darwin_template
234255 variables :
235256 CONF_HOST : " x86_64-apple-darwin21.1"
236257 PLATFORM_NAME : " ${PLATFORM_NAME_MACOS}"
237- BUILD_TOOLCHAIN_CMD : " ./build-toolchain-macos.sh --host-arch=x86_64"
238258
239259build_aarch64-apple-darwin :
240260 extends : .build_apple-darwin_template
241261 variables :
242262 CONF_HOST : " aarch64-apple-darwin21.1"
243263 PLATFORM_NAME : " ${PLATFORM_NAME_MACOS_ARM64}"
244- BUILD_TOOLCHAIN_CMD : " ./build-toolchain-macos.sh --host-arch=aarch64"
245264
246265build_newlib :
247266 stage : build
@@ -318,17 +337,41 @@ build_newlib:
318337 - *package_libs
319338 - popd
320339
321- pack_x86_64-linux-gnu :
340+ .pack_linux-gnu_template :
322341 extends : .pack_template
342+ variables :
343+ ARCHIVE_TOOL : " ${ARCHIVE_TOOL_LINUX}"
344+ UNARCHIVE_TOOL : " ${UNARCHIVE_TOOL_LINUX}"
345+ ARCHIVE_EXT : " ${ARCHIVE_EXT_LINUX}"
346+
347+ pack_x86_64-linux-gnu :
348+ extends : .pack_linux-gnu_template
323349 needs :
324350 - job : build_x86_64-linux-gnu
325351 - job : build_newlib
326352 variables :
327353 CONF_HOST : " x86_64-linux-gnu"
328354 PLATFORM_NAME : " ${PLATFORM_NAME_LINUX}"
329- ARCHIVE_TOOL : " ${ARCHIVE_TOOL_LINUX}"
330- UNARCHIVE_TOOL : " ${UNARCHIVE_TOOL_LINUX}"
331- ARCHIVE_EXT : " ${ARCHIVE_EXT_LINUX}"
355+
356+ pack_arm-linux-gnueabihf :
357+ extends : .pack_linux-gnu_template
358+ image : ${CROSS_ARM_IMAGE}
359+ needs :
360+ - job : build_arm-linux-gnueabihf
361+ - job : build_newlib
362+ variables :
363+ CONF_HOST : " arm-linux-gnueabihf"
364+ PLATFORM_NAME : " ${PLATFORM_NAME_LINUX_ARMHF}"
365+
366+ pack_aarch64-linux-gnu :
367+ extends : .pack_linux-gnu_template
368+ image : ${CROSS_ARM_IMAGE}
369+ needs :
370+ - job : build_aarch64-linux-gnu
371+ - job : build_newlib
372+ variables :
373+ CONF_HOST : " aarch64-linux-gnu"
374+ PLATFORM_NAME : " ${PLATFORM_NAME_LINUX_ARM64}"
332375
333376pack_x86_64-w64-mingw32 :
334377 extends : .pack_template
@@ -459,7 +502,7 @@ linux_amd64_build:
459502
460503linux_arm64_build :
461504 extends : .build_template_old
462- image : $CI_DOCKER_REGISTRY/llvm-build-cross-arm:1
505+ image : ${CROSS_ARM_IMAGE}
463506 variables :
464507 PLATFORM_NAME : " ${PLATFORM_NAME_LINUX_ARM64}"
465508 ARCHIVE_TOOL : " ${ARCHIVE_TOOL_LINUX}"
0 commit comments