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>
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>
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>
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.
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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.