tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

BUILD.gn (9690B)


      1 # Copyright 2018 The Chromium Authors
      2 # Use of this source code is governed by a BSD-style license that can be
      3 # found in the LICENSE file.
      4 
      5 import("//third_party/abseil-cpp/absl.gni")
      6 
      7 absl_source_set("traits") {
      8   public = [ "traits.h" ]
      9   deps = [
     10     "//third_party/abseil-cpp/absl/base:config",
     11     "//third_party/abseil-cpp/absl/numeric:bits",
     12     "//third_party/abseil-cpp/absl/numeric:int128",
     13   ]
     14   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
     15 }
     16 
     17 absl_source_set("distribution_caller") {
     18   public = [ "distribution_caller.h" ]
     19   deps = [
     20     "//third_party/abseil-cpp/absl/base:config",
     21     "//third_party/abseil-cpp/absl/base:fast_type_id",
     22     "//third_party/abseil-cpp/absl/meta:type_traits",
     23     "//third_party/abseil-cpp/absl/utility",
     24   ]
     25   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
     26 }
     27 
     28 absl_source_set("fast_uniform_bits") {
     29   public = [ "fast_uniform_bits.h" ]
     30   deps = [
     31     ":traits",
     32     "//third_party/abseil-cpp/absl/base:config",
     33     "//third_party/abseil-cpp/absl/meta:type_traits",
     34   ]
     35   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
     36 }
     37 
     38 absl_source_set("seed_material") {
     39   public = [ "seed_material.h" ]
     40   sources = [ "seed_material.cc" ]
     41   if (is_win) {
     42     # TODO(mbonadei): In the bazel file this is -DEFAULTLIB:bcrypt.lib.
     43     libs = [ "bcrypt.lib" ]
     44   }
     45   deps = [
     46     ":fast_uniform_bits",
     47     "//third_party/abseil-cpp/absl/base:config",
     48     "//third_party/abseil-cpp/absl/base:dynamic_annotations",
     49     "//third_party/abseil-cpp/absl/base:raw_logging_internal",
     50     "//third_party/abseil-cpp/absl/strings",
     51     "//third_party/abseil-cpp/absl/strings:string_view",
     52     "//third_party/abseil-cpp/absl/types:optional",
     53     "//third_party/abseil-cpp/absl/types:span",
     54   ]
     55   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
     56 }
     57 
     58 absl_source_set("entropy_pool") {
     59   public = [ "entropy_pool.h" ]
     60   sources = [ "entropy_pool.cc" ]
     61   deps = [
     62     ":platform",
     63     ":randen",
     64     ":seed_material",
     65     "//third_party/abseil-cpp/absl/base",
     66     "//third_party/abseil-cpp/absl/base:config",
     67     "//third_party/abseil-cpp/absl/base:core_headers",
     68     "//third_party/abseil-cpp/absl/random:seed_gen_exception",
     69     "//third_party/abseil-cpp/absl/types:span",
     70   ]
     71   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
     72 }
     73 
     74 absl_source_set("explicit_seed_seq") {
     75   testonly = true
     76   public = [ "explicit_seed_seq.h" ]
     77   deps = [
     78     "//third_party/abseil-cpp/absl/base:config",
     79     "//third_party/abseil-cpp/absl/base:endian",
     80   ]
     81   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
     82 }
     83 
     84 absl_source_set("sequence_urbg") {
     85   testonly = true
     86   public = [ "sequence_urbg.h" ]
     87   deps = [ "//third_party/abseil-cpp/absl/base:config" ]
     88   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
     89 }
     90 
     91 absl_source_set("salted_seed_seq") {
     92   public = [ "salted_seed_seq.h" ]
     93   deps = [
     94     ":seed_material",
     95     "//third_party/abseil-cpp/absl/container:inlined_vector",
     96     "//third_party/abseil-cpp/absl/meta:type_traits",
     97     "//third_party/abseil-cpp/absl/types:optional",
     98     "//third_party/abseil-cpp/absl/types:span",
     99   ]
    100   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    101 }
    102 
    103 absl_source_set("iostream_state_saver") {
    104   public = [ "iostream_state_saver.h" ]
    105   deps = [
    106     "//third_party/abseil-cpp/absl/base:config",
    107     "//third_party/abseil-cpp/absl/meta:type_traits",
    108     "//third_party/abseil-cpp/absl/numeric:int128",
    109   ]
    110   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    111 }
    112 
    113 absl_source_set("generate_real") {
    114   public = [ "generate_real.h" ]
    115   deps = [
    116     ":fastmath",
    117     ":traits",
    118     "//third_party/abseil-cpp/absl/meta:type_traits",
    119     "//third_party/abseil-cpp/absl/numeric:bits",
    120   ]
    121   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    122 }
    123 
    124 absl_source_set("fastmath") {
    125   public = [ "fastmath.h" ]
    126   deps = [ "//third_party/abseil-cpp/absl/numeric:bits" ]
    127   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    128 }
    129 
    130 absl_source_set("wide_multiply") {
    131   public = [ "wide_multiply.h" ]
    132   deps = [
    133     ":traits",
    134     "//third_party/abseil-cpp/absl/base:config",
    135     "//third_party/abseil-cpp/absl/numeric:bits",
    136     "//third_party/abseil-cpp/absl/numeric:int128",
    137   ]
    138   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    139 }
    140 
    141 absl_source_set("nonsecure_base") {
    142   public = [ "nonsecure_base.h" ]
    143   deps = [
    144     ":entropy_pool",
    145     ":salted_seed_seq",
    146     ":seed_material",
    147     "//third_party/abseil-cpp/absl/base:config",
    148     "//third_party/abseil-cpp/absl/container:inlined_vector",
    149     "//third_party/abseil-cpp/absl/meta:type_traits",
    150   ]
    151   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    152 }
    153 
    154 absl_source_set("pcg_engine") {
    155   public = [ "pcg_engine.h" ]
    156   deps = [
    157     ":fastmath",
    158     ":iostream_state_saver",
    159     "//third_party/abseil-cpp/absl/base:config",
    160     "//third_party/abseil-cpp/absl/meta:type_traits",
    161     "//third_party/abseil-cpp/absl/numeric:bits",
    162     "//third_party/abseil-cpp/absl/numeric:int128",
    163   ]
    164   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    165 }
    166 
    167 absl_source_set("randen_engine") {
    168   public = [ "randen_engine.h" ]
    169   deps = [
    170     ":iostream_state_saver",
    171     ":randen",
    172     "//third_party/abseil-cpp/absl/base:endian",
    173     "//third_party/abseil-cpp/absl/meta:type_traits",
    174   ]
    175   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    176 }
    177 
    178 absl_source_set("platform") {
    179   public = [
    180     "platform.h",
    181     "randen_traits.h",
    182   ]
    183   sources = [ "randen_round_keys.cc" ]
    184   deps = [
    185     "//build:chromeos_buildflags",
    186     "//third_party/abseil-cpp/absl/base:config",
    187   ]
    188   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    189 
    190   if (moz_webrtc_build) {
    191     # We don't really want to run Google's scripting to generate build flags
    192     deps -= [ "//build:chromeos_buildflags" ]
    193   }
    194 }
    195 
    196 absl_source_set("randen") {
    197   public = [ "randen.h" ]
    198   sources = [ "randen.cc" ]
    199   deps = [
    200     ":platform",
    201     ":randen_hwaes",
    202     ":randen_slow",
    203     "//third_party/abseil-cpp/absl/base:raw_logging_internal",
    204   ]
    205   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    206 }
    207 
    208 absl_source_set("randen_slow") {
    209   public = [ "randen_slow.h" ]
    210   sources = [ "randen_slow.cc" ]
    211   deps = [
    212     ":platform",
    213     "//third_party/abseil-cpp/absl/base:config",
    214     "//third_party/abseil-cpp/absl/base:core_headers",
    215     "//third_party/abseil-cpp/absl/base:endian",
    216     "//third_party/abseil-cpp/absl/numeric:int128",
    217   ]
    218   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    219 }
    220 
    221 absl_source_set("randen_hwaes") {
    222   public = [
    223     "randen_detect.h",
    224     "randen_hwaes.h",
    225   ]
    226   sources = [ "randen_detect.cc" ]
    227   deps = [
    228     ":platform",
    229     ":randen_hwaes_impl",
    230     "//third_party/abseil-cpp/absl/base:config",
    231     "//third_party/abseil-cpp/absl/types:optional",
    232   ]
    233   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    234 }
    235 
    236 absl_source_set("randen_hwaes_impl") {
    237   sources = [
    238     "randen_hwaes.cc",
    239     "randen_hwaes.h",
    240   ]
    241   deps = [
    242     ":platform",
    243     "//third_party/abseil-cpp/absl/base:config",
    244     "//third_party/abseil-cpp/absl/base:core_headers",
    245     "//third_party/abseil-cpp/absl/numeric:int128",
    246   ]
    247   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    248 }
    249 
    250 if (!moz_webrtc_build) {
    251 executable("gaussian_distribution_gentables") {
    252   sources = [ "gaussian_distribution_gentables.cc" ]
    253   deps = [
    254     "//third_party/abseil-cpp/absl/base:core_headers",
    255     "//third_party/abseil-cpp/absl/random:distributions",
    256   ]
    257   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    258 }
    259 }
    260 
    261 absl_source_set("distribution_test_util") {
    262   testonly = true
    263   public = [
    264     "chi_square.h",
    265     "distribution_test_util.h",
    266   ]
    267   sources = [
    268     "chi_square.cc",
    269     "distribution_test_util.cc",
    270   ]
    271   deps = [
    272     "//third_party/abseil-cpp/absl/base:config",
    273     "//third_party/abseil-cpp/absl/base:core_headers",
    274     "//third_party/abseil-cpp/absl/base:raw_logging_internal",
    275     "//third_party/abseil-cpp/absl/strings",
    276     "//third_party/abseil-cpp/absl/strings:str_format",
    277     "//third_party/abseil-cpp/absl/strings:string_view",
    278     "//third_party/abseil-cpp/absl/types:span",
    279   ]
    280   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    281 }
    282 
    283 absl_source_set("mock_helpers") {
    284   public = [ "mock_helpers.h" ]
    285   deps = [
    286     "//third_party/abseil-cpp/absl/base:config",
    287     "//third_party/abseil-cpp/absl/base:fast_type_id",
    288     "//third_party/abseil-cpp/absl/types:optional",
    289   ]
    290 }
    291 
    292 absl_source_set("mock_overload_set") {
    293   testonly = true
    294   public = [ "mock_overload_set.h" ]
    295   deps = [
    296     ":mock_helpers",
    297     "//third_party/abseil-cpp/absl/base:config",
    298     "//third_party/abseil-cpp/absl/random:mocking_bit_gen",
    299     "//third_party/googletest:gtest",
    300   ]
    301 }
    302 
    303 absl_test("nonsecure_base_test") {
    304   sources = [ "nonsecure_base_test.cc" ]
    305   deps = [
    306     ":nonsecure_base",
    307     "//third_party/abseil-cpp/absl/container:flat_hash_set",
    308     "//third_party/abseil-cpp/absl/meta:type_traits",
    309     "//third_party/abseil-cpp/absl/random",
    310     "//third_party/abseil-cpp/absl/random:distributions",
    311     "//third_party/abseil-cpp/absl/synchronization",
    312   ]
    313 }
    314 
    315 absl_source_set("uniform_helper") {
    316   public = [ "uniform_helper.h" ]
    317   deps = [
    318     ":traits",
    319     "//third_party/abseil-cpp/absl/base:config",
    320     "//third_party/abseil-cpp/absl/meta:type_traits",
    321     "//third_party/abseil-cpp/absl/numeric:int128",
    322   ]
    323   visibility = [ "//third_party/abseil-cpp/absl/random/*" ]
    324 }
    325 
    326 absl_source_set("mock_validators") {
    327   public = [ "mock_validators.h" ]
    328   deps = [
    329     ":iostream_state_saver",
    330     ":uniform_helper",
    331     "//third_party/abseil-cpp/absl/base:config",
    332     "//third_party/abseil-cpp/absl/base:raw_logging_internal",
    333     "//third_party/abseil-cpp/absl/strings",
    334     "//third_party/abseil-cpp/absl/strings:string_view",
    335   ]
    336 }