Skip to content

ci: install Hexagon LLVM cross-toolchain for Zephyr CI builds#308

Open
androm3da wants to merge 1 commit into
zephyrproject-rtos:mainfrom
androm3da:bcain/hexagon
Open

ci: install Hexagon LLVM cross-toolchain for Zephyr CI builds#308
androm3da wants to merge 1 commit into
zephyrproject-rtos:mainfrom
androm3da:bcain/hexagon

Conversation

@androm3da

Copy link
Copy Markdown

Install the codelinaro Hexagon LLVM 22.1.8 cross-toolchain from artifacts.codelinaro.org for both x86_64 and aarch64 hosts.

On x86_64 the tarball extracts to x86_64-linux-gnu/; on aarch64 it extracts to aarch64-linux-musl/ and requires the musl package since the aarch64 clang binary links against musl libc. A host/ symlink is created in both cases so that ENV PATH can use a single static path (/opt/toolchains/hexagon/host/bin) regardless of host arch.

The toolchain is used with ZEPHYR_TOOLCHAIN_VARIANT=host and TOOLCHAIN_VARIANT_COMPILER=llvm to build Zephyr for the qemu_hexagon/qemu_hexagon_virt board target.

Comment thread Dockerfile.ci Outdated
@dkalowsk

Copy link
Copy Markdown

@stephanosio or @nashif can either of you trigger the workflow here? I do not have permissions to do so.

@androm3da

Copy link
Copy Markdown
Author

Tsk - yeah, sorry: the arm toolchain contains the compiler/linker/binutils but no QEMU.

Is that a blocker or does it suffice to provide build-only capability for arm?

Install codelinaro Hexagon LLVM 22.1.8 cross-toolchain for x86_64 and
aarch64.  Install qemu runtime dependencies.

Smoke-test both clang and qemu-system-hexagon during the build.

Signed-off-by: Brian Cain <brian.cain@oss.qualcomm.com>
@androm3da

Copy link
Copy Markdown
Author

Tsk - yeah, sorry: the arm toolchain contains the compiler/linker/binutils but no QEMU.

Is that a blocker or does it suffice to provide build-only capability for arm?

I can try building qemu from source in the arm container build, if that's required. I didn't jump at that option because it requires a lot of build dependencies but it's probably doable w/o much trouble.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants