aboutsummaryrefslogtreecommitdiff
path: root/bootstrap.c
AgeCommit message (Collapse)Author
2025-09-27bootstrap: Add support for DragonFlyMichael Neumann
2025-02-07compiler: use std.heap.smp_allocatorAndrew Kelley
In main, now this allocator is chosen by default when compiling without libc in ReleaseFast or ReleaseSmall, and not targeting WebAssembly.
2025-01-16compiler: make it easier to apply breaking changes to `std.builtin`mlugg
Documentation for this will be on the wiki shortly. Resolves: #21842
2024-09-19compiler_rt does not need a build_options moduleAndrew Kelley
2024-07-26remove deprecated --mod CLI now that a zig1.wasm update happenedAndrew Kelley
2024-07-21bootstrap.c: update versionAndrew Kelley
2024-07-19dev: introduce dev environments that enable compiler feature setsJacob Young
2024-03-23haiku: debitrotJacob Young
2024-03-01compiler: audit debug mode checksJacob Young
* Introduce `-Ddebug-extensions` for enabling compiler debug helpers * Replace safety mode checks with `std.debug.runtime_safety` * Replace debugger helper checks with `!builtin.strip_debug_info` Sometimes, you just have to debug optimized compilers...
2024-02-28make aro-based translate-c lazily built from sourceAndrew Kelley
Part of #19063. Primarily, this moves Aro from deps/ to lib/compiler/ so that it can be lazily compiled from source. src/aro_translate_c.zig is moved to lib/compiler/aro_translate_c.zig and some of Zig CLI logic moved to a main() function there. aro_translate_c.zig becomes the "common" import for clang-based translate-c. Not all of the compiler was able to be detangled from Aro, however, so it still, for now, remains being compiled with the main compiler sources due to the clang-based translate-c depending on it. Once aro-based translate-c achieves feature parity with the clang-based translate-c implementation, the clang-based one can be removed from Zig. Aro made it unnecessarily difficult to depend on with these .def files and all these Zig module requirements. I looked at the .def files and made these observations: - The canonical source is llvm .def files. - Therefore there is an update process to sync with llvm that involves regenerating the .def files in Aro. - Therefore you might as well just regenerate the .zig files directly and check those into Aro. - Also with a small amount of tinkering, the file size on disk of these generated .zig files can be made many times smaller, without compromising type safety in the usage of the data. This would make things much easier on Zig as downstream project, particularly we could remove those pesky stubs when bootstrapping. I have gone ahead with these changes since they unblock me and I will have a chat with Vexu to see what he thinks.
2024-02-03bootstrap.c: allow overriding the host tripleJacob Young
2024-01-01update bootstrap scripts to new zig CLIAndrew Kelley
Now they use the new --mod --dep parameters.
2023-12-19Add FreeBSD to bootstrap.c to make building from source easier in FreeBSD 14Lateef Jackson
2023-11-17aro-translate-c: update to upstream changesVeikka Tuominen
2023-11-14adjust building from source without LLVM processAndrew Kelley
The idea here is that the zig2 executable is perhaps the more useful deliverable until we implement our own optimization passes. This will allow system packages to provide Zig, and use it to compile Zig projects, all without LLVM!
2023-11-12bootstrap.c: add -pthread if the compiler is gnuAndrew Kelley
otherwise we get undefined symbol errors on pthread stuff
2023-11-12bootstrap.c: update aro moduleAndrew Kelley
2023-11-12add bootstrap.c for building from source without LLVMAndrew Kelley
When a zig compiler without LLVM extensions is satisfactory, this greatly simplified build-from-source process can be used. This could be useful for users who only want to contribute to the standard library, for example.