Hate to be the bearer of bad news, but those symbols (now along with _ 
SecTrustEvaluateAsync) are still causing linker issues.

I've tried building for both, 10.6, as well as, 10.5.

I'm using bash, so this is what my environment variable definition looks like - 
export MACOSX_DEPLOYMENT_TARGET="10.6"
(and then export MACOSX_DEPLOYMENT_TARGET="10.5" for 10.5)

One thing I should point is that I'm using a modified version of this script - 
http://curl.haxx.se/cvssource/MacOSX-Framework 
Essentially, it uses the 10.8 SDK.  I'm thinking that should be fine, since 
we're ensuring backward compatibility using ' MACOSX_DEPLOYMENT_TARGET'.  I 
could alter the script so that it uses an older SDK, but Mountain Lion only 
goes back to 10.7.  I'm sure there's a way to get the 10.6 SDK on my Mountain 
Lion machine, have the script use the 10.6 SDK instead, but my gut feeling is 
that I'm using a canon to kill a fly at that point.  Not to mention that I'd be 
back to using the old APIs if I bring in the 10.6 SDK.

I really don't want to take up much more of anyone's time (and thank you for 
your comments thus far!), but if there are any pointers as to what I might be 
missing, I'm all ears.

Thanks,
Arun.

-----Original Message-----
From: curl-library [mailto:[email protected]] On Behalf Of Nick 
Zitzmann
Sent: Tuesday, July 30, 2013 4:34 PM
To: libcurl development
Subject: Re: libcurl 7.29.0 --with-darwinssl built on OXS 10.8 to run on 10.6


On Jul 30, 2013, at 3:04 PM, Clemens Gruber <[email protected]> wrote:

> Nick, does this mean that if the environment variable is set when compiling 
> libcurl, stubs are inserted into the library  to be used for the new API on 
> older systems? Do you know how this works?

Apple explains how it works here: 
<https://developer.apple.com/library/mac/#documentation/MacOSX/Conceptual/BPFrameworks/Concepts/WeakLinking.html>

Basically, the curl_darwinssl code is written to use the new API if you are 
using a newer SDK and the symbols exist on the user's Security framework. If 
they don't exist, and MACOSX_DEPLOYMENT_TARGET was set to an older cat, then 
the code will fall back to the old API. If MACOSX_DEPLOYMENT_TARGET wasn't set, 
or wasn't set far back enough, then you can expect linker and runtime errors on 
older cats.

Nick Zitzmann
<http://www.chronosnet.com/>


-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette:  http://curl.haxx.se/mail/etiquette.html



-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette:  http://curl.haxx.se/mail/etiquette.html

Reply via email to