From afbbb829eac29e90ba693730641b586194cbef74 Mon Sep 17 00:00:00 2001 From: Laytan Laats Date: Mon, 2 Feb 2026 18:13:48 +0100 Subject: fix LTO on MacOS If no `-minimum-os-version` is given, ignore the `override-module` warnings. The user not using, `-minimum-os-version` opts you into linker warnings about target versions. If a `-minimum-os-version` is provided, normalize it to a full version `11` to `11.0.0` for example. The linker seems to want that when doing LTO. --- src/linker.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/linker.cpp') diff --git a/src/linker.cpp b/src/linker.cpp index f369a5a38..4ad3cf6d2 100644 --- a/src/linker.cpp +++ b/src/linker.cpp @@ -978,6 +978,10 @@ try_cross_linking:; if (build_context.lto_kind != LTO_None) { link_command_line = gb_string_appendc(link_command_line, " -flto=thin"); link_command_line = gb_string_append_fmt(link_command_line, " -flto-jobs=%d ", build_context.thread_count); + + if (is_osx && !build_context.minimum_os_version_string_given) { + link_command_line = gb_string_appendc(link_command_line, " -Wno-override-module "); + } } link_command_line = gb_string_appendc(link_command_line, object_files); -- cgit v1.2.3