| ... | @@ -466,10 +466,11 @@ pub const Os = struct { | ... | @@ -466,10 +466,11 @@ pub const Os = struct { |
| 466 | .max = .{ .major = 7, .minor = 2, .patch = 0 }, | 466 | .max = .{ .major = 7, .minor = 2, .patch = 0 }, |
| 467 | }, | 467 | }, |
| 468 | .glibc = blk: { | 468 | .glibc = blk: { |
| 469 | // For 32-bit targets that traditionally used 32-bit time, we require | 469 | // |
| 470 | // glibc 2.34 for full 64-bit time support. For everything else, we only | | |
| 471 | // require glibc 2.31. | | |
| 472 | const default_min: std.SemanticVersion = switch (arch) { | 470 | const default_min: std.SemanticVersion = switch (arch) { |
| | 471 | // For 32-bit targets that traditionally used 32-bit time, we |
| | 472 | // require 2.34 for full 64-bit time support. For everything else, |
| | 473 | // we only require 2.31. |
| 473 | .arm, | 474 | .arm, |
| 474 | .armeb, | 475 | .armeb, |
| 475 | .csky, | 476 | .csky, |
| ... | @@ -486,6 +487,10 @@ pub const Os = struct { | ... | @@ -486,6 +487,10 @@ pub const Os = struct { |
| 486 | .{ .major = 2, .minor = 34, .patch = 0 } | 487 | .{ .major = 2, .minor = 34, .patch = 0 } |
| 487 | else | 488 | else |
| 488 | .{ .major = 2, .minor = 31, .patch = 0 }, | 489 | .{ .major = 2, .minor = 31, .patch = 0 }, |
| | 490 | // We need 2.32 because it was the first version to fully support |
| | 491 | // IEEE 128-bit `long double` (via `-mabi=ieeelongdouble`). |
| | 492 | .powerpc64le, |
| | 493 | => .{ .major = 2, .minor = 32, .patch = 0 }, |
| 489 | else => .{ .major = 2, .minor = 31, .patch = 0 }, | 494 | else => .{ .major = 2, .minor = 31, .patch = 0 }, |
| 490 | }; | 495 | }; |
| 491 | | 496 | |