summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
12 daysUpdate fetch URL gitweb on savannah.gnu.orgHEADmasterKlaus Aehlig
Also add a reliable mirror for ftp.gnu.org which occasionally is overloaded.
2025-06-16Documentation: describe how to programatically obtain host paths on NixOSKlaus T. Aehlig
2025-06-14mpfr-4.2.1: update fetch URLKlaus T. Aehlig
2025-06-12export toolchainsKlaus Aehlig
Those are a documented entry-point for the bootstrappable toolchain. As such, they should be export targets, so the bootstrappable toolchain can be used as an entirely absent repository.
2025-06-12CC defaults: Provide the DWP toolPaul Cristian Sarbu
This is handled similarly to the AR tool, i.e., provided from binutils.
2025-06-12binutils: Enable gold linkerPaul Cristian Sarbu
As a side-effect, this configuration of binutils also provides the DWARF packing utility (dwp).
2025-06-12Update rules-cc to v1.6.0-alpha+20250606Paul Cristian Sarbu
2025-06-12binutils: Enable LTO support in linkerPaul Cristian Sarbu
2025-06-12clang: Support providing lld linker in toolchainPaul Cristian Sarbu
Add new TOOLCHAIN_CONFIG flag that enables the lld project in the built toolchain.
2025-06-12Add IWYU support to clang 20 toolchainPaul Cristian Sarbu
2025-04-02Update repository import in READMEOliver Reiche
2025-04-02Add Clang 20.1.0Oliver Reiche
2025-04-02Add Clang 19.1.1Oliver Reiche
2025-04-02Bump GCC version from 14.1 to 14.2Oliver Reiche
2024-12-19Support wrapping bootstrap CC for autotoolsKlaus Aehlig
During the initial bootstrap phase, an old autotools project (gcc 4.7.4) is built and this potentially with a new compiler. For some of the tests carried out by the autotools, the compiler is used without the CFLAGS provided. Therefore, offer to wrap the compiler with the given flags to avoid that the autotools draw incorrect conclusions if the compile attempt fails for a different reason, e.g., because implicit declarations are now considered errors by default by modern C compilers.
2024-12-17busybox: remove CBQ functionalityKlaus Aehlig
See https://bugs.busybox.net/show_bug.cgi?id=15931 for details of the fix not yet upstreamed.
2024-11-07Build iwyu as a linting tool of clang-18Maksim Denisov
Co-authored-by: Paul Cristian Sarbu <paul.cristian.sarbu@huawei.com>
2024-11-07Simplify logic of INCLUDE_LINTER lookup in clang-18Maksim Denisov
2024-11-07Install binutils for clang-18 to a separate directoryMaksim Denisov
...to avoid potential staging conflicts.
2024-11-07Use quote to simplify build descriptionsKlaus Aehlig
2024-11-05Update rules referenceKlaus Aehlig
2024-10-23Update rulesKlaus Aehlig
2024-10-22Update rulesKlaus Aehlig
2024-09-27Update rules-ccKlaus Aehlig
2024-09-27toolchains: move python to shell defaultsKlaus Aehlig
... and drop unneeded duplication as well as wrong expansion variables in "PATH" fields.
2024-09-27clang: use provided ${CMAKE} variableKlaus Aehlig
... instead of hard-coding the name cmake.
2024-09-27["CC/foreign", "defaults"] of stage-1: drop busyboxKlaus Aehlig
... as that is brought in by the shell toolchain anyway. In that way, we can also drop setting "PATH" and hence get rid of the assumption that variable-expansion happens in "PATH" strings.
2024-09-27Drop wrong and unneed toolchain reference in defaults targetKlaus Aehlig
The "PATH" field in ["CC", "defaults"] is taken literally (currently outside the foreign rules, in the future everywhere), so a reference to the toolchain does not work. However, it is not necessary either, so simply drop it.
2024-09-27clang: set CMAKE_MAKE_PROGRAM explicitly to ${MAKE}Klaus Aehlig
... instead of relying on cmake to pick it up from path.
2024-09-27cmake: set CMAKE_MAKE_PROGRAM to ${MAKE}Klaus Aehlig
... as, during bootstrap, when searching for a make utility, the environment variable ${MAKE} is not honored as default for CMAKE_MAKE_PROGRAM.
2024-09-27make: bring in directory of CC as default pathKlaus Aehlig
... so that other tools of the CC toolchain that might be called directly are available.
2024-09-27busybox: Add directory of CC to pathKlaus Aehlig
... as certain configure scripts call the compiler by basename
2024-08-23clang: Add support for building clang-tidyOliver Reiche
2024-08-08etc/repos.json: have file root have the to_git pragmaKlaus Aehlig
The main use of the bootstrappable toolchain is to just-import-git(1) it as toolchain to an existing project. However, it is an explicitly supported use case to build just the toolchain as stand-alone binaries. Therefore, also for that use case, make sure all repositories are content fixed, so that the various bootstrap stages are eligible for caching as export targets.
2024-07-09Bump clang 18 to 18.1.8Oliver Reiche
2024-07-09Bump gcc 13 to 13.3.0Oliver Reiche
2024-07-03test rules: use full stage-0 busyboxKlaus Aehlig
... and not only the bootstrap one. For tests, it is useful to have tools like realpath(1) and date(1) that are not needed for bootstrapping.
2024-07-03update rulesKlaus Aehlig
2024-07-03test.TARGETS: inherit shell and foreign toolchainKlaus Aehlig
... and also add the missing bindings for the remaining test rules.
2024-07-03bootstrap busybox: install with depsKlaus Aehlig
2024-07-03stage-0/gcc wrapper: point to a parallel directoryKlaus Aehlig
... so that we can install-with-deps the wrapper, in case the bootstrap compiler has dependencies not present on the host machine.
2024-07-03expand_exec: install with depsKlaus Aehlig
2024-07-01complier+tools.TARGETS: fix reference to toolchain defaultsKlaus Aehlig
2024-06-28CC toolchains: remove wrong reference to $(TOOLCHAIN) in PATHKlaus Aehlig
The environment variable PATH is taken literally by the shell, without any expansion. So, having a string like "$(TOOLCHAIN)/clang/bin" in PATH does not change anything as we do not have a directory with that name. Drop it for now. In the future we might add "bin dirs" to the CC toolchain as well, but as long as our rules do not support this, drop the wrong entry here.
2024-06-28toolchain: set shell toolchain, whenever busybox is availableKlaus Aehlig
2024-06-28Document that coreutils are no longer a requirementKlaus Aehlig
2024-06-28Production stages: use ["shell", "cmds"]Klaus Aehlig
... instead of generic to support bringing in a toolchain.
2024-06-28Production stages: inherit shell toolchainKlaus Aehlig
2024-06-28Higher stages: reuse stage-0's expand_execKlaus Aehlig
2024-06-28stage-1: add shell defaultsKlaus Aehlig
... using the full busybox from stage-0