tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: lang/gcc10 does not compile with Darwin 20.5.0 + Xcode 11.4





On 5/28/21 9:17 AM, Jason Bacon wrote:
On 5/27/21 5:32 PM, Brook Milligan wrote:
I have two different Macs, one of which compiles gcc10 and one of which does not. �Both are using current pkgsrc.

The successful one is:

MacOS 11.1
Darwin�20.2.0�
Xcode 12.4
SDK 11.1

The unsuccessful one is:

MacOS 11.4
Darwin�20.5.0
Xcode�12.5
SDK 11.3

The latter also will not compile gcc8 or gcc9. �Note that I added�OSX_SDK_MAP.11.4=11.3 to mk/platform/Darwin.mk because of the version slew.

All of these gcc package fail when the stage 2 and stage 3 files are compared; otherwise the builds seem to progress fine.

I am not seeing any relevant bulk builds to indicate whether this is a known problem.

I would greatly appreciate any suggestions on how to make this work.

Thank you very much.

Cheers,
Brook

Coincidentally, I was just working on this issue, which also affects bootstrap and other packages that require cwrappers.

The SDK version has fallen behind the OS version (again).� My existing trees and new bootstraps started failing after the last routine MacOS updates.� The solution appears to be mapping 11.4 to 11.3 in Darwin.mk:

#
# Apple do not always keep the SDK version in step with the OS version.� When # that happens add a mapping below, but only within the same OS release major.
#
OSX_SDK_MAP.11.2=������ 11.1
+OSX_SDK_MAP.11.4=������ 11.3
#
OSX_SDK_PATH!=� /usr/bin/xcrun \
������������������� --sdk macosx${OSX_SDK_MAP.${OSX_VERSION}:U${OSX_VERSION}} \ ������������������� --show-sdk-path 2>/dev/null || echo /nonexistent

I just completed a successful bootstrap with this patch.� Any concerns about committing it?


Let's try that again without Thunderbird's HTML formatting...

#
# Apple do not always keep the SDK version in step with the OS version. When # that happens add a mapping below, but only within the same OS release major.
#
OSX_SDK_MAP.11.2=       11.1
+OSX_SDK_MAP.11.4=       11.3
#
OSX_SDK_PATH!=  /usr/bin/xcrun \
--sdk macosx${OSX_SDK_MAP.${OSX_VERSION}:U${OSX_VERSION}} \
                    --show-sdk-path 2>/dev/null || echo /nonexistent

This is only a quick fix that won't save us from the next time OSX_VERSION is bumped without upgrading the SDK. It also prevents us from using SDK 11.4 if apple releases it at a later date.

I wonder if it would be better to just check for the existence of

/SDK-path/MacOSX${OSX_VERSION}.sdk

and fall back on a previous version if it doesn't exist.


Home | Main Index | Thread Index | Old Index