| Index: source/libvpx/build/make/configure.sh | 
| =================================================================== | 
| --- source/libvpx/build/make/configure.sh	(revision 96967) | 
| +++ source/libvpx/build/make/configure.sh	(working copy) | 
| @@ -412,11 +412,14 @@ | 
| write_common_target_config_h() { | 
| cat > ${TMP_H} << EOF | 
| /* This file automatically generated by configure. Do not edit! */ | 
| +#ifndef VPX_CONFIG_H | 
| +#define VPX_CONFIG_H | 
| #define RESTRICT    ${RESTRICT} | 
| EOF | 
| print_config_h ARCH   "${TMP_H}" ${ARCH_LIST} | 
| print_config_h HAVE   "${TMP_H}" ${HAVE_LIST} | 
| print_config_h CONFIG "${TMP_H}" ${CONFIG_LIST} | 
| +    echo "#endif /* VPX_CONFIG_H */" >> ${TMP_H} | 
| mkdir -p `dirname "$1"` | 
| cmp "$1" ${TMP_H} >/dev/null 2>&1 || mv ${TMP_H} "$1" | 
| } | 
| @@ -626,7 +629,7 @@ | 
| case ${toolchain} in | 
| sparc-solaris-*) | 
| add_extralibs -lposix4 | 
| -            add_cflags "-DMUST_BE_ALIGNED" | 
| +            disable fast_unaligned | 
| ;; | 
| *-solaris-*) | 
| add_extralibs -lposix4 | 
| @@ -639,8 +642,8 @@ | 
| # on arm, isa versions are supersets | 
| enabled armv7a && soft_enable armv7 ### DEBUG | 
| enabled armv7 && soft_enable armv6 | 
| -    enabled armv6 && soft_enable armv5te | 
| -    enabled armv6 && soft_enable fast_unaligned | 
| +    enabled armv7 || enabled armv6 && soft_enable armv5te | 
| +    enabled armv7 || enabled armv6 && soft_enable fast_unaligned | 
| enabled iwmmxt2 && soft_enable iwmmxt | 
| enabled iwmmxt && soft_enable armv5te | 
|  | 
| @@ -689,7 +692,7 @@ | 
| if enabled armv7 | 
| then | 
| check_add_cflags --cpu=Cortex-A8 --fpu=softvfp+vfpv3 | 
| -                    check_add_asflags --cpu=Cortex-A8 --fpu=none | 
| +                    check_add_asflags --cpu=Cortex-A8 --fpu=softvfp+vfpv3 | 
| else | 
| check_add_cflags --cpu=${tgt_isa##armv} | 
| check_add_asflags --cpu=${tgt_isa##armv} | 
| @@ -729,19 +732,18 @@ | 
| add_cflags -arch ${tgt_isa} | 
| add_ldflags -arch_only ${tgt_isa} | 
|  | 
| -            add_cflags  "-isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk" | 
| +            add_cflags  "-isysroot ${SDK_PATH}/SDKs/iPhoneOS4.3.sdk" | 
|  | 
| # This should be overridable | 
| -            alt_libc=${SDK_PATH}/SDKs/iPhoneOS4.2.sdk | 
| +            alt_libc=${SDK_PATH}/SDKs/iPhoneOS4.3.sdk | 
|  | 
| # Add the paths for the alternate libc | 
| -#            for d in usr/include usr/include/gcc/darwin/4.0/; do | 
| -            for d in usr/include usr/include/gcc/darwin/4.0/ usr/lib/gcc/arm-apple-darwin10/4.2.1/include/; do | 
| +            for d in usr/include usr/include/gcc/darwin/4.2/ usr/lib/gcc/arm-apple-darwin10/4.2.1/include/; do | 
| try_dir="${alt_libc}/${d}" | 
| [ -d "${try_dir}" ] && add_cflags -I"${try_dir}" | 
| done | 
|  | 
| -            for d in lib usr/lib; do | 
| +            for d in lib usr/lib usr/lib/system; do | 
| try_dir="${alt_libc}/${d}" | 
| [ -d "${try_dir}" ] && add_ldflags -L"${try_dir}" | 
| done | 
| @@ -752,41 +754,24 @@ | 
| linux*) | 
| enable linux | 
| if enabled rvct; then | 
| -                # Compiling with RVCT requires an alternate libc (glibc) when | 
| -                # targetting linux. | 
| -                disabled builtin_libc \ | 
| -                    || die "Must supply --libc when targetting *-linux-rvct" | 
| +                # Check if we have CodeSourcery GCC in PATH. Needed for | 
| +                # libraries | 
| +                hash arm-none-linux-gnueabi-gcc 2>&- || \ | 
| +                  die "Couldn't find CodeSourcery GCC from PATH" | 
|  | 
| -                # Set up compiler | 
| -                add_cflags --library_interface=aeabi_glibc | 
| -                add_cflags --no_hide_all | 
| -                add_cflags --dwarf2 | 
| +                # Use armcc as a linker to enable translation of | 
| +                # some gcc specific options such as -lm and -lpthread. | 
| +                LD="armcc --translate_gcc" | 
|  | 
| -                # Set up linker | 
| -                add_ldflags --sysv --no_startup --no_ref_cpp_init | 
| -                add_ldflags --entry=_start | 
| -                add_ldflags --keep '"*(.init)"' --keep '"*(.fini)"' | 
| -                add_ldflags --keep '"*(.init_array)"' --keep '"*(.fini_array)"' | 
| -                add_ldflags --dynamiclinker=/lib/ld-linux.so.3 | 
| -                add_extralibs libc.so.6 -lc_nonshared crt1.o crti.o crtn.o | 
| +                # create configuration file (uses path to CodeSourcery GCC) | 
| +                armcc --arm_linux_configure --arm_linux_config_file=arm_linux.cfg | 
|  | 
| -                # Add the paths for the alternate libc | 
| -                for d in usr/include; do | 
| -                    try_dir="${alt_libc}/${d}" | 
| -                    [ -d "${try_dir}" ] && add_cflags -J"${try_dir}" | 
| -                done | 
| -                add_cflags -J"${RVCT31INC}" | 
| -                for d in lib usr/lib; do | 
| -                    try_dir="${alt_libc}/${d}" | 
| -                    [ -d "${try_dir}" ] && add_ldflags -L"${try_dir}" | 
| -                done | 
| - | 
| - | 
| -                # glibc has some struct members named __align, which is a | 
| -                # storage modifier in RVCT. If we need to use this modifier, | 
| -                # we'll have to #undef it in our code. Note that this must | 
| -                # happen AFTER all libc inclues. | 
| -                add_cflags -D__align=x_align_x | 
| +                add_cflags --arm_linux_paths --arm_linux_config_file=arm_linux.cfg | 
| +                add_asflags --no_hide_all --apcs=/interwork | 
| +                add_ldflags --arm_linux_paths --arm_linux_config_file=arm_linux.cfg | 
| +                enabled pic && add_cflags --apcs=/fpic | 
| +                enabled pic && add_asflags --apcs=/fpic | 
| +                enabled shared && add_cflags --shared | 
| fi | 
| ;; | 
|  | 
| @@ -885,6 +870,8 @@ | 
| link_with_cc=gcc | 
| tune_cflags="-march=" | 
| setup_gnu_toolchain | 
| +                #for 32 bit x86 builds, -O3 did not turn on this flag | 
| +                enabled optimizations && check_add_cflags -fomit-frame-pointer | 
| ;; | 
| esac | 
|  | 
| @@ -952,15 +939,23 @@ | 
| enabled gcov && | 
| check_add_cflags -fprofile-arcs -ftest-coverage && | 
| check_add_ldflags -fprofile-arcs -ftest-coverage | 
| + | 
| if enabled optimizations; then | 
| -        enabled rvct && check_add_cflags -Otime | 
| -        enabled small && check_add_cflags -O2 || check_add_cflags -O3 | 
| +        if enabled rvct; then | 
| +            enabled small && check_add_cflags -Ospace || check_add_cflags -Otime | 
| +        else | 
| +            enabled small && check_add_cflags -O2 ||  check_add_cflags -O3 | 
| +        fi | 
| fi | 
|  | 
| # Position Independent Code (PIC) support, for building relocatable | 
| # shared objects | 
| enabled gcc && enabled pic && check_add_cflags -fPIC | 
|  | 
| +    # Work around longjmp interception on glibc >= 2.11, to improve binary | 
| +    # compatibility. See http://code.google.com/p/webm/issues/detail?id=166 | 
| +    enabled linux && check_add_cflags -D_FORTIFY_SOURCE=0 | 
| + | 
| # Check for strip utility variant | 
| ${STRIP} -V 2>/dev/null | grep GNU >/dev/null && enable gnu_strip | 
|  | 
| @@ -979,6 +974,9 @@ | 
| esac | 
| fi | 
|  | 
| +    # for sysconf(3) and friends. | 
| +    check_header unistd.h | 
| + | 
| # glibc needs these | 
| if enabled linux; then | 
| add_cflags -D_LARGEFILE_SOURCE | 
|  |