| 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
|
|
|