Index: build/config/fuchsia/BUILD.gn |
diff --git a/build/config/fuchsia/BUILD.gn b/build/config/fuchsia/BUILD.gn |
new file mode 100644 |
index 0000000000000000000000000000000000000000..7d4902b2a52e45be4c2b256e637cdcbdf8759040 |
--- /dev/null |
+++ b/build/config/fuchsia/BUILD.gn |
@@ -0,0 +1,65 @@ |
+# Copyright 2017 The Fuchsia Authors. All rights reserved. |
Nico
2017/05/11 16:42:05
Probably The Chromium given it's in src?
scottmg
2017/05/11 17:16:17
Aha, that would be where I copied the Wno-error fr
|
+# Use of this source code is governed by a BSD-style license that can be |
+# found in the LICENSE file. |
+ |
+import("//build/config/sysroot.gni") |
+ |
+assert(is_fuchsia) |
+assert(is_posix) |
+ |
+config("werror") { |
Nico
2017/05/11 16:42:05
This is in build/config/compiler/BUILD.gn too, can
scottmg
2017/05/11 17:16:17
Removed both werror and icf. Werror is picked up f
|
+ cflags = [ |
+ "-Werror", |
+ # Do not add additional -Wno-error to this config. |
+ ] |
+} |
+ |
+config("icf") { |
+ # This changes C/C++ semantics and might be incompatible with third-party |
+ # code that relies on function pointers comparison. |
+ ldflags = [ "-Wl,--icf=all" ] |
+} |
+ |
+config("compiler") { |
+ cflags = [] |
+ cflags_c = [ "-std=c11" ] |
+ cflags_cc = [ "-std=c++14" ] |
+ ldflags = [ "-Wl,--threads" ] |
+ configs = [ |
+ ":compiler_sysroot", |
+ ":compiler_target", |
+ ":icf", |
+ ":werror", |
+ ] |
+ asmflags = cflags + cflags_c |
+ |
+ libs = [ |
+ "mxio", |
+ "magenta", |
+ "unwind", |
+ ] |
+} |
+ |
+config("compiler_sysroot") { |
+ # The sole purpose of SYSROOT_VERSION is to change the command line on every |
+ # sysroot update so as to force rebuilds. |
+ defines = [ "SYSROOT_VERSION=$sysroot_version" ] |
+ cflags = [ "--sysroot=" + rebase_path(sysroot, root_build_dir) ] |
+ ldflags = [ "--sysroot=" + rebase_path(sysroot, root_build_dir) ] |
+ asmflags = cflags |
+} |
+ |
+config("compiler_target") { |
+ cflags = [] |
+ ldflags = [] |
+ if (current_cpu == "arm64") { |
+ cflags += [ "--target=aarch64-fuchsia" ] |
+ ldflags += [ "--target=aarch64-fuchsia" ] |
+ } else if (current_cpu == "x64") { |
+ cflags += [ "--target=x86_64-fuchsia" ] |
+ ldflags += [ "--target=x86_64-fuchsia" ] |
+ } else { |
+ assert(false, "Unsupported architecture") |
+ } |
+ asmflags = cflags |
+} |