diff options
author | Stefan Radomski <radomski@tk.informatik.tu-darmstadt.de> | 2014-07-04 13:00:48 (GMT) |
---|---|---|
committer | Stefan Radomski <radomski@tk.informatik.tu-darmstadt.de> | 2014-07-04 13:00:48 (GMT) |
commit | 791c99ed223c8491c9da2c9863da07cc84122514 (patch) | |
tree | 69154cf6e91fc8e6dc1993fa928a957803ede9ab /contrib/cmake | |
parent | f0e9ecf5bc708f57270f8b7e3abb50538224c3ef (diff) | |
download | uscxml-791c99ed223c8491c9da2c9863da07cc84122514.zip uscxml-791c99ed223c8491c9da2c9863da07cc84122514.tar.gz uscxml-791c99ed223c8491c9da2c9863da07cc84122514.tar.bz2 |
Polished iOS builds and docs
Diffstat (limited to 'contrib/cmake')
-rw-r--r-- | contrib/cmake/CrossCompile-iOS-Sim.cmake | 18 | ||||
-rw-r--r-- | contrib/cmake/CrossCompile-iOS.cmake | 31 |
2 files changed, 32 insertions, 17 deletions
diff --git a/contrib/cmake/CrossCompile-iOS-Sim.cmake b/contrib/cmake/CrossCompile-iOS-Sim.cmake index 5a11761..7ed22fb 100644 --- a/contrib/cmake/CrossCompile-iOS-Sim.cmake +++ b/contrib/cmake/CrossCompile-iOS-Sim.cmake @@ -2,9 +2,7 @@ # build$ cmake .. -DCMAKE_TOOLCHAIN_FILE=../contrib/cmake/CrossCompile-iOS-Sim.cmake SET(CMAKE_SYSTEM_NAME Generic) -if ("$ENV{IOS_SDK_VERSION}" STREQUAL "") - SET(CMAKE_SYSTEM_VERSION 6.1) -else() +if (NOT "$ENV{IOS_SDK_VERSION}" STREQUAL "") SET(CMAKE_SYSTEM_VERSION $ENV{IOS_SDK_VERSION}) endif() SET(CMAKE_SYSTEM_PROCESSOR i386) @@ -12,6 +10,7 @@ SET(CMAKE_SYSTEM_PROCESSOR i386) SET(ARCHS "-arch i386") SET(CMAKE_CROSSCOMPILING_TARGET IOS) SET(CMAKE_OSX_ARCHITECTURES "i386") +SET(IOS_MINPHONE_OS "4.3") SET(IOS ON) SET(IOSSIM ON) SET(UNIX ON) @@ -44,6 +43,10 @@ if (IOS6_OR_LATER) # we have to use clang - llvm will choke on those __has_feature macros? SET (CMAKE_C_COMPILER "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang") SET (CMAKE_CXX_COMPILER "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++") + SET (CMAKE_AR "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar" CACHE FILEPATH "" FORCE) + SET (CMAKE_LINKER "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" CACHE FILEPATH "" FORCE) + SET (CMAKE_NM "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm" CACHE FILEPATH "" FORCE) + SET (CMAKE_STRIP "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip" CACHE FILEPATH "" FORCE) if ($ENV{MACOSX_DEPLOYMENT_TARGET}) message(FATAL_ERROR "llvm will croak with MACOSX_DEPLOYMENT_TARGET environment variable set when building for ios - unset MACOSX_DEPLOYMENT_TARGET") @@ -68,15 +71,16 @@ set(CMAKE_SYSTEM_FRAMEWORK_PATH /System/Library/Frameworks) # force compiler and linker flags -SET(CMAKE_C_LINK_FLAGS ${ARCHS}) -SET(CMAKE_CXX_LINK_FLAGS ${ARCHS}) -SET(CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS} --sysroot=${SDKROOT}") -SET(CMAKE_CXX_LINK_FLAGS "${CMAKE_C_LINK_FLAGS} --sysroot=${SDKROOT}") +SET(CMAKE_C_LINK_FLAGS "${ARCHS} --sysroot=${SDKROOT} -miphoneos-version-min=${IOS_MINPHONE_OS}") +SET(CMAKE_CXX_LINK_FLAGS "${ARCHS} --sysroot=${SDKROOT} -miphoneos-version-min=${IOS_MINPHONE_OS}") +# SET(CMAKE_C_LINK_FLAGS "${CMAKE_C_LINK_FLAGS} --sysroot=${SDKROOT}") +# SET(CMAKE_CXX_LINK_FLAGS "${CMAKE_C_LINK_FLAGS} --sysroot=${SDKROOT}") # SET(CMAKE_C_FLAGS ${ARCHS}) # C_FLAGS wont stick, use ADD_DEFINITIONS instead # SET(CMAKE_CXX_FLAGS ${ARCHS}) ADD_DEFINITIONS(${ARCHS}) ADD_DEFINITIONS("--sysroot=${SDKROOT}") +ADD_DEFINITIONS("-miphoneos-version-min=${IOS_MINPHONE_OS}") # ios headers INCLUDE_DIRECTORIES(SYSTEM "${SDKROOT}/usr/include") diff --git a/contrib/cmake/CrossCompile-iOS.cmake b/contrib/cmake/CrossCompile-iOS.cmake index 6d8bf7d..3e67c79 100644 --- a/contrib/cmake/CrossCompile-iOS.cmake +++ b/contrib/cmake/CrossCompile-iOS.cmake @@ -2,9 +2,7 @@ # build$ cmake .. -DCMAKE_TOOLCHAIN_FILE=../contrib/cmake/CrossCompile-iOS.cmake SET(CMAKE_SYSTEM_NAME Generic) -if ("$ENV{IOS_SDK_VERSION}" STREQUAL "") - SET(CMAKE_SYSTEM_VERSION 6.1) -else() +if (NOT "$ENV{IOS_SDK_VERSION}" STREQUAL "") SET(CMAKE_SYSTEM_VERSION $ENV{IOS_SDK_VERSION}) endif() SET(CMAKE_SYSTEM_PROCESSOR arm) @@ -31,29 +29,42 @@ else() SET(DEVROOT "/Developer/Platforms/iPhoneOS.platform/Developer") endif() +set(IOS6_OR_LATER OFF) +if (${CMAKE_SYSTEM_VERSION} VERSION_EQUAL "5.0" OR ${CMAKE_SYSTEM_VERSION} VERSION_GREATER "5.0") + SET(CMAKE_OSX_ARCHITECTURES armv6 armv7) + SET(ARCHS "-arch armv6 -arch armv7") +endif() + if (${CMAKE_SYSTEM_VERSION} VERSION_EQUAL "6.0" OR ${CMAKE_SYSTEM_VERSION} VERSION_GREATER "6.0") set(IOS6_OR_LATER ON) -else() - set(IOS6_OR_LATER OFF) + SET(CMAKE_OSX_ARCHITECTURES armv7 armv7s) + SET(ARCHS "-arch armv7 -arch armv7s") endif() -if (IOS6_OR_LATER) - # no armv6 support in ios6 - armv7s was added, but we did no compile our dependencies for it +if (${CMAKE_SYSTEM_VERSION} VERSION_EQUAL "7.0" OR ${CMAKE_SYSTEM_VERSION} VERSION_GREATER "7.0") + set(IOS6_OR_LATER ON) SET(CMAKE_OSX_ARCHITECTURES armv7 armv7s) SET(ARCHS "-arch armv7 -arch armv7s") + # SET(CMAKE_OSX_ARCHITECTURES armv7 armv7s arm64) + # SET(ARCHS "-arch armv7 -arch armv7s -arch arm64") +endif() + +if (IOS6_OR_LATER) + # no armv6 support in ios6 - armv7s was added, but we did no compile our dependencies for it # we have to use clang - llvm will choke on those __has_feature macros? SET (CMAKE_C_COMPILER "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang") SET (CMAKE_CXX_COMPILER "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++") + SET (CMAKE_AR "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ar" CACHE FILEPATH "" FORCE) + SET (CMAKE_LINKER "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" CACHE FILEPATH "" FORCE) + SET (CMAKE_NM "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm" CACHE FILEPATH "" FORCE) + SET (CMAKE_STRIP "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/strip" CACHE FILEPATH "" FORCE) if ($ENV{MACOSX_DEPLOYMENT_TARGET}) message(FATAL_ERROR "llvm will croak with MACOSX_DEPLOYMENT_TARGET environment variable set when building for ios - unset MACOSX_DEPLOYMENT_TARGET") endif() else() - SET(CMAKE_OSX_ARCHITECTURES armv6 armv7) - SET(ARCHS "-arch armv6 -arch armv7") - SET (CMAKE_C_COMPILER "${DEVROOT}/usr/bin/gcc") SET (CMAKE_CXX_COMPILER "${DEVROOT}/usr/bin/g++") |