| ... | ... | @@ -2350,38 +2350,38 @@ pub const debugger_matrix: []const RunnerTarget = &.{ |
| 2350 | 2350 | }, |
| 2351 | 2351 | }; |
| 2352 | 2352 | |
| 2353 | | fn compatible32bitArch(host: *const std.Target) ?std.Target.Cpu.Arch { |
| 2353 | fn supportedCompatArch(host: *const std.Target, arch: std.Target.Cpu.Arch) bool { |
| 2354 | 2354 | return switch (host.os.tag) { |
| 2355 | 2355 | .freebsd => switch (host.cpu.arch) { |
| 2356 | | .aarch64 => .arm, |
| 2357 | | .powerpc64 => .powerpc, |
| 2358 | | else => null, |
| 2356 | .aarch64 => arch == .arm, |
| 2357 | else => false, |
| 2359 | 2358 | }, |
| 2360 | 2359 | .illumos => switch (host.cpu.arch) { |
| 2361 | | .x86_64 => .x86, |
| 2362 | | else => null, |
| 2360 | .x86_64 => arch == .x86, |
| 2361 | else => false, |
| 2363 | 2362 | }, |
| 2364 | 2363 | .linux => switch (host.cpu.arch) { |
| 2365 | | .aarch64 => .arm, |
| 2366 | | .aarch64_be => .armeb, |
| 2367 | | .mips64 => .mips, |
| 2368 | | .mips64el => .mipsel, |
| 2369 | | .powerpc64 => .powerpc, |
| 2370 | | .sparc64 => .sparc, |
| 2371 | | .x86_64 => .x86, |
| 2372 | | else => null, |
| 2364 | .aarch64 => arch == .arm or arch == .thumb, |
| 2365 | .aarch64_be => arch == .armeb or arch == .thumbeb, |
| 2366 | .mips64 => arch == .mips, |
| 2367 | .mips64el => arch == .mipsel, |
| 2368 | .powerpc64 => arch == .powerpc, |
| 2369 | .riscv64 => arch == .riscv32, |
| 2370 | .sparc64 => arch == .sparc, |
| 2371 | .x86_64 => arch == .x86, |
| 2372 | else => false, |
| 2373 | 2373 | }, |
| 2374 | 2374 | .netbsd => switch (host.cpu.arch) { |
| 2375 | | .riscv64 => .riscv32, |
| 2376 | | .sparc64 => .sparc, |
| 2377 | | .x86_64 => .x86, |
| 2378 | | else => null, |
| 2375 | .riscv64 => arch == .riscv32, |
| 2376 | .sparc64 => arch == .sparc, |
| 2377 | .x86_64 => arch == .x86, |
| 2378 | else => false, |
| 2379 | 2379 | }, |
| 2380 | 2380 | .windows => switch (host.cpu.arch) { |
| 2381 | | .x86_64 => .x86, |
| 2382 | | else => null, |
| 2381 | .x86_64 => arch == .x86, |
| 2382 | else => false, |
| 2383 | 2383 | }, |
| 2384 | | else => null, |
| 2384 | else => false, |
| 2385 | 2385 | }; |
| 2386 | 2386 | } |
| 2387 | 2387 | |
| ... | ... | @@ -2389,11 +2389,8 @@ pub fn isNative(actual_target: *const std.Build.ResolvedTarget, host: *const std |
| 2389 | 2389 | if (actual_target.query.isNative()) return true; |
| 2390 | 2390 | const actual = &actual_target.result; |
| 2391 | 2391 | |
| 2392 | | if (actual.cpu.arch != host.cpu.arch and |
| 2393 | | actual.cpu.arch != compatible32bitArch(host)) |
| 2394 | | { |
| 2392 | if (actual.cpu.arch != host.cpu.arch and !supportedCompatArch(host, actual.cpu.arch)) |
| 2395 | 2393 | return false; |
| 2396 | | } |
| 2397 | 2394 | |
| 2398 | 2395 | if (actual.os.tag != host.os.tag) |
| 2399 | 2396 | return false; |