authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2025-02-03 17:34:55+01:00
committergravatar for noreply@github.comGitHub <noreply@github.com> 2025-02-03 17:34:55+01:00
loge61acd8eb563d3c233202ef3a1a63df384d09943
treeaeba0f914c2084f966028e900f087929bea4cecc
parent7ac110ac250aff4144efa2e29e4ab6610e851514
parent1c288ee857cc98a3cd5065790f1df4590e4c132d
signaturebadge-check Signed by PGP key B5690EEEBB952194

Merge pull request #22713 from mikdusan/openbsd

openbsd: fix stage3 link

2 files changed, 16 insertions(+), 21 deletions(-)

build.zig+9-14
......@@ -791,24 +791,19 @@ fn addCmakeCfgOptionsToExe(
791791 if (target.abi != .msvc) mod.link_libcpp = true;
792792 },
793793 .freebsd => {
794 if (static) {
795 try addCxxKnownPath(b, cfg, exe, b.fmt("libc++.{s}", .{lib_suffix}), null, need_cpp_includes);
796 try addCxxKnownPath(b, cfg, exe, b.fmt("libgcc_eh.{s}", .{lib_suffix}), null, need_cpp_includes);
797 } else {
798 try addCxxKnownPath(b, cfg, exe, b.fmt("libc++.{s}", .{lib_suffix}), null, need_cpp_includes);
799 }
794 try addCxxKnownPath(b, cfg, exe, b.fmt("libc++.{s}", .{lib_suffix}), null, need_cpp_includes);
795 if (static) try addCxxKnownPath(b, cfg, exe, b.fmt("libgcc_eh.{s}", .{lib_suffix}), null, need_cpp_includes);
800796 },
801797 .openbsd => {
802 try addCxxKnownPath(b, cfg, exe, b.fmt("libc++.{s}", .{lib_suffix}), null, need_cpp_includes);
803 try addCxxKnownPath(b, cfg, exe, b.fmt("libc++abi.{s}", .{lib_suffix}), null, need_cpp_includes);
798 // - llvm requires libexecinfo which has conflicting symbols with libc++abi
799 // - only an issue with .a linking
800 // - workaround is to link c++abi dynamically
801 try addCxxKnownPath(b, cfg, exe, b.fmt("libc++.{s}", .{target.dynamicLibSuffix()[1..]}), null, need_cpp_includes);
802 try addCxxKnownPath(b, cfg, exe, b.fmt("libc++abi.{s}", .{target.dynamicLibSuffix()[1..]}), null, need_cpp_includes);
804803 },
805804 .netbsd, .dragonfly => {
806 if (static) {
807 try addCxxKnownPath(b, cfg, exe, b.fmt("libstdc++.{s}", .{lib_suffix}), null, need_cpp_includes);
808 try addCxxKnownPath(b, cfg, exe, b.fmt("libgcc_eh.{s}", .{lib_suffix}), null, need_cpp_includes);
809 } else {
810 try addCxxKnownPath(b, cfg, exe, b.fmt("libstdc++.{s}", .{lib_suffix}), null, need_cpp_includes);
811 }
805 try addCxxKnownPath(b, cfg, exe, b.fmt("libstdc++.{s}", .{lib_suffix}), null, need_cpp_includes);
806 if (static) try addCxxKnownPath(b, cfg, exe, b.fmt("libgcc_eh.{s}", .{lib_suffix}), null, need_cpp_includes);
812807 },
813808 .solaris, .illumos => {
814809 try addCxxKnownPath(b, cfg, exe, b.fmt("libstdc++.{s}", .{lib_suffix}), null, need_cpp_includes);
lib/std/Target.zig+7-7
......@@ -528,13 +528,13 @@ pub const Os = struct {
528528 .freebsd => .{
529529 .semver = .{
530530 .min = .{ .major = 12, .minor = 0, .patch = 0 },
531 .max = .{ .major = 14, .minor = 1, .patch = 0 },
531 .max = .{ .major = 14, .minor = 2, .patch = 0 },
532532 },
533533 },
534534 .netbsd => .{
535535 .semver = .{
536536 .min = .{ .major = 8, .minor = 0, .patch = 0 },
537 .max = .{ .major = 10, .minor = 0, .patch = 0 },
537 .max = .{ .major = 10, .minor = 1, .patch = 0 },
538538 },
539539 },
540540 .openbsd => .{
......@@ -553,31 +553,31 @@ pub const Os = struct {
553553 .macos => .{
554554 .semver = .{
555555 .min = .{ .major = 13, .minor = 0, .patch = 0 },
556 .max = .{ .major = 15, .minor = 2, .patch = 0 },
556 .max = .{ .major = 15, .minor = 3, .patch = 0 },
557557 },
558558 },
559559 .ios => .{
560560 .semver = .{
561561 .min = .{ .major = 12, .minor = 0, .patch = 0 },
562 .max = .{ .major = 18, .minor = 1, .patch = 0 },
562 .max = .{ .major = 18, .minor = 3, .patch = 0 },
563563 },
564564 },
565565 .tvos => .{
566566 .semver = .{
567567 .min = .{ .major = 13, .minor = 0, .patch = 0 },
568 .max = .{ .major = 18, .minor = 1, .patch = 0 },
568 .max = .{ .major = 18, .minor = 3, .patch = 0 },
569569 },
570570 },
571571 .visionos => .{
572572 .semver = .{
573573 .min = .{ .major = 1, .minor = 0, .patch = 0 },
574 .max = .{ .major = 2, .minor = 1, .patch = 0 },
574 .max = .{ .major = 2, .minor = 3, .patch = 0 },
575575 },
576576 },
577577 .watchos => .{
578578 .semver = .{
579579 .min = .{ .major = 6, .minor = 0, .patch = 0 },
580 .max = .{ .major = 11, .minor = 1, .patch = 0 },
580 .max = .{ .major = 11, .minor = 3, .patch = 0 },
581581 },
582582 },
583583