| ... | ... | @@ -60,7 +60,12 @@ pub fn picLevel(target: std.Target) u32 { |
| 60 | 60 | /// This is not whether the target supports Position Independent Code, but whether the -fPIC |
| 61 | 61 | /// C compiler argument is valid to Clang. |
| 62 | 62 | pub fn supports_fpic(target: std.Target) bool { |
| 63 | | return target.os.tag != .windows and target.os.tag != .uefi; |
| 63 | return switch (target.os.tag) { |
| 64 | .windows, |
| 65 | .uefi, |
| 66 | => target.abi == .gnu or target.abi == .cygnus, |
| 67 | else => true, |
| 68 | }; |
| 64 | 69 | } |
| 65 | 70 | |
| 66 | 71 | pub fn alwaysSingleThreaded(target: std.Target) bool { |