-
-
Notifications
You must be signed in to change notification settings - Fork 335
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support ARM64 macOS builds #86
Support ARM64 macOS builds #86
Conversation
Correction: The frameworks produced with Xcode 12 beta do have the minimum deployment targets set to iOS 8.0 and macOS 10.9, even though iOS 6.0 and macOS 10.8 were passed to the compiler (which, funnily enough, is visible inside the final binaries). |
this is fantastic! I'll back to it ASAP |
@DarkDust just to clarify. With these changes, does it still build with Xcode 11? |
Something is off with result. After I run the script,
|
Oh, sorry, I‘ll look into this tomorrow. |
We can't just build it using the SDK version and other information, as the reported version may be different from the SDK path (e.g. 10.15.4 for the version, but the actual SDK path has just 10.15).
I found the problem: even though the SDK version is This means we don't need the The updated version now builds both with Xcode 11 and 12 beta. |
9F4A2707223BD900005CB63A /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9F4A2705223BD900005CB63A /* libssl.a */; }; | ||
9F4A2708223BD900005CB63A /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9F4A2706223BD900005CB63A /* libcrypto.a */; }; | ||
9F4A2707223BD900005CB63A /* libssl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9F4A2705223BD900005CB63A /* libssl.a */; platformFilter = ios; }; | ||
9F4A2708223BD900005CB63A /* libcrypto.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9F4A2706223BD900005CB63A /* libcrypto.a */; platformFilter = ios; }; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
will it till build macOS version?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@krzyzanowskim It seems to be something Xcode 11 and above is setting. I don't know what effect this has, but I was able to build for macOS with Xcode 11.4.
@DarkDust thank you! |
This provides basic support for building OpenSSL on macOS for ARM64 as well.
This pull request needs to make a number of changes:
1.0.2u-MacOSX-arm64.build.log
) since there are now two (or three) OSs which build for ARM64..config.
and.build.
so that the later doesn't overwrite the former any more.darwin64-arm64-cc
target in OpenSSL, butiphone-cross
seems to work just fine when given the macOS SDK.build()
and that function was refactored a bit.build()
's second argument is now repurposed (and renamed) toOS
as theSDK
wasn't needed at that point any more, butOS
was.OpenSSL.xcconfig
, to work around a current limitation in Xcode 12 beta (see below).Known issues/limitations
BUILD_IPHONESIMULATOR_ARM64
because of that. It's currently never set, once Xcode does support building iPhoneSimulator for ARM64 we can set it.OpenSSL.xcconfig
is for.libcrypto.a
andlibssl.a
contain the armv7s architecture, but the finalOpenSSL.framework
does not. I don't know why, yet.