Warning, /graphics/krita/benchmarks/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 include_directories(
0002 ${CMAKE_SOURCE_DIR}/sdk/tests
0003 ${CMAKE_SOURCE_DIR}/libs/pigment
0004 ${CMAKE_SOURCE_DIR}/libs/pigment/compositeops
0005 )
0006 include_directories(SYSTEM
0007 ${EIGEN3_INCLUDE_DIR}
0008 )
0009
0010 macro_add_unittest_definitions()
0011
0012 ########### next target ###############
0013
0014 set(kis_datamanager_benchmark_SRCS kis_datamanager_benchmark.cpp)
0015 set(kis_hiterator_benchmark_SRCS kis_hline_iterator_benchmark.cpp)
0016 set(kis_viterator_benchmark_SRCS kis_vline_iterator_benchmark.cpp)
0017 set(kis_random_iterator_benchmark_SRCS kis_random_iterator_benchmark.cpp)
0018 set(kis_projection_benchmark_SRCS kis_projection_benchmark.cpp)
0019 set(kis_bcontrast_benchmark_SRCS kis_bcontrast_benchmark.cpp)
0020 set(kis_blur_benchmark_SRCS kis_blur_benchmark.cpp)
0021 set(kis_level_filter_benchmark_SRCS kis_level_filter_benchmark.cpp)
0022 set(kis_painter_benchmark_SRCS kis_painter_benchmark.cpp)
0023 set(kis_stroke_benchmark_SRCS kis_stroke_benchmark.cpp)
0024 set(kis_fast_math_benchmark_SRCS kis_fast_math_benchmark.cpp)
0025 set(kis_floodfill_benchmark_SRCS kis_floodfill_benchmark.cpp)
0026 set(kis_gradient_benchmark_SRCS kis_gradient_benchmark.cpp)
0027 set(kis_mask_generator_benchmark_SRCS kis_mask_generator_benchmark.cpp)
0028 set(kis_low_memory_benchmark_SRCS kis_low_memory_benchmark.cpp)
0029 set(KisAnimationRenderingBenchmark_SRCS KisAnimationRenderingBenchmark.cpp)
0030 set(kis_filter_selections_benchmark_SRCS kis_filter_selections_benchmark.cpp)
0031 set(kis_thumbnail_benchmark_SRCS kis_thumbnail_benchmark.cpp)
0032
0033 krita_add_benchmark(KisDatamanagerBenchmark TESTNAME krita-benchmarks-KisDataManager ${kis_datamanager_benchmark_SRCS})
0034 krita_add_benchmark(KisHLineIteratorBenchmark TESTNAME krita-benchmarks-KisHLineIterator ${kis_hiterator_benchmark_SRCS})
0035 krita_add_benchmark(KisVLineIteratorBenchmark TESTNAME krita-benchmarks-KisVLineIterator ${kis_viterator_benchmark_SRCS})
0036 krita_add_benchmark(KisRandomIteratorBenchmark TESTNAME krita-benchmarks-KisRandomIterator ${kis_random_iterator_benchmark_SRCS})
0037 krita_add_benchmark(KisProjectionBenchmark TESTNAME krita-benchmarks-KisProjectionBenchmark ${kis_projection_benchmark_SRCS})
0038 krita_add_benchmark(KisBContrastBenchmark TESTNAME krita-benchmarks-KisBContrastBenchmark ${kis_bcontrast_benchmark_SRCS})
0039 krita_add_benchmark(KisBlurBenchmark TESTNAME krita-benchmarks-KisBlurBenchmark ${kis_blur_benchmark_SRCS})
0040 krita_add_benchmark(KisLevelFilterBenchmark TESTNAME krita-benchmarks-KisLevelFilterBenchmark ${kis_level_filter_benchmark_SRCS})
0041 krita_add_benchmark(KisPainterBenchmark TESTNAME krita-benchmarks-KisPainterBenchmark ${kis_painter_benchmark_SRCS})
0042 krita_add_benchmark(KisStrokeBenchmark TESTNAME krita-benchmarks-KisStrokeBenchmark ${kis_stroke_benchmark_SRCS})
0043 krita_add_benchmark(KisFastMathBenchmark TESTNAME krita-benchmarks-KisFastMath ${kis_fast_math_benchmark_SRCS})
0044 krita_add_benchmark(KisFloodfillBenchmark TESTNAME krita-benchmarks-KisFloodFill ${kis_floodfill_benchmark_SRCS})
0045 krita_add_benchmark(KisGradientBenchmark TESTNAME krita-benchmarks-KisGradientFill ${kis_gradient_benchmark_SRCS})
0046 krita_add_benchmark(KisMaskGeneratorBenchmark TESTNAME krita-benchmarks-KisMaskGenerator ${kis_mask_generator_benchmark_SRCS})
0047 krita_add_benchmark(KisLowMemoryBenchmark TESTNAME krita-benchmarks-KisLowMemory ${kis_low_memory_benchmark_SRCS})
0048 krita_add_benchmark(KisAnimationRenderingBenchmark TESTNAME krita-benchmarks-KisAnimationRenderingBenchmark ${KisAnimationRenderingBenchmark_SRCS})
0049 krita_add_benchmark(KisFilterSelectionsBenchmark TESTNAME krita-image-KisFilterSelectionsBenchmark ${kis_filter_selections_benchmark_SRCS})
0050 krita_add_benchmark(KisThumbnailBenchmark TESTNAME krita-benchmarks-KisThumbnail ${kis_thumbnail_benchmark_SRCS})
0051
0052 target_link_libraries(KisDatamanagerBenchmark kritaimage Qt5::Test)
0053 target_link_libraries(KisHLineIteratorBenchmark kritaimage Qt5::Test)
0054 target_link_libraries(KisVLineIteratorBenchmark kritaimage Qt5::Test)
0055 target_link_libraries(KisRandomIteratorBenchmark kritaimage Qt5::Test)
0056 target_link_libraries(KisProjectionBenchmark kritaimage kritaui Qt5::Test)
0057 target_link_libraries(KisBContrastBenchmark kritaimage Qt5::Test)
0058 target_link_libraries(KisBlurBenchmark kritaimage Qt5::Test)
0059 target_link_libraries(KisLevelFilterBenchmark kritaimage Qt5::Test)
0060 target_link_libraries(KisPainterBenchmark kritaimage Qt5::Test)
0061 target_link_libraries(KisStrokeBenchmark kritaimage Qt5::Test)
0062 target_link_libraries(KisFastMathBenchmark kritaimage Qt5::Test)
0063 target_link_libraries(KisFloodfillBenchmark kritaimage Qt5::Test)
0064 target_link_libraries(KisGradientBenchmark kritaimage Qt5::Test)
0065 target_link_libraries(KisLowMemoryBenchmark kritaimage Qt5::Test)
0066 target_link_libraries(KisAnimationRenderingBenchmark kritaimage kritaui Qt5::Test)
0067 target_link_libraries(KisFilterSelectionsBenchmark kritaimage Qt5::Test)
0068
0069 if(HAVE_XSIMD)
0070 ko_compile_for_all_implementations_no_scalar(__per_arch_composition_objects kis_composition_benchmark.cpp)
0071 message("Following objects are generated for the composition benchmark")
0072 foreach(_obj IN LISTS __per_arch_composition_objects)
0073 string(REPLACE "\.cpp" "" _target ${_obj})
0074 string(REPLACE "\.cpp" "\.h" _fake_header ${_obj})
0075 get_filename_component(_target ${_target} NAME)
0076 message(" * ${_target} <- ${_obj}")
0077 krita_add_benchmark(${_target} TESTNAME "krita-benchmarks-${_target}" ${_obj})
0078
0079 # Automoc goes crazy if the source file is located in the build
0080 # directory and does not have a header with exactly the same
0081 # base name. It just skips generation for such a source, since
0082 # it doesn't include Q_OBJECT macro directly.
0083 #
0084 # So here we just generate a fake header which makes
0085 # automoc happy
0086 #
0087 # `configure_file` is used to create a semantic dependency
0088 # between the two files
0089
0090 configure_file(kis_composition_benchmark.h ${_fake_header} COPYONLY)
0091
0092 target_link_libraries(${_target} kritaimage Qt5::Test kritamultiarch)
0093 endforeach()
0094 endif()
0095
0096 target_link_libraries(KisMaskGeneratorBenchmark kritaimage Qt5::Test)
0097 target_link_libraries(KisThumbnailBenchmark kritaimage Qt5::Test)