> My Apple platforms are: 
>>>
>>>    - AppleTVOS.platform 
>>>    - AppleTVSimulator.platform 
>>>    - MacOSX.platform 
>>>    - WatchOS.platform 
>>>    - WatchSimulator.platform 
>>>    - iPhoneOS.platform 
>>>    - iPhoneSimulator.platform
>>>    
>>> Each has their own versions (Apple TV only has 9.1, iPhone and 
>>> iPhoneSimulator have 9.2, WatchOS has 2.1)
>>> Simulator may need i386, or x86_64, depending on the device being 
>>> simulated.
>>>
>>
>> Oh, wow. The list of SDKs has gotten big. There's definitely some pain 
>> points, like trying to build for Apple TV and Watch.
>>
>> How do you think the script should operate? Or how would you expect to 
>> use it? (The open question for me is how to select, say, ARMv7 and ARMv7s, 
>> since they are both iPhoneOS).
>>
>> Jeff
>>
>
>  Well I have no idea the use cases for WatchOS and the like, iPhone is 
> clearly dominant. So I think just wrapping the do in another do for 
> card-coded iPhoneOS, iPhoneSimulator, since these are not added often. We 
> use an iPhone 4S, which is about as far back as you can reasonably go 
> (2010). ARMv7, The 5 is a ARM7s variety. http://iossupportmatrix.com/
>
> As for the SDKs:
> for i in `ls`; do ls -l $i/Developer/SDKs; done
> total 8
> drwxrwxr-x  7 root  wheel  238 Jan  6 12:02 AppleTVOS.sdk
> lrwxr-xr-x  1 root  wheel   13 Jan  6 12:01 AppleTVOS9.1.sdk -> 
> AppleTVOS.sdk
> total 8
> ...
>
>
> Maybe just drop the version and use the symlinks?
>

Yeah, that sounds like a good idea. Do you know how far back it works with 
Xcode?

As for the other issues surrounding the script, it seems we really need to 
control:

 * SDK and version (IPhoneOS, WatchOS, etc)
    - your solution 

* Architecture
    - maybe, depending on 32 vs 64-bit
    - can we use, say ARMv7 for ARMv7s
    - should be OK as we don't use SIMD insns
    - may require -force_cpusubtype_ALL
    - maybe architecture should be optional
      - if not specified, use common subset (ARMv7 for ARMv7s)
      - if specified, use it instead (user asked for ARMv7s)

* C++ runtime
    - still need GNU vs LLVM
    - LLVM by default

That means we would invoke the script as:

    # iPhone, ARMv7, LLVM
    ./setenv-ios iPhoneOS

    # iPhone, ARMv7s, LLVM
    ./setenv-ios iPhoneOS armv7s

    # iPhone, ARMv7, GNU
    ./setenv-ios iPhoneOS gnu

    # iPhone, ARMv7s, GNU
    ./setenv-ios iPhoneOS armv7s gnu

    # iWatch (ARM or MIPS or AVR?), LLVM
    ./setenv-ios WatchOS

   ...

Fat binaries has been a pain point for me for years. Rather than supporting 
them in the script, maybe we should just state a policy of "we don't do 
them; use xcrun and lipo to create them".

What do you think?

Jeff

-- 
-- 
You received this message because you are subscribed to the "Crypto++ Users" 
Google Group.
To unsubscribe, send an email to cryptopp-users-unsubscr...@googlegroups.com.
More information about Crypto++ and this group is available at 
http://www.cryptopp.com.
--- 
You received this message because you are subscribed to the Google Groups 
"Crypto++ Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cryptopp-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to