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