| author | |
| committer | |
| log | b66fe565db650bbac17c7fd6559734f7d658f36d |
| tree | 0e6c76948382f513ddbb26dbaf720c7292c38277 |
| parent | c606ad4ce342fc8c69f94810b6d30b3d0fcc266f |
| signature |
These operating systems share a lineage but it almost never makes sense to
consider them together. Current-day Darwin being included is also likely to be a
surprise to many.4 files changed, 22 insertions(+), 5 deletions(-)
lib/compiler/aro/aro/Target.zig+4-1| ... | ... | @@ -523,7 +523,10 @@ pub fn systemCompiler(target: *const Target) LangOpts.Compiler { |
| 523 | 523 | // the rest for documentation as fn returns .clang |
| 524 | 524 | if (target.os.tag.isDarwin() or |
| 525 | 525 | target.abi.isAndroid() or |
| 526 | target.os.tag.isBSD() or | |
| 526 | target.os.tag == .dragonfly or | |
| 527 | target.os.tag == .freebsd or | |
| 528 | target.os.tag == .netbsd or | |
| 529 | target.os.tag == .openbsd or | |
| 527 | 530 | target.os.tag == .fuchsia or |
| 528 | 531 | target.os.tag == .illumos or |
| 529 | 532 | target.os.tag == .haiku or |
lib/std/Target.zig+1| ... | ... | @@ -89,6 +89,7 @@ pub const Os = struct { |
| 89 | 89 | }; |
| 90 | 90 | } |
| 91 | 91 | |
| 92 | /// Deprecated; to be removed in 0.18.0. Check for relevant tags instead. | |
| 92 | 93 | pub inline fn isBSD(tag: Tag) bool { |
| 93 | 94 | return tag.isDarwin() or switch (tag) { |
| 94 | 95 | .freebsd, .openbsd, .netbsd, .dragonfly => true, |
src/target.zig+8-3| ... | ... | @@ -303,9 +303,14 @@ pub fn selfHostedBackendIsAsRobustAsLlvm(target: *const std.Target) bool { |
| 303 | 303 | // https://github.com/ziglang/zig/issues/25699 |
| 304 | 304 | return false; |
| 305 | 305 | } |
| 306 | if (target.os.tag.isBSD()) { | |
| 307 | // Self-hosted linker needs work: https://github.com/ziglang/zig/issues/24341 | |
| 308 | return false; | |
| 306 | // Self-hosted linker needs work: https://github.com/ziglang/zig/issues/24341 | |
| 307 | switch (target.os.tag) { | |
| 308 | .dragonfly, | |
| 309 | .freebsd, | |
| 310 | .netbsd, | |
| 311 | .openbsd, | |
| 312 | => return false, | |
| 313 | else => {}, | |
| 309 | 314 | } |
| 310 | 315 | return switch (target.ofmt) { |
| 311 | 316 | .elf, .macho => true, |
test/tests.zig+9-1| ... | ... | @@ -3041,7 +3041,15 @@ pub fn wouldUseLlvm(use_llvm: ?bool, query: std.Target.Query, optimize_mode: Opt |
| 3041 | 3041 | switch (cpu_arch) { |
| 3042 | 3042 | .x86_64 => { |
| 3043 | 3043 | if (std.Target.ptrBitWidth_arch_abi(cpu_arch, query.abi orelse .none) != 64) return true; |
| 3044 | if (os_tag.isBSD() or os_tag == .illumos) return true; | |
| 3044 | if (os_tag == .illumos) return true; | |
| 3045 | switch (os_tag) { | |
| 3046 | .dragonfly, | |
| 3047 | .freebsd, | |
| 3048 | .netbsd, | |
| 3049 | .openbsd, | |
| 3050 | => return true, | |
| 3051 | else => {}, | |
| 3052 | } | |
| 3045 | 3053 | return switch (ofmt) { |
| 3046 | 3054 | .elf, .macho => return false, |
| 3047 | 3055 | else => return true, |