Use NDK r8b and 64-bit toolchain

- Roll DEPS to NDK r8b
- Use 64-bit toolchain
- Use gold linker

BUG=


Review URL: https://chromiumcodereview.appspot.com/10837226

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@152376 0039d316-1c4b-4281-b951-d872f2087c98
parent 32d9e1f2
......@@ -525,7 +525,7 @@ deps_os = {
"src/third_party/android_tools":
Var("chromium_git") + "/android_tools.git" +
"@e55ecc54323647741d921b03a03b848bc853d39c",
"@ebd740fc3d55dda34d9322c8c5f7749302734325",
},
}
......
......@@ -29,7 +29,7 @@ host_os=$(uname -s | sed -e 's/Linux/linux/;s/Darwin/mac/')
case "${host_os}" in
"linux")
toolchain_dir="linux-x86"
toolchain_dir="linux-x86_64"
;;
"mac")
toolchain_dir="darwin-x86"
......
......@@ -27,13 +27,15 @@ common_check_toolchain() {
common_vars_defines() {
# Set toolchain path according to product architecture.
toolchain_arch="arm"
toolchain_arch="arm-linux-androideabi"
if [[ "${TARGET_PRODUCT}" =~ .*x86.* ]]; then
toolchain_arch="x86"
toolchain_dir="linux-x86"
fi
toolchain_version="4.6"
toolchain_target=$(basename \
${ANDROID_NDK_ROOT}/toolchains/${toolchain_arch}-*)
${ANDROID_NDK_ROOT}/toolchains/${toolchain_arch}-${toolchain_version})
toolchain_path="${ANDROID_NDK_ROOT}/toolchains/${toolchain_target}"\
"/prebuilt/${toolchain_dir}/bin/"
......@@ -207,7 +209,6 @@ sdk_build_init() {
}
################################################################################
# Initializes environment variables for build with android source. This expects
# android environment to be set up along with lunch. To build:
......@@ -221,8 +222,14 @@ non_sdk_build_init() {
# having to cd to $ANDROID_BUILD_TOP.
export TOP="$ANDROID_BUILD_TOP"
# We export "ANDROID_NDK_ROOT" for building Chromium for Android by NDK.
export ANDROID_NDK_ROOT=${ANDROID_BUILD_TOP}/prebuilts/ndk/android-ndk-r7
# Set "ANDROID_NDK_ROOT" as checked-in version, if it was not set.
if [ ! -d "$ANDROID_NDK_ROOT" ] ; then
export ANDROID_NDK_ROOT="${CHROME_SRC}/third_party/android_tools/ndk/"
fi
if [ ! -d "$ANDROID_NDK_ROOT" ] ; then
echo "Can not find Android NDK root ${ANDROID_NDK_ROOT}." >& 2
return 1
fi
# We export "ANDROID_SDK_ROOT" for building Java source with the SDK.
export ANDROID_SDK_ROOT=${ANDROID_BUILD_TOP}/prebuilts/sdk/\
......@@ -230,6 +237,10 @@ ${ANDROID_SDK_VERSION}
# Needed by android antfiles when creating apks.
export ANDROID_SDK_HOME=${ANDROID_SDK_ROOT}
# Unset ANDROID_TOOLCHAIN, so it could be set to checked-in 64-bit toolchain.
# in common_vars_defines
unset ANDROID_TOOLCHAIN
common_vars_defines
DEFINES+=" sdk_build=0"
......
......@@ -2249,6 +2249,7 @@
# compiler (r5-r7). This can be verified using
# TestWebKitAPI's WTF.Checked_int8_t test.
'-fno-tree-sra',
'-fuse-ld=gold',
'-Wno-psabi',
],
# Android now supports .relro sections properly.
......@@ -2258,6 +2259,7 @@
'ldflags': [
'-Wl,-z,relro',
'-Wl,-z,now',
'-fuse-ld=gold',
],
'conditions': [
['arm_thumb == 1', {
......@@ -2285,6 +2287,7 @@
'-mthumb-interwork',
'-finline-limit=64',
'-fno-tree-sra',
'-fuse-ld=gold',
'-Wno-psabi',
],
}],
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment