[CMake] OSX Leopard- compiling for Tiger and later
Mike Jackson
mike.jackson at imts.us
Wed Jul 2 17:41:44 EDT 2008
On Jul 2, 2008, at 5:29 PM, Sean McBride wrote:
> On 7/2/08 2:00 PM, Eric Torstenson said:
>
>>> what happens if you just set the CMAKE_OSX_SYSROOT variable to the
>>> 10.4u sdk? Is that enough?
>>>
>>
>> Thanks to Sean's previous post, I set the following variables:
>> IF (APPLE)
>> SET (CMAKE_OSX_ARCHITECTURES "i386") #x86_64 ppc ppc64
>> SET (CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.4u.sdk")
>> END (APPLE)
>>
>> This results in the right version of the compiler being called. I
>> haven't finished compiling it,
>> due to other dependencies, so we will see if that works once I get
>> those
>> ironed out.
>>
>> There was a reference to a deployment variable, which might be
>> what the
>> article from sean's
>> post was requesting. However, I'm not sure if I'll need that once
>> I get
>> all the way to linking or
>> not.
>
> The difference between the 'deployment target' and 'sdk' are widely
> misunderstood. Here's something from some post somewhere that I
> keep in
> my notes file:
>
> ----
> The SDK (SDKROOT) you choose specifies the *maximum* version of the OS
> that you want to *use features from*. There is another build setting,
> the deployment target (MACOSX_DEPLOYMENT_TARGET) that specifies the
> *minimum* version of the OS that you want to *run on*.
>
> You don't need to use the 10.3.9 SDK to support 10.3.9, the SDK only
> describes the highest version of Mac OS X you support. You
> determine the
> lowest version of Mac OS X you support by setting the "Mac OS X
> Deployment Target" in the target's build options.
>
> Any function that is supported on your Deployment target or earlier
> are
> hard linked (and your software won't load on earlier versions of the
> OS). Any functions that were introduced after your deployment
> target are
> weak linked. Any functions introduced after your SDK version are
> unavailable.
> ----
>
> So it sounds to me like Eric should use the 10.5 SDK and set the
> deployment target to 10.4.
>
> --
> ____________________________________________________________
> Sean McBride, B. Eng sean at rogue-research.com
> Rogue Research www.rogue-research.com
> Mac Software Developer Montréal, Québec, Canada
>
So is this something we can just hack into the Darwin.cmake file for
our own use? I already hacked it to default to dwarf debugging on
10.4. The same could be done to at least allow us to take a default
or change it to something else.
--
Mike Jackson Senior Research Engineer
Innovative Management & Technology Services
More information about the CMake
mailing list