GN: mac host and armv7 target
Just when I thought it wouldn't be useful to override ar...
Tested by building 32- and 64-bit DM on my MBP and running it on my N5x.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2279703003
Review-Url: https://codereview.chromium.org/2279703003
diff --git a/gn/BUILD.gn b/gn/BUILD.gn
index 0a56fa2..fc518ff 100644
--- a/gn/BUILD.gn
+++ b/gn/BUILD.gn
@@ -4,10 +4,12 @@
# found in the LICENSE file.
declare_args() {
+ ar = "ar"
cc = "cc"
cxx = "c++"
if (is_android) {
+ ar = "$ndk/toolchains/$ndk_gccdir-4.9/prebuilt/$ndk_host/$ndk_target/bin/ar"
cc = "$ndk/toolchains/llvm/prebuilt/$ndk_host/bin/clang"
cxx = "$ndk/toolchains/llvm/prebuilt/$ndk_host/bin/clang++"
}
@@ -48,14 +50,27 @@
"-Wnon-virtual-dtor",
]
if (current_cpu == "arm") {
- cflags += [ "-mfpu=neon" ]
+ cflags += [
+ "-march=armv7-a",
+ "-mfpu=neon",
+ "-mthumb",
+ ]
+ } else if (current_cpu == "mipsel") {
+ cflags += [
+ "-march=mips32r2",
+ "-mdspr2",
+ ]
}
if (is_android) {
- asmflags = [ "--target=$ndk_target" ]
+ asmflags = [
+ "--target=$ndk_target",
+ "-B$ndk/toolchains/$ndk_gccdir-4.9/prebuilt/$ndk_host/$ndk_target/bin",
+ ]
cflags += [
"--sysroot=$ndk/platforms/$ndk_platform",
"--target=$ndk_target",
+ "-B$ndk/toolchains/$ndk_gccdir-4.9/prebuilt/$ndk_host/$ndk_target/bin",
]
cflags_cc += [
"-isystem$ndk/sources/android/support/include",
@@ -64,12 +79,12 @@
ldflags = [
"--sysroot=$ndk/platforms/$ndk_platform",
"--target=$ndk_target",
- "-B$ndk/toolchains/$ndk_target-4.9/prebuilt/$ndk_host/$ndk_target/bin",
+ "-B$ndk/toolchains/$ndk_gccdir-4.9/prebuilt/$ndk_host/$ndk_target/bin",
"-pie",
]
lib_dirs = [
"$ndk/sources/cxx-stl/llvm-libc++/libs/$ndk_stdlib",
- "$ndk/toolchains/$ndk_target-4.9/prebuilt/$ndk_host/lib/gcc/$ndk_target/4.9.x",
+ "$ndk/toolchains/$ndk_gccdir-4.9/prebuilt/$ndk_host/lib/gcc/$ndk_target/4.9.x",
]
libs = [
# Order matters here! Keep these three in exactly this order.
@@ -77,6 +92,9 @@
"c++abi",
"android_support",
]
+ if (target_cpu == "arm") {
+ libs += [ "unwind" ]
+ }
}
if (is_linux) {
@@ -136,13 +154,13 @@
}
tool("alink") {
- command = "rm -f {{output}} && ar rcs {{output}} {{inputs}}"
+ command = "rm -f {{output}} && $ar rcs {{output}} {{inputs}}"
outputs = [
"{{root_out_dir}}/{{target_output_name}}{{output_extension}}",
]
default_output_extension = ".a"
output_prefix = "lib"
- description = "ar {{output}} ..."
+ description = "$ar {{output}} ..."
}
tool("solink") {