Opened 9 years ago

Last modified 8 years ago

#49126 assigned defect

class-dump @3.5 (devel) build failure when MacOSX10.9.sdk doesn't exist

Reported by: CharlesJS Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.3.4
Keywords: Cc: ryandesign (Ryan Carsten Schmidt)
Port: class-dump

Description

The build for class-dump sets SDKROOT as follows:

SDKROOT="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk"

Unfortunately, the MacOSX10.9.sdk SDK doesn't exist anymore in Xcode 7, so the build fails.

Suggest: changing this to use MacOSX10.11.sdk instead.

Attachments (1)

class-dump.diff (1.3 KB) - added by ryandesign (Ryan Carsten Schmidt) 9 years ago.

Download all attachments as: .zip

Change History (3)

comment:1 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign@… added
Owner: changed from macports-tickets@… to cedric.luthi@…
Port: class-dump added
Summary: class-dump @3.5 (devel) build failureclass-dump @3.5 (devel) build failure when MacOSX10.9.sdk doesn't exist

We can't unconditionally set the SDK version to 10.11 because obviously that would fail on earlier versions of Xcode that don't have a 10.11 SDK. Ports usually shouldn't be setting an SDK version, and should instead allow the MacPorts configured SDK to be used. The exception is when a port cannot be built with a particular SDK, as is the case here: the 10.8 SDK won't work. So we should look specifically if the 10.8 SDK is being requested, and if so, use the 10.9 SDK, otherwise use the MacPorts configured SDK.

I believe the attached patch is a step in the right direction, but I'm encountering other build errors on Yosemite, and I want to test on Mountain Lion also before committing it.

Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Attachment: class-dump.diff added

comment:2 Changed 8 years ago by kurthindenburg (Kurt Hindenburg)

Owner: changed from 0xced to macports-tickets@…
Status: newassigned
Note: See TracTickets for help on using tickets.