- set(TABLEGEN_OUTPUT ${TABLEGEN_OUTPUT} ${CMAKE_CURRENT_BINARY_DIR}/${ofn})
- set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/${ofn}
- PROPERTIES GENERATED 1)
-endmacro(tablegen)
-
-macro(add_public_tablegen_target target)
- # Creates a target for publicly exporting tablegen dependencies.
- if( TABLEGEN_OUTPUT )
- add_custom_target(${target}
- DEPENDS ${TABLEGEN_OUTPUT})
- if (LLVM_COMMON_DEPENDS)
- add_dependencies(${target} ${LLVM_COMMON_DEPENDS})
- endif ()
- set_target_properties(${target} PROPERTIES FOLDER "Tablegenning")
- list(APPEND LLVM_COMMON_DEPENDS ${target} intrinsics_gen)
- endif( TABLEGEN_OUTPUT )
-endmacro()
-
-if(CMAKE_CROSSCOMPILING)
- set(CX_NATIVE_TG_DIR "${CMAKE_BINARY_DIR}/native")
-
- add_custom_command(OUTPUT ${CX_NATIVE_TG_DIR}
- COMMAND ${CMAKE_COMMAND} -E make_directory ${CX_NATIVE_TG_DIR}
- COMMENT "Creating ${CX_NATIVE_TG_DIR}...")
-
- add_custom_command(OUTPUT ${CX_NATIVE_TG_DIR}/CMakeCache.txt
- COMMAND ${CMAKE_COMMAND} -UMAKE_TOOLCHAIN_FILE -DCMAKE_BUILD_TYPE=Release
- -DLLVM_BUILD_POLLY=OFF
- -G "${CMAKE_GENERATOR}" ${CMAKE_SOURCE_DIR}
- WORKING_DIRECTORY ${CX_NATIVE_TG_DIR}
- DEPENDS ${CX_NATIVE_TG_DIR}
- COMMENT "Configuring native TableGen...")