-
Notifications
You must be signed in to change notification settings - Fork 3
Add C test cases to CI #29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
3aec690 to
2dfdde9
Compare
|
Got this working in #46. There were couple issues:
In the end steps for adding the toolchain look something like this. - name: Create RISC-V GCC build directory
run: mkdir /tmp/riscv-gnu-toolchain
- name: Download GCC
working-directory: /tmp/riscv-gnu-toolchain/
run: |
wget -q https://github.com/riscv-collab/riscv-gnu-toolchain/releases/download/$GCC_VER/$RISCV_XLEN-elf-$UBUNTU_VER-gcc-nightly-$GCC_VER-nightly.tar.gz
mkdir ${RISCV} && \
tar -xf $RISCV_XLEN-elf-$UBUNTU_VER-gcc-nightly-$GCC_VER-nightly.tar.gz --strip-components 1 -C $RISCV
export PATH="${RISCV}/bin:${PATH}"
echo "${RISCV}/bin" >> $GITHUB_PATH
$RISCV_XLEN-unknown-elf-gcc --version
$RISCV_XLEN-unknown-elf-ld --versionDisclaimer this uses GCC instead of LLVM |
|
Based on latest runs it seems like the downloaded version of RISC-V is configured to use a different float setup than what's used by our build. Builds fine locally, since we use the multilib compiler. It's not feasible to rebuild the compiler for each CI. Perhaps we could try build-minimal-c with newlib..? (@andstepan) Any other ideas? (@vilukissa68) The end goal is to try to have C builds in CI. |
I fail understand why this issue happens. It looks like the We could build Headsail-newlib in the gitlab CI and pull that for C builds, since there is really only one way we want to configure it for headsail, but there's nothing saying that it will fix this issue if the compiler is not good. If we can't find a suitable |
I like this. We'll need to coordinate some keys between the CIs to enable cross-downloads but that should be fine. I think it should fix this.
This would work but building GCC takes literally hours. There's not too many minutes available to our org on the GitHub Free license :) |
|
Newlib artifacts now available at https://gitlab.tuni.fi/soc-hub/headsail/sw/newlib-artifacts. I will upload the necessary lib & headers in-tree and re-try this. |
There's currently an issue with the RISC-V GCC compiler on the CI runner.