develooper Front page | perl.perl5.porters | Postings from October 2015

[perl #126360] MACOSX_DEPLOYMENT_TARGET

Thread Previous | Thread Next
From:
Jarkko Hietaniemi via RT
Date:
October 15, 2015 10:57
Subject:
[perl #126360] MACOSX_DEPLOYMENT_TARGET
Message ID:
rt-4.0.18-5357-1444906636-901.126360-15-0@perl.org
On Wed Oct 14 19:53:57 2015, craig.a.berry@gmail.com wrote:
> On Wed, Oct 14, 2015 at 5:39 PM, Jarkko Hietaniemi via RT
> <perlbug-followup@perl.org> wrote:
> 
> > I think as reasonable first step we could just apply Jens' patch.
> 
> I like the idea of detecting what the environment can do and deciding
> based on that, but I see a potential problem with this particular
> approach, assuming I've read the patch at
> 
> https://rt.perl.org/Public/Ticket/Attachment/1332434/711615/0002-very-
> first-step-to-tidy-up-mess-around-sdk-to-use.patch
> 
> correctly.
> 
> It's doing
> 
> $ xcrun --show-sdk-version
> 10.11
> 
> and using the output of that to set the deployment target.
> 
> I happen to be on OS X 10.10 but have installed XCode 7.0.1, which has
> a base SDK of 10.11.  If I use 10.11 as the deployment target on my
> 10.10 system, I would not be making binaries I could even run on my
> current system would I?  To me the base SDK looks more like the
> maximum features you can include and is not really suitable for
> selecting the minimum system you want to target.

But this is a problem created by Apple, is it not?  They released a SDK
that works at k+1, while also being able to be installed and run at k?
I think we also should be safe to assume that within such a small
window the binaries will be also (really) backward-compatible.

On the selection of the target level we have at least two options:
(a) Jens' patch which used the installed SDK to divine a safe (max) level
(b) hardcode something to the hints (e.g. 10.4 if we want to be
superconservative, that would still include PPC, or 10.4 if we are
in a PPC; and then 10.7 for *x86*)

The upside of (a) is that it will automagically be future-proof.

The upside of (b) is that it is predictable and stable.

The downside of (a) is ... mmm, maybe if Apple at some point
really breaks the bincompat between k and k+1, introducing a SDK
that really shouldn't be used at k?  Too crazy?

The downside of (b) is that at some point in future the 10.7
will eventually become too dusty, and needs updating.


---
via perlbug:  queue: perl5 status: open
https://rt.perl.org/Ticket/Display.html?id=126360

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About