Move CLANG_SYSTEMZ_DEFAULT_ARCH to config.h.
authorNico Weber <thakis@chromium.org>
Mon, 30 Mar 2020 18:11:35 +0000 (14:11 -0400)
committerNico Weber <thakis@chromium.org>
Mon, 30 Mar 2020 18:16:17 +0000 (14:16 -0400)
Instead of using a global define; see comments on D75914.

While here, port 9c9d88d8b1b to the GN build.

clang/CMakeLists.txt
clang/include/clang/Config/config.h.cmake
clang/lib/Driver/ToolChains/Arch/SystemZ.cpp
llvm/utils/gn/secondary/clang/include/clang/Config/BUILD.gn

index c9e76c5..88e556f 100644 (file)
@@ -306,9 +306,7 @@ if (NOT DEFINED MATCHED_ARCH OR "${CMAKE_MATCH_1}" LESS 35)
     "Default architecture for OpenMP offloading to Nvidia GPUs." FORCE)
 endif()
 
-set(CLANG_SYSTEMZ_DEFAULT_ARCH "z10" CACHE STRING
-  "SystemZ Default Arch")
-add_definitions( -DCLANG_SYSTEMZ_DEFAULT_ARCH="${CLANG_SYSTEMZ_DEFAULT_ARCH}")
+set(CLANG_SYSTEMZ_DEFAULT_ARCH "z10" CACHE STRING "SystemZ Default Arch")
 
 set(CLANG_VENDOR ${PACKAGE_VENDOR} CACHE STRING
   "Vendor-specific text for showing with version information.")
index 261b384..a0f8b6b 100644 (file)
@@ -83,4 +83,7 @@
 /* Spawn a new process clang.exe for the CC1 tool invocation, when necessary */
 #cmakedefine01 CLANG_SPAWN_CC1
 
+/* Default <path> to all compiler invocations for --sysroot=<path>. */
+#define CLANG_SYSTEMZ_DEFAULT_ARCH "${CLANG_SYSTEMZ_DEFAULT_ARCH}"
+
 #endif
index b263fb7..f81bf68 100644 (file)
@@ -7,6 +7,7 @@
 //===----------------------------------------------------------------------===//
 
 #include "SystemZ.h"
+#include "clang/Config/config.h"
 #include "clang/Driver/DriverDiagnostic.h"
 #include "clang/Driver/Options.h"
 #include "llvm/Option/ArgList.h"
index cc2c4e1..7fbfb46 100644 (file)
@@ -36,6 +36,7 @@ write_cmake_config("Config") {
     "ENABLE_X86_RELAX_RELOCATIONS=",
     "ENABLE_EXPERIMENTAL_NEW_PASS_MANAGER=",
     "CLANG_ENABLE_OBJC_REWRITER=1",  # FIXME: flag?
+    "CLANG_SYSTEMZ_DEFAULT_ARCH=z10",
   ]
 
   if (clang_enable_arcmt) {