zig/lib/std/build
Andrew Kelley 4616af0ca4
introduce operating system version ranges as part of the target
* re-introduce `std.build.Target` which is distinct from `std.Target`.
   `std.build.Target` wraps `std.Target` so that it can be annotated as
   "the native target" or an explicitly specified target.
 * `std.Target.Os` is moved to `std.Target.Os.Tag`. The former is now a
   struct which has the tag as well as version range information.
 * `std.elf` gains some more ELF header constants.
 * `std.Target.parse` gains the ability to parse operating system
   version ranges as well as glibc version.
 * Added `std.Target.isGnuLibC()`.
 * self-hosted dynamic linker detection and glibc version detection.
   This also adds the improved logic using `/usr/bin/env` rather than
   invoking the system C compiler to find the dynamic linker when zig
   is statically linked. Related: #2084
   Note: this `/usr/bin/env` code is work-in-progress.
 * `-target-glibc` CLI option is removed in favor of the new `-target`
   syntax. Example: `-target x86_64-linux-gnu.2.27`

closes #1907
2020-02-28 14:51:53 -05:00
..
check_file.zig rework and improve some of the zig build steps 2020-01-05 02:19:22 -05:00
emit_raw.zig Add InstallRawStep to Zig build system that does a similar job to llvm-objcopy. To use it, do 'exe.installRaw("kernel.bin");' where exe is a LibExeObjStep 2020-02-03 15:07:34 -05:00
fmt.zig mv std/ lib/ 2019-09-25 23:35:41 -04:00
run.zig introduce operating system version ranges as part of the target 2020-02-28 14:51:53 -05:00
translate_c.zig test harness: show annotated case name when translate-c test fails 2020-01-07 13:40:17 -05:00
write_file.zig rework and improve some of the zig build steps 2020-01-05 02:19:22 -05:00