1 2cmake_minimum_required(VERSION 3.19) 3 4project (MetaObjectBenchmarks) 5 6set(CMAKE_CXX_STANDARD 17) 7set(CMAKE_CXX_STANDARD_REQUIRED ON) 8set(CMAKE_CXX_EXTENSIONS OFF) 9 10find_package(MetaObjectAPI REQUIRED) 11find_package(MetaObjectExtAPI REQUIRED) 12find_package(MetaObjectHighLevelAPI REQUIRED) 13find_package(MetaObject QUIET) 14 15add_executable(MetaObjectBenchmarks) 16 17target_sources(MetaObjectBenchmarks 18 PRIVATE 19 src/main.cpp 20 src/metadata_benchmarks.cpp 21 src/object_registry_benchmarks.cpp 22 src/object_benchmarks.cpp 23 src/property_benchmarks.cpp 24 src/property_utils.h 25 src/shared_ptr_benchmarks.cpp 26 src/task_queue_benchmarks.cpp 27 src/utils.cpp 28 src/utils.h 29 ) 30 31target_link_libraries(MetaObjectBenchmarks PRIVATE benchmark) 32target_link_libraries(MetaObjectBenchmarks PRIVATE MetaObject::ExtAPI 33 MetaObject::HighLevelAPI 34 MetaObject::EnvironmentSetup 35) 36 37include(TargetPluginsDependencies) 38 39target_plugins_dependencies(MetaObjectBenchmarks 40 PLUGINS AGPEngine::AGPEngineDLL 41 RELATIVE_DEPLOY_PATH . 42 VERBOSE) 43 44target_plugins_dependencies(MetaObjectBenchmarks 45 PLUGINS MetaObject::Plugin 46 RELATIVE_DEPLOY_PATH "plugins" 47 VERBOSE) 48