Newer
Older
DESTINATION include
COMPONENT llvm-headers
FILES_MATCHING
PATTERN "*.def"
PATTERN "*.h"
PATTERN "*.td"
PATTERN "*.inc"
PATTERN "LICENSE.TXT"
PATTERN ".svn" EXCLUDE
)
install(DIRECTORY ${LLVM_INCLUDE_DIR}/llvm ${LLVM_INCLUDE_DIR}/llvm-c
DESTINATION include
COMPONENT llvm-headers
FILES_MATCHING
PATTERN "*.def"
PATTERN "*.h"
PATTERN "*.gen"
PATTERN "*.inc"
# Exclude include/llvm/CMakeFiles/intrinsics_gen.dir, matched by "*.def"
PATTERN "CMakeFiles" EXCLUDE
PATTERN "config.h" EXCLUDE
PATTERN ".svn" EXCLUDE
)
if (LLVM_INSTALL_MODULEMAPS)
install(DIRECTORY include/llvm include/llvm-c
DESTINATION include
COMPONENT llvm-headers
FILES_MATCHING
PATTERN "module.modulemap"
)
install(FILES include/llvm/module.install.modulemap
DESTINATION include/llvm
COMPONENT llvm-headers
RENAME "module.extern.modulemap"
)
endif(LLVM_INSTALL_MODULEMAPS)
# Installing the headers needs to depend on generating any public
# tablegen'd headers.
add_custom_target(llvm-headers DEPENDS intrinsics_gen)
Aaron Ballman
committed
set_target_properties(llvm-headers PROPERTIES FOLDER "Misc")
if (NOT LLVM_ENABLE_IDE)
add_llvm_install_targets(install-llvm-headers
DEPENDS llvm-headers
# Custom target to install all libraries.
add_custom_target(llvm-libraries)
set_target_properties(llvm-libraries PROPERTIES FOLDER "Misc")
if (NOT LLVM_ENABLE_IDE)
add_llvm_install_targets(install-llvm-libraries
DEPENDS llvm-libraries
COMPONENT llvm-libraries)
endif()
get_property(LLVM_LIBS GLOBAL PROPERTY LLVM_LIBS)
if(LLVM_LIBS)
list(REMOVE_DUPLICATES LLVM_LIBS)
foreach(lib ${LLVM_LIBS})
add_dependencies(llvm-libraries ${lib})
if (NOT LLVM_ENABLE_IDE)
add_dependencies(install-llvm-libraries install-${lib})
endif()
endforeach()
endif()
endif()
# This must be at the end of the LLVM root CMakeLists file because it must run
# after all targets are created.
include(LLVMDistributionSupport)
llvm_distribution_add_targets()
Vadim Chugunov
committed
# This allows us to deploy the Universal CRT DLLs by passing -DCMAKE_INSTALL_UCRT_LIBRARIES=ON to CMake
Hans Wennborg
committed
if (MSVC AND CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows" AND CMAKE_INSTALL_UCRT_LIBRARIES)
Vadim Chugunov
committed
include(InstallRequiredSystemLibraries)
endif()
if (LLVM_INCLUDE_BENCHMARKS)
# Override benchmark defaults so that when the library itself is updated these
# modifications are not lost.
set(BENCHMARK_ENABLE_TESTING OFF CACHE BOOL "Disable benchmark testing" FORCE)
set(BENCHMARK_ENABLE_EXCEPTIONS OFF CACHE BOOL "Disable benchmark exceptions" FORCE)
set(BENCHMARK_ENABLE_INSTALL OFF CACHE BOOL "Don't install benchmark" FORCE)
set(BENCHMARK_DOWNLOAD_DEPENDENCIES OFF CACHE BOOL "Don't download dependencies" FORCE)
set(BENCHMARK_ENABLE_GTEST_TESTS OFF CACHE BOOL "Disable Google Test in benchmark" FORCE)
# Since LLVM requires C++11 it is safe to assume that std::regex is available.
set(HAVE_STD_REGEX ON CACHE BOOL "OK" FORCE)
add_subdirectory(utils/benchmark)
add_subdirectory(benchmarks)
endif()