# ~~~ # Copyright 2020 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ~~~ include(ExternalProjectHelper) if (NOT TARGET benchmark-project) # Give application developers a hook to configure the version and hash # downloaded from GitHub. set(GOOGLE_CLOUD_CPP_BENCHMARK_URL "https://github.com/google/benchmark/archive/v1.5.0.tar.gz") set(GOOGLE_CLOUD_CPP_BENCHMARK_SHA256 "3c6a165b6ecc948967a1ead710d4a181d7b0fbcaa183ef7ea84604994966221a") set_external_project_build_parallel_level(PARALLEL) set_external_project_vars() include(ExternalProject) ExternalProject_Add( benchmark-project EXCLUDE_FROM_ALL ON PREFIX "${CMAKE_BINARY_DIR}/external/benchmark" INSTALL_DIR "${GOOGLE_CLOUD_CPP_EXTERNAL_PREFIX}" URL ${GOOGLE_CLOUD_CPP_BENCHMARK_URL} URL_HASH SHA256=${GOOGLE_CLOUD_CPP_BENCHMARK_SHA256} LIST_SEPARATOR | CMAKE_ARGS ${GOOGLE_CLOUD_CPP_EXTERNAL_PROJECT_CMAKE_FLAGS} -DCMAKE_PREFIX_PATH=${GOOGLE_CLOUD_CPP_PREFIX_PATH} -DCMAKE_INSTALL_RPATH=${GOOGLE_CLOUD_CPP_INSTALL_RPATH} -DCMAKE_INSTALL_PREFIX= -DBENCHMARK_ENABLE_TESTING=OFF BUILD_COMMAND ${CMAKE_COMMAND} --build ${PARALLEL} LOG_DOWNLOAD ON LOG_CONFIGURE ON LOG_BUILD ON LOG_INSTALL ON) endif ()