shithub: libvpx

Download patch

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