Releases: leetal/ios-cmake
Releases · leetal/ios-cmake
Version 4.5.0
This release has the following changes:
POTENTIALLY BREAKING CHANGES:
- The toolchain was previously optimized to prevent multiple executions during setup. However, this feature has been discontinued due to complications it caused when building nested libraries with multiple targets. If you prefer the previous behavior, you can enable it by adding
-DOS_SINGLE_BUILD=YES
as an argument to your builds.
Other additions & changes:
VISIONOSCOMBINED
added as a new platform option (Thanks @okwasniewski!)MAC_CATALYST_UNIVERSAL
added as a new platform option (Thanks @oliverepper!)- The
TVOSCOMBINED
platform option added support for thearm64
architecture (Thanks @okwasniewski!) - As mentioned in the potentially breaking changes, the toolchain will now run for all targets in nested builds, which fixes #146.
To opt-out of this behavior, addOS_SINGLE_BUILD
as an argument when invoking the CMake commands.
Version 4.4.1 - Experimental VisionOS support, Bugfixes, and a few more tweaks
This release has the following changes:
BREAKING CHANGES:
- Bitcode is now DISABLED by default (Thanks @ealeksandrov!)
Other additions & changes:
- VERY EXPERIMENTAL (and perhaps even broken) visionOS support. Please follow #176 for further details. (Thanks @3d4m-volodymyr!)
- SIMULATOR64COMBINED added as PLATFORM (Thanks @lalomartins!)
- SIMULATORARM64_TVOS added as PLATFORM (Thanks @caobug!)
- Added "arm64" as a simulator ARCH when using Xcode as generator in the OS64COMBINED builds
- The SDK is now using only the name of the SDK ("iphoneos" for example) when building combined builds with the Xcode generator
- Fixes #168 & #160
Version 4.4.0 - Smaller, but potentially breaking changes
This release has the following changes:
- Target triple will now use "arm64" instead of the spec compliant "aarch64" due to Apple being Apple..
- Removed the unnecessary Strip, Ranlib & AR redefinitions
- CMake has been handling this correctly for more than 4 year as of now and I have started seeing issues with this in recent iOS, watchOS & tvOS toolchain versions
Version 4.3.0 - Named languages support (OBJC,OBJCXX)
This version of the toolchain contains lots of bugfixes as well as named languages support (via enable_language() for OBJC and OBJCXX).
This should work for most implementations and the default is to enable named language support. If you want the old behaviour, just set the variable NAMED_LANGUAGE_SUPPORT=OFF
.
Version 4.2.0 - macOS builds improvements & bugfixes
This version includes mostly bugfixes for the macOS builds as well as some other fixes including:
- CMAKE_FIND_ROOT_PATH is now not being overridden anymore. The toolchain append necessary paths on any existing paths specified by the user. This allows user-specified paths to be searched before the toolchain paths.
- APPLE_TARGET_TRIPLE property is now being set for manually specified ARCHS as well
- Excluded some directories from the Catalyst builds since they'd otherwise interfere with the iOS toolchain
Version 4.1.1 - Now with macOS, Catalyst and Apple Silicon experimental support.
This version contains lots of bugfixes as well as the following new features:
- macOS builds support (more or less just proxying the builds to the host machine)
- Catalyst support (iOS/iPadOS on macOS)
- Apple Silicon builds support (requires CMake 3.19.5+)
- Significant toolchain speedup on Makefile and Ninja generators (possibly more)
Version 3.1.2
Fixes:
- Lots of formatting and output/prints fixed
- Fixes a backwards compatibility issue as well that prevented CMake versions older than 3.10 from running correctly
Version 3.1.1
Fixes:
- Fixes some rare re-compilation issues on ninja
- Fixes the CMAKE_SYSTEM_NAME being set to an invalid value on older CMake versions
Version 3.1.0
Fixes:
- Minor changes for better third-party compatibility
Added:
- New test for building libCurl with combined build support for iOS (arm64 & x86_64).
Version 3.0.2
Fixes:
- Now sets the correct root-paths and framework paths when compiling