Home | History | Annotate | Download | only in v8
      1 # Note: The buildbots evaluate this file with CWD set to the parent
      2 # directory and assume that the root of the checkout is in ./v8/, so
      3 # all paths in here must match this assumption.
      4 
      5 vars = {
      6   "chromium_url": "https://chromium.googlesource.com",
      7 }
      8 
      9 deps = {
     10   "v8/build":
     11     Var("chromium_url") + "/chromium/src/build.git" + "@" + "c7c2db69cd571523ce728c4d3dceedbd1896b519",
     12   "v8/tools/gyp":
     13     Var("chromium_url") + "/external/gyp.git" + "@" + "e7079f0e0e14108ab0dba58728ff219637458563",
     14   "v8/third_party/icu":
     15     Var("chromium_url") + "/chromium/deps/icu.git" + "@" + "450be73c9ee8ae29d43d4fdc82febb2a5f62bfb5",
     16   "v8/third_party/instrumented_libraries":
     17     Var("chromium_url") + "/chromium/src/third_party/instrumented_libraries.git" + "@" + "5b6f777da671be977f56f0e8fc3469a3ccbb4474",
     18   "v8/buildtools":
     19     Var("chromium_url") + "/chromium/buildtools.git" + "@" + "94cdccbebc7a634c27145a3d84089e85fbb42e69",
     20   "v8/base/trace_event/common":
     21     Var("chromium_url") + "/chromium/src/base/trace_event/common.git" + "@" + "06294c8a4a6f744ef284cd63cfe54dbf61eea290",
     22   "v8/third_party/jinja2":
     23     Var("chromium_url") + "/chromium/src/third_party/jinja2.git" + "@" + "d34383206fa42d52faa10bb9931d6d538f3a57e0",
     24   "v8/third_party/markupsafe":
     25     Var("chromium_url") + "/chromium/src/third_party/markupsafe.git" + "@" + "8f45f5cfa0009d2a70589bcda0349b8cb2b72783",
     26   "v8/tools/swarming_client":
     27     Var('chromium_url') + '/external/swarming.client.git' + '@' + "11e31afa5d330756ff87aa12064bb5d032896cb5",
     28   "v8/testing/gtest":
     29     Var("chromium_url") + "/external/github.com/google/googletest.git" + "@" + "6f8a66431cb592dad629028a50b3dd418a408c87",
     30   "v8/testing/gmock":
     31     Var("chromium_url") + "/external/googlemock.git" + "@" + "0421b6f358139f02e102c9c332ce19a33faf75be",
     32   "v8/test/benchmarks/data":
     33     Var("chromium_url") + "/v8/deps/third_party/benchmarks.git" + "@" + "05d7188267b4560491ff9155c5ee13e207ecd65f",
     34   "v8/test/mozilla/data":
     35     Var("chromium_url") + "/v8/deps/third_party/mozilla-tests.git" + "@" + "f6c578a10ea707b1a8ab0b88943fe5115ce2b9be",
     36   "v8/test/test262/data":
     37     Var("chromium_url") + "/external/github.com/tc39/test262.git" + "@" + "a72ee6d91275aa6524e84a9b7070103411ef2689",
     38   "v8/test/test262/harness":
     39     Var("chromium_url") + "/external/github.com/test262-utils/test262-harness-py.git" + "@" + "0f2acdd882c84cff43b9d60df7574a1901e2cdcd",
     40   "v8/tools/clang":
     41     Var("chromium_url") + "/chromium/src/tools/clang.git" + "@" + "9913fb19b687b0c858f697efd7bd2468d789a3d5",
     42   "v8/test/wasm-js":
     43     Var("chromium_url") + "/external/github.com/WebAssembly/spec.git" + "@" + "b8b919e4a0d52db4d3d762e731e615bc3a38b3b2",
     44 }
     45 
     46 deps_os = {
     47   "android": {
     48     "v8/third_party/android_tools":
     49       Var("chromium_url") + "/android_tools.git" + "@" + "b43a6a289a7588b1769814f04dd6c7d7176974cc",
     50     "v8/third_party/catapult":
     51       Var('chromium_url') + "/external/github.com/catapult-project/catapult.git" + "@" + "246a39a82c2213d913a96fff020a263838dc76e6",
     52   },
     53   "win": {
     54     "v8/third_party/cygwin":
     55       Var("chromium_url") + "/chromium/deps/cygwin.git" + "@" + "c89e446b273697fadf3a10ff1007a97c0b7de6df",
     56   }
     57 }
     58 
     59 recursedeps = [
     60   "v8/buildtools",
     61   "v8/third_party/android_tools",
     62 ]
     63 
     64 include_rules = [
     65   # Everybody can use some things.
     66   "+include",
     67   "+unicode",
     68   "+third_party/fdlibm",
     69 ]
     70 
     71 # checkdeps.py shouldn't check for includes in these directories:
     72 skip_child_includes = [
     73   "build",
     74   "gypfiles",
     75   "third_party",
     76 ]
     77 
     78 hooks = [
     79   {
     80     # This clobbers when necessary (based on get_landmines.py). It must be the
     81     # first hook so that other things that get/generate into the output
     82     # directory will not subsequently be clobbered.
     83     'name': 'landmines',
     84     'pattern': '.',
     85     'action': [
     86         'python',
     87         'v8/gypfiles/landmines.py',
     88     ],
     89   },
     90   # Pull clang-format binaries using checked-in hashes.
     91   {
     92     "name": "clang_format_win",
     93     "pattern": ".",
     94     "action": [ "download_from_google_storage",
     95                 "--no_resume",
     96                 "--platform=win32",
     97                 "--no_auth",
     98                 "--bucket", "chromium-clang-format",
     99                 "-s", "v8/buildtools/win/clang-format.exe.sha1",
    100     ],
    101   },
    102   {
    103     "name": "clang_format_mac",
    104     "pattern": ".",
    105     "action": [ "download_from_google_storage",
    106                 "--no_resume",
    107                 "--platform=darwin",
    108                 "--no_auth",
    109                 "--bucket", "chromium-clang-format",
    110                 "-s", "v8/buildtools/mac/clang-format.sha1",
    111     ],
    112   },
    113   {
    114     "name": "clang_format_linux",
    115     "pattern": ".",
    116     "action": [ "download_from_google_storage",
    117                 "--no_resume",
    118                 "--platform=linux*",
    119                 "--no_auth",
    120                 "--bucket", "chromium-clang-format",
    121                 "-s", "v8/buildtools/linux64/clang-format.sha1",
    122     ],
    123   },
    124   {
    125     'name': 'gcmole',
    126     'pattern': '.',
    127     'action': [
    128         'python',
    129         'v8/tools/gcmole/download_gcmole_tools.py',
    130     ],
    131   },
    132   {
    133     'name': 'jsfunfuzz',
    134     'pattern': '.',
    135     'action': [
    136         'python',
    137         'v8/tools/jsfunfuzz/download_jsfunfuzz.py',
    138     ],
    139   },
    140   # Pull luci-go binaries (isolate, swarming) using checked-in hashes.
    141   {
    142     'name': 'luci-go_win',
    143     'pattern': '.',
    144     'action': [ 'download_from_google_storage',
    145                 '--no_resume',
    146                 '--platform=win32',
    147                 '--no_auth',
    148                 '--bucket', 'chromium-luci',
    149                 '-d', 'v8/tools/luci-go/win64',
    150     ],
    151   },
    152   {
    153     'name': 'luci-go_mac',
    154     'pattern': '.',
    155     'action': [ 'download_from_google_storage',
    156                 '--no_resume',
    157                 '--platform=darwin',
    158                 '--no_auth',
    159                 '--bucket', 'chromium-luci',
    160                 '-d', 'v8/tools/luci-go/mac64',
    161     ],
    162   },
    163   {
    164     'name': 'luci-go_linux',
    165     'pattern': '.',
    166     'action': [ 'download_from_google_storage',
    167                 '--no_resume',
    168                 '--platform=linux*',
    169                 '--no_auth',
    170                 '--bucket', 'chromium-luci',
    171                 '-d', 'v8/tools/luci-go/linux64',
    172     ],
    173   },
    174   # Pull GN using checked-in hashes.
    175   {
    176     "name": "gn_win",
    177     "pattern": ".",
    178     "action": [ "download_from_google_storage",
    179                 "--no_resume",
    180                 "--platform=win32",
    181                 "--no_auth",
    182                 "--bucket", "chromium-gn",
    183                 "-s", "v8/buildtools/win/gn.exe.sha1",
    184     ],
    185   },
    186   {
    187     "name": "gn_mac",
    188     "pattern": ".",
    189     "action": [ "download_from_google_storage",
    190                 "--no_resume",
    191                 "--platform=darwin",
    192                 "--no_auth",
    193                 "--bucket", "chromium-gn",
    194                 "-s", "v8/buildtools/mac/gn.sha1",
    195     ],
    196   },
    197   {
    198     "name": "gn_linux",
    199     "pattern": ".",
    200     "action": [ "download_from_google_storage",
    201                 "--no_resume",
    202                 "--platform=linux*",
    203                 "--no_auth",
    204                 "--bucket", "chromium-gn",
    205                 "-s", "v8/buildtools/linux64/gn.sha1",
    206     ],
    207   },
    208   {
    209     "name": "wasm_fuzzer",
    210     "pattern": ".",
    211     "action": [ "download_from_google_storage",
    212                 "--no_resume",
    213                 "--no_auth",
    214                 "-u",
    215                 "--bucket", "v8-wasm-fuzzer",
    216                 "-s", "v8/test/fuzzer/wasm.tar.gz.sha1",
    217     ],
    218   },
    219   {
    220     "name": "wasm_asmjs_fuzzer",
    221     "pattern": ".",
    222     "action": [ "download_from_google_storage",
    223                 "--no_resume",
    224                 "--no_auth",
    225                 "-u",
    226                 "--bucket", "v8-wasm-asmjs-fuzzer",
    227                 "-s", "v8/test/fuzzer/wasm_asmjs.tar.gz.sha1",
    228     ],
    229   },
    230   {
    231     "name": "closure_compiler",
    232     "pattern": ".",
    233     "action": [ "download_from_google_storage",
    234                 "--no_resume",
    235                 "--no_auth",
    236                 "-u",
    237                 "--bucket", "chromium-v8-closure-compiler",
    238                 "-s", "v8/src/inspector/build/closure-compiler.tar.gz.sha1",
    239     ],
    240   },
    241   {
    242     # Downloads the current stable linux sysroot to build/linux/ if needed.
    243     # This sysroot updates at about the same rate that the chrome build deps
    244     # change.
    245     'name': 'sysroot',
    246     'pattern': '.',
    247     'action': [
    248         'python',
    249         'v8/build/linux/sysroot_scripts/install-sysroot.py',
    250         '--running-as-hook',
    251     ],
    252   },
    253   {
    254     # Pull sanitizer-instrumented third-party libraries if requested via
    255     # GYP_DEFINES.
    256     'name': 'instrumented_libraries',
    257     'pattern': '\\.sha1',
    258     'action': [
    259         'python',
    260         'v8/third_party/instrumented_libraries/scripts/download_binaries.py',
    261     ],
    262   },
    263   {
    264     # Update the Windows toolchain if necessary.
    265     'name': 'win_toolchain',
    266     'pattern': '.',
    267     'action': ['python', 'v8/build/vs_toolchain.py', 'update'],
    268   },
    269   # Pull binutils for linux, enabled debug fission for faster linking /
    270   # debugging when used with clang on Ubuntu Precise.
    271   # https://code.google.com/p/chromium/issues/detail?id=352046
    272   {
    273     'name': 'binutils',
    274     'pattern': 'v8/third_party/binutils',
    275     'action': [
    276         'python',
    277         'v8/third_party/binutils/download.py',
    278     ],
    279   },
    280   {
    281     # Pull gold plugin if needed or requested via GYP_DEFINES.
    282     # Note: This must run before the clang update.
    283     'name': 'gold_plugin',
    284     'pattern': '.',
    285     'action': ['python', 'v8/gypfiles/download_gold_plugin.py'],
    286   },
    287   {
    288     # Pull clang if needed or requested via GYP_DEFINES.
    289     # Note: On Win, this should run after win_toolchain, as it may use it.
    290     'name': 'clang',
    291     'pattern': '.',
    292     'action': ['python', 'v8/tools/clang/scripts/update.py', '--if-needed'],
    293   },
    294   {
    295     # A change to a .gyp, .gypi, or to GYP itself should run the generator.
    296     "pattern": ".",
    297     "action": ["python", "v8/gypfiles/gyp_v8", "--running-as-hook"],
    298   },
    299 ]
    300