Advertisement
Guest User

Untitled

a guest
Jan 17th, 2019
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
CMake 1.61 KB | None | 0 0
  1. cmake_minimum_required(VERSION 3.5.2)
  2. project(05_micro_benchmark)
  3.  
  4. set(CMAKE_CXX_STANDARD 14)
  5.  
  6. # STATIC LIB
  7.  
  8. include_directories(include)
  9.  
  10. set(HEADER_FILES include/Dummy.h include/Small.h include/Medium.h include/Large.h)
  11. set(SOURCE_FILES src/Dummy.cpp)
  12.  
  13. add_library(05_lib STATIC ${HEADER_FILES} ${SOURCE_FILES})
  14.  
  15. # BINARY
  16.  
  17. add_executable(05_bin src/main.cpp)
  18. target_link_libraries(05_bin 05_lib)
  19.  
  20. # TESTS
  21.  
  22. include_directories(../googletest/googletest/include)
  23. include_directories(test/include)
  24.  
  25. link_directories(external/${CMAKE_BUILD_TYPE}/googletest/googletest)
  26.  
  27. set(TEST_HEADER_FILES test/include/TestIncludes.h)
  28. set(TEST_SOURCE_FILES test/src/DummyTest.cpp test/src/SmallTest.cpp test/src/MediumTest.cpp test/src/LargeTest.cpp)
  29.  
  30. add_executable(05_test ${TEST_HEADER_FILES} ${TEST_SOURCE_FILES})
  31. target_link_libraries(05_test 05_lib gtest gtest_main pthread)
  32.  
  33. # BENCHMARKS
  34.  
  35. include_directories(../benchmark/include)
  36. include_directories(benchmark/include)
  37. link_directories(external/${CMAKE_BUILD_TYPE}/benchmark/src)
  38.  
  39. set(BENCHMARK_HEADER_FILES benchmark/include/BenchmarkIncludes.h)
  40. set(BENCHMARK_SOURCE_FILES benchmark/src/DummyBenchmark.cpp benchmark/src/SmallBenchmark.cpp
  41.         benchmark/src/MediumBenchmark.cpp benchmark/src/LargeBenchmark.cpp benchmark/src/STLMapBenchmark.cpp benchmark/src/STLVectorBenchmark.cpp benchmark/src/STLUnorderedMapBenchmark.cpp)
  42.  
  43. add_executable(05_benchmark ${BENCHMARK_HEADER_FILES} ${BENCHMARK_SOURCE_FILES} benchmark/src/main.cpp)
  44. target_compile_options(05_benchmark PUBLIC -fno-omit-frame-pointer)
  45. target_link_libraries(05_benchmark 05_lib benchmark pthread)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement