zig/lib/std
Andrew Kelley 105db13536 std.Build: implement --host-target, --host-cpu, --host-dynamic-linker
This also makes a long-overdue change of extracting common state from
Build into a shared Graph object.

Getting the semantics right for these flags turned out to be quite
tricky. In the end it works like this:
* The override only happens when the target is fully native, with no
  additional query parameters, such as versions or CPU features added.
* The override affects the resolved Target but leaves the original Query
  unmodified.
* The "is native?" detection logic operates on the original, unmodified
  query. This makes it possible to provide invalid host target
  information, causing confusing errors to occur. Don't do that.

There are some minor breaking changes to std.Build API such as the fact
that `b.zig_exe` is now moved to `b.graph.zig_exe`, as well as a handful
of other similar flags.
2024-02-02 20:43:01 -07:00
..
Build std.Build: implement --host-target, --host-cpu, --host-dynamic-linker 2024-02-02 20:43:01 -07:00
c translate-c: use Aro's tokenizer 2023-11-25 12:28:19 +02:00
compress gzip: implement compression 2024-01-29 14:30:23 -08:00
crypto tls: support ed25519 signatures 2024-02-02 17:27:26 -08:00
dwarf openbsd: add proper support for aarch64 2024-01-18 15:45:42 -08:00
event rework std.atomic 2023-11-22 19:08:55 -07:00
fmt lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
fs fs tests: Make path type show up in stack traces of testWithAllSupportedPathTypes 2024-02-02 18:03:17 -08:00
hash AstGen: add error for using inline loops in comptime only scopes 2023-12-08 16:54:32 -08:00
heap std: eliminate some uses of usingnamespace 2024-02-01 20:30:42 +00:00
http http: optimize allocations for proxy basic authorization 2024-01-31 15:00:27 +01:00
io std: eliminate some uses of usingnamespace 2024-02-01 20:30:42 +00:00
json Revert "Merge pull request #18410 from dweiller/by-length-slice-bug" 2024-01-13 23:21:44 -07:00
math std.math: make hypot infer type from argument (#17910) 2024-01-20 01:32:07 -05:00
mem mem: explicit dupe and dupeZ error on Allocator 2023-09-07 21:56:57 +03:00
meta AstGen: add error for redundant comptime var in comptime scope (#18242) 2024-01-09 20:09:39 -05:00
net std: disable flaky tcp server test 2023-12-19 12:01:09 -07:00
os std: eliminate some uses of usingnamespace 2024-02-01 20:30:42 +00:00
rand lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
sort lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
tar tar: rename reader to iterator 2024-01-13 19:37:33 -07:00
Target std.Target.Query: avoid using builtin.target.abi 2024-02-02 20:43:01 -07:00
testing std: enable FailingAllocator to fail on resize 2023-09-06 19:06:32 +03:00
Thread Free threads in std.Thread.Pool.init only with pool.join 2024-01-22 11:24:35 -08:00
time all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
tz Support legacy TZ format, expose header struct to a potential writer 2022-01-01 12:47:08 +00:00
unicode all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
valgrind valgrind.memcheck: fix makeMem*() 2023-10-03 02:51:01 -07:00
zig parser: fix "else" followed by "comptime" 2024-01-27 16:20:47 +02:00
array_hash_map.zig std: remove meta.trait 2023-11-22 13:24:27 -05:00
array_list.zig std.ArrayList: pedantic fixups to previous commit 2024-01-19 16:24:51 -07:00
ascii.zig migration: std.math.{min, min3, max, max3} -> @min & @max 2023-06-16 13:44:09 -07:00
atomic.zig rework std.atomic 2023-11-22 19:08:55 -07:00
base64.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
bit_set.zig Merge pull request #17852 from ziglang/zig-reduce 2023-11-04 14:25:50 -04:00
BitStack.zig std.json: Unify stringify and writeStream (#16405) 2023-07-21 19:56:46 -04:00
bounded_array.zig Smaller memory footprint for BoundedArray (#16299) 2023-07-03 13:58:03 -04:00
buf_map.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
buf_set.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
Build.zig std.Build: implement --host-target, --host-cpu, --host-dynamic-linker 2024-02-02 20:43:01 -07:00
builtin.zig langref: make more consistent 2024-01-21 20:39:50 -07:00
c.zig std.os: proper use of inline 2024-01-13 23:56:32 -07:00
child_process.zig child_process: Use security attributes while creating handle. 2024-01-16 01:25:14 -08:00
coff.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
compress.zig gzip: implement compression 2024-01-29 14:30:23 -08:00
comptime_string_map.zig do not enforce function parameters to be marked comptime if only called at comptime 2024-01-19 15:31:18 -08:00
crypto.zig x86_64: implement 128-bit builtins 2023-10-23 22:42:18 -04:00
debug.zig byos: Ease GeneralPurposeAllocator integration 2024-01-16 15:05:38 -08:00
dwarf.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
dynamic_library.zig add ability to open dlls with platform-specific flags (#18370) 2024-01-09 20:11:22 -05:00
elf.zig elf: init output COMDAT group sections 2023-11-09 17:41:14 +01:00
enums.zig Work around stage1 not yet returning null-terminated @typeInfo strings 2024-01-07 16:21:08 +01:00
event.zig std, compiler-rt: remove test names where applicable 2021-09-01 17:54:06 -07:00
fifo.zig std: eliminate some uses of usingnamespace 2024-02-01 20:30:42 +00:00
fmt.zig std.fmt: fix unecessary deref on user-defined format function 2024-01-23 01:03:45 -08:00
fs.zig std.fs.File: flatten struct 2023-11-22 15:24:57 -07:00
hash.zig XXH3 Implementation for Zig STD (#17530) 2023-10-17 13:55:01 -05:00
hash_map.zig std.hash_map: clarify error when Context is missing pub hash/eql 2023-12-23 16:15:19 +02:00
heap.zig std: eliminate some uses of usingnamespace 2024-02-01 20:30:42 +00:00
http.zig Remove some @as coercions from assertions 2024-01-03 21:20:48 +01:00
Ini.zig add std.Ini for basic .ini file parsing 2023-01-11 15:39:48 -08:00
io.zig std.io: replace readStructBig with readStructEndian 2024-01-22 10:53:27 -08:00
json.zig x86_64: pass more tests 2023-10-25 04:28:30 -04:00
leb128.zig Dwarf: improve x86_64 backend debug info 2023-11-12 03:21:52 -05:00
linked_list.zig Revert "std.SinglyLinkedList: add sort function" 2023-11-24 22:33:50 -07:00
log.zig all: zig fmt and rename "@XToY" to "@YFromX" 2023-06-19 12:34:42 -07:00
macho.zig std.macho: add segment flags 2024-01-24 12:48:12 +01:00
math.zig std.math: add wrap function (#18154) 2024-01-14 20:45:39 -05:00
mem.zig mem: add byteswap array support (#17959) 2024-01-14 21:06:31 -05:00
meta.zig std: remove meta.globalOption 2024-01-27 13:56:32 -08:00
multi_array_list.zig Correct expected/actual parameter order of some assertions 2024-01-03 21:20:49 +01:00
net.zig Handle all errors on std.net.Ipv4address.resolveIP 2024-01-21 11:20:03 +02:00
once.zig x86_64: fix std test failures 2023-11-03 23:18:21 -04:00
os.zig std.os: fix chdirZ to compile on Windows (#18695) 2024-01-29 21:19:07 -05:00
packed_int_array.zig std.builtin.Endian: make the tags lower case 2023-10-31 21:37:35 -04:00
pdb.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
priority_dequeue.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
priority_queue.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
process.zig std.process: return u64 in totalSystemMemory 2024-01-23 00:17:53 -08:00
Progress.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
rand.zig std: remove meta.trait 2023-11-22 13:24:27 -05:00
RingBuffer.zig std.RingBuffer.zig: Fix typo in readLastAssumeLength 2023-11-21 13:55:09 +02:00
segmented_list.zig x86_64: implement enough to pass unicode tests 2023-10-23 22:42:18 -04:00
SemanticVersion.zig std.zig.system.NativeTargetInfo: fix glibc version parsing 2023-10-23 06:00:53 -04:00
simd.zig Deprecate suggestVectorSize in favor of suggestVectorLength 2024-01-01 16:18:57 +01:00
sort.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
start.zig stage2 AArch64: get empty file compiling again 2024-01-08 23:53:24 -08:00
start_windows_tls.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00
std.zig std: remove meta.globalOption 2024-01-27 13:56:32 -08:00
tar.zig Permits tar directory path without trailing slash 2024-01-15 18:31:32 +02:00
Target.zig mingw: update build logic 2024-01-20 00:24:39 +00:00
testing.zig std.testing.expectEqualSlices: some improvements 2024-01-08 00:13:21 -07:00
Thread.zig std.Thread: fix off-by-one in PosixThreadImpl (#18711) 2024-01-29 11:07:21 -05:00
time.zig os.uefi: add ns to epoch 2023-12-20 20:05:16 -08:00
treap.zig lib: correct unnecessary uses of 'var' 2023-11-19 09:55:07 +00:00
tz.zig std.builtin.Endian: make the tags lower case 2023-10-31 21:37:35 -04:00
unicode.zig Fix fmt UTF-8 characters as fill (#18533) 2024-01-13 22:47:03 -05:00
Uri.zig std.Uri: change specifier for printing with scheme to semicolon ; 2024-01-18 09:13:04 +02:00
valgrind.zig Fix simple doc mistakes. (#17624) 2023-10-21 21:24:55 +00:00
wasm.zig Fix simple doc mistakes. (#17624) 2023-10-21 21:24:55 +00:00
zig.zig std.Target.Query: remove deprecated API 2024-01-01 17:51:18 -07:00