Commit Graph

11 Commits

Author SHA1 Message Date
Sergiu Deitsch 0133dada2d Add Github workflows
Change-Id: I74fc45784b1b1d20c22b9e983902aa69fbfa764f
2022-03-13 23:51:40 +01:00
Alex Stewart 2b494cfb36 Update Travis CI to Bionic & Xcode 11.2
- Fix Homebrew Ruby errors by forcing brew update before install.
- Remove use of custom Eigen 3.3.4 on Linux in favour of default Bionic
  3.3.4 package.
- Update Android NDK version to R20b and build for arm64-v8.
- Fix erroneous string -> STRING in iOS toolchain file.

Change-Id: I041c2a08b92b8307c12bd8967159beb6984e3c65
2019-11-14 20:39:30 +00:00
Alex Stewart 799fd50192 Ensure host-built packages are not used when building for iOS.
- Add missing CMAKE_FIND_ROOT_PATH_MODE_PACKAGE = ONLY, mimicking what
  we previously set for INCLUDE/LIBRARY/PROGRAM s/t the standard
  package locations on the host system will not be searched by
  find_package() when cross-compiling for iOS.
- Remove now unnecessary forced disabling of dependency options on iOS
  as they should now never be found (unless they were explicitly built
  for iOS) irrespective of whether the option defaults to ON initially.

Change-Id: I1d2c5da4838d7becb8ebd43f90a88cfc6ded4a1f
2018-06-20 09:43:26 +01:00
Alex Stewart 7582834a7e Do not bypass default CMake compiler checks on iOS.
- This should no longer be required on newer (3.5+) CMake versions and
  breaks the detection of supplementary compiler feature information
  such as the population of CMAKE_CXX_COMPILE_FEATURES which is required
  in order to compile Ceres.

Change-Id: Ibceab545925aa1e829320efa03fb74ef149cbb8b
2018-06-17 16:13:56 +01:00
Alex Stewart df2d882540 Remove armv7 from target architectures when building for iOS >= 11.
- iOS 11+ requires a 64-bit architecture, so only arm64 is supported.

Change-Id: Ieb2ead13ba8722c6c0777b78f59f667331ad670c
2018-03-04 12:16:27 +00:00
Eduard Feicho 7efc92d413 Add IOS_DEPLOYMENT_TARGET variable to iOS.cmake
- Gives an option to specify a lower deployment target version than the
  current SDK for backward compatibility.

Change-Id: Ieb84ba7f42cdf925510f84b8e0cd01b5e9fc051b
2015-10-27 22:22:55 +00:00
Alex Stewart 90e32a8dc4 Use old minimum iOS version flags on Xcode < 7.0.
- The newer style, which are more specific and match the SDK names
  are not available on Xcode < 7.0.

Change-Id: I2f07a0365183d2781157cdb05fd49b30ae001ac5
2015-09-21 21:08:25 +01:00
Alex Stewart c4c7947211 Clean up iOS.cmake to use xcrun/xcodebuild & libtool.
- Substantial cleanup of iOS.cmake to use xcrun & xcodebuild to
  determine the SDK & tool paths.
- Use libtool -static to link libraries instead of ar + ranlib, which
  is not compatible with Xcode 7+, this change should be backwards
  compatible to at least Xcode 6.
- Force locations of unordered_map & shared_ptr on iOS to work around
  check_cxx_source_compiles() running in a forked CMake instance without
  access to the variables (IOS_PLATFORM) defined by the user.
- Minor CMake style updates.

Change-Id: I5f83a60607db34d461ebe85f9dce861f53d98277
2015-09-20 20:12:04 +01:00
Jack Feng 9982791969 Fix ios cmake file for cmake 3.0
In cmake 3.0, it is required to use full path for compilers. And it
seems like there's no need to force the compiler. Instead we can just
use set(CMAKE_C_COMPIER clang) so that we don't need to specify full
path of clang and clang++.

Change-Id: I9f6a625068e9d37a4bf5a595bafd82cbc13fdde4
2015-03-25 10:02:11 +00:00
Alex Stewart 22b26cd7b7 Add release flags to iOS toolchain.
- Without explicitly specifying the flags for release compilation in
  the iOS toolchain file, no additional flags are passed and so the
  libraries were not being built with full optimisations, even though
  the CMAKE_BUILD_TYPE was 'Release'.

Change-Id: I742bab7589906b556640776d481491a8cc2303d4
2014-07-07 22:08:24 +01:00
Sameer Agarwal 082d9e2a1b Add iOS.cmake from the ios-cmake project.
URL: https://github.com/cristeab/ios-cmake
Commit: 86dc085f0d5ed955cd58e2657cc3efc7c1aabbc8

Change-Id: I8fe6023d4cb6655b5a724e8b695fdae87ce3b685
2014-05-13 16:48:25 -07:00