brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.7 KiB · b0fe600 Raw
49 lines · plain
1#==============================================================================2# Build Google Benchmark3#==============================================================================4 5include(ExternalProject)6set(BENCHMARK_COMPILE_FLAGS7    -Wno-unused-command-line-argument8    -nostdinc++9    -isystem "${LIBCXX_GENERATED_INCLUDE_DIR}"10    -L${LIBCXX_LIBRARY_DIR}11    -Wl,-rpath,${LIBCXX_LIBRARY_DIR}12    ${SANITIZER_FLAGS}13    )14if(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR AND NOT APPLE)15  list(APPEND BENCHMARK_COMPILE_FLAGS16    -isystem "${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}")17endif()18if (DEFINED LIBCXX_CXX_ABI_LIBRARY_PATH)19  list(APPEND BENCHMARK_COMPILE_FLAGS20          -L${LIBCXX_CXX_ABI_LIBRARY_PATH}21          -Wl,-rpath,${LIBCXX_CXX_ABI_LIBRARY_PATH})22endif()23split_list(BENCHMARK_COMPILE_FLAGS)24 25set(BENCHMARK_CXX_LIBRARIES)26list(APPEND BENCHMARK_CXX_LIBRARIES c++)27if (NOT LIBCXX_ENABLE_SHARED)28  list(APPEND BENCHMARK_CXX_LIBRARIES c++abi)29endif()30 31ExternalProject_Add(google-benchmark32        EXCLUDE_FROM_ALL ON33        DEPENDS cxx cxx-headers34        PREFIX google-benchmark35        SOURCE_DIR ${LLVM_THIRD_PARTY_DIR}/benchmark36        INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR}/google-benchmark37        CMAKE_CACHE_ARGS38          -DCMAKE_C_COMPILER:FILEPATH=${CMAKE_C_COMPILER}39          -DCMAKE_CXX_COMPILER:FILEPATH=${CMAKE_CXX_COMPILER}40          -DCMAKE_MAKE_PROGRAM:FILEPATH=${CMAKE_MAKE_PROGRAM}41          -DCMAKE_BUILD_TYPE:STRING=RELEASE42          -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>43          -DCMAKE_CXX_FLAGS:STRING=${BENCHMARK_COMPILE_FLAGS}44          -DBENCHMARK_USE_LIBCXX:BOOL=ON45          -DBENCHMARK_ENABLE_TESTING:BOOL=OFF46          -DBENCHMARK_CXX_LIBRARIES:STRING=${BENCHMARK_CXX_LIBRARIES})47 48add_dependencies(cxx-test-depends google-benchmark)49