[MacPorts] #71051: Macports should add a global "use_xcode yes" config option

MacPorts noreply at macports.org
Tue Oct 15 15:01:36 UTC 2024


#71051: Macports should add a global "use_xcode yes" config option
--------------------------+--------------------
  Reporter:  mouse07410   |      Owner:  (none)
      Type:  enhancement  |     Status:  new
  Priority:  Normal       |  Milestone:
 Component:  base         |    Version:
Resolution:               |   Keywords:
      Port:               |
--------------------------+--------------------

Comment (by mouse07410):

 > What you're saying is: something in MacPorts doesn't work, and you want
 the freedom to fix it in such a way that only you benefit and other users
 don't.

 How does this not benefit all the users who happen to have both Xcode and
 CLT installed???


 > The purpose of MacPorts is that the way to build a particular software
 package only has to be discovered once, and that knowledge is then encoded
 into a portfile so that all users can successfully install it without
 needing to know the technical details of how it was done.

 Meaning - you'd rather discover that a specific port fails to build with
 CLT and figure how to address it, even if it takes a longer time. I can
 understand this.


 > Unless the output of {{{xcrun --show-sdk-path}}} is exactly
 {{{/Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk}}} (replacing
 {{{12}}} with your major OS version), no, that would not be better

 Well, the main reason I made that suggestion was **exactly** the fact that
 it returns {{{....../MacOSX.sdk}}}. Thus, automatically fixing the problem
 when Xcode include only the "next-version" SDK (e.g., on MacOS-14 it only
 offered MacOSX15.sdk - which worked with MacOS-14), and the CLT version of
 SDK (MacOSX14.x.sdk failed to work, even though it was still MacOS-14).

 I'm not sure I appreciate al the implications, but off-hand I don't see
 why you'd rather use {{{MacOSX12.sdk}}} instead of {{{MacOSX.sdk}}}.

 > {{{xcrun}}} does not exist on every macOS version MacPorts works on

 Sorry, I did not know that.


 > Xcode frequently only includes the latest SDK, whereas the CLT typically
 contains both the latest SDK and the one that matches the OS version, so
 this is another reason why we prefer using the CLT SDK for software that
 does not require Xcode

 True, except that CLT often is delayed - sometimes considerably so,
 compared to Xcode release. And in my place timely updates (including
 Xcode) are mandatory (i.e., not up to me whether or when to apply them).

-- 
Ticket URL: <https://trac.macports.org/ticket/71051#comment:12>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list