CMakeLists.txt (25065B)
1 # 2 # Copyright 2019 The Abseil Authors. 3 # 4 # Licensed under the Apache License, Version 2.0 (the "License"); 5 # you may not use this file except in compliance with the License. 6 # You may obtain a copy of the License at 7 # 8 # https://www.apache.org/licenses/LICENSE-2.0 9 # 10 # Unless required by applicable law or agreed to in writing, software 11 # distributed under the License is distributed on an "AS IS" BASIS, 12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 # See the License for the specific language governing permissions and 14 # limitations under the License. 15 # 16 17 absl_cc_library( 18 NAME 19 random_random 20 HDRS 21 "random.h" 22 COPTS 23 ${ABSL_DEFAULT_COPTS} 24 LINKOPTS 25 ${ABSL_DEFAULT_LINKOPTS} 26 DEPS 27 absl::config 28 absl::random_distributions 29 absl::random_internal_nonsecure_base 30 absl::random_internal_pcg_engine 31 absl::random_internal_randen_engine 32 absl::random_seed_sequences 33 ) 34 35 absl_cc_library( 36 NAME 37 random_bit_gen_ref 38 HDRS 39 "bit_gen_ref.h" 40 COPTS 41 ${ABSL_DEFAULT_COPTS} 42 LINKOPTS 43 ${ABSL_DEFAULT_LINKOPTS} 44 DEPS 45 absl::config 46 absl::core_headers 47 absl::random_internal_distribution_caller 48 absl::random_internal_fast_uniform_bits 49 absl::type_traits 50 ) 51 52 absl_cc_test( 53 NAME 54 random_bit_gen_ref_test 55 SRCS 56 "bit_gen_ref_test.cc" 57 COPTS 58 ${ABSL_TEST_COPTS} 59 LINKOPTS 60 ${ABSL_DEFAULT_LINKOPTS} 61 DEPS 62 absl::config 63 absl::random_bit_gen_ref 64 absl::random_random 65 absl::random_internal_sequence_urbg 66 absl::fast_type_id 67 GTest::gmock 68 GTest::gtest_main 69 ) 70 71 # Internal-only target, do not depend on directly. 72 absl_cc_library( 73 NAME 74 random_internal_mock_helpers 75 HDRS 76 "internal/mock_helpers.h" 77 COPTS 78 ${ABSL_DEFAULT_COPTS} 79 LINKOPTS 80 ${ABSL_DEFAULT_LINKOPTS} 81 DEPS 82 absl::config 83 absl::fast_type_id 84 absl::optional 85 ) 86 87 # Internal-only target, do not depend on directly. 88 absl_cc_library( 89 NAME 90 random_internal_mock_overload_set 91 HDRS 92 "internal/mock_overload_set.h" 93 COPTS 94 ${ABSL_DEFAULT_COPTS} 95 LINKOPTS 96 ${ABSL_DEFAULT_LINKOPTS} 97 DEPS 98 absl::config 99 absl::random_mocking_bit_gen 100 absl::random_internal_mock_helpers 101 TESTONLY 102 ) 103 104 absl_cc_library( 105 NAME 106 random_mocking_bit_gen 107 HDRS 108 "mock_distributions.h" 109 "mocking_bit_gen.h" 110 COPTS 111 ${ABSL_DEFAULT_COPTS} 112 LINKOPTS 113 ${ABSL_DEFAULT_LINKOPTS} 114 DEPS 115 absl::config 116 absl::core_headers 117 absl::fast_type_id 118 absl::flat_hash_map 119 absl::raw_logging_internal 120 absl::random_internal_mock_helpers 121 absl::random_random 122 absl::type_traits 123 absl::utility 124 GTest::gmock 125 GTest::gtest 126 PUBLIC 127 TESTONLY 128 ) 129 130 absl_cc_test( 131 NAME 132 random_mock_distributions_test 133 SRCS 134 "mock_distributions_test.cc" 135 COPTS 136 ${ABSL_TEST_COPTS} 137 LINKOPTS 138 ${ABSL_DEFAULT_LINKOPTS} 139 DEPS 140 absl::random_distributions 141 absl::random_mocking_bit_gen 142 absl::random_random 143 GTest::gmock 144 GTest::gtest_main 145 ) 146 147 absl_cc_test( 148 NAME 149 random_mocking_bit_gen_test 150 SRCS 151 "mocking_bit_gen_test.cc" 152 COPTS 153 ${ABSL_TEST_COPTS} 154 LINKOPTS 155 ${ABSL_DEFAULT_LINKOPTS} 156 DEPS 157 absl::random_bit_gen_ref 158 absl::random_mocking_bit_gen 159 absl::random_random 160 GTest::gmock 161 GTest::gtest_main 162 ) 163 164 absl_cc_library( 165 NAME 166 random_distributions 167 SRCS 168 "discrete_distribution.cc" 169 "gaussian_distribution.cc" 170 HDRS 171 "bernoulli_distribution.h" 172 "beta_distribution.h" 173 "discrete_distribution.h" 174 "distributions.h" 175 "exponential_distribution.h" 176 "gaussian_distribution.h" 177 "log_uniform_int_distribution.h" 178 "poisson_distribution.h" 179 "uniform_int_distribution.h" 180 "uniform_real_distribution.h" 181 "zipf_distribution.h" 182 COPTS 183 ${ABSL_DEFAULT_COPTS} 184 LINKOPTS 185 ${ABSL_DEFAULT_LINKOPTS} 186 DEPS 187 absl::base_internal 188 absl::config 189 absl::core_headers 190 absl::random_internal_generate_real 191 absl::random_internal_distribution_caller 192 absl::random_internal_fast_uniform_bits 193 absl::random_internal_fastmath 194 absl::random_internal_iostream_state_saver 195 absl::random_internal_traits 196 absl::random_internal_uniform_helper 197 absl::random_internal_wide_multiply 198 absl::strings 199 absl::type_traits 200 ) 201 202 absl_cc_library( 203 NAME 204 random_seed_gen_exception 205 SRCS 206 "seed_gen_exception.cc" 207 HDRS 208 "seed_gen_exception.h" 209 COPTS 210 ${ABSL_DEFAULT_COPTS} 211 LINKOPTS 212 ${ABSL_DEFAULT_LINKOPTS} 213 DEPS 214 absl::config 215 absl::raw_logging_internal 216 ) 217 218 absl_cc_library( 219 NAME 220 random_seed_sequences 221 SRCS 222 "seed_sequences.cc" 223 HDRS 224 "seed_sequences.h" 225 COPTS 226 ${ABSL_DEFAULT_COPTS} 227 LINKOPTS 228 ${ABSL_DEFAULT_LINKOPTS} 229 DEPS 230 absl::config 231 absl::inlined_vector 232 absl::nullability 233 absl::random_internal_entropy_pool 234 absl::random_internal_salted_seed_seq 235 absl::random_internal_seed_material 236 absl::random_seed_gen_exception 237 absl::span 238 absl::string_view 239 ) 240 241 absl_cc_test( 242 NAME 243 random_bernoulli_distribution_test 244 SRCS 245 "bernoulli_distribution_test.cc" 246 COPTS 247 ${ABSL_TEST_COPTS} 248 LINKOPTS 249 ${ABSL_DEFAULT_LINKOPTS} 250 DEPS 251 absl::random_distributions 252 absl::random_random 253 absl::random_internal_sequence_urbg 254 absl::random_internal_pcg_engine 255 GTest::gmock 256 GTest::gtest_main 257 ) 258 259 absl_cc_test( 260 NAME 261 random_beta_distribution_test 262 SRCS 263 "beta_distribution_test.cc" 264 COPTS 265 ${ABSL_TEST_COPTS} 266 LINKOPTS 267 ${ABSL_DEFAULT_LINKOPTS} 268 DEPS 269 absl::log 270 absl::numeric_representation 271 absl::random_distributions 272 absl::random_random 273 absl::random_internal_distribution_test_util 274 absl::random_internal_sequence_urbg 275 absl::random_internal_pcg_engine 276 absl::strings 277 absl::str_format 278 GTest::gmock 279 GTest::gtest_main 280 ) 281 282 absl_cc_test( 283 NAME 284 random_distributions_test 285 SRCS 286 "distributions_test.cc" 287 COPTS 288 ${ABSL_TEST_COPTS} 289 LINKOPTS 290 ${ABSL_DEFAULT_LINKOPTS} 291 DEPS 292 absl::random_distributions 293 absl::random_random 294 absl::type_traits 295 absl::int128 296 absl::random_internal_distribution_test_util 297 GTest::gmock 298 GTest::gtest_main 299 ) 300 301 absl_cc_test( 302 NAME 303 random_generators_test 304 SRCS 305 "generators_test.cc" 306 COPTS 307 ${ABSL_TEST_COPTS} 308 LINKOPTS 309 ${ABSL_DEFAULT_LINKOPTS} 310 DEPS 311 absl::random_distributions 312 absl::random_random 313 absl::raw_logging_internal 314 GTest::gmock 315 GTest::gtest_main 316 ) 317 318 absl_cc_test( 319 NAME 320 random_log_uniform_int_distribution_test 321 SRCS 322 "log_uniform_int_distribution_test.cc" 323 COPTS 324 ${ABSL_TEST_COPTS} 325 LINKOPTS 326 ${ABSL_DEFAULT_LINKOPTS} 327 DEPS 328 absl::log 329 absl::random_distributions 330 absl::random_internal_distribution_test_util 331 absl::random_internal_pcg_engine 332 absl::random_internal_sequence_urbg 333 absl::random_random 334 absl::strings 335 absl::str_format 336 GTest::gmock 337 GTest::gtest_main 338 ) 339 340 absl_cc_test( 341 NAME 342 random_discrete_distribution_test 343 SRCS 344 "discrete_distribution_test.cc" 345 COPTS 346 ${ABSL_TEST_COPTS} 347 LINKOPTS 348 ${ABSL_DEFAULT_LINKOPTS} 349 DEPS 350 absl::log 351 absl::random_distributions 352 absl::random_internal_distribution_test_util 353 absl::random_internal_pcg_engine 354 absl::random_internal_sequence_urbg 355 absl::random_random 356 absl::strings 357 GTest::gmock 358 GTest::gtest_main 359 ) 360 361 absl_cc_test( 362 NAME 363 random_poisson_distribution_test 364 SRCS 365 "poisson_distribution_test.cc" 366 COPTS 367 ${ABSL_TEST_COPTS} 368 LINKOPTS 369 ${ABSL_DEFAULT_LINKOPTS} 370 DEPS 371 absl::random_distributions 372 absl::random_random 373 absl::core_headers 374 absl::flat_hash_map 375 absl::log 376 absl::random_internal_distribution_test_util 377 absl::random_internal_pcg_engine 378 absl::random_internal_sequence_urbg 379 absl::strings 380 absl::str_format 381 GTest::gmock 382 GTest::gtest_main 383 ) 384 385 absl_cc_test( 386 NAME 387 random_exponential_distribution_test 388 SRCS 389 "exponential_distribution_test.cc" 390 COPTS 391 ${ABSL_TEST_COPTS} 392 LINKOPTS 393 ${ABSL_DEFAULT_LINKOPTS} 394 DEPS 395 absl::core_headers 396 absl::log 397 absl::numeric_representation 398 absl::random_distributions 399 absl::random_internal_distribution_test_util 400 absl::random_internal_pcg_engine 401 absl::random_internal_sequence_urbg 402 absl::random_random 403 absl::strings 404 absl::str_format 405 GTest::gmock 406 GTest::gtest_main 407 ) 408 409 absl_cc_test( 410 NAME 411 random_gaussian_distribution_test 412 SRCS 413 "gaussian_distribution_test.cc" 414 COPTS 415 ${ABSL_TEST_COPTS} 416 LINKOPTS 417 ${ABSL_DEFAULT_LINKOPTS} 418 DEPS 419 absl::core_headers 420 absl::log 421 absl::numeric_representation 422 absl::random_distributions 423 absl::random_internal_distribution_test_util 424 absl::random_internal_sequence_urbg 425 absl::random_random 426 absl::strings 427 absl::str_format 428 GTest::gmock 429 GTest::gtest_main 430 ) 431 432 absl_cc_test( 433 NAME 434 random_uniform_int_distribution_test 435 SRCS 436 "uniform_int_distribution_test.cc" 437 COPTS 438 ${ABSL_TEST_COPTS} 439 LINKOPTS 440 ${ABSL_DEFAULT_LINKOPTS} 441 DEPS 442 absl::log 443 absl::random_distributions 444 absl::random_internal_distribution_test_util 445 absl::random_internal_pcg_engine 446 absl::random_internal_sequence_urbg 447 absl::random_random 448 absl::strings 449 GTest::gmock 450 GTest::gtest_main 451 ) 452 453 absl_cc_test( 454 NAME 455 random_uniform_real_distribution_test 456 SRCS 457 "uniform_real_distribution_test.cc" 458 COPTS 459 ${ABSL_TEST_COPTS} 460 LINKOPTS 461 ${ABSL_DEFAULT_LINKOPTS} 462 DEPS 463 absl::log 464 absl::numeric_representation 465 absl::random_distributions 466 absl::random_internal_distribution_test_util 467 absl::random_internal_pcg_engine 468 absl::random_internal_sequence_urbg 469 absl::random_random 470 absl::strings 471 GTest::gmock 472 GTest::gtest_main 473 ) 474 475 absl_cc_test( 476 NAME 477 random_zipf_distribution_test 478 SRCS 479 "zipf_distribution_test.cc" 480 COPTS 481 ${ABSL_TEST_COPTS} 482 LINKOPTS 483 ${ABSL_DEFAULT_LINKOPTS} 484 DEPS 485 absl::log 486 absl::random_distributions 487 absl::random_internal_distribution_test_util 488 absl::random_internal_pcg_engine 489 absl::random_internal_sequence_urbg 490 absl::random_random 491 absl::strings 492 GTest::gmock 493 GTest::gtest_main 494 ) 495 496 absl_cc_test( 497 NAME 498 random_examples_test 499 SRCS 500 "examples_test.cc" 501 COPTS 502 ${ABSL_TEST_COPTS} 503 LINKOPTS 504 ${ABSL_DEFAULT_LINKOPTS} 505 DEPS 506 absl::random_random 507 GTest::gtest_main 508 ) 509 510 absl_cc_test( 511 NAME 512 random_seed_sequences_test 513 SRCS 514 "seed_sequences_test.cc" 515 COPTS 516 ${ABSL_TEST_COPTS} 517 LINKOPTS 518 ${ABSL_DEFAULT_LINKOPTS} 519 DEPS 520 absl::random_seed_sequences 521 absl::random_internal_nonsecure_base 522 absl::random_random 523 GTest::gmock 524 GTest::gtest_main 525 ) 526 527 # Internal-only target, do not depend on directly. 528 absl_cc_library( 529 NAME 530 random_internal_traits 531 HDRS 532 "internal/traits.h" 533 COPTS 534 ${ABSL_DEFAULT_COPTS} 535 LINKOPTS 536 ${ABSL_DEFAULT_LINKOPTS} 537 DEPS 538 absl::config 539 ) 540 541 # Internal-only target, do not depend on directly. 542 absl_cc_library( 543 NAME 544 random_internal_distribution_caller 545 HDRS 546 "internal/distribution_caller.h" 547 COPTS 548 ${ABSL_DEFAULT_COPTS} 549 LINKOPTS 550 ${ABSL_DEFAULT_LINKOPTS} 551 DEPS 552 absl::config 553 absl::utility 554 absl::fast_type_id 555 absl::type_traits 556 ) 557 558 # Internal-only target, do not depend on directly. 559 absl_cc_library( 560 NAME 561 random_internal_fast_uniform_bits 562 HDRS 563 "internal/fast_uniform_bits.h" 564 COPTS 565 ${ABSL_DEFAULT_COPTS} 566 LINKOPTS 567 ${ABSL_DEFAULT_LINKOPTS} 568 DEPS 569 absl::config 570 ) 571 572 # Internal-only target, do not depend on directly. 573 absl_cc_library( 574 NAME 575 random_internal_seed_material 576 SRCS 577 "internal/seed_material.cc" 578 HDRS 579 "internal/seed_material.h" 580 COPTS 581 ${ABSL_DEFAULT_COPTS} 582 LINKOPTS 583 ${ABSL_DEFAULT_LINKOPTS} 584 $<$<BOOL:${MINGW}>:-lbcrypt> 585 DEPS 586 absl::config 587 absl::optional 588 absl::random_internal_fast_uniform_bits 589 absl::raw_logging_internal 590 absl::span 591 absl::strings 592 ) 593 594 # Internal-only target, do not depend on directly. 595 absl_cc_library( 596 NAME 597 random_internal_entropy_pool 598 SRCS 599 "internal/entropy_pool.cc" 600 HDRS 601 "internal/entropy_pool.h" 602 COPTS 603 ${ABSL_DEFAULT_COPTS} 604 LINKOPTS 605 ${ABSL_DEFAULT_LINKOPTS} 606 DEPS 607 absl::base 608 absl::config 609 absl::core_headers 610 absl::random_internal_platform 611 absl::random_internal_randen 612 absl::random_internal_seed_material 613 absl::random_seed_gen_exception 614 absl::span 615 absl::synchronization 616 ) 617 618 # Internal-only target, do not depend on directly. 619 absl_cc_library( 620 NAME 621 random_internal_explicit_seed_seq 622 HDRS 623 "internal/random_internal_explicit_seed_seq.h" 624 COPTS 625 ${ABSL_DEFAULT_COPTS} 626 LINKOPTS 627 ${ABSL_DEFAULT_LINKOPTS} 628 DEPS 629 absl::config 630 absl::endian 631 TESTONLY 632 ) 633 634 # Internal-only target, do not depend on directly. 635 absl_cc_library( 636 NAME 637 random_internal_sequence_urbg 638 HDRS 639 "internal/sequence_urbg.h" 640 COPTS 641 ${ABSL_DEFAULT_COPTS} 642 LINKOPTS 643 ${ABSL_DEFAULT_LINKOPTS} 644 DEPS 645 absl::config 646 TESTONLY 647 ) 648 649 # Internal-only target, do not depend on directly. 650 absl_cc_library( 651 NAME 652 random_internal_salted_seed_seq 653 HDRS 654 "internal/salted_seed_seq.h" 655 COPTS 656 ${ABSL_DEFAULT_COPTS} 657 LINKOPTS 658 ${ABSL_DEFAULT_LINKOPTS} 659 DEPS 660 absl::inlined_vector 661 absl::optional 662 absl::span 663 absl::random_internal_seed_material 664 absl::type_traits 665 ) 666 667 # Internal-only target, do not depend on directly. 668 absl_cc_library( 669 NAME 670 random_internal_iostream_state_saver 671 HDRS 672 "internal/iostream_state_saver.h" 673 COPTS 674 ${ABSL_DEFAULT_COPTS} 675 LINKOPTS 676 ${ABSL_DEFAULT_LINKOPTS} 677 DEPS 678 absl::config 679 absl::int128 680 absl::type_traits 681 ) 682 683 # Internal-only target, do not depend on directly. 684 absl_cc_library( 685 NAME 686 random_internal_generate_real 687 HDRS 688 "internal/generate_real.h" 689 COPTS 690 ${ABSL_DEFAULT_COPTS} 691 LINKOPTS 692 ${ABSL_DEFAULT_LINKOPTS} 693 DEPS 694 absl::bits 695 absl::random_internal_fastmath 696 absl::random_internal_traits 697 absl::type_traits 698 ) 699 700 # Internal-only target, do not depend on directly. 701 absl_cc_library( 702 NAME 703 random_internal_wide_multiply 704 HDRS 705 "internal/wide_multiply.h" 706 COPTS 707 ${ABSL_DEFAULT_COPTS} 708 LINKOPTS 709 ${ABSL_DEFAULT_LINKOPTS} 710 DEPS 711 absl::bits 712 absl::config 713 absl::int128 714 ) 715 716 # Internal-only target, do not depend on directly. 717 absl_cc_library( 718 NAME 719 random_internal_fastmath 720 HDRS 721 "internal/fastmath.h" 722 COPTS 723 ${ABSL_DEFAULT_COPTS} 724 LINKOPTS 725 ${ABSL_DEFAULT_LINKOPTS} 726 DEPS 727 absl::bits 728 ) 729 730 # Internal-only target, do not depend on directly. 731 absl_cc_library( 732 NAME 733 random_internal_nonsecure_base 734 HDRS 735 "internal/nonsecure_base.h" 736 COPTS 737 ${ABSL_DEFAULT_COPTS} 738 LINKOPTS 739 ${ABSL_DEFAULT_LINKOPTS} 740 DEPS 741 absl::config 742 absl::inlined_vector 743 absl::random_internal_entropy_pool 744 absl::random_internal_salted_seed_seq 745 absl::random_internal_seed_material 746 absl::type_traits 747 ) 748 749 # Internal-only target, do not depend on directly. 750 absl_cc_library( 751 NAME 752 random_internal_pcg_engine 753 HDRS 754 "internal/pcg_engine.h" 755 COPTS 756 ${ABSL_DEFAULT_COPTS} 757 LINKOPTS 758 ${ABSL_DEFAULT_LINKOPTS} 759 DEPS 760 absl::config 761 absl::int128 762 absl::random_internal_fastmath 763 absl::random_internal_iostream_state_saver 764 absl::type_traits 765 ) 766 767 # Internal-only target, do not depend on directly. 768 absl_cc_library( 769 NAME 770 random_internal_randen_engine 771 HDRS 772 "internal/randen_engine.h" 773 COPTS 774 ${ABSL_DEFAULT_COPTS} 775 LINKOPTS 776 ${ABSL_DEFAULT_LINKOPTS} 777 DEPS 778 absl::endian 779 absl::random_internal_iostream_state_saver 780 absl::random_internal_randen 781 absl::raw_logging_internal 782 absl::type_traits 783 ) 784 785 # Internal-only target, do not depend on directly. 786 absl_cc_library( 787 NAME 788 random_internal_platform 789 HDRS 790 "internal/randen_traits.h" 791 "internal/platform.h" 792 SRCS 793 "internal/randen_round_keys.cc" 794 COPTS 795 ${ABSL_DEFAULT_COPTS} 796 LINKOPTS 797 ${ABSL_DEFAULT_LINKOPTS} 798 DEPS 799 absl::config 800 ) 801 802 # Internal-only target, do not depend on directly. 803 absl_cc_library( 804 NAME 805 random_internal_randen 806 SRCS 807 "internal/randen.cc" 808 HDRS 809 "internal/randen.h" 810 COPTS 811 ${ABSL_DEFAULT_COPTS} 812 LINKOPTS 813 ${ABSL_DEFAULT_LINKOPTS} 814 DEPS 815 absl::random_internal_platform 816 absl::random_internal_randen_hwaes 817 absl::random_internal_randen_slow 818 ) 819 820 # Internal-only target, do not depend on directly. 821 absl_cc_library( 822 NAME 823 random_internal_randen_slow 824 SRCS 825 "internal/randen_slow.cc" 826 HDRS 827 "internal/randen_slow.h" 828 COPTS 829 ${ABSL_DEFAULT_COPTS} 830 LINKOPTS 831 ${ABSL_DEFAULT_LINKOPTS} 832 DEPS 833 absl::random_internal_platform 834 absl::config 835 ) 836 837 # Internal-only target, do not depend on directly. 838 absl_cc_library( 839 NAME 840 random_internal_randen_hwaes 841 SRCS 842 "internal/randen_detect.cc" 843 HDRS 844 "internal/randen_detect.h" 845 "internal/randen_hwaes.h" 846 COPTS 847 ${ABSL_DEFAULT_COPTS} 848 ${ABSL_RANDOM_RANDEN_COPTS} 849 LINKOPTS 850 ${ABSL_DEFAULT_LINKOPTS} 851 DEPS 852 absl::random_internal_platform 853 absl::random_internal_randen_hwaes_impl 854 absl::config 855 absl::optional 856 ) 857 858 # Internal-only target, do not depend on directly. 859 absl_cc_library( 860 NAME 861 random_internal_randen_hwaes_impl 862 SRCS 863 "internal/randen_hwaes.cc" 864 "internal/randen_hwaes.h" 865 COPTS 866 ${ABSL_DEFAULT_COPTS} 867 ${ABSL_RANDOM_RANDEN_COPTS} 868 LINKOPTS 869 ${ABSL_DEFAULT_LINKOPTS} 870 DEPS 871 absl::random_internal_platform 872 absl::config 873 ) 874 875 # Internal-only target, do not depend on directly. 876 absl_cc_library( 877 NAME 878 random_internal_distribution_test_util 879 SRCS 880 "internal/chi_square.cc" 881 "internal/distribution_test_util.cc" 882 HDRS 883 "internal/chi_square.h" 884 "internal/distribution_test_util.h" 885 COPTS 886 ${ABSL_DEFAULT_COPTS} 887 LINKOPTS 888 ${ABSL_DEFAULT_LINKOPTS} 889 DEPS 890 absl::config 891 absl::core_headers 892 absl::raw_logging_internal 893 absl::strings 894 absl::str_format 895 absl::span 896 ) 897 898 # Internal-only target, do not depend on directly. 899 absl_cc_test( 900 NAME 901 random_internal_traits_test 902 SRCS 903 "internal/traits_test.cc" 904 COPTS 905 ${ABSL_TEST_COPTS} 906 LINKOPTS 907 ${ABSL_DEFAULT_LINKOPTS} 908 DEPS 909 absl::random_internal_traits 910 GTest::gtest_main 911 ) 912 913 # Internal-only target, do not depend on directly. 914 absl_cc_test( 915 NAME 916 random_internal_generate_real_test 917 SRCS 918 "internal/generate_real_test.cc" 919 COPTS 920 ${ABSL_TEST_COPTS} 921 LINKOPTS 922 ${ABSL_DEFAULT_LINKOPTS} 923 DEPS 924 absl::bits 925 absl::flags 926 absl::random_internal_generate_real 927 GTest::gtest_main 928 ) 929 930 # Internal-only target, do not depend on directly. 931 absl_cc_test( 932 NAME 933 random_internal_distribution_test_util_test 934 SRCS 935 "internal/distribution_test_util_test.cc" 936 COPTS 937 ${ABSL_TEST_COPTS} 938 LINKOPTS 939 ${ABSL_DEFAULT_LINKOPTS} 940 DEPS 941 absl::random_internal_distribution_test_util 942 GTest::gtest_main 943 ) 944 945 # Internal-only target, do not depend on directly. 946 absl_cc_test( 947 NAME 948 random_internal_fastmath_test 949 SRCS 950 "internal/fastmath_test.cc" 951 COPTS 952 ${ABSL_TEST_COPTS} 953 LINKOPTS 954 ${ABSL_DEFAULT_LINKOPTS} 955 DEPS 956 absl::random_internal_fastmath 957 GTest::gtest_main 958 ) 959 960 # Internal-only target, do not depend on directly. 961 absl_cc_test( 962 NAME 963 random_internal_explicit_seed_seq_test 964 SRCS 965 "internal/explicit_seed_seq_test.cc" 966 COPTS 967 ${ABSL_TEST_COPTS} 968 LINKOPTS 969 ${ABSL_DEFAULT_LINKOPTS} 970 DEPS 971 absl::random_internal_explicit_seed_seq 972 absl::random_seed_sequences 973 GTest::gmock 974 GTest::gtest_main 975 ) 976 977 # Internal-only target, do not depend on directly. 978 absl_cc_test( 979 NAME 980 random_internal_salted_seed_seq_test 981 SRCS 982 "internal/salted_seed_seq_test.cc" 983 COPTS 984 ${ABSL_TEST_COPTS} 985 LINKOPTS 986 ${ABSL_DEFAULT_LINKOPTS} 987 DEPS 988 absl::random_internal_salted_seed_seq 989 GTest::gmock 990 GTest::gtest_main 991 ) 992 993 # Internal-only target, do not depend on directly. 994 absl_cc_test( 995 NAME 996 random_internal_chi_square_test 997 SRCS 998 "internal/chi_square_test.cc" 999 COPTS 1000 ${ABSL_TEST_COPTS} 1001 LINKOPTS 1002 ${ABSL_DEFAULT_LINKOPTS} 1003 DEPS 1004 absl::core_headers 1005 absl::random_internal_distribution_test_util 1006 GTest::gtest_main 1007 ) 1008 1009 # Internal-only target, do not depend on directly. 1010 absl_cc_test( 1011 NAME 1012 random_internal_fast_uniform_bits_test 1013 SRCS 1014 "internal/fast_uniform_bits_test.cc" 1015 COPTS 1016 ${ABSL_TEST_COPTS} 1017 LINKOPTS 1018 ${ABSL_DEFAULT_LINKOPTS} 1019 DEPS 1020 absl::random_internal_fast_uniform_bits 1021 GTest::gtest_main 1022 ) 1023 1024 # Internal-only target, do not depend on directly. 1025 absl_cc_test( 1026 NAME 1027 random_internal_nonsecure_base_test 1028 SRCS 1029 "internal/nonsecure_base_test.cc" 1030 COPTS 1031 ${ABSL_TEST_COPTS} 1032 LINKOPTS 1033 ${ABSL_DEFAULT_LINKOPTS} 1034 DEPS 1035 absl::flat_hash_map 1036 absl::random_distributions 1037 absl::random_internal_nonsecure_base 1038 absl::random_random 1039 absl::synchronization 1040 absl::type_traits 1041 GTest::gtest_main 1042 ) 1043 1044 # Internal-only target, do not depend on directly. 1045 absl_cc_test( 1046 NAME 1047 random_internal_seed_material_test 1048 SRCS 1049 "internal/seed_material_test.cc" 1050 COPTS 1051 ${ABSL_TEST_COPTS} 1052 LINKOPTS 1053 ${ABSL_DEFAULT_LINKOPTS} 1054 DEPS 1055 absl::random_internal_seed_material 1056 absl::span 1057 GTest::gmock 1058 GTest::gtest_main 1059 ) 1060 1061 # Internal-only target, do not depend on directly. 1062 absl_cc_test( 1063 NAME 1064 random_internal_entropy_pool_test 1065 SRCS 1066 "internal/entropy_pool_test.cc" 1067 COPTS 1068 ${ABSL_TEST_COPTS} 1069 LINKOPTS 1070 ${ABSL_DEFAULT_LINKOPTS} 1071 DEPS 1072 absl::flat_hash_map 1073 absl::random_internal_entropy_pool 1074 absl::synchronization 1075 GTest::gtest_main 1076 ) 1077 1078 # Internal-only target, do not depend on directly. 1079 absl_cc_test( 1080 NAME 1081 random_internal_pcg_engine_test 1082 SRCS 1083 "internal/pcg_engine_test.cc" 1084 COPTS 1085 ${ABSL_TEST_COPTS} 1086 LINKOPTS 1087 ${ABSL_DEFAULT_LINKOPTS} 1088 DEPS 1089 absl::random_internal_explicit_seed_seq 1090 absl::random_internal_pcg_engine 1091 absl::time 1092 GTest::gmock 1093 GTest::gtest_main 1094 ) 1095 1096 # Internal-only target, do not depend on directly. 1097 absl_cc_test( 1098 NAME 1099 random_internal_randen_engine_test 1100 SRCS 1101 "internal/randen_engine_test.cc" 1102 COPTS 1103 ${ABSL_TEST_COPTS} 1104 LINKOPTS 1105 ${ABSL_DEFAULT_LINKOPTS} 1106 DEPS 1107 absl::log 1108 absl::random_internal_explicit_seed_seq 1109 absl::random_internal_randen_engine 1110 absl::strings 1111 absl::time 1112 GTest::gmock 1113 GTest::gtest_main 1114 ) 1115 1116 # Internal-only target, do not depend on directly. 1117 absl_cc_test( 1118 NAME 1119 random_internal_randen_test 1120 SRCS 1121 "internal/randen_test.cc" 1122 COPTS 1123 ${ABSL_TEST_COPTS} 1124 LINKOPTS 1125 ${ABSL_DEFAULT_LINKOPTS} 1126 DEPS 1127 absl::random_internal_randen 1128 absl::type_traits 1129 GTest::gtest_main 1130 ) 1131 1132 # Internal-only target, do not depend on directly. 1133 absl_cc_test( 1134 NAME 1135 random_internal_randen_slow_test 1136 SRCS 1137 "internal/randen_slow_test.cc" 1138 COPTS 1139 ${ABSL_TEST_COPTS} 1140 LINKOPTS 1141 ${ABSL_DEFAULT_LINKOPTS} 1142 DEPS 1143 absl::endian 1144 absl::random_internal_randen_slow 1145 GTest::gtest_main 1146 ) 1147 1148 # Internal-only target, do not depend on directly. 1149 absl_cc_test( 1150 NAME 1151 random_internal_randen_hwaes_test 1152 SRCS 1153 "internal/randen_hwaes_test.cc" 1154 COPTS 1155 ${ABSL_TEST_COPTS} 1156 LINKOPTS 1157 ${ABSL_DEFAULT_LINKOPTS} 1158 DEPS 1159 absl::log 1160 absl::random_internal_platform 1161 absl::random_internal_randen_hwaes 1162 absl::random_internal_randen_hwaes_impl 1163 absl::str_format 1164 GTest::gmock 1165 GTest::gtest 1166 ) 1167 1168 # Internal-only target, do not depend on directly. 1169 absl_cc_library( 1170 NAME 1171 random_internal_uniform_helper 1172 HDRS 1173 "internal/uniform_helper.h" 1174 COPTS 1175 ${ABSL_DEFAULT_COPTS} 1176 LINKOPTS 1177 ${ABSL_DEFAULT_LINKOPTS} 1178 DEPS 1179 absl::config 1180 absl::random_internal_traits 1181 absl::type_traits 1182 ) 1183 1184 # Internal-only target, do not depend on directly. 1185 absl_cc_library( 1186 NAME 1187 random_internal_mock_validators 1188 HDRS 1189 "internal/mock_validators.h" 1190 COPTS 1191 ${ABSL_DEFAULT_COPTS} 1192 LINKOPTS 1193 ${ABSL_DEFAULT_LINKOPTS} 1194 DEPS 1195 absl::random_internal_iostream_state_saver 1196 absl::random_internal_uniform_helper 1197 absl::config 1198 absl::raw_logging_internal 1199 absl::strings 1200 absl::string_view 1201 TESTONLY 1202 ) 1203 1204 # Internal-only target, do not depend on directly. 1205 absl_cc_test( 1206 NAME 1207 random_internal_uniform_helper_test 1208 SRCS 1209 "internal/uniform_helper_test.cc" 1210 COPTS 1211 ${ABSL_TEST_COPTS} 1212 LINKOPTS 1213 ${ABSL_DEFAULT_LINKOPTS} 1214 DEPS 1215 absl::random_internal_uniform_helper 1216 GTest::gtest_main 1217 absl::int128 1218 ) 1219 1220 # Internal-only target, do not depend on directly. 1221 absl_cc_test( 1222 NAME 1223 random_internal_iostream_state_saver_test 1224 SRCS 1225 "internal/iostream_state_saver_test.cc" 1226 COPTS 1227 ${ABSL_TEST_COPTS} 1228 LINKOPTS 1229 ${ABSL_DEFAULT_LINKOPTS} 1230 DEPS 1231 absl::random_internal_iostream_state_saver 1232 GTest::gtest_main 1233 ) 1234 1235 # Internal-only target, do not depend on directly. 1236 absl_cc_test( 1237 NAME 1238 random_internal_wide_multiply_test 1239 SRCS 1240 internal/wide_multiply_test.cc 1241 COPTS 1242 ${ABSL_TEST_COPTS} 1243 LINKOPTS 1244 ${ABSL_DEFAULT_LINKOPTS} 1245 DEPS 1246 absl::random_internal_wide_multiply 1247 absl::int128 1248 GTest::gmock 1249 GTest::gtest_main 1250 )