@@ -63,32 +63,36 @@ macro(swift_common_standalone_build_config_llvm product)
63
63
endif ()
64
64
65
65
if (SWIFT_INCLUDE_TOOLS )
66
- if (CMAKE_CROSSCOMPILING )
67
- set (LLVM_NATIVE_BUILD_DIR "${LLVM_BINARY_DIR} /NATIVE" )
68
- if (NOT EXISTS "${LLVM_NATIVE_BUILD_DIR} " )
69
- message (FATAL_ERROR
70
- "Attempting to cross-compile swift standalone but no native LLVM build
71
- found. Please cross-compile LLVM as well." )
72
- endif ()
73
-
74
- if (CMAKE_HOST_SYSTEM_NAME MATCHES Windows )
75
- set (HOST_EXECUTABLE_SUFFIX ".exe" )
76
- endif ()
77
-
78
- if (NOT CMAKE_CONFIGURATION_TYPES )
79
- set (LLVM_TABLEGEN_EXE
80
- "${LLVM_NATIVE_BUILD_DIR} /bin/llvm-tblgen${HOST_EXECUTABLE_SUFFIX} " )
81
- else ()
82
- # NOTE: LLVM NATIVE build is always built Release, as is specified in
83
- # CrossCompile.cmake
84
- set (LLVM_TABLEGEN_EXE
85
- "${LLVM_NATIVE_BUILD_DIR} /Release/bin/llvm-tblgen${HOST_EXECUTABLE_SUFFIX} " )
86
- endif ()
66
+ if (LLVM_TABLEGEN )
67
+ set (LLVM_TABLEGEN_EXE ${LLVM_TABLEGEN} )
87
68
else ()
88
- find_program (LLVM_TABLEGEN_EXE "llvm-tblgen" HINTS ${LLVM_TOOLS_BINARY_DIR}
89
- NO_DEFAULT_PATH NO_CMAKE_FIND_ROOT_PATH )
90
- if (LLVM_TABLEGEN_EXE STREQUAL "LLVM_TABLEGEN_EXE-NOTFOUND" )
91
- message (FATAL_ERROR "Failed to find tablegen in ${LLVM_TOOLS_BINARY_DIR} " )
69
+ if (CMAKE_CROSSCOMPILING )
70
+ set (LLVM_NATIVE_BUILD_DIR "${LLVM_BINARY_DIR} /NATIVE" )
71
+ if (NOT EXISTS "${LLVM_NATIVE_BUILD_DIR} " )
72
+ message (FATAL_ERROR
73
+ "Attempting to cross-compile swift standalone but no native LLVM build
74
+ found. Please cross-compile LLVM as well." )
75
+ endif ()
76
+
77
+ if (CMAKE_HOST_SYSTEM_NAME MATCHES Windows )
78
+ set (HOST_EXECUTABLE_SUFFIX ".exe" )
79
+ endif ()
80
+
81
+ if (NOT CMAKE_CONFIGURATION_TYPES )
82
+ set (LLVM_TABLEGEN_EXE
83
+ "${LLVM_NATIVE_BUILD_DIR} /bin/llvm-tblgen${HOST_EXECUTABLE_SUFFIX} " )
84
+ else ()
85
+ # NOTE: LLVM NATIVE build is always built Release, as is specified in
86
+ # CrossCompile.cmake
87
+ set (LLVM_TABLEGEN_EXE
88
+ "${LLVM_NATIVE_BUILD_DIR} /Release/bin/llvm-tblgen${HOST_EXECUTABLE_SUFFIX} " )
89
+ endif ()
90
+ else ()
91
+ find_program (LLVM_TABLEGEN_EXE "llvm-tblgen" HINTS ${LLVM_TOOLS_BINARY_DIR}
92
+ NO_DEFAULT_PATH NO_CMAKE_FIND_ROOT_PATH )
93
+ if (LLVM_TABLEGEN_EXE STREQUAL "LLVM_TABLEGEN_EXE-NOTFOUND" )
94
+ message (FATAL_ERROR "Failed to find tablegen in ${LLVM_TOOLS_BINARY_DIR} " )
95
+ endif ()
92
96
endif ()
93
97
endif ()
94
98
endif ()
0 commit comments