GN: Add PPC/s390 Linux support Adding ppc/s390 architecture support to build config and bootstrap.py to be able build GN binary. BUG= R=dpranke@chromium.org, brettw@chromium.org Review-Url: https://codereview.chromium.org/2417443002 Cr-Original-Commit-Position: refs/heads/master@{#425502} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: fbf038170dc0bd29ead8630013b28c6008047ec1
diff --git a/tools/gn/args.cc b/tools/gn/args.cc index 9aaafb0..72480f5 100644 --- a/tools/gn/args.cc +++ b/tools/gn/args.cc
@@ -269,6 +269,8 @@ static const char kX64[] = "x64"; static const char kArm[] = "arm"; static const char kMips[] = "mipsel"; + static const char kS390X[] = "s390x"; + static const char kPPC64[] = "ppc64"; const char* arch = nullptr; // Set the host CPU architecture based on the underlying OS, not @@ -282,8 +284,12 @@ arch = kArm; else if (os_arch == "mips") arch = kMips; + else if (os_arch == "s390x") + arch = kS390X; + else if (os_arch == "mips") + arch = kPPC64; else - CHECK(false) << "OS architecture not handled."; + CHECK(false) << "OS architecture not handled. (" << os_arch << ")"; // Save the OS and architecture as build arguments that are implicitly // declared. This is so they can be overridden in a toolchain build args
diff --git a/tools/gn/bootstrap/bootstrap.py b/tools/gn/bootstrap/bootstrap.py index 9fc1c76..b86757a 100755 --- a/tools/gn/bootstrap/bootstrap.py +++ b/tools/gn/bootstrap/bootstrap.py
@@ -299,7 +299,7 @@ # //base/allocator/allocator_extension.cc needs this macro defined, # otherwise there would be link errors. - cflags.extend(['-DNO_TCMALLOC']) + cflags.extend(['-DNO_TCMALLOC', '-D__STDC_FORMAT_MACROS']) if is_posix: if options.debug: