aboutsummaryrefslogtreecommitdiff
path: root/tools/process_headers.zig
AgeCommit message (Collapse)Author
2025-08-30update tools and other miscellaneous things to new APIsAndrew Kelley
2025-08-11std.ArrayList: make unmanaged the defaultAndrew Kelley
2025-07-16tools: fix some bitrotAlex Rønne Petersen
2025-05-29process_headers: Merge header directories for some targets.Alex Rønne Petersen
These are almost entirely identical, with these exceptions: * lib/libc/include/csky-linux-{gnueabi,gnueabihf} * gnu/{lib-names,stubs}.h will need manual patching for float ABI. * lib/libc/include/{powerpc-linux-{gnueabi,gnueabihf},{powerpc64,powerpc64le}-linux-gnu} * bits/long-double.h will need manual patching for long double ABI.
2025-05-17process_headers: Add NetBSD libc support.Alex Rønne Petersen
2025-05-10process_headers: Add FreeBSD libc support.Alex Rønne Petersen
2025-04-11process_headers: Add hexagon-linux-musl support.Alex Rønne Petersen
2025-02-10std.ArrayList: popOrNull() -> pop() [v2] (#22720)Meghan Denny
2024-11-28process_headers: Use glibcRuntimeTriple() and muslArchName() from ↵Alex Rønne Petersen
std.zig.target.
2024-11-02process_headers: Add muslabin32 and muslx32 support.Alex Rønne Petersen
2024-11-02process_headers: Simplify the code a bit.Alex Rønne Petersen
2024-10-03process_headers: Add loongarch64-linux-gnusf.Alex Rønne Petersen
2024-08-07Merge pull request #20909 from alexrp/glibc-riscvAndrew Kelley
Support building glibc for riscv32/riscv64
2024-08-07process_headers: Add arc-linux-gnu.Alex Rønne Petersen
2024-08-05process_headers: Add sparcv9-linux-gnu for glibc.Alex Rønne Petersen
This is 32-bit SPARC targeting the v8 ABI but v9 CPU.
2024-08-02process_headers: Replace ilp32/lp64 with ilp32d/lp64d.Alex Rønne Petersen
The former are soft float; the latter are hard float. We primarily care about hard float here.
2024-08-02glibc: Change riscv32-linux-gnuilp32 target triple to riscv32-linux-gnu.Alex Rønne Petersen
This target triple was weird on multiple levels: * The `ilp32` ABI is the soft float ABI. This is not the main ABI we want to support on RISC-V; rather, we want `ilp32d`. * `gnuilp32` is a bespoke tag that was introduced in Zig. The rest of the world just uses `gnu` for RISC-V target triples. * `gnu_ilp32` is already the name of an ILP32 ABI used on AArch64. `gnuilp32` is too easy to confuse with this. * We don't use this convention for `riscv64-linux-gnu`. * Supporting all RISC-V ABIs with this convention will result in combinatorial explosion; see #20690.
2024-06-05glibc: add riscv32 and loongarch64Andrew Kelley
2024-06-04update musl headers to v1.2.5Andrew Kelley
adds loongarch64 and riscv32
2024-05-03Rename Dir.writeFile2 -> Dir.writeFile and update all callsitesRyan Liptak
writeFile was deprecated in favor of writeFile2 in f645022d16361865e24582d28f1e62312fbc73bb. This commit renames writeFile2 to writeFile and makes writeFile2 a compile error.
2023-11-22Revert "Merge pull request #12060 from Vexu/IterableDir"Andrew Kelley
This reverts commit da94227f783ec3c92859c4713b80a668f1183f96, reversing changes made to 8f943b3d33432a26b7e242c1181e4220ed400501. I was against this change originally, but decided to approve it to keep an open mind. After a year of trying it in practice, I firmly believe that the previous way of doing it was better.
2023-10-13it's unclear which zig target glibc sparcv9 maps toAndrew Kelley
so let's not include those headers until more investigation happens.
2023-06-20musl: deal with zig rename of i386 to x86Andrew Kelley
musl uses "i386" for this while Zig has switched to "x86".
2023-06-19all: zig fmt and rename "@XToY" to "@YFromX"Eric Joldasov
Signed-off-by: Eric Joldasov <bratishkaerik@getgoogleoff.me>
2023-05-25std.fs.file: Rename File.Kind enum values to snake caseLinus Groh
2023-05-23std.sort: add pdqsort and heapsortAli Chraghi
2022-11-04all: rename i386 to x86Ali Chraghi
2022-07-15std.fs: split `Dir` into `IterableDir`Veikka Tuominen
Also adds safety check for attempting to iterate directory not opened with `iterate = true`.
2022-06-06tools: fix update-linux-headers.zig and process_headers.zigBratishkaErik
Signed-off-by: BratishkaErik <bratishkaerik@getgoogleoff.me>
2022-05-13target: Rename sparcv9 -> sparc64Koakuma
Rename all references of sparcv9 to sparc64, to make Zig align more with other projects. Also, added new function to convert glibc arch name to Zig arch name, since it refers to the architecture as sparcv9. This is based on the suggestion by @kubkon in PR 11847. (https://github.com/ziglang/zig/pull/11487#pullrequestreview-963761757)
2021-12-16glibc: fix inconsistency of powerpc ABI mappingAndrew Kelley
See the commit message of 5b6d26e97bb97d79782f3c77b02a997e361a1497 for an explanation. This is the same thing but for powerpc instead of mips.
2021-12-15glibc: fix inconsistency of mips ABI mappingAndrew Kelley
Before this commit, glibc headers did the following mapping: * (zig) mipsel-linux-gnu => (glibc) mipsel-linux-gnu * (zig) mipsel-linux-gnu-soft => (glibc) (none) * (zig) mips-linux-gnu => (glibc) mips-linux-gnu * (zig) mips-linux-gnu-soft => (glibc) (none) While the glibc ABI stubs used the (zig) gnueabi and gnueabihf ABIs, and the stage2 available_libcs array listed: * (zig) mipsel-linux-gnu * (zig) mips-linux-gnu The problem is the mismatch between the ABI component of the headers and the stubs. This commit makes the following clarifications: * (zig) mips-linux-gnueabi means soft-float * (zig) mipsel-linux-gnueabi means soft-float * (zig) mips-linux-gnueabihf means hard-float * (zig) mipsel-linux-gnueabihf means hard-float Consequently, the glibc headers now do this mapping: * (zig) mips-linux-gnueabihf => (glibc) mips-linux-gnu * (zig) mipsel-linux-gnueabihf => (glibc) mipsel-linux-gnu * (zig) mips-linux-gnueabi => (glibc) mips-linux-gnu-soft * (zig) mipsel-linux-gnueabi => (glibc) mipsel-linux-gnu-soft The glibc ABI stubs are unchanged, and the stage2 available_libcs array's 2 entries are modified and it gains 2 more: * (zig) mipsel-linux-gnueabi * (zig) mipsel-linux-gnueabihf * (zig) mips-linux-gnueabi * (zig) mips-linux-gnueabihf Now everything is consistent. Zig no longer recognizes a `mips-linux-gnu` triple; one must use `mips-linux-gnueabi` (soft float) or `mips-linux-gnueabihf` (hard float).
2021-11-30allocgate: renamed getAllocator function to allocatorLee Cannon
2021-11-30allocgate: stage 1 and 2 buildingLee Cannon
2021-11-30std lib API deprecations for the upcoming 0.9.0 releaseAndrew Kelley
See #3811
2021-08-16add m68k musl (1.2.2) headersAndrew Kelley
This commit also corrects a mistake from commit 6dc2236054dfcf911ce848f67a4078740a90783a which did not properly delete files when upgrading to the 1.2.2 musl headers.
2021-06-21fix code broken from previous commitJacob G-W
2021-06-13tools: Unbreak many toolsLemonBoy
Many tools were broken after the recent hash-table refactorings, fix them and ensure they won't silently break again.
2021-06-03Breaking hash map changes for 0.8.0Martin Wickham
- hash/eql functions moved into a Context object - *Context functions pass an explicit context - *Adapted functions pass specialized keys and contexts - new getPtr() function returns a pointer to value - remove functions renamed to fetchRemove - new remove functions return bool - removeAssertDiscard deleted, use assert(remove(...)) instead - Keys and values are stored in separate arrays - Entry is now {*K, *V}, the new KV is {K, V} - BufSet/BufMap functions renamed to match other set/map types - fixed iterating-while-modifying bug in src/link/C.zig
2021-04-04glibc: add support for csky architectureAndrew Kelley
2021-03-07std: Deprecate the B and Bi format specifiersLemonBoy
Following #8007 and #8137 let's get rid of the last weird format.
2021-01-30Replace @TagType uses, mostly with std.meta.TagTadeo Kondrak
2020-11-18Merge pull request #7005 from jshholland/deprecate-spanVeikka Tuominen
Remove ArrayList.span
2020-11-07remove deprecated uses of ArrayList.spanJosh Holland
2020-11-06update process_headers toolAndrew Kelley
2020-08-30fix tools/process_headers.zig regressionAndrew Kelley
When upgrading to the new std lib HashMap API, the process_headers code regressed because something that was supposed to be a pointer ended up being a copy of a value. This resulted in the modification of a field not being picked up. Also switch from Sha256 to Blake3 while we're at it.
2020-08-22update update_glibc and process_headers to latest zigJan200101
2020-08-21Update tools/process_headers.zigFrank Denis
2020-08-20Breaking: sort std/crypto functions into categoriesFrank Denis
Instead of having all primitives and constructions share the same namespace, they are now organized by category and function family. Types within the same category are expected to share the exact same API.
2020-08-10Update tools/process_headers.zig to latest zigjoachimschmidt557