1# Copyright 2020 The libgav1 Authors 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); 4# you may not use this file except in compliance with the License. 5# You may obtain a copy of the License at 6# 7# http://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, 11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12# See the License for the specific language governing permissions and 13# limitations under the License. 14 15if(LIBGAV1_LIBGAV1_TESTS_CMAKE_) 16 return() 17endif() # LIBGAV1_LIBGAV1_TESTS_CMAKE_ 18set(LIBGAV1_LIBGAV1_TESTS_CMAKE_ 1) 19 20set(libgav1_googletest "${libgav1_root}/third_party/googletest") 21if(NOT LIBGAV1_ENABLE_TESTS OR NOT EXISTS "${libgav1_googletest}") 22 macro(libgav1_add_tests_targets) 23 24 endmacro() 25 26 if(LIBGAV1_ENABLE_TESTS AND NOT EXISTS "${libgav1_googletest}") 27 message( 28 "GoogleTest not found, setting LIBGAV1_ENABLE_TESTS to false.\n" 29 "To enable tests download the GoogleTest repository to" 30 " third_party/googletest:\n\n git \\\n -C ${libgav1_root} \\\n" 31 " clone -b release-1.12.1 --depth 1 \\\n" 32 " https://github.com/google/googletest.git third_party/googletest\n") 33 set(LIBGAV1_ENABLE_TESTS FALSE CACHE BOOL "Enables tests." FORCE) 34 endif() 35 return() 36endif() 37 38# Check GoogleTest compiler requirements. 39if((CMAKE_CXX_COMPILER_ID 40 MATCHES 41 "Clang|GNU" 42 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "5") 43 OR (CMAKE_CXX_COMPILER_ID 44 STREQUAL 45 "MSVC" 46 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "19")) 47 macro(libgav1_add_tests_targets) 48 49 endmacro() 50 51 message( 52 WARNING 53 "${CMAKE_CXX_COMPILER} (${CMAKE_CXX_COMPILER_ID} version" 54 " ${CMAKE_CXX_COMPILER_VERSION}) is below the minimum requirements for" 55 " GoogleTest; disabling unit tests. See" 56 " https://github.com/google/googletest#compilers for more detail.") 57 set(LIBGAV1_ENABLE_TESTS FALSE CACHE BOOL "Enables tests." FORCE) 58 return() 59endif() 60 61list(APPEND libgav1_tests_block_utils_sources 62 "${libgav1_root}/tests/block_utils.h" 63 "${libgav1_root}/tests/block_utils.cc") 64 65list(APPEND libgav1_tests_utils_sources 66 "${libgav1_root}/tests/third_party/libvpx/acm_random.h" 67 "${libgav1_root}/tests/third_party/libvpx/md5_helper.h" 68 "${libgav1_root}/tests/third_party/libvpx/md5_utils.cc" 69 "${libgav1_root}/tests/third_party/libvpx/md5_utils.h" 70 "${libgav1_root}/tests/utils.h" "${libgav1_root}/tests/utils.cc") 71 72list(APPEND libgav1_tests_utils_test_sources 73 "${libgav1_root}/tests/utils_test.cc") 74 75list(APPEND libgav1_array_2d_test_sources 76 "${libgav1_source}/utils/array_2d_test.cc") 77list(APPEND libgav1_average_blend_test_sources 78 "${libgav1_source}/dsp/average_blend_test.cc") 79list(APPEND libgav1_block_parameters_holder_test_sources 80 "${libgav1_source}/utils/block_parameters_holder_test.cc") 81list(APPEND libgav1_blocking_counter_test_sources 82 "${libgav1_source}/utils/blocking_counter_test.cc") 83list(APPEND libgav1_buffer_pool_test_sources 84 "${libgav1_source}/buffer_pool_test.cc") 85list(APPEND libgav1_cdef_test_sources "${libgav1_source}/dsp/cdef_test.cc") 86list( 87 APPEND libgav1_common_test_sources "${libgav1_source}/utils/common_test.cc") 88list(APPEND libgav1_common_avx2_test_sources 89 "${libgav1_source}/dsp/x86/common_avx2.h" 90 "${libgav1_source}/dsp/x86/common_avx2.inc" 91 "${libgav1_source}/dsp/x86/common_avx2_test.cc" 92 "${libgav1_source}/dsp/x86/common_avx2_test.h" 93 "${libgav1_source}/dsp/x86/common_sse4.inc") 94list(APPEND libgav1_common_dsp_test_sources 95 "${libgav1_source}/dsp/common_dsp_test.cc") 96list(APPEND libgav1_common_neon_test_sources 97 "${libgav1_source}/dsp/arm/common_neon_test.cc") 98list(APPEND libgav1_common_sse4_test_sources 99 "${libgav1_source}/dsp/x86/common_sse4.h" 100 "${libgav1_source}/dsp/x86/common_sse4.inc" 101 "${libgav1_source}/dsp/x86/common_sse4_test.cc" 102 "${libgav1_source}/dsp/x86/common_sse4_test.h") 103list(APPEND libgav1_convolve_test_sources 104 "${libgav1_source}/dsp/convolve_test.cc") 105list(APPEND libgav1_cpu_test_sources "${libgav1_source}/utils/cpu_test.cc") 106list(APPEND libgav1_c_decoder_test_sources 107 "${libgav1_source}/c_decoder_test.c" 108 "${libgav1_source}/decoder_test_data.h") 109list(APPEND libgav1_c_version_test_sources "${libgav1_source}/c_version_test.c") 110list(APPEND libgav1_decoder_test_sources 111 "${libgav1_source}/decoder_test.cc" 112 "${libgav1_source}/decoder_test_data.h") 113list(APPEND libgav1_decoder_buffer_test_sources 114 "${libgav1_source}/decoder_buffer_test.cc") 115list(APPEND libgav1_distance_weighted_blend_test_sources 116 "${libgav1_source}/dsp/distance_weighted_blend_test.cc") 117list(APPEND libgav1_dsp_test_sources "${libgav1_source}/dsp/dsp_test.cc") 118list(APPEND libgav1_entropy_decoder_test_sources 119 "${libgav1_source}/utils/entropy_decoder_test.cc" 120 "${libgav1_source}/utils/entropy_decoder_test_data.inc") 121list(APPEND libgav1_file_reader_test_sources 122 "${libgav1_examples}/file_reader_test.cc" 123 "${libgav1_examples}/file_reader_test_common.cc" 124 "${libgav1_examples}/file_reader_test_common.h") 125list(APPEND libgav1_film_grain_test_sources 126 "${libgav1_source}/film_grain_test.cc") 127list(APPEND libgav1_file_reader_factory_test_sources 128 "${libgav1_examples}/file_reader_factory_test.cc") 129list(APPEND libgav1_file_writer_test_sources 130 "${libgav1_examples}/file_writer_test.cc") 131list(APPEND libgav1_internal_frame_buffer_list_test_sources 132 "${libgav1_source}/internal_frame_buffer_list_test.cc") 133list(APPEND libgav1_intra_edge_test_sources 134 "${libgav1_source}/dsp/intra_edge_test.cc") 135list(APPEND libgav1_intrapred_cfl_test_sources 136 "${libgav1_source}/dsp/intrapred_cfl_test.cc") 137list(APPEND libgav1_intrapred_directional_test_sources 138 "${libgav1_source}/dsp/intrapred_directional_test.cc") 139list(APPEND libgav1_intrapred_filter_test_sources 140 "${libgav1_source}/dsp/intrapred_filter_test.cc") 141list(APPEND libgav1_intrapred_test_sources 142 "${libgav1_source}/dsp/intrapred_test.cc") 143list(APPEND libgav1_inverse_transform_test_sources 144 "${libgav1_source}/dsp/inverse_transform_test.cc") 145list(APPEND libgav1_loop_filter_test_sources 146 "${libgav1_source}/dsp/loop_filter_test.cc") 147list(APPEND libgav1_loop_restoration_test_sources 148 "${libgav1_source}/dsp/loop_restoration_test.cc") 149list(APPEND libgav1_mask_blend_test_sources 150 "${libgav1_source}/dsp/mask_blend_test.cc") 151list(APPEND libgav1_motion_field_projection_test_sources 152 "${libgav1_source}/dsp/motion_field_projection_test.cc") 153list(APPEND libgav1_motion_vector_search_test_sources 154 "${libgav1_source}/dsp/motion_vector_search_test.cc") 155list(APPEND libgav1_super_res_test_sources 156 "${libgav1_source}/dsp/super_res_test.cc") 157list(APPEND libgav1_weight_mask_test_sources 158 "${libgav1_source}/dsp/weight_mask_test.cc") 159list( 160 APPEND libgav1_memory_test_sources "${libgav1_source}/utils/memory_test.cc") 161list(APPEND libgav1_obmc_test_sources "${libgav1_source}/dsp/obmc_test.cc") 162list(APPEND libgav1_obu_parser_test_sources 163 "${libgav1_source}/obu_parser_test.cc") 164list(APPEND libgav1_post_filter_test_sources 165 "${libgav1_source}/post_filter_test.cc") 166list(APPEND libgav1_prediction_mask_test_sources 167 "${libgav1_source}/prediction_mask_test.cc") 168list( 169 APPEND libgav1_quantizer_test_sources "${libgav1_source}/quantizer_test.cc") 170list(APPEND libgav1_queue_test_sources "${libgav1_source}/utils/queue_test.cc") 171list(APPEND libgav1_raw_bit_reader_test_sources 172 "${libgav1_source}/utils/raw_bit_reader_test.cc") 173list(APPEND libgav1_reconstruction_test_sources 174 "${libgav1_source}/reconstruction_test.cc") 175list(APPEND libgav1_residual_buffer_pool_test_sources 176 "${libgav1_source}/residual_buffer_pool_test.cc") 177list(APPEND libgav1_scan_test_sources "${libgav1_source}/scan_test.cc") 178list(APPEND libgav1_segmentation_map_test_sources 179 "${libgav1_source}/utils/segmentation_map_test.cc") 180list(APPEND libgav1_segmentation_test_sources 181 "${libgav1_source}/utils/segmentation_test.cc") 182list(APPEND libgav1_stack_test_sources "${libgav1_source}/utils/stack_test.cc") 183list(APPEND libgav1_symbol_decoder_context_test_sources 184 "${libgav1_source}/symbol_decoder_context_test.cc") 185list(APPEND libgav1_threadpool_test_sources 186 "${libgav1_source}/utils/threadpool_test.cc") 187list(APPEND libgav1_threading_strategy_test_sources 188 "${libgav1_source}/threading_strategy_test.cc") 189list(APPEND libgav1_unbounded_queue_test_sources 190 "${libgav1_source}/utils/unbounded_queue_test.cc") 191list( 192 APPEND libgav1_vector_test_sources "${libgav1_source}/utils/vector_test.cc") 193list(APPEND libgav1_version_test_sources "${libgav1_source}/version_test.cc") 194list(APPEND libgav1_warp_test_sources "${libgav1_source}/dsp/warp_test.cc") 195list(APPEND libgav1_warp_prediction_test_sources 196 "${libgav1_source}/warp_prediction_test.cc") 197 198macro(libgav1_add_tests_targets) 199 if(NOT LIBGAV1_ENABLE_TESTS) 200 message( 201 FATAL_ERROR 202 "This version of libgav1_add_tests_targets() should only be used with" 203 " LIBGAV1_ENABLE_TESTS set to true.") 204 endif() 205 libgav1_add_library(TEST 206 NAME 207 libgav1_gtest 208 TYPE 209 STATIC 210 SOURCES 211 "${libgav1_googletest}/googletest/src/gtest-all.cc" 212 DEFINES 213 ${libgav1_defines} 214 INCLUDES 215 ${libgav1_gtest_include_paths} 216 ${libgav1_include_paths}) 217 218 libgav1_add_library(TEST 219 NAME 220 libgav1_gtest_main 221 TYPE 222 STATIC 223 SOURCES 224 "${libgav1_googletest}/googletest/src/gtest_main.cc" 225 DEFINES 226 ${libgav1_defines} 227 INCLUDES 228 ${libgav1_gtest_include_paths} 229 ${libgav1_include_paths}) 230 231 if(use_absl_threading) 232 list(APPEND libgav1_common_test_absl_deps absl::synchronization) 233 endif() 234 235 libgav1_add_executable(TEST 236 NAME 237 array_2d_test 238 SOURCES 239 ${libgav1_array_2d_test_sources} 240 DEFINES 241 ${libgav1_defines} 242 INCLUDES 243 ${libgav1_test_include_paths} 244 OBJLIB_DEPS 245 libgav1_utils 246 LIB_DEPS 247 ${libgav1_common_test_absl_deps} 248 libgav1_gtest 249 libgav1_gtest_main) 250 251 libgav1_add_executable(TEST 252 NAME 253 block_parameters_holder_test 254 SOURCES 255 ${libgav1_block_parameters_holder_test_sources} 256 DEFINES 257 ${libgav1_defines} 258 INCLUDES 259 ${libgav1_test_include_paths} 260 OBJLIB_DEPS 261 libgav1_utils 262 LIB_DEPS 263 ${libgav1_common_test_absl_deps} 264 libgav1_gtest 265 libgav1_gtest_main) 266 267 libgav1_add_executable(TEST 268 NAME 269 blocking_counter_test 270 SOURCES 271 ${libgav1_blocking_counter_test_sources} 272 DEFINES 273 ${libgav1_defines} 274 INCLUDES 275 ${libgav1_test_include_paths} 276 OBJLIB_DEPS 277 libgav1_utils 278 LIB_DEPS 279 absl::time 280 ${libgav1_common_test_absl_deps} 281 libgav1_gtest 282 libgav1_gtest_main) 283 284 if(libgav1_have_avx2) 285 list(APPEND libgav1_common_dsp_test_sources 286 ${libgav1_common_avx2_test_sources}) 287 endif() 288 if(libgav1_have_sse4) 289 list(APPEND libgav1_common_dsp_test_sources 290 ${libgav1_common_sse4_test_sources}) 291 endif() 292 if(libgav1_have_avx2 OR libgav1_have_sse4) 293 libgav1_add_executable(TEST 294 NAME 295 common_dsp_test 296 SOURCES 297 ${libgav1_common_dsp_test_sources} 298 DEFINES 299 ${libgav1_defines} 300 INCLUDES 301 ${libgav1_test_include_paths} 302 OBJLIB_DEPS 303 libgav1_utils 304 LIB_DEPS 305 ${libgav1_common_test_absl_deps} 306 libgav1_gtest_main 307 libgav1_gtest) 308 endif() 309 310 if(libgav1_have_neon) 311 libgav1_add_executable(TEST 312 NAME 313 common_neon_test 314 SOURCES 315 ${libgav1_common_neon_test_sources} 316 DEFINES 317 ${libgav1_defines} 318 INCLUDES 319 ${libgav1_test_include_paths} 320 OBJLIB_DEPS 321 libgav1_tests_block_utils 322 libgav1_utils 323 LIB_DEPS 324 ${libgav1_common_test_absl_deps} 325 libgav1_gtest 326 libgav1_gtest_main) 327 endif() 328 329 libgav1_add_executable(TEST 330 NAME 331 common_test 332 SOURCES 333 ${libgav1_common_test_sources} 334 DEFINES 335 ${libgav1_defines} 336 INCLUDES 337 ${libgav1_test_include_paths} 338 OBJLIB_DEPS 339 libgav1_utils 340 LIB_DEPS 341 ${libgav1_common_test_absl_deps} 342 libgav1_gtest 343 libgav1_gtest_main) 344 345 libgav1_add_executable(TEST 346 NAME 347 cpu_test 348 SOURCES 349 ${libgav1_cpu_test_sources} 350 DEFINES 351 ${libgav1_defines} 352 INCLUDES 353 ${libgav1_test_include_paths} 354 OBJLIB_DEPS 355 libgav1_utils 356 LIB_DEPS 357 ${libgav1_common_test_absl_deps} 358 libgav1_gtest 359 libgav1_gtest_main) 360 361 libgav1_add_executable(TEST 362 NAME 363 entropy_decoder_test 364 SOURCES 365 ${libgav1_entropy_decoder_test_sources} 366 DEFINES 367 ${libgav1_defines} 368 INCLUDES 369 ${libgav1_test_include_paths} 370 OBJLIB_DEPS 371 libgav1_utils 372 LIB_DEPS 373 absl::time 374 ${libgav1_common_test_absl_deps} 375 libgav1_gtest 376 libgav1_gtest_main) 377 378 libgav1_add_executable(TEST 379 NAME 380 file_reader_test 381 SOURCES 382 ${libgav1_file_reader_test_sources} 383 DEFINES 384 ${libgav1_defines} 385 INCLUDES 386 ${libgav1_test_include_paths} 387 OBJLIB_DEPS 388 libgav1_dsp 389 libgav1_file_reader 390 libgav1_utils 391 libgav1_tests_utils 392 LIB_DEPS 393 absl::strings 394 absl::time 395 ${libgav1_common_test_absl_deps} 396 libgav1_gtest 397 libgav1_gtest_main) 398 399 libgav1_add_executable(TEST 400 NAME 401 file_reader_factory_test 402 SOURCES 403 ${libgav1_file_reader_factory_test_sources} 404 DEFINES 405 ${libgav1_defines} 406 INCLUDES 407 ${libgav1_test_include_paths} 408 OBJLIB_DEPS 409 libgav1_file_reader 410 libgav1_utils 411 LIB_DEPS 412 absl::memory 413 ${libgav1_common_test_absl_deps} 414 libgav1_gtest 415 libgav1_gtest_main) 416 417 libgav1_add_executable(TEST 418 NAME 419 film_grain_test 420 SOURCES 421 ${libgav1_film_grain_test_sources} 422 DEFINES 423 ${libgav1_defines} 424 INCLUDES 425 ${libgav1_test_include_paths} 426 OBJLIB_DEPS 427 libgav1_decoder 428 libgav1_dsp 429 libgav1_tests_block_utils 430 libgav1_tests_utils 431 libgav1_utils 432 LIB_DEPS 433 absl::str_format_internal 434 absl::time 435 ${libgav1_common_test_absl_deps} 436 libgav1_gtest 437 libgav1_gtest_main) 438 439 libgav1_add_executable(TEST 440 NAME 441 memory_test 442 SOURCES 443 ${libgav1_memory_test_sources} 444 DEFINES 445 ${libgav1_defines} 446 INCLUDES 447 ${libgav1_test_include_paths} 448 LIB_DEPS 449 absl::base 450 libgav1_gtest 451 libgav1_gtest_main) 452 453 libgav1_add_executable(TEST 454 NAME 455 queue_test 456 SOURCES 457 ${libgav1_queue_test_sources} 458 DEFINES 459 ${libgav1_defines} 460 INCLUDES 461 ${libgav1_test_include_paths} 462 OBJLIB_DEPS 463 libgav1_utils 464 LIB_DEPS 465 ${libgav1_common_test_absl_deps} 466 libgav1_gtest 467 libgav1_gtest_main) 468 469 libgav1_add_executable(TEST 470 NAME 471 segmentation_map_test 472 SOURCES 473 ${libgav1_segmentation_map_test_sources} 474 DEFINES 475 ${libgav1_defines} 476 INCLUDES 477 ${libgav1_test_include_paths} 478 OBJLIB_DEPS 479 libgav1_utils 480 LIB_DEPS 481 ${libgav1_common_test_absl_deps} 482 libgav1_gtest 483 libgav1_gtest_main) 484 485 libgav1_add_executable(TEST 486 NAME 487 segmentation_test 488 SOURCES 489 ${libgav1_segmentation_test_sources} 490 DEFINES 491 ${libgav1_defines} 492 INCLUDES 493 ${libgav1_test_include_paths} 494 OBJLIB_DEPS 495 libgav1_utils 496 LIB_DEPS 497 ${libgav1_common_test_absl_deps} 498 libgav1_gtest 499 libgav1_gtest_main) 500 501 libgav1_add_executable(TEST 502 NAME 503 stack_test 504 SOURCES 505 ${libgav1_stack_test_sources} 506 DEFINES 507 ${libgav1_defines} 508 INCLUDES 509 ${libgav1_test_include_paths} 510 OBJLIB_DEPS 511 libgav1_utils 512 LIB_DEPS 513 ${libgav1_common_test_absl_deps} 514 libgav1_gtest 515 libgav1_gtest_main) 516 517 libgav1_add_executable(TEST 518 NAME 519 symbol_decoder_context_test 520 SOURCES 521 ${libgav1_symbol_decoder_context_test_sources} 522 DEFINES 523 ${libgav1_defines} 524 INCLUDES 525 ${libgav1_test_include_paths} 526 OBJLIB_DEPS 527 libgav1_decoder 528 libgav1_dsp 529 libgav1_utils 530 LIB_DEPS 531 ${libgav1_common_test_absl_deps} 532 libgav1_gtest 533 libgav1_gtest_main) 534 535 libgav1_add_executable(TEST 536 NAME 537 threadpool_test 538 SOURCES 539 ${libgav1_threadpool_test_sources} 540 DEFINES 541 ${libgav1_defines} 542 INCLUDES 543 ${libgav1_test_include_paths} 544 OBJLIB_DEPS 545 libgav1_utils 546 LIB_DEPS 547 absl::synchronization 548 libgav1_gtest 549 libgav1_gtest_main) 550 551 libgav1_add_executable(TEST 552 NAME 553 unbounded_queue_test 554 SOURCES 555 ${libgav1_unbounded_queue_test_sources} 556 DEFINES 557 ${libgav1_defines} 558 INCLUDES 559 ${libgav1_test_include_paths} 560 OBJLIB_DEPS 561 libgav1_utils 562 LIB_DEPS 563 ${libgav1_common_test_absl_deps} 564 libgav1_gtest 565 libgav1_gtest_main) 566 567 libgav1_add_executable(TEST 568 NAME 569 tests_utils_test 570 SOURCES 571 ${libgav1_tests_utils_test_sources} 572 DEFINES 573 ${libgav1_defines} 574 INCLUDES 575 ${libgav1_test_include_paths} 576 OBJLIB_DEPS 577 libgav1_dsp 578 libgav1_tests_utils 579 libgav1_utils 580 LIB_DEPS 581 absl::strings 582 absl::time 583 ${libgav1_common_test_absl_deps} 584 libgav1_gtest 585 libgav1_gtest_main) 586 587 libgav1_add_executable(TEST 588 NAME 589 vector_test 590 SOURCES 591 ${libgav1_vector_test_sources} 592 DEFINES 593 ${libgav1_defines} 594 INCLUDES 595 ${libgav1_test_include_paths} 596 OBJLIB_DEPS 597 libgav1_utils 598 LIB_DEPS 599 ${libgav1_common_test_absl_deps} 600 libgav1_gtest 601 libgav1_gtest_main) 602 603 libgav1_add_executable(TEST 604 NAME 605 version_test 606 SOURCES 607 ${libgav1_version_test_sources} 608 DEFINES 609 ${libgav1_defines} 610 INCLUDES 611 ${libgav1_test_include_paths} 612 LIB_DEPS 613 ${libgav1_dependency} 614 ${libgav1_common_test_absl_deps} 615 libgav1_gtest 616 libgav1_gtest_main) 617 618 libgav1_add_library(TEST 619 NAME 620 libgav1_tests_block_utils 621 TYPE 622 OBJECT 623 SOURCES 624 ${libgav1_tests_block_utils_sources} 625 DEFINES 626 ${libgav1_defines} 627 INCLUDES 628 ${libgav1_test_include_paths}) 629 630 libgav1_add_library(TEST 631 NAME 632 libgav1_tests_utils 633 TYPE 634 OBJECT 635 SOURCES 636 ${libgav1_tests_utils_sources} 637 DEFINES 638 ${libgav1_defines} 639 INCLUDES 640 ${libgav1_test_include_paths}) 641 642 libgav1_add_executable(TEST 643 NAME 644 average_blend_test 645 SOURCES 646 ${libgav1_average_blend_test_sources} 647 DEFINES 648 ${libgav1_defines} 649 INCLUDES 650 ${libgav1_test_include_paths} 651 OBJLIB_DEPS 652 libgav1_decoder 653 libgav1_dsp 654 libgav1_tests_block_utils 655 libgav1_tests_utils 656 libgav1_utils 657 LIB_DEPS 658 absl::strings 659 absl::time 660 ${libgav1_common_test_absl_deps} 661 libgav1_gtest 662 libgav1_gtest_main) 663 664 libgav1_add_executable(TEST 665 NAME 666 buffer_pool_test 667 SOURCES 668 ${libgav1_buffer_pool_test_sources} 669 DEFINES 670 ${libgav1_defines} 671 INCLUDES 672 ${libgav1_test_include_paths} 673 OBJLIB_DEPS 674 libgav1_decoder 675 libgav1_dsp 676 libgav1_utils 677 LIB_DEPS 678 ${libgav1_common_test_absl_deps} 679 libgav1_gtest 680 libgav1_gtest_main) 681 682 libgav1_add_executable(TEST 683 NAME 684 cdef_test 685 SOURCES 686 ${libgav1_cdef_test_sources} 687 DEFINES 688 ${libgav1_defines} 689 INCLUDES 690 ${libgav1_test_include_paths} 691 OBJLIB_DEPS 692 libgav1_decoder 693 libgav1_dsp 694 libgav1_tests_utils 695 libgav1_utils 696 LIB_DEPS 697 absl::strings 698 absl::time 699 ${libgav1_common_test_absl_deps} 700 libgav1_gtest 701 libgav1_gtest_main) 702 703 libgav1_add_executable(TEST 704 NAME 705 convolve_test 706 SOURCES 707 ${libgav1_convolve_test_sources} 708 DEFINES 709 ${libgav1_defines} 710 INCLUDES 711 ${libgav1_test_include_paths} 712 OBJLIB_DEPS 713 libgav1_decoder 714 libgav1_dsp 715 libgav1_tests_block_utils 716 libgav1_tests_utils 717 libgav1_utils 718 LIB_DEPS 719 absl::str_format_internal 720 absl::time 721 ${libgav1_common_test_absl_deps} 722 libgav1_gtest 723 libgav1_gtest_main) 724 725 libgav1_add_executable(TEST 726 NAME 727 c_decoder_test 728 SOURCES 729 ${libgav1_c_decoder_test_sources} 730 DEFINES 731 ${libgav1_defines} 732 INCLUDES 733 ${libgav1_include_paths} 734 LIB_DEPS 735 ${libgav1_dependency}) 736 737 libgav1_add_executable(TEST 738 NAME 739 c_version_test 740 SOURCES 741 ${libgav1_c_version_test_sources} 742 DEFINES 743 ${libgav1_defines} 744 INCLUDES 745 ${libgav1_include_paths} 746 LIB_DEPS 747 ${libgav1_dependency}) 748 749 libgav1_add_executable(TEST 750 NAME 751 decoder_test 752 SOURCES 753 ${libgav1_decoder_test_sources} 754 DEFINES 755 ${libgav1_defines} 756 INCLUDES 757 ${libgav1_test_include_paths} 758 LIB_DEPS 759 ${libgav1_dependency} 760 ${libgav1_common_test_absl_deps} 761 libgav1_gtest 762 libgav1_gtest_main) 763 764 libgav1_add_executable(TEST 765 NAME 766 decoder_buffer_test 767 SOURCES 768 ${libgav1_decoder_buffer_test_sources} 769 DEFINES 770 ${libgav1_defines} 771 INCLUDES 772 ${libgav1_test_include_paths} 773 LIB_DEPS 774 ${libgav1_dependency} 775 ${libgav1_common_test_absl_deps} 776 libgav1_gtest 777 libgav1_gtest_main) 778 779 libgav1_add_executable(TEST 780 NAME 781 distance_weighted_blend_test 782 SOURCES 783 ${libgav1_distance_weighted_blend_test_sources} 784 DEFINES 785 ${libgav1_defines} 786 INCLUDES 787 ${libgav1_test_include_paths} 788 OBJLIB_DEPS 789 libgav1_decoder 790 libgav1_dsp 791 libgav1_tests_utils 792 libgav1_utils 793 LIB_DEPS 794 absl::strings 795 absl::time 796 ${libgav1_common_test_absl_deps} 797 libgav1_gtest 798 libgav1_gtest_main) 799 800 libgav1_add_executable(TEST 801 NAME 802 dsp_test 803 SOURCES 804 ${libgav1_dsp_test_sources} 805 DEFINES 806 ${libgav1_defines} 807 INCLUDES 808 ${libgav1_test_include_paths} 809 OBJLIB_DEPS 810 libgav1_decoder 811 libgav1_dsp 812 libgav1_tests_utils 813 libgav1_utils 814 LIB_DEPS 815 absl::strings 816 absl::time 817 ${libgav1_common_test_absl_deps} 818 libgav1_gtest 819 libgav1_gtest_main) 820 821 libgav1_add_executable(TEST 822 NAME 823 file_writer_test 824 SOURCES 825 ${libgav1_file_writer_test_sources} 826 DEFINES 827 ${libgav1_defines} 828 INCLUDES 829 ${libgav1_test_include_paths} 830 OBJLIB_DEPS 831 libgav1_decoder 832 libgav1_dsp 833 libgav1_file_writer 834 libgav1_tests_utils 835 libgav1_utils 836 LIB_DEPS 837 absl::memory 838 absl::strings 839 absl::time 840 ${libgav1_common_test_absl_deps} 841 libgav1_gtest 842 libgav1_gtest_main) 843 844 libgav1_add_executable(TEST 845 NAME 846 intrapred_cfl_test 847 SOURCES 848 ${libgav1_intrapred_cfl_test_sources} 849 DEFINES 850 ${libgav1_defines} 851 INCLUDES 852 ${libgav1_test_include_paths} 853 OBJLIB_DEPS 854 libgav1_decoder 855 libgav1_dsp 856 libgav1_tests_block_utils 857 libgav1_tests_utils 858 libgav1_utils 859 LIB_DEPS 860 absl::time 861 ${libgav1_common_test_absl_deps} 862 libgav1_gtest 863 libgav1_gtest_main) 864 865 libgav1_add_executable(TEST 866 NAME 867 intrapred_directional_test 868 SOURCES 869 ${libgav1_intrapred_directional_test_sources} 870 DEFINES 871 ${libgav1_defines} 872 INCLUDES 873 ${libgav1_test_include_paths} 874 OBJLIB_DEPS 875 libgav1_decoder 876 libgav1_dsp 877 libgav1_tests_block_utils 878 libgav1_tests_utils 879 libgav1_utils 880 LIB_DEPS 881 absl::time 882 ${libgav1_common_test_absl_deps} 883 libgav1_gtest 884 libgav1_gtest_main) 885 886 libgav1_add_executable(TEST 887 NAME 888 intrapred_filter_test 889 SOURCES 890 ${libgav1_intrapred_filter_test_sources} 891 DEFINES 892 ${libgav1_defines} 893 INCLUDES 894 ${libgav1_test_include_paths} 895 OBJLIB_DEPS 896 libgav1_decoder 897 libgav1_dsp 898 libgav1_tests_block_utils 899 libgav1_tests_utils 900 libgav1_utils 901 LIB_DEPS 902 absl::time 903 ${libgav1_common_test_absl_deps} 904 libgav1_gtest 905 libgav1_gtest_main) 906 907 libgav1_add_executable(TEST 908 NAME 909 intrapred_test 910 SOURCES 911 ${libgav1_intrapred_test_sources} 912 DEFINES 913 ${libgav1_defines} 914 INCLUDES 915 ${libgav1_test_include_paths} 916 OBJLIB_DEPS 917 libgav1_decoder 918 libgav1_dsp 919 libgav1_tests_block_utils 920 libgav1_tests_utils 921 libgav1_utils 922 LIB_DEPS 923 absl::time 924 ${libgav1_common_test_absl_deps} 925 libgav1_gtest 926 libgav1_gtest_main) 927 928 libgav1_add_executable(TEST 929 NAME 930 intra_edge_test 931 SOURCES 932 ${libgav1_intra_edge_test_sources} 933 DEFINES 934 ${libgav1_defines} 935 INCLUDES 936 ${libgav1_test_include_paths} 937 OBJLIB_DEPS 938 libgav1_decoder 939 libgav1_tests_utils 940 libgav1_dsp 941 libgav1_utils 942 LIB_DEPS 943 absl::strings 944 absl::time 945 ${libgav1_common_test_absl_deps} 946 libgav1_gtest 947 libgav1_gtest_main) 948 949 libgav1_add_executable(TEST 950 NAME 951 inverse_transform_test 952 SOURCES 953 ${libgav1_inverse_transform_test_sources} 954 DEFINES 955 ${libgav1_defines} 956 INCLUDES 957 ${libgav1_test_include_paths} 958 OBJLIB_DEPS 959 libgav1_decoder 960 libgav1_tests_block_utils 961 libgav1_tests_utils 962 libgav1_dsp 963 libgav1_utils 964 LIB_DEPS 965 absl::strings 966 absl::time 967 ${libgav1_common_test_absl_deps} 968 libgav1_gtest 969 libgav1_gtest_main) 970 971 libgav1_add_executable(TEST 972 NAME 973 internal_frame_buffer_list_test 974 SOURCES 975 ${libgav1_internal_frame_buffer_list_test_sources} 976 DEFINES 977 ${libgav1_defines} 978 INCLUDES 979 ${libgav1_test_include_paths} 980 OBJLIB_DEPS 981 libgav1_decoder 982 libgav1_dsp 983 libgav1_utils 984 LIB_DEPS 985 ${libgav1_common_test_absl_deps} 986 libgav1_gtest 987 libgav1_gtest_main) 988 989 libgav1_add_executable(TEST 990 NAME 991 loop_filter_test 992 SOURCES 993 ${libgav1_loop_filter_test_sources} 994 DEFINES 995 ${libgav1_defines} 996 INCLUDES 997 ${libgav1_test_include_paths} 998 OBJLIB_DEPS 999 libgav1_decoder 1000 libgav1_dsp 1001 libgav1_tests_block_utils 1002 libgav1_tests_utils 1003 libgav1_utils 1004 LIB_DEPS 1005 absl::time 1006 ${libgav1_common_test_absl_deps} 1007 libgav1_gtest 1008 libgav1_gtest_main) 1009 1010 libgav1_add_executable(TEST 1011 NAME 1012 loop_restoration_test 1013 SOURCES 1014 ${libgav1_loop_restoration_test_sources} 1015 DEFINES 1016 ${libgav1_defines} 1017 INCLUDES 1018 ${libgav1_test_include_paths} 1019 OBJLIB_DEPS 1020 libgav1_decoder 1021 libgav1_dsp 1022 libgav1_tests_block_utils 1023 libgav1_tests_utils 1024 libgav1_utils 1025 LIB_DEPS 1026 absl::time 1027 ${libgav1_common_test_absl_deps} 1028 libgav1_gtest 1029 libgav1_gtest_main) 1030 1031 libgav1_add_executable(TEST 1032 NAME 1033 mask_blend_test 1034 SOURCES 1035 ${libgav1_mask_blend_test_sources} 1036 DEFINES 1037 ${libgav1_defines} 1038 INCLUDES 1039 ${libgav1_test_include_paths} 1040 OBJLIB_DEPS 1041 libgav1_decoder 1042 libgav1_dsp 1043 libgav1_tests_utils 1044 libgav1_utils 1045 LIB_DEPS 1046 absl::strings 1047 absl::time 1048 ${libgav1_common_test_absl_deps} 1049 libgav1_gtest 1050 libgav1_gtest_main) 1051 1052 libgav1_add_executable(TEST 1053 NAME 1054 motion_field_projection_test 1055 SOURCES 1056 ${libgav1_motion_field_projection_test_sources} 1057 DEFINES 1058 ${libgav1_defines} 1059 INCLUDES 1060 ${libgav1_test_include_paths} 1061 OBJLIB_DEPS 1062 libgav1_decoder 1063 libgav1_dsp 1064 libgav1_tests_utils 1065 libgav1_utils 1066 LIB_DEPS 1067 absl::str_format_internal 1068 absl::time 1069 ${libgav1_common_test_absl_deps} 1070 libgav1_gtest 1071 libgav1_gtest_main) 1072 1073 libgav1_add_executable(TEST 1074 NAME 1075 motion_vector_search_test 1076 SOURCES 1077 ${libgav1_motion_vector_search_test_sources} 1078 DEFINES 1079 ${libgav1_defines} 1080 INCLUDES 1081 ${libgav1_test_include_paths} 1082 OBJLIB_DEPS 1083 libgav1_decoder 1084 libgav1_dsp 1085 libgav1_tests_utils 1086 libgav1_utils 1087 LIB_DEPS 1088 absl::str_format_internal 1089 absl::time 1090 ${libgav1_common_test_absl_deps} 1091 libgav1_gtest 1092 libgav1_gtest_main) 1093 1094 libgav1_add_executable(TEST 1095 NAME 1096 obmc_test 1097 SOURCES 1098 ${libgav1_obmc_test_sources} 1099 DEFINES 1100 ${libgav1_defines} 1101 INCLUDES 1102 ${libgav1_test_include_paths} 1103 OBJLIB_DEPS 1104 libgav1_decoder 1105 libgav1_dsp 1106 libgav1_tests_block_utils 1107 libgav1_tests_utils 1108 libgav1_utils 1109 LIB_DEPS 1110 absl::str_format_internal 1111 absl::time 1112 ${libgav1_common_test_absl_deps} 1113 libgav1_gtest 1114 libgav1_gtest_main) 1115 1116 libgav1_add_executable(TEST 1117 NAME 1118 obu_parser_test 1119 SOURCES 1120 ${libgav1_obu_parser_test_sources} 1121 DEFINES 1122 ${libgav1_defines} 1123 INCLUDES 1124 ${libgav1_test_include_paths} 1125 OBJLIB_DEPS 1126 libgav1_decoder 1127 libgav1_dsp 1128 libgav1_utils 1129 LIB_DEPS 1130 ${libgav1_common_test_absl_deps} 1131 libgav1_gtest 1132 libgav1_gtest_main) 1133 1134 libgav1_add_executable(TEST 1135 NAME 1136 post_filter_test 1137 SOURCES 1138 ${libgav1_post_filter_test_sources} 1139 DEFINES 1140 ${libgav1_defines} 1141 INCLUDES 1142 ${libgav1_test_include_paths} 1143 OBJLIB_DEPS 1144 libgav1_decoder 1145 libgav1_dsp 1146 libgav1_tests_block_utils 1147 libgav1_tests_utils 1148 libgav1_utils 1149 LIB_DEPS 1150 absl::time 1151 ${libgav1_common_test_absl_deps} 1152 libgav1_gtest 1153 libgav1_gtest_main) 1154 1155 libgav1_add_executable(TEST 1156 NAME 1157 prediction_mask_test 1158 SOURCES 1159 ${libgav1_prediction_mask_test_sources} 1160 DEFINES 1161 ${libgav1_defines} 1162 INCLUDES 1163 ${libgav1_test_include_paths} 1164 OBJLIB_DEPS 1165 libgav1_decoder 1166 libgav1_dsp 1167 libgav1_tests_utils 1168 libgav1_utils 1169 LIB_DEPS 1170 absl::strings 1171 absl::time 1172 ${libgav1_common_test_absl_deps} 1173 libgav1_gtest 1174 libgav1_gtest_main) 1175 1176 libgav1_add_executable(TEST 1177 NAME 1178 quantizer_test 1179 SOURCES 1180 ${libgav1_quantizer_test_sources} 1181 DEFINES 1182 ${libgav1_defines} 1183 INCLUDES 1184 ${libgav1_test_include_paths} 1185 OBJLIB_DEPS 1186 libgav1_decoder 1187 libgav1_dsp 1188 libgav1_utils 1189 LIB_DEPS 1190 ${libgav1_common_test_absl_deps} 1191 libgav1_gtest 1192 libgav1_gtest_main) 1193 1194 libgav1_add_executable(TEST 1195 NAME 1196 raw_bit_reader_test 1197 SOURCES 1198 ${libgav1_raw_bit_reader_test_sources} 1199 DEFINES 1200 ${libgav1_defines} 1201 INCLUDES 1202 ${libgav1_test_include_paths} 1203 OBJLIB_DEPS 1204 libgav1_utils 1205 LIB_DEPS 1206 ${libgav1_common_test_absl_deps} 1207 libgav1_gtest 1208 libgav1_gtest_main) 1209 1210 libgav1_add_executable(TEST 1211 NAME 1212 reconstruction_test 1213 SOURCES 1214 ${libgav1_reconstruction_test_sources} 1215 DEFINES 1216 ${libgav1_defines} 1217 INCLUDES 1218 ${libgav1_test_include_paths} 1219 OBJLIB_DEPS 1220 libgav1_decoder 1221 libgav1_dsp 1222 libgav1_tests_block_utils 1223 libgav1_tests_utils 1224 libgav1_utils 1225 ${libgav1_test_objlib_deps} 1226 LIB_DEPS 1227 absl::strings 1228 absl::time 1229 ${libgav1_common_test_absl_deps} 1230 libgav1_gtest 1231 libgav1_gtest_main) 1232 1233 libgav1_add_executable(TEST 1234 NAME 1235 residual_buffer_pool_test 1236 SOURCES 1237 ${libgav1_residual_buffer_pool_test_sources} 1238 DEFINES 1239 ${libgav1_defines} 1240 INCLUDES 1241 ${libgav1_test_include_paths} 1242 OBJLIB_DEPS 1243 libgav1_decoder 1244 libgav1_dsp 1245 libgav1_utils 1246 ${libgav1_test_objlib_deps} 1247 LIB_DEPS 1248 ${libgav1_common_test_absl_deps} 1249 libgav1_gtest 1250 libgav1_gtest_main) 1251 1252 libgav1_add_executable(TEST 1253 NAME 1254 scan_test 1255 SOURCES 1256 ${libgav1_scan_test_sources} 1257 DEFINES 1258 ${libgav1_defines} 1259 INCLUDES 1260 ${libgav1_test_include_paths} 1261 OBJLIB_DEPS 1262 libgav1_utils 1263 ${libgav1_test_objlib_deps} 1264 LIB_DEPS 1265 ${libgav1_common_test_absl_deps} 1266 libgav1_gtest 1267 libgav1_gtest_main) 1268 1269 libgav1_add_executable(TEST 1270 NAME 1271 super_res_test 1272 SOURCES 1273 ${libgav1_super_res_test_sources} 1274 DEFINES 1275 ${libgav1_defines} 1276 INCLUDES 1277 ${libgav1_test_include_paths} 1278 OBJLIB_DEPS 1279 libgav1_decoder 1280 libgav1_dsp 1281 libgav1_tests_utils 1282 libgav1_utils 1283 LIB_DEPS 1284 absl::str_format_internal 1285 absl::time 1286 ${libgav1_common_test_absl_deps} 1287 libgav1_gtest 1288 libgav1_gtest_main) 1289 1290 libgav1_add_executable(TEST 1291 NAME 1292 threading_strategy_test 1293 SOURCES 1294 ${libgav1_threading_strategy_test_sources} 1295 DEFINES 1296 ${libgav1_defines} 1297 INCLUDES 1298 ${libgav1_test_include_paths} 1299 OBJLIB_DEPS 1300 libgav1_decoder 1301 libgav1_dsp 1302 libgav1_utils 1303 ${libgav1_test_objlib_deps} 1304 LIB_DEPS 1305 absl::str_format_internal 1306 ${libgav1_common_test_absl_deps} 1307 libgav1_gtest 1308 libgav1_gtest_main) 1309 1310 libgav1_add_executable(TEST 1311 NAME 1312 warp_test 1313 SOURCES 1314 ${libgav1_warp_test_sources} 1315 DEFINES 1316 ${libgav1_defines} 1317 INCLUDES 1318 ${libgav1_test_include_paths} 1319 OBJLIB_DEPS 1320 libgav1_decoder 1321 libgav1_dsp 1322 libgav1_tests_block_utils 1323 libgav1_tests_utils 1324 libgav1_utils 1325 LIB_DEPS 1326 absl::str_format_internal 1327 absl::time 1328 ${libgav1_common_test_absl_deps} 1329 libgav1_gtest 1330 libgav1_gtest_main) 1331 1332 libgav1_add_executable(TEST 1333 NAME 1334 warp_prediction_test 1335 SOURCES 1336 ${libgav1_warp_prediction_test_sources} 1337 DEFINES 1338 ${libgav1_defines} 1339 INCLUDES 1340 ${libgav1_test_include_paths} 1341 OBJLIB_DEPS 1342 libgav1_decoder 1343 libgav1_dsp 1344 libgav1_utils 1345 LIB_DEPS 1346 ${libgav1_common_test_absl_deps} 1347 libgav1_gtest 1348 libgav1_gtest_main) 1349 1350 libgav1_add_executable(TEST 1351 NAME 1352 weight_mask_test 1353 SOURCES 1354 ${libgav1_weight_mask_test_sources} 1355 DEFINES 1356 ${libgav1_defines} 1357 INCLUDES 1358 ${libgav1_test_include_paths} 1359 OBJLIB_DEPS 1360 libgav1_decoder 1361 libgav1_dsp 1362 libgav1_tests_utils 1363 libgav1_utils 1364 LIB_DEPS 1365 absl::str_format_internal 1366 absl::time 1367 ${libgav1_common_test_absl_deps} 1368 libgav1_gtest 1369 libgav1_gtest_main) 1370endmacro() 1371