FYI...
Apple has decided to deprecate OpenSSL in MacOS 10.8 and above. As of 10.11, they completely removed it from their SDK, which means it's no longer available for sipe-adium... so building on 10.11 (or later) breaks.
A couple of suggestions on how to fix this...
1) Include a version of OpenSSL in the adium area of the source tree, and statically link it at build.
2) Change the build instructions to have builders pull a copy of OpenSSL from somewhere like macports, or homebrew, and statically link it at build.
3) Re-factor the security code in sipe-core to split between the OpenSSL implementation, and a MacOS native libraries (CommonCrypto/Secure Transport) implementation.
I would love to help out (I've been a proud supporter of the project in the past), but my current life doesn't provide a lot of time to fix code. :(
Ticket moved from /p/sipe/bugs/319/
Can't be converted:
This is not a bug but a feature request.
You also forgot to mention option (4): install an older Xcode (6.3 or 7?) on with a SDK that supports OS X 10.9. That is what I have done on the Mac I have access to.
Unless someone provides an easy way how option (2) can be implemented, option (4) will be the only option. As long as Adium supports OS X older than 10.9 I don't see this as a real issue.
Option (5): download OpenSSL source and add (partial) OpenSSL subproject to SIPE-Adium Xcode project. This might less cumbersome than option (2).
When the project used NSS, I had essentially done Option (2) for it... so I could probably take some time and figure out how to do that for OpenSSL.
I would not recommend it. Option (2) made it almost impossible for a normal user to reproduce a working build.
Option (5) should be much simpler to implement and much easier to use.
Boy, oh boy, why do developers accept the crap Apple piles onto them?
I can only hope that I can still produce valid release Adium releases with XCode 7.x...
Test build of git HEAD using the new build environment (Xcode 8.x on macOS 10.12, targetting OS X 10.9) can be found in the development files area. It would be nice if someone could download and test it, as this will be the build environment for future releases.
Yes, I know that adium 1.5.10.4 is the latest version, but that fails to build on Xcode 8.x.
I started to play around with option (5) and stumbled over a much much simpler solution.
Thus option (6):
openssl-0.9.8za
release source code (why? Because that is the release the OpenSSL dynamic libraries included in Mac OS X are based on)opensslconf.h
from Mac OS X SDK 10.9 to src/adium/openssl/ (this makes sure we get the correct flags).
(for openssl/opensslconf.h to override the one in the OpenSSL include directory) and../../../openssl-0.9.8za/include
(for all other openssl/xxx.h) to header search path-lxml2
to linker options insteadNow the code compiles and links in Xcode 8.3.3 on macOS 10.12.5 without making any changes to the project. It seems that Xcode automatically links against the OpenSSL library from the SDK or generates code that automatically loads it. I.e. only the OpenSSL headers need to be provided and nothing else is required from the SDK.
The generated SIPE binary works fine on my Mac.
Implemented in git commit 8d6b615
It seems that Adium 1.5.10.4 does not compile for SDKs older than OS X 10.11. Therefore future release builds will be for SDK OS X 10.11 and Adium 1.5.10.4.
Michael: I uploaded a build of git HEAD to the development directory. It would be nice if you could try it out.
sigh of course I got the name wrong. The build is for OS X 10.11.