Commit Graph

1328 Commits

Author SHA1 Message Date
Avi Deitcher 357800bf2c add languages and cmodel parameters
Signed-off-by: Avi Deitcher <avi@deitcher.net>
2025-10-18 01:13:01 +02:00
Avi Deitcher 621e2908e1 fix nightly release; more flexible reusable build
Signed-off-by: Avi Deitcher <avi@deitcher.net>
2025-10-18 01:13:01 +02:00
Christoph Müllner 9ca54e7ad9 Bump DejaGNU to latest commits
There have been a few commits for DejaGNU recently.
Let's add them to avoid issues with unadvertised objects in the CI/CD builds.

Fixes #1783.

Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2025-10-16 16:02:16 +02:00
Kito Cheng 8094d3edc8
Merge pull request #1779 from deitch/reusable-actions-flows
restructure actions to reusable build flow with parameters
2025-10-16 21:45:33 +08:00
Avi Deitcher ff49d85c38 restructure actions to reusable build flow with parameters
Signed-off-by: Avi Deitcher <avi@deitcher.net>
2025-10-08 11:29:10 +03:00
Christoph Müllner 3b011cffdc Temporary bump QEMU to latest 10.1 staging commit
Because the location of some QEMU submodules changed, we currently don't
have a stable QEMU release that can be built.
The issue is fixed on master and in the staging 10.1 branch.
To unbreak the build, let's temporary bump QEMU to the latest commit
on the staging-10.1 branch.

Of course, as soon as a new QEMU release is available, we should
redirect the submodule to it.

Fixes #1771.

Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2025-09-27 13:15:03 +02:00
Pengcheng Wang 19dd147bdc Build and install LLVM libraries/tools
We don't build and install `llvm` subproject so LLVM libraries and tools like `llvm-mc` can't be found.

Signed-off-by: Pengcheng Wang <wangpengcheng.pp@bytedance.com>
2025-09-19 15:41:53 +02:00
Jiawei 61890b868c Bump qemu into v10.1.0. 2025-09-18 10:38:12 +02:00
Jiawei 6f560d9097 Bump LLVM into 21.1.1. 2025-09-15 10:30:37 +02:00
Kito Cheng cfe9d78f8d
Merge pull request #1756 from Joao-Pedro-Cabral/build-binutils-arch
Adding arch and abi in binutils targets
2025-08-28 21:53:32 +08:00
Tsukasa OI 4f2083a006 regression: Smart construction/configuration of TARGETS
It makes:

1.  Default target list is easier to read and to reconfigure
    by splitting target bases and code models.
2.  TARGETS is now configurable through external environment variable
    (not just as a make argument), which makes TARGETS consistent with
    RUNTESTFLAGS.

Because `TARGETS = ...` is used inside the Makefile, we could configure
targets to perform regression tests with `make report TARGETS='...'` but
not `TARGETS='...' make report`.  This semantics is inconsistent with e.g.
RUNTESTFLAGS as shown in README.md.

This commit now uses `?=` to respect environment variable TARGETS
given from outside, making `TARGETS='...' make report` usable.

Also, this commit changes how default target list is constructed.
It splits target bases and code models and each is reconfigurable through
make arguments (like `make report TARGET_CODE_MODELS=medlow`).
Note that TARGET_BASES and TARGET_CODE_MODELS are chosen so that no
submodules use those Make variables and are ignored when the variable
`TARGETS` is explicitly configured.
2025-08-27 12:04:35 +02:00
Joao-Pedro-Cabral 1faa77ffe8 Adding arch and abi in binutils targets 2025-08-08 11:46:42 +01:00
Christoph Müllner b8ca156d2a CI/CD: nightly-release: Don't fail fast
The default strategy is for GItHub CI/CD pipelines is to cancel
all runners when one runner observes an error. The idea is to
keep the workload of the runners low and an error likely leads
to a future source code change (making the results of the other
runners irrelevant). This is reasonable for testing PRs with
unknown expectation.

However, for our nightly release builds, we observe that errors
are typically caused by the runners and not by the contents of
this repo. Therefore, we address build issues of the nightly
releases by re-running all failed builds, which includes those
which have been canceled because of the error. Letting all
runners complete their build is a better option in this case,
as we don't need to re-start builds that would have succeeded.
And that's what this patch does.

Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2025-08-07 07:39:26 +02:00
Kito Cheng ac2246ab77
Merge pull request #1753 from cmuellner/drop-arm-from-ci
Revert "ci: add arm support"
2025-08-07 11:19:39 +08:00
Kito Cheng 4bf62ee92e
Merge pull request #1752 from cmuellner/llvm-20.1.8
Bump LLVM to 20.1.8
2025-08-07 11:18:23 +08:00
Christoph Müllner 22b5aa42d5 Revert "ci: add arm support"
This reverts commit fdb0813830.

The reason is that ARM builds exceed their maximum build duration of
1h26min and thus block the nightly releases.

Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2025-08-06 18:19:35 +02:00
Christoph Müllner 7e606e6032 Bump LLVM to 20.1.8
This commit bumps LLVM from 19.1.7 to 20.1.8.

Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2025-08-06 13:37:31 +02:00
Christoph Müllner 5d061c0ee2 Update Linux headers from v6.6 to v6.16
This patch imports the Linux kernel headers v6.16.
This brings tons of new supported extensions for hwprobe.

Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2025-08-01 20:40:25 +02:00
Christoph Müllner 686d7e6564 CI/CD: Don't add i386 before installing packages
We currently add the i386 architecture to apt before installing
out build dependencies.  However, there is no use for that and
there are a range of drawbacks (we even have ARM builds failing
because i386 sources can't be fetched).
Let's drop this.

Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2025-07-31 12:26:46 +02:00
Luke Wren 19aec99a72 Update to binutils 2.45 2025-07-29 19:51:24 +02:00
Kito Cheng d0ad15850a
Merge pull request #1746 from cmuellner/dejagnu-jul25
Bump DejaGNU to latest commits
2025-07-29 18:19:12 +08:00
Christoph Müllner 6a09c0e7b6 Bump DejaGNU to latest commits
There have been a few commits for DejaGNU recently.
Let's add them to avoid issues with unadvertised objects in the CI/CD builds.

Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2025-07-29 12:11:06 +02:00
Kito Cheng 5ba2477efc
Merge pull request #1745 from cmuellner/glibc-2.42
Bump glibc from 2.41 to 2.42
2025-07-29 17:58:01 +08:00
Christoph Müllner 35a2a72945 Bump glibc from 2.41 to 2.42
No new regressions.
Current regressions (with --enable-multilib):
```
               ========= Summary of gcc testsuite =========
                            | # of unexpected case / # of unique unexpected case
                            |          gcc |          g++ |     gfortran |
     rv32gc/ ilp32d/ medlow |    0 /     0 |    0 /     0 |    0 /     0 |
   rv32imac/  ilp32/ medlow |    0 /     0 |    0 /     0 |   43 /     8 |
     rv64gc/  lp64d/ medlow |   25 /     4 |    0 /     0 |    0 /     0 |
    rv64gcv/  lp64d/ medlow |  127 /    54 |    6 /     2 |    0 /     0 |
   rv64imac/   lp64/ medlow |   24 /     3 |    4 /     2 |   43 /     8 |
```

Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2025-07-29 04:52:25 +02:00
demin.han fecdae6f70 Fix --with-tune option
Similiar reason to --with-cmodel.

Signed-off-by: demin.han <demin.han@starfivetech.com>
2025-07-23 14:02:13 +02:00
demin.han 9cfb1a8675 Fix --with-cmodel option
When passed with `--without-cmodel`, cmodel will get value `no` which is
unexpected.

Signed-off-by: demin.han <demin.han@starfivetech.com>
2025-07-23 14:02:13 +02:00
demin.han 43ff3d088e Refactor --with-tune
Signed-off-by: demin.han <demin.han@starfivetech.com>
2025-07-23 14:02:13 +02:00
demin.han 8d4a9a6e80 Fix --disable/enable-xxx actually enable/disable xxx feature
For example, --disable-debug-info enables debug-info, this results in
confusion.

In AC_ARG_ENABLE, the last two parts are action-if-present and
action-if-not-present, but not are action-if-enabled and
action-if-disable.

We can utilize autoconf's default and simplify configure.ac.

Signed-off-by: demin.han <demin.han@starfivetech.com>
2025-07-23 14:02:13 +02:00
demin.han 2037a4c322 Remove unused disable-debug-info var
Signed-off-by: demin.han <demin.han@starfivetech.com>
2025-07-23 14:02:13 +02:00
demin.han da244b7cff Format configure.ac
space and tab mixed in macro.
just use tab.

Signed-off-by: demin.han <demin.han@starfivetech.com>
2025-07-23 14:02:13 +02:00
demin.han 99c9bec115 Add install strip support
Binutils and GCC have an install target 'install-strip' which can strips
debug symbols at install. This can reduce installed size largely.

LLVM has similar install target 'install/strip'.

Thanks for shenki's previous work

Signed-off-by: demin.han <demin.han@starfivetech.com>
2025-07-18 18:34:46 +02:00
demin.han 4db66423a9 Add QEMU_EXTRA_CONFIGURE_FLAGS
This add QEMU_EXTRA_CONFIGURE_FLAGS, which works the same like
other EXTRA_CONFIGURE_FLAGS

Signed-off-by: demin.han <demin.han@starfivetech.com>
2025-07-18 18:34:46 +02:00
Suyun114 fdb0813830 ci: add arm support 2025-07-16 10:52:09 +02:00
TelGome b683d4dec3 Update configure
Since the patch "RISC-V: Add generic tune as default" has been commited into the trunk, the configure should also been updated. Here is the link:
https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=20f593018519fec1602dc39c08ba2e674a2d8a1c

Signed-off-by: TelGome <93700071+TelGome@users.noreply.github.com>
2025-07-15 09:56:01 +02:00
Paul-Antoine Arras 4c8f475d73 march-to-cpu-opt: Add zvfh and zvfhmin
Add zvfh and zvfhmin to the list of ISA extension supported by QEMU.
2025-07-15 09:43:47 +02:00
Trevor Gamblin 062ad358f7 gdb: update submodule for gcc 15.x compatibility
Update the commit ID for the gdb submodule so that we pull a version of
gdb with the following commit from master:

|5c87b330e91 readline/tcap.h: Update definitions for C23

Without which, we see errors like the following during build (and tools
are not successfully built) if the system has gcc 15.x or newer:

|/home/tgamblin/workspace/git/riscv-gnu-toolchain/gdb/readline/readline/tcap.h:50:12: note: declared here
|   50 | extern int tgetflag ();
|      |            ^~~~~~~~
|/home/tgamblin/workspace/git/riscv-gnu-toolchain/gdb/readline/readline/terminal.c:204:26: error: too many arguments to function ‘tgetflag’; expected 0, have 1
|  204 | #define TGETFLAG(cap)   (tgetflag (cap) == TGETFLAG_SUCCESS)
|      |                          ^~~~~~~~

This occurs because of the change to gnu23 as the default C standard.
See: https://gcc.gnu.org/gcc-15/porting_to.html#c23 and the subsequent
section for details.

Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
2025-06-12 09:12:15 +02:00
Osman Karaketir ad66829bd9 wait cleanup to complete 2025-06-11 21:33:37 +02:00
Osman Karaketir 30f167ccf6 cleanups are not conditional anymore 2025-06-11 21:33:37 +02:00
Osman Karaketir 004fb4fd83 try workflow is running correctly 2025-06-11 21:33:37 +02:00
Osman Karaketir 69e74916ee improve cleanup-rootfs.sh 2025-06-11 21:33:37 +02:00
Christoph Müllner 7f1ad48452 Makefile.in: Cleaning up the clean targets
The `clean` target removes `install-*` and `install-newlib-nano`.
Let's avoid the duplication.

The `distclean` target removes `src`, which does not exist.
Let's drop this.

Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
2025-06-06 09:19:23 +02:00
demin.han 95d0c08aa0 Delete LLVMgold plugin copy
Under Mingw, LLVMgold plugin has different suffix and location.
`make install` can install LLVMgold plugin automatically.

Signed-off-by: demin.han <demin.han@starfivetech.com>
2025-06-05 22:09:54 +02:00
Kito Cheng 594c357325
Merge pull request #1723 from shenki/add-zstd-dep
setup-apt: Add libzstd-dev to build deps
2025-06-02 16:14:37 +08:00
Kito Cheng af53b34fd4
Merge pull request #1725 from demin-han/master
Add LLVM_EXTRA_CONFIGURE_FLAGS
2025-05-29 14:52:01 +08:00
demin.han 13c55736de Add LLVM_EXTRA_CONFIGURE_FLAGS
This adds LLVM_EXTRA_CONFIGURE_FLAGS, which works the same like
GCC_EXTRA_CONFIGURE_FLAGS.

Signed-off-by: demin.han <demin.han@starfivetech.com>
2025-05-29 14:21:02 +08:00
Joel Stanley f9b04a7f97 setup-apt: Add libzstd-dev to build deps
GCC and binutils will pick this up and allow compression of the debug
sections in elf files using --compress-debug-sections=zstd

The resulting binaries will depend on libzstd1.so, so users must ensure
this is installed. It seems to come by default from Ubuntu 20.04
onwards, so that shouldn't be a problem for most.
2025-05-22 21:38:39 +09:30
Jim Lin aaee081a1c Remove duplicate assignment for DEJAGNU_SRCDIR 2025-05-21 11:21:41 +02:00
Ariel Xiong 84c30862e7 gcc: generate all white lists in gcc due to major version bump.
Signed-off-by: Ariel Xiong <ArielHeleneto@outlook.com>
2025-05-21 10:16:40 +02:00
Ariel Xiong 3eafd26d0b gcc: bump to releases/gcc-15.1.0.
Signed-off-by: Ariel Xiong <ArielHeleneto@outlook.com>
2025-05-21 10:16:40 +02:00
Ariel Xiong 23863c2ca7 qemu: bump to v10.0.0.
Signed-off-by: Ariel Xiong <ArielHeleneto@outlook.com>
2025-05-15 10:04:10 +02:00