about summary refs log tree commit diff
path: root/third_party/immer/benchmark/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/immer/benchmark/CMakeLists.txt')
-rw-r--r--third_party/immer/benchmark/CMakeLists.txt128
1 files changed, 0 insertions, 128 deletions
diff --git a/third_party/immer/benchmark/CMakeLists.txt b/third_party/immer/benchmark/CMakeLists.txt
deleted file mode 100644
index 0f9061aa3c..0000000000
--- a/third_party/immer/benchmark/CMakeLists.txt
+++ /dev/null
@@ -1,128 +0,0 @@
-
-#  Config
-#  ======
-
-option(CHECK_BENCHMARKS "Run benchmarks on check target" off)
-option(BENCHMARK_DISABLE_GC "Disable gc during a measurement")
-
-set(BENCHMARK_PARAM   "N:1000" CACHE STRING "Benchmark parameters")
-set(BENCHMARK_SAMPLES "20"     CACHE STRING "Benchmark samples")
-
-#  Dependencies
-#  ============
-
-find_package(RRB)
-
-if (NOT RRB_FOUND)
-  message(STATUS "Disabling benchmarks")
-  return()
-endif()
-
-# These are expected to be in the include path, the nix-shell
-# environment installs them:
-#
-#    https://github.com/marcusz/steady
-#    https://github.com/deepsea-inria/chunkedseq.git
-#    https://github.com/rsms/immutable-cpp.git
-
-#  Targets
-#  =======
-
-add_custom_target(benchmarks
-  COMMENT "Build all benchmarks.")
-
-execute_process(
-  COMMAND git log -1 --format=%h
-  WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
-  OUTPUT_VARIABLE immer_git_commit_hash
-  OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-execute_process(
-  COMMAND git status --porcelain
-  WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
-  OUTPUT_VARIABLE immer_git_status
-  OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-if (NOT immer_git_status STREQUAL "")
-  set(immer_git_commit_hash "${immer_git_commit_hash}+")
-endif()
-
-site_name(immer_hostname)
-
-get_filename_component(immer_compiler_name "${CMAKE_CXX_COMPILER}" NAME)
-
-set(immer_benchmark_report_base_dir "${CMAKE_SOURCE_DIR}/reports")
-set(immer_benchmark_report_dir "${immer_benchmark_report_base_dir}/report_\
-${immer_git_commit_hash}_\
-${immer_hostname}_\
-${immer_compiler_name}_\
-${BENCHMARK_PARAM}_\
-s${BENCHMARK_SAMPLES}")
-
-if(DISABLE_FREE_LIST)
-  set(immer_benchmark_report_dir "${immer_benchmark_report_dir}_nofl")
-endif()
-
-if(DISABLE_THREAD_SAFETY)
-  set(immer_benchmark_report_dir "${immer_benchmark_report_dir}_nots")
-endif()
-
-if(BENCHMARK_DISABLE_GC)
-  set(immer_benchmark_report_dir "${immer_benchmark_report_dir}_nogc")
-endif()
-
-if(CHECK_BENCHMARKS)
-  add_dependencies(check benchmarks)
-endif()
-
-add_custom_target(benchmark-report-dir
-  COMMAND ${CMAKE_COMMAND}
-  -E make_directory ${immer_benchmark_report_dir})
-
-file(GLOB_RECURSE immer_benchmarks "*.cpp")
-foreach(_file IN LISTS immer_benchmarks)
-  immer_target_name_for(_target _output "${_file}")
-  add_executable(${_target} EXCLUDE_FROM_ALL "${_file}")
-  set_target_properties(${_target} PROPERTIES OUTPUT_NAME ${_output})
-  add_dependencies(benchmarks ${_target})
-  add_dependencies(${_target} benchmark-report-dir)
-  target_compile_options(${_target} PUBLIC -Wno-unused-function)
-  target_compile_definitions(${_target} PUBLIC
-    NONIUS_RUNNER
-    IMMER_BENCHMARK_LIBRRB=1
-    IMMER_BENCHMARK_STEADY=1
-    IMMER_BENCHMARK_EXPERIMENTAL=0
-    IMMER_BENCHMARK_DISABLE_GC=${BENCHMARK_DISABLE_GC}
-    IMMER_BENCHMARK_BOOST_COROUTINE=${ENABLE_BOOST_COROUTINE})
-  target_link_libraries(${_target} PUBLIC
-    immer-dev
-    ${RRB_LIBRARIES})
-  target_include_directories(${_target} SYSTEM PUBLIC
-    ${RRB_INCLUDE_DIR})
-  if(CHECK_BENCHMARKS)
-    add_test("benchmark/${_output}" "${CMAKE_SOURCE_DIR}/tools/with-tee.bash"
-      ${immer_benchmark_report_dir}/${_target}.out
-      "${CMAKE_CURRENT_BINARY_DIR}/${_output}" -v
-      -t ${_target}
-      -r html
-      -s ${BENCHMARK_SAMPLES}
-      -p ${BENCHMARK_PARAM}
-      -o ${immer_benchmark_report_dir}/${_target}.html)
-  endif()
-endforeach()
-
-set(immer_ssh_method
-  ssh -p 5488
-      -o StrictHostKeyChecking=no
-      -i ${CMAKE_SOURCE_DIR}/tools/travis/ssh-key)
-
-add_custom_target(upload-benchmark-reports
-  COMMAND
-  rsync -av -e \"${immer_ssh_method}\"
-        ${immer_benchmark_report_base_dir}
-        raskolnikov@sinusoid.es:public/misc/immer/)
-
-add_custom_target(copy-benchmark-reports
-  COMMAND
-  rsync -av ${immer_benchmark_report_base_dir}
-        ~/public/misc/immer/)