set(LLVM_TABLEGEN "tblgen" CACHE
STRING "Native TableGen executable. Saves building one when cross-compiling.")
+# Effective tblgen executable to be used:
+set(LLVM_TABLEGEN_EXE ${LLVM_TABLEGEN})
add_subdirectory(utils/TableGen)
\r
if( ${LLVM_TABLEGEN} STREQUAL "tblgen" )\r
set(CX_NATIVE_TG_DIR "${CMAKE_BINARY_DIR}/native")\r
- set(LLVM_TABLEGEN "${CX_NATIVE_TG_DIR}/bin/tblgen")\r
+ set(LLVM_TABLEGEN_EXE "${CX_NATIVE_TG_DIR}/bin/tblgen")\r
\r
add_custom_command(OUTPUT ${CX_NATIVE_TG_DIR}\r
COMMAND ${CMAKE_COMMAND} -E make_directory ${CX_NATIVE_TG_DIR}\r
DEPENDS ${CX_NATIVE_TG_DIR}\r
COMMENT "Configuring native TableGen...")\r
\r
- add_custom_command(OUTPUT ${LLVM_TABLEGEN}\r
+ add_custom_command(OUTPUT ${LLVM_TABLEGEN_EXE}\r
COMMAND ${CMAKE_BUILD_TOOL}\r
DEPENDS ${CX_NATIVE_TG_DIR}/CMakeCache.txt\r
WORKING_DIRECTORY ${CX_NATIVE_TG_DIR}/utils/TableGen\r
COMMENT "Building native TableGen...")\r
- add_custom_target(NativeTableGen DEPENDS ${LLVM_TABLEGEN})\r
+ add_custom_target(NativeTableGen DEPENDS ${LLVM_TABLEGEN_EXE})\r
\r
add_dependencies(tblgen NativeTableGen)\r
\r
file(GLOB all_tds "*.td")
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${ofn}.tmp
- COMMAND ${LLVM_TABLEGEN} ${ARGN} -I ${CMAKE_CURRENT_SOURCE_DIR}
+ COMMAND ${LLVM_TABLEGEN_EXE} ${ARGN} -I ${CMAKE_CURRENT_SOURCE_DIR}
-I ${LLVM_MAIN_SRC_DIR}/lib/Target -I ${LLVM_MAIN_INCLUDE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/${LLVM_TARGET_DEFINITIONS}
-o ${CMAKE_CURRENT_BINARY_DIR}/${ofn}.tmp
- DEPENDS ${LLVM_TABLEGEN} ${all_tds}
+ DEPENDS tblgen ${all_tds}
COMMENT "Building ${ofn}.tmp..."
)
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${ofn}