Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Add --with-isa-spec option to configure
|
|
Set the default version to 2.2 for now, and once we bump to GCC 12 we
will bump that to 20191213.
|
|
The upstream musl libc does not support 32bit RISC-V builds.
We therefore only allow building the 64bit version (i.e.,
riscv64-unknown-linux-musl-).
Signed-off-by: Florian Hofhammer <florian.hofhammer@fhofhammer.de>
|
|
Since musl is already incorporated into the build system (see for
example configure.ac, Makefile.in), this patch adds a submodule for
musl based on the current v1.2.2 release.
The GitHub Actions configurations have also been updated to include
the musl based toolchain.
Signed-off-by: Florian Hofhammer <florian.hofhammer@fhofhammer.de>
|
|
Both the glibc and newlib submodules are already pointing to the
upstream repositories where development happens.
Since they are therefore not referring to RISC-V specific forks,
this patch unifies the directory naming by only prepending the
"riscv-" prefix to submodules that point to repositories in the
riscv-collab Github organization.
Signed-off-by: Florian Hofhammer <florian.hofhammer@fhofhammer.de>
|
|
The recent addition of an override for the QEMU source directory left
the default pointing to the wrong submodule.
Fixes: b83ee52 ("Allow source-override for QEMU")
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
|
|
This patch introduces a configure-time source-dir override for QEMU
similar to the existing overrides for the other toolchain sources.
Signed-off-by: Christoph Muellner <cmuellner@linux.com>
|
|
|
|
|
|
Also, support all gcc checking options instead of just yes and release.
Also, fix copy-and-paste error in cmodel support refering to gcc checking.
|
|
This is a partial fix for pull request #530, allowing people to use
-mno-fdiv for library compiles.
|
|
The --with-headers argument must point to the `include' subdirectory.
|
|
Add option to specify source tree of each component
|
|
|
|
These wrappers are still necessary on non-GNU platforms; glibc
makefile rules invoke `sed' directly with GNU extensions.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
And re-run autoreconf to generate the configure script.
Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
|
|
We need this to have different polarity for different platforms (Windows
vs RedHat). I don't know how to autodetect this for now, so I'm just
doing it manually.
|
|
I need to set this in order to build the Windows tools.
|
|
This lets users select the code model when building the tools.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Soft-float calling convention is default, but an alternate hard-float
calling convention (with doubles passed as in soft-float, but floats
passed as in hard-float) is supported.
|
|
The buildbot seems to be hammering the newlib servers causing dropped
connections so we'll try to backoff and retry.
|
|
It is necessary to fetch tarballs from e.g. GitHub.
Signed-off-by: Masanori Ogino <masanori.ogino@gmail.com>
|
|
Augment the handling of --with-arch such that it can properly set XLEN,
atomics flags, and floating point flags. The original
--enable-atomics/float flags are still respected, but if --with-arch is
provided then it supersedes other options.
|
|
It's no longer the case that building the toolchain with
"--disable-float" turns off floating-point by default. This passes the
correct arguments to all the various sub-configures in order to ask for
floating-point support to be either enabled or disabled.
|
|
You now need to explicitly pass this flag to turn on multilib support.
|
|
I commited this too quickly last time and it's been breaking a whole
bunch of stuff. Until I managed to get multilib working in a sane
way, I'm just going to go ahead and turn it off by default. You can
still pass "--with-arch", but doing so while also passing things like
"--enable-multilib" or "--disable-atomics" might have unexpected
results.
|
|
G doesn't actually work.
|
|
This matches the GCC configure option.
|
|
This allows someone to build a RV32I toolchain without going in and
messing with the Makefile directly.
|
|
I have no idea why, but the installed "sed" wrapper never terminates
on RHEL. If I don't use the wrappen the the tools build fine, so this
just uses the already set autoconf variables to attempt to determine
if the system sed/awk are gsed/gawk and if they are then this avoids
using the wrappers.
There's a few oddities here:
* I have no idea why the sed wrapper fails, as it seems super safe.
* I haven't run into any awk problems, but I figured I'd treat it the
same as it isn't any harder.
* We shouldn't have to support 10 year old distributions.
Hopefully this doesn't break anyone's builds...
|
|
Looks like I managed to screw up my last commit -- I dropped an
apparently significant trailing ,.
|
|
Some systems don't have things like GMP, MPFR, and friends installed.
Rather than requiring them to be installed as root, this uses a bit of
GCC's built-in functionality to download these libraries and build
them along with GCC.
This allows the tools to build on Red Hat, but only if you install
newer host tools (I have GCC, make, and texinfo).
|
|
Add support to configure and Makefile.in for --disable-atomic,
--disable-float, and --enable-multilib.
|
|
This allows users to set the register bitwidth via an autoconf option
rather than an environment variable.
|
|
Use AS_HELP_STRING to properly format help text. Properly handle both
states of the option and the default.
|
|
Select between curl(1), wget(1), and ftp(1) through autoconf.
Wherever possible, automatically follow HTTP location redirects and
enable passive FTP mode.
Explicitly instruct tar(1) to read from stdin since this is far from
universal behavior if unspecified: The default file is /dev/sa0 in
FreeBSD, /dev/rst0 in NetBSD and OpenBSD, etc.
|
|
Tests for program presence, such as those formerly embedded in the
top-level Makefile for gawk and gsed, are better suited for autoconf.
Note that it is not sufficient to merely export AWK and SED environment
variables, as packages may still directly invoke awk(1) and sed(1) with
non-standard features independent of the autotools framework.
Wrapper scripts therefore remain necessary, although these are now
generated by the configure script to avoid hard-coded paths.
Do not assume the existence of /bin/bash on all systems.
|