ref: a5fb9f2ad10adc17f053c43265cdb36daa615bcb
parent: 10c7876a8e5a638c89eb06913e7c44a756e6d35d
author: Tom Finegan <[email protected]>
date: Wed Oct 1 09:33:34 EDT 2014
Fix iphonesimulator and armv6-darwin build targets. - iphonesimulator: IOS_VERSION_MIN was declared in the wrong place. - armv6: linking via ld instead of CXX is basically required. Change-Id: Iad187691f633dcf2bc3e3590e88084bb926edb76
--- a/build/make/configure.sh
+++ b/build/make/configure.sh
@@ -736,6 +736,9 @@
# PIC is probably what we want when building shared libs
enabled shared && soft_enable pic
+ # Minimum iOS version for all target platforms (darwin and iphonesimulator).
+ IOS_VERSION_MIN="6.0"
+
# Handle darwin variants. Newer SDKs allow targeting older
# platforms, so find the newest SDK available.
case ${toolchain} in
@@ -754,7 +757,6 @@
fi
done
fi
- IOS_VERSION_MIN="6.0"
;;
esac
@@ -975,12 +977,23 @@
CXX="$(${XCRUN_FIND} clang++)"
CC="$(${XCRUN_FIND} clang)"
AR="$(${XCRUN_FIND} ar)"
- LD="${CXX:-$(${XCRUN_FIND} ld)}"
AS="$(${XCRUN_FIND} as)"
STRIP="$(${XCRUN_FIND} strip)"
NM="$(${XCRUN_FIND} nm)"
RANLIB="$(${XCRUN_FIND} ranlib)"
AS_SFX=.s
+
+ # Special handling of ld for armv6 because libclang_rt.ios.a does
+ # not contain armv6 support in Apple's clang package:
+ # Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn).
+ # TODO(tomfinegan): Remove this. Our minimum iOS version (6.0)
+ # renders support for armv6 unnecessary because the 3GS and up
+ # support neon.
+ if [ "${tgt_isa}" = "armv6" ]; then
+ LD="$(${XCRUN_FIND} ld)"
+ else
+ LD="${CXX:-$(${XCRUN_FIND} ld)}"
+ fi
# ASFLAGS is written here instead of using check_add_asflags
# because we need to overwrite all of ASFLAGS and purge the