public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Iain Sandoe <iain@sandoe.co.uk>
To: Simon Wright <simon@pushface.org>
Cc: GCC Patches <gcc-patches@gcc.gnu.org>
Subject: Re: [PATCH] Fix PR target/104871 (macosx-version-min wrong for macOS >= Big Sur (darwin20))
Date: Sat, 11 Jun 2022 11:37:22 +0100	[thread overview]
Message-ID: <4DDF0FC0-A5C2-42F0-B0A8-7C8D2DC06784@sandoe.co.uk> (raw)
In-Reply-To: <DF60B854-B5EB-4CD9-A104-F0C056CCC4F9@pushface.org>

Hi Simon,

thanks for the patch.

> On 11 Jun 2022, at 10:17, Simon Wright <simon@pushface.org> wrote:
> 
> (resent with correct address for Iain)
> 
> This is the same sort of problem as in PR80204: at present, GCC 11 & 12 assume that if the 
> OS version is >= 20, the compiler should see --mmacosx-version-min={major - 9}.{minor -1}.0, 
> e.g. for OS version 21.3.0 that would be 12.2.0 (the linker sees -macosx-version-min, same 
> arguments).
> 
> However, the native compiler clang treats 21.3.0 as 12.0.0: the compiler sees
> -triple x86_64-apple-macosx12.0.0
> and the linker sees
> -platform_version macos 12.0.0 
> the result of which is that linking an object file built with clang and one built with gcc gives e.g.
> 
> ld: warning: object file (null.o) was built for newer macOS version (12.2) than being linked (12.0)
> 
> I propose the following patch, which works fine for me (darwin 21.3.0).

this LGTM - just need to sort out a couple of nits and an admin point.

FWIW; the following are honoured in preserving the minor version (so we still have scope for
mismatches if some objects are built this way and others picking up the kernel version) ..

clang -target x86_64-apple-macosx11.3 …
clang -mmacosx-version-min=11.3 …
MACOSX_DEPLOYMENT_TARGET=11.3 clang … (although this seems on at least one version
of xcodem to pass 12.3 to the linker.. hmmm).

I guess you do not have commit access? 
if you do not have an FSF assignment for copyright, are you OK to sign this off using the DCO?

 https://gcc.gnu.org/dco.html

for furture reference, please check that patches conform to GCC coding style (this one has some
whitespace glitches)

thanks,
Iain


> gcc/ChangeLog:
> 	
> 	2022-06-02  Simon Wright  <simon@pushface.org>
> 	
> 	PR target/104871
> 	* config/darwin-driver.cc (darwin_find_version_from_kernel): If the OS version is
>          20 (macOS 11) or greater, report the minor version and the patch level as 0
>          to match Apple clang’s behaviour.
> 
> <pr104871.diff>


  reply	other threads:[~2022-06-11 10:37 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-11  9:17 Simon Wright
2022-06-11 10:37 ` Iain Sandoe [this message]
2022-06-11 19:23   ` Simon Wright
2022-06-11 19:46     ` Iain Sandoe
  -- strict thread matches above, loose matches on Subject: below --
2022-06-08 11:18 Simon Wright
2022-06-04 18:37 Simon Wright

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4DDF0FC0-A5C2-42F0-B0A8-7C8D2DC06784@sandoe.co.uk \
    --to=iain@sandoe.co.uk \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=simon@pushface.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).