Skip to content
CMakeLists.txt 39.2 KiB
Newer Older
Reid Kleckner's avatar
Reid Kleckner committed
    else()
      message(SEND_ERROR "Specified distribution component '${target}' doesn't have a target")
Reid Kleckner's avatar
Reid Kleckner committed
    endif()

    if(TARGET install-${target})
      add_dependencies(install-distribution install-${target})
    else()
      message(SEND_ERROR "Specified distribution component '${target}' doesn't have an install target")
Reid Kleckner's avatar
Reid Kleckner committed
    endif()

    if(TARGET install-${target}-stripped)
      add_dependencies(install-distribution-stripped install-${target}-stripped)
    else()
      message(SEND_ERROR "Specified distribution component '${target}' doesn't have an install-stripped target."
                         " Its installation target creation should be changed to use add_llvm_install_targets,"
                         " or you should manually create the 'install-${target}-stripped' target.")
    endif()
Reid Kleckner's avatar
Reid Kleckner committed
  endforeach()
endif()

# This allows us to deploy the Universal CRT DLLs by passing -DCMAKE_INSTALL_UCRT_LIBRARIES=ON to CMake
if (MSVC AND CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows" AND CMAKE_INSTALL_UCRT_LIBRARIES)

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()