libv8 4.5.95.5 → 5.0.71.48.0beta2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (332) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +45 -19
  3. data/CHANGELOG.md +14 -0
  4. data/README.md +30 -15
  5. data/Rakefile +7 -6
  6. data/ext/libv8/arch.rb +5 -4
  7. data/ext/libv8/builder.rb +25 -19
  8. data/ext/libv8/compiler.rb +6 -33
  9. data/ext/libv8/location.rb +7 -8
  10. data/lib/libv8/version.rb +1 -1
  11. data/libv8.gemspec +1 -1
  12. data/patches/build-standalone-static-library.patch +14 -0
  13. data/patches/disable-building-tests.patch +48 -10
  14. data/patches/fPIC-for-static.patch +3 -3
  15. data/release/x86-linux/Vagrantfile +8 -4
  16. data/release/x86_64-freebsd10/Vagrantfile +86 -0
  17. data/release/x86_64-linux/Vagrantfile +8 -4
  18. data/spec/compiler_spec.rb +5 -29
  19. data/spec/support/compiler_helpers.rb +2 -4
  20. data/vendor/depot_tools/.gitignore +15 -3
  21. data/vendor/depot_tools/OWNERS +2 -2
  22. data/vendor/depot_tools/PRESUBMIT.py +4 -2
  23. data/vendor/depot_tools/WATCHLISTS +6 -0
  24. data/vendor/depot_tools/apply_issue.py +70 -38
  25. data/vendor/depot_tools/bootstrap/win/README.md +66 -0
  26. data/vendor/depot_tools/bootstrap/win/git-bash.template.sh +12 -0
  27. data/vendor/depot_tools/bootstrap/win/git.template.bat +5 -0
  28. data/vendor/depot_tools/bootstrap/win/profile.d.python.sh +20 -0
  29. data/vendor/depot_tools/bootstrap/win/win_tools.bat +96 -45
  30. data/vendor/depot_tools/breakpad.py +6 -141
  31. data/vendor/depot_tools/buildbucket.py +45 -31
  32. data/vendor/depot_tools/cbuildbot +1 -0
  33. data/vendor/depot_tools/checkout.py +2 -1
  34. data/vendor/depot_tools/chrome_set_ver +1 -0
  35. data/vendor/depot_tools/cit +8 -0
  36. data/vendor/depot_tools/cit.bat +11 -0
  37. data/vendor/depot_tools/cit.py +120 -0
  38. data/vendor/depot_tools/codereview.settings +0 -2
  39. data/vendor/depot_tools/commit_queue +1 -5
  40. data/vendor/depot_tools/commit_queue.bat +1 -4
  41. data/vendor/depot_tools/commit_queue.py +78 -29
  42. data/vendor/depot_tools/cpplint.py +22 -14
  43. data/vendor/depot_tools/cros +1 -0
  44. data/vendor/depot_tools/cros_sdk +1 -0
  45. data/vendor/depot_tools/depot-tools-auth.py +3 -3
  46. data/vendor/depot_tools/download_from_google_storage.py +101 -21
  47. data/vendor/depot_tools/drover.py +2 -3
  48. data/vendor/depot_tools/fetch.py +31 -27
  49. data/vendor/depot_tools/{recipes → fetch_configs}/android.py +4 -4
  50. data/vendor/depot_tools/fetch_configs/breakpad.py +45 -0
  51. data/vendor/depot_tools/{recipes → fetch_configs}/chromium.py +3 -3
  52. data/vendor/depot_tools/{recipes/recipe_util.py → fetch_configs/config_util.py} +3 -3
  53. data/vendor/depot_tools/fetch_configs/crashpad.py +41 -0
  54. data/vendor/depot_tools/{recipes → fetch_configs}/dart.py +3 -3
  55. data/vendor/depot_tools/{recipes/pdfium.py → fetch_configs/dartino.py} +14 -13
  56. data/vendor/depot_tools/{recipes → fetch_configs}/dartium.py +3 -3
  57. data/vendor/depot_tools/{recipes → fetch_configs}/depot_tools.py +3 -3
  58. data/vendor/depot_tools/fetch_configs/gyp.py +42 -0
  59. data/vendor/depot_tools/{recipes → fetch_configs}/infra.py +3 -3
  60. data/vendor/depot_tools/{recipes → fetch_configs}/infra_internal.py +3 -3
  61. data/vendor/depot_tools/{recipes → fetch_configs}/ios.py +4 -4
  62. data/vendor/depot_tools/{recipes → fetch_configs}/mojo.py +3 -3
  63. data/vendor/depot_tools/{recipes → fetch_configs}/nacl.py +3 -3
  64. data/vendor/depot_tools/{recipes → fetch_configs}/naclports.py +3 -3
  65. data/vendor/depot_tools/fetch_configs/pdfium.py +40 -0
  66. data/vendor/depot_tools/{recipes → fetch_configs}/skia.py +3 -3
  67. data/vendor/depot_tools/{recipes → fetch_configs}/skia_buildbot.py +3 -3
  68. data/vendor/depot_tools/fetch_configs/syzygy.py +41 -0
  69. data/vendor/depot_tools/{recipes → fetch_configs}/v8.py +3 -3
  70. data/vendor/depot_tools/{recipes → fetch_configs}/webrtc.py +3 -3
  71. data/vendor/depot_tools/{recipes → fetch_configs}/webrtc_android.py +4 -4
  72. data/vendor/depot_tools/{recipes → fetch_configs}/webrtc_ios.py +4 -4
  73. data/vendor/depot_tools/fix_encoding.py +6 -6
  74. data/vendor/depot_tools/gcl.py +11 -21
  75. data/vendor/depot_tools/gclient +10 -0
  76. data/vendor/depot_tools/gclient-new-workdir.py +7 -38
  77. data/vendor/depot_tools/gclient.bat +2 -2
  78. data/vendor/depot_tools/gclient.py +85 -65
  79. data/vendor/depot_tools/gclient_scm.py +83 -10
  80. data/vendor/depot_tools/gclient_utils.py +5 -1
  81. data/vendor/depot_tools/gerrit_util.py +243 -26
  82. data/vendor/depot_tools/git-auto-svn +1 -1
  83. data/vendor/depot_tools/git-cache +1 -1
  84. data/vendor/depot_tools/git-cherry-pick-upload +1 -1
  85. data/vendor/depot_tools/git-cl +1 -1
  86. data/vendor/depot_tools/git-drover +6 -0
  87. data/vendor/depot_tools/git-find-releases +6 -0
  88. data/vendor/depot_tools/git-footers +1 -1
  89. data/vendor/depot_tools/git-freeze +1 -1
  90. data/vendor/depot_tools/git-gs +1 -1
  91. data/vendor/depot_tools/git-hyper-blame +6 -0
  92. data/vendor/depot_tools/git-map +1 -1
  93. data/vendor/depot_tools/git-map-branches +1 -1
  94. data/vendor/depot_tools/git-mark-merge-base +1 -1
  95. data/vendor/depot_tools/git-nav-downstream +1 -1
  96. data/vendor/depot_tools/git-new-branch +1 -1
  97. data/vendor/depot_tools/git-number +1 -1
  98. data/vendor/depot_tools/git-rebase-update +1 -1
  99. data/vendor/depot_tools/git-rename-branch +1 -1
  100. data/vendor/depot_tools/git-reparent-branch +1 -1
  101. data/vendor/depot_tools/git-retry +1 -1
  102. data/vendor/depot_tools/git-squash-branch +1 -1
  103. data/vendor/depot_tools/git-thaw +1 -1
  104. data/vendor/depot_tools/git-try +1 -1
  105. data/vendor/depot_tools/git-upstream-diff +1 -1
  106. data/vendor/depot_tools/git_auto_svn.py +24 -6
  107. data/vendor/depot_tools/git_cache.py +74 -27
  108. data/vendor/depot_tools/git_cl.py +2118 -747
  109. data/vendor/depot_tools/git_common.py +100 -6
  110. data/vendor/depot_tools/git_dates.py +62 -0
  111. data/vendor/depot_tools/git_drover.py +424 -0
  112. data/vendor/depot_tools/git_find_releases.py +65 -0
  113. data/vendor/depot_tools/git_footers.py +42 -0
  114. data/vendor/depot_tools/git_hyper_blame.py +391 -0
  115. data/vendor/depot_tools/git_map_branches.py +8 -6
  116. data/vendor/depot_tools/git_new_branch.py +6 -1
  117. data/vendor/depot_tools/git_rebase_update.py +56 -16
  118. data/vendor/depot_tools/git_reparent_branch.py +13 -0
  119. data/vendor/depot_tools/git_try.py +0 -2
  120. data/vendor/depot_tools/gsutil.py +51 -20
  121. data/vendor/depot_tools/infra/config/OWNERS +3 -1
  122. data/vendor/depot_tools/infra/config/cq.cfg +7 -3
  123. data/vendor/depot_tools/infra/config/recipes.cfg +9 -0
  124. data/vendor/depot_tools/luci_hacks/README.md +35 -0
  125. data/vendor/depot_tools/{bootstrap/virtualenv/tests → luci_hacks}/__init__.py +0 -0
  126. data/vendor/depot_tools/luci_hacks/luci_recipe_run.isolate +12 -0
  127. data/vendor/depot_tools/luci_hacks/luci_recipe_run.py +81 -0
  128. data/vendor/depot_tools/luci_hacks/trigger_luci_job.py +128 -0
  129. data/vendor/depot_tools/man/html/depot_tools.html +9 -1
  130. data/vendor/depot_tools/man/html/depot_tools_tutorial.html +4 -4
  131. data/vendor/depot_tools/man/html/git-drover.html +191 -35
  132. data/vendor/depot_tools/man/html/git-hyper-blame.html +878 -0
  133. data/vendor/depot_tools/man/html/git-rebase-update.html +9 -4
  134. data/vendor/depot_tools/man/man1/git-drover.1 +189 -36
  135. data/vendor/depot_tools/man/man1/git-hyper-blame.1 +128 -0
  136. data/vendor/depot_tools/man/man1/git-rebase-update.1 +8 -6
  137. data/vendor/depot_tools/man/man7/depot_tools.7 +9 -4
  138. data/vendor/depot_tools/man/src/_git-hyper-blame_desc.helper.txt +1 -0
  139. data/vendor/depot_tools/man/src/common_demo_functions.sh +5 -0
  140. data/vendor/depot_tools/man/src/depot_tools_tutorial.txt +1 -1
  141. data/vendor/depot_tools/man/src/git-drover.demo.1.sh +11 -16
  142. data/vendor/depot_tools/man/src/git-drover.demo.3.sh +27 -0
  143. data/vendor/depot_tools/man/src/git-drover.demo.4.sh +39 -0
  144. data/vendor/depot_tools/man/src/git-drover.txt +49 -3
  145. data/vendor/depot_tools/man/src/git-hyper-blame.demo.1.sh +3 -0
  146. data/vendor/depot_tools/man/src/git-hyper-blame.demo.2.sh +4 -0
  147. data/vendor/depot_tools/man/src/git-hyper-blame.demo.common.sh +57 -0
  148. data/vendor/depot_tools/man/src/git-hyper-blame.txt +85 -0
  149. data/vendor/depot_tools/man/src/git-rebase-update.txt +5 -1
  150. data/vendor/depot_tools/my_activity.py +6 -21
  151. data/vendor/depot_tools/ninja +2 -2
  152. data/vendor/depot_tools/ninja-linux32 +0 -0
  153. data/vendor/depot_tools/ninja-linux64 +0 -0
  154. data/vendor/depot_tools/ninja-mac +0 -0
  155. data/vendor/depot_tools/ninja.exe +0 -0
  156. data/vendor/depot_tools/presubmit_canned_checks.py +83 -69
  157. data/vendor/depot_tools/presubmit_support.py +126 -42
  158. data/vendor/depot_tools/pylint.py +5 -1
  159. data/vendor/depot_tools/python_runner.sh +55 -0
  160. data/vendor/depot_tools/recipe_modules/bot_update/__init__.py +32 -0
  161. data/vendor/depot_tools/recipe_modules/bot_update/api.py +283 -0
  162. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/basic.json +56 -0
  163. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/basic_output_manifest.json +63 -0
  164. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/basic_with_branch_heads.json +57 -0
  165. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/clobber.json +44 -0
  166. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/forced.json +57 -0
  167. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/gerrit_no_reset.json +44 -0
  168. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/no_shallow.json +44 -0
  169. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/off.json +43 -0
  170. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/reset_root_solution_revision.json +43 -0
  171. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/svn_mode.json +59 -0
  172. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/trychange.json +58 -0
  173. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/trychange_oauth2.json +60 -0
  174. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob.json +58 -0
  175. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_fail.json +60 -0
  176. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_fail_patch.json +81 -0
  177. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_fail_patch_download.json +81 -0
  178. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_gerrit_angle.json +49 -0
  179. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_v8.json +61 -0
  180. data/vendor/depot_tools/recipe_modules/bot_update/example.expected/tryjob_v8_head_by_default.json +51 -0
  181. data/vendor/depot_tools/recipe_modules/bot_update/example.py +172 -0
  182. data/vendor/depot_tools/{bootstrap/virtualenv/virtualenv_support → recipe_modules/bot_update/resources}/__init__.py +0 -0
  183. data/vendor/depot_tools/recipe_modules/bot_update/resources/bot_update.py +1764 -0
  184. data/vendor/depot_tools/recipe_modules/bot_update/test_api.py +86 -0
  185. data/vendor/depot_tools/recipe_modules/depot_tools/__init__.py +3 -0
  186. data/vendor/depot_tools/recipe_modules/depot_tools/api.py +27 -0
  187. data/vendor/depot_tools/recipe_modules/gclient/__init__.py +10 -0
  188. data/vendor/depot_tools/recipe_modules/gclient/api.py +378 -0
  189. data/vendor/depot_tools/recipe_modules/gclient/config.py +671 -0
  190. data/vendor/depot_tools/recipe_modules/gclient/example.expected/basic.json +172 -0
  191. data/vendor/depot_tools/recipe_modules/gclient/example.expected/revision.json +174 -0
  192. data/vendor/depot_tools/recipe_modules/gclient/example.expected/tryserver.json +185 -0
  193. data/vendor/depot_tools/recipe_modules/gclient/example.py +100 -0
  194. data/vendor/depot_tools/recipe_modules/gclient/test_api.py +37 -0
  195. data/vendor/depot_tools/recipe_modules/git/__init__.py +9 -0
  196. data/vendor/depot_tools/recipe_modules/git/api.py +377 -0
  197. data/vendor/depot_tools/recipe_modules/git/example.expected/basic.json +177 -0
  198. data/vendor/depot_tools/recipe_modules/git/example.expected/basic_branch.json +177 -0
  199. data/vendor/depot_tools/recipe_modules/git/example.expected/basic_file_name.json +179 -0
  200. data/vendor/depot_tools/recipe_modules/git/example.expected/basic_hash.json +176 -0
  201. data/vendor/depot_tools/recipe_modules/git/example.expected/basic_ref.json +177 -0
  202. data/vendor/depot_tools/recipe_modules/git/example.expected/basic_submodule_update_force.json +178 -0
  203. data/vendor/depot_tools/recipe_modules/git/example.expected/can_fail_build.json +153 -0
  204. data/vendor/depot_tools/recipe_modules/git/example.expected/cannot_fail_build.json +181 -0
  205. data/vendor/depot_tools/recipe_modules/git/example.expected/cat-file_test.json +199 -0
  206. data/vendor/depot_tools/recipe_modules/git/example.expected/count-objects_delta.json +250 -0
  207. data/vendor/depot_tools/recipe_modules/git/example.expected/count-objects_failed.json +181 -0
  208. data/vendor/depot_tools/recipe_modules/git/example.expected/count-objects_with_bad_output.json +182 -0
  209. data/vendor/depot_tools/recipe_modules/git/example.expected/count-objects_with_bad_output_fails_build.json +102 -0
  210. data/vendor/depot_tools/recipe_modules/git/example.expected/curl_trace_file.json +181 -0
  211. data/vendor/depot_tools/recipe_modules/git/example.expected/platform_win.json +186 -0
  212. data/vendor/depot_tools/recipe_modules/git/example.expected/rebase_failed.json +179 -0
  213. data/vendor/depot_tools/recipe_modules/git/example.expected/remote_not_origin.json +179 -0
  214. data/vendor/depot_tools/recipe_modules/git/example.expected/set_got_revision.json +178 -0
  215. data/vendor/depot_tools/recipe_modules/git/example.py +147 -0
  216. data/vendor/depot_tools/recipe_modules/git/resources/git_setup.py +61 -0
  217. data/vendor/depot_tools/recipe_modules/git/test_api.py +18 -0
  218. data/vendor/depot_tools/recipe_modules/git_cl/__init__.py +4 -0
  219. data/vendor/depot_tools/recipe_modules/git_cl/api.py +25 -0
  220. data/vendor/depot_tools/recipe_modules/git_cl/config.py +22 -0
  221. data/vendor/depot_tools/recipe_modules/git_cl/example.expected/basic.json +66 -0
  222. data/vendor/depot_tools/recipe_modules/git_cl/example.py +41 -0
  223. data/vendor/depot_tools/recipe_modules/infra_paths/__init__.py +4 -0
  224. data/vendor/depot_tools/recipe_modules/infra_paths/api.py +12 -0
  225. data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/basic.json +14 -0
  226. data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_buildbot_linux.json +14 -0
  227. data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_buildbot_mac.json +14 -0
  228. data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_buildbot_win.json +14 -0
  229. data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_kitchen_linux.json +14 -0
  230. data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_kitchen_mac.json +14 -0
  231. data/vendor/depot_tools/recipe_modules/infra_paths/example.expected/paths_kitchen_win.json +14 -0
  232. data/vendor/depot_tools/recipe_modules/infra_paths/example.py +28 -0
  233. data/vendor/depot_tools/recipe_modules/infra_paths/path_config.py +45 -0
  234. data/vendor/depot_tools/recipe_modules/presubmit/__init__.py +4 -0
  235. data/vendor/depot_tools/recipe_modules/presubmit/api.py +20 -0
  236. data/vendor/depot_tools/recipe_modules/presubmit/example.expected/basic.json +18 -0
  237. data/vendor/depot_tools/recipe_modules/presubmit/example.py +15 -0
  238. data/vendor/depot_tools/recipe_modules/rietveld/__init__.py +5 -0
  239. data/vendor/depot_tools/recipe_modules/rietveld/api.py +94 -0
  240. data/vendor/depot_tools/recipe_modules/rietveld/example.expected/basic.json +30 -0
  241. data/vendor/depot_tools/recipe_modules/rietveld/example.py +24 -0
  242. data/vendor/depot_tools/recipe_modules/tryserver/__init__.py +15 -0
  243. data/vendor/depot_tools/recipe_modules/tryserver/api.py +280 -0
  244. data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_git_patch.json +104 -0
  245. data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_rietveld_patch.json +58 -0
  246. data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_rietveld_patch_new.json +58 -0
  247. data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_svn_patch.json +68 -0
  248. data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_wrong_patch.json +43 -0
  249. data/vendor/depot_tools/recipe_modules/tryserver/example.expected/with_wrong_patch_new.json +43 -0
  250. data/vendor/depot_tools/recipe_modules/tryserver/example.py +53 -0
  251. data/vendor/depot_tools/recipe_modules/tryserver/test_api.py +7 -0
  252. data/vendor/depot_tools/recipes.py +136 -0
  253. data/vendor/depot_tools/repo +1 -1
  254. data/vendor/depot_tools/rietveld.py +46 -15
  255. data/vendor/depot_tools/roll_dep.py +97 -36
  256. data/vendor/depot_tools/scm.py +3 -3
  257. data/vendor/depot_tools/setup_color.py +94 -0
  258. data/vendor/depot_tools/subprocess2.py +10 -1
  259. data/vendor/depot_tools/third_party/cq_client/OWNERS +0 -1
  260. data/vendor/depot_tools/third_party/cq_client/README.md +47 -9
  261. data/vendor/depot_tools/third_party/cq_client/cq.pb.go +617 -0
  262. data/vendor/depot_tools/third_party/cq_client/cq.proto +75 -17
  263. data/vendor/depot_tools/third_party/cq_client/cq_pb2.py +168 -41
  264. data/vendor/depot_tools/third_party/cq_client/testdata/cq_gerrit.cfg +55 -0
  265. data/vendor/depot_tools/third_party/cq_client/{test/cq_example.cfg → testdata/cq_rietveld.cfg} +14 -6
  266. data/vendor/depot_tools/third_party/fancy_urllib/README +5 -4
  267. data/vendor/depot_tools/third_party/fancy_urllib/__init__.py +114 -52
  268. data/vendor/depot_tools/third_party/protobuf26/README.chromium +9 -6
  269. data/vendor/depot_tools/third_party/upload.py +17 -31
  270. data/vendor/depot_tools/trychange.py +0 -2
  271. data/vendor/depot_tools/update_depot_tools +29 -11
  272. data/vendor/depot_tools/update_depot_tools.bat +4 -9
  273. data/vendor/depot_tools/upload_to_google_storage.py +42 -5
  274. data/vendor/depot_tools/win_toolchain/OWNERS +1 -0
  275. data/vendor/depot_tools/win_toolchain/get_toolchain_if_necessary.py +227 -52
  276. data/vendor/depot_tools/win_toolchain/package_from_installed.py +203 -88
  277. metadata +161 -81
  278. data/patches/arm/do-not-imply-vfp3-and-armv7.patch +0 -16
  279. data/patches/arm/do-not-use-vfp2.patch +0 -13
  280. data/patches/clang51/no-unused-variable.patch +0 -12
  281. data/vendor/depot_tools/bootstrap/.gitignore +0 -2
  282. data/vendor/depot_tools/bootstrap/bootstrap.py +0 -234
  283. data/vendor/depot_tools/bootstrap/deps.pyl +0 -15
  284. data/vendor/depot_tools/bootstrap/util.py +0 -87
  285. data/vendor/depot_tools/bootstrap/virtualenv/.gitignore +0 -10
  286. data/vendor/depot_tools/bootstrap/virtualenv/.travis.yml +0 -28
  287. data/vendor/depot_tools/bootstrap/virtualenv/AUTHORS.txt +0 -91
  288. data/vendor/depot_tools/bootstrap/virtualenv/CONTRIBUTING.rst +0 -21
  289. data/vendor/depot_tools/bootstrap/virtualenv/LICENSE.txt +0 -22
  290. data/vendor/depot_tools/bootstrap/virtualenv/MANIFEST.in +0 -11
  291. data/vendor/depot_tools/bootstrap/virtualenv/README.rst +0 -10
  292. data/vendor/depot_tools/bootstrap/virtualenv/bin/rebuild-script.py +0 -71
  293. data/vendor/depot_tools/bootstrap/virtualenv/docs/changes.rst +0 -747
  294. data/vendor/depot_tools/bootstrap/virtualenv/docs/conf.py +0 -149
  295. data/vendor/depot_tools/bootstrap/virtualenv/docs/development.rst +0 -61
  296. data/vendor/depot_tools/bootstrap/virtualenv/docs/index.rst +0 -137
  297. data/vendor/depot_tools/bootstrap/virtualenv/docs/installation.rst +0 -58
  298. data/vendor/depot_tools/bootstrap/virtualenv/docs/make.bat +0 -170
  299. data/vendor/depot_tools/bootstrap/virtualenv/docs/reference.rst +0 -256
  300. data/vendor/depot_tools/bootstrap/virtualenv/docs/userguide.rst +0 -249
  301. data/vendor/depot_tools/bootstrap/virtualenv/scripts/virtualenv +0 -3
  302. data/vendor/depot_tools/bootstrap/virtualenv/setup.py +0 -111
  303. data/vendor/depot_tools/bootstrap/virtualenv/tests/test_activate.sh +0 -94
  304. data/vendor/depot_tools/bootstrap/virtualenv/tests/test_activate_expected.output +0 -2
  305. data/vendor/depot_tools/bootstrap/virtualenv/tests/test_virtualenv.py +0 -139
  306. data/vendor/depot_tools/bootstrap/virtualenv/tests/tox.ini +0 -12
  307. data/vendor/depot_tools/bootstrap/virtualenv/tox.ini +0 -17
  308. data/vendor/depot_tools/bootstrap/virtualenv/virtualenv.py +0 -2367
  309. data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/activate.bat +0 -26
  310. data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/activate.csh +0 -42
  311. data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/activate.fish +0 -74
  312. data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/activate.ps1 +0 -150
  313. data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/activate.sh +0 -80
  314. data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/activate_this.py +0 -34
  315. data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/deactivate.bat +0 -20
  316. data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/distutils-init.py +0 -101
  317. data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/distutils.cfg +0 -6
  318. data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_embedded/site.py +0 -758
  319. data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_support/pip-6.0-py2.py3-none-any.whl +0 -0
  320. data/vendor/depot_tools/bootstrap/virtualenv/virtualenv_support/setuptools-8.2.1-py2.py3-none-any.whl +0 -0
  321. data/vendor/depot_tools/bootstrap/win/README.google +0 -16
  322. data/vendor/depot_tools/cbuildbot +0 -96
  323. data/vendor/depot_tools/chrome_set_ver +0 -96
  324. data/vendor/depot_tools/cros +0 -96
  325. data/vendor/depot_tools/cros_sdk +0 -96
  326. data/vendor/depot_tools/git-cl-upload-hook +0 -52
  327. data/vendor/depot_tools/git-crup +0 -45
  328. data/vendor/depot_tools/python_git_runner.sh +0 -36
  329. data/vendor/depot_tools/recipes/blink.py +0 -59
  330. data/vendor/depot_tools/third_party/cq_client/test/validate_config_test.py +0 -52
  331. data/vendor/depot_tools/third_party/cq_client/validate_config.py +0 -108
  332. data/vendor/depot_tools/win_toolchain/toolchain2013.py +0 -494
@@ -0,0 +1,671 @@
1
+ # Copyright 2013 The Chromium Authors. All rights reserved.
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 types
6
+
7
+ from recipe_engine.config import config_item_context, ConfigGroup, BadConf
8
+ from recipe_engine.config import ConfigList, Dict, Single, Static, Set, List
9
+
10
+ from . import api as gclient_api
11
+
12
+
13
+ def BaseConfig(USE_MIRROR=True, GIT_MODE=False, CACHE_DIR=None,
14
+ PATCH_PROJECT=None, BUILDSPEC_VERSION=None,
15
+ **_kwargs):
16
+ deps = '.DEPS.git' if GIT_MODE else 'DEPS'
17
+ cache_dir = str(CACHE_DIR) if CACHE_DIR else None
18
+ return ConfigGroup(
19
+ solutions = ConfigList(
20
+ lambda: ConfigGroup(
21
+ name = Single(basestring),
22
+ url = Single(basestring),
23
+ deps_file = Single(basestring, empty_val=deps, required=False,
24
+ hidden=False),
25
+ managed = Single(bool, empty_val=True, required=False, hidden=False),
26
+ custom_deps = Dict(value_type=(basestring, types.NoneType)),
27
+ custom_vars = Dict(value_type=basestring),
28
+ safesync_url = Single(basestring, required=False),
29
+
30
+ revision = Single(
31
+ (basestring, gclient_api.RevisionResolver),
32
+ required=False, hidden=True),
33
+ )
34
+ ),
35
+ deps_os = Dict(value_type=basestring),
36
+ hooks = List(basestring),
37
+ target_os = Set(basestring),
38
+ target_os_only = Single(bool, empty_val=False, required=False),
39
+ cache_dir = Static(cache_dir, hidden=False),
40
+
41
+ # If supplied, use this as the source root (instead of the first solution's
42
+ # checkout).
43
+ src_root = Single(basestring, required=False, hidden=True),
44
+
45
+ # Maps 'solution' -> build_property
46
+ got_revision_mapping = Dict(hidden=True),
47
+
48
+ # Addition revisions we want to pass in. For now theres a duplication
49
+ # of code here of setting custom vars AND passing in --revision. We hope
50
+ # to remove custom vars later.
51
+ revisions = Dict(
52
+ value_type=(basestring, gclient_api.RevisionResolver),
53
+ hidden=True),
54
+
55
+ # TODO(iannucci): HACK! The use of None here to indicate that we apply this
56
+ # to the solution.revision field is really terrible. I mostly blame
57
+ # gclient.
58
+ # Maps 'parent_build_property' -> 'custom_var_name'
59
+ # Maps 'parent_build_property' -> None
60
+ # If value is None, the property value will be applied to
61
+ # solutions[0].revision. Otherwise, it will be applied to
62
+ # solutions[0].custom_vars['custom_var_name']
63
+ parent_got_revision_mapping = Dict(hidden=True),
64
+ delete_unversioned_trees = Single(bool, empty_val=True, required=False),
65
+
66
+ # Maps patch_project to (solution/path, revision).
67
+ # - solution/path is then used to apply patches as patch root in
68
+ # bot_update.
69
+ # - if revision is given, it's passed verbatim to bot_update for
70
+ # corresponding dependency. Otherwise (ie None), the patch will be
71
+ # applied on top of version pinned in DEPS.
72
+ # This is essentially a whitelist of which projects inside a solution
73
+ # can be patched automatically by bot_update based on PATCH_PROJECT
74
+ # property.
75
+ # For example, bare chromium solution has this entry in patch_projects
76
+ # 'angle/angle': ('src/third_party/angle', 'HEAD')
77
+ # then a patch to Angle project can be applied to a chromium src's
78
+ # checkout after first updating Angle's repo to its master's HEAD.
79
+ patch_projects = Dict(value_type=tuple, hidden=True),
80
+
81
+ # Check out refs/branch-heads.
82
+ # TODO (machenbach): Only implemented for bot_update atm.
83
+ with_branch_heads = Single(
84
+ bool,
85
+ empty_val=False,
86
+ required=False,
87
+ hidden=True),
88
+
89
+ GIT_MODE = Static(bool(GIT_MODE)),
90
+ USE_MIRROR = Static(bool(USE_MIRROR)),
91
+ # TODO(tandrii): remove PATCH_PROJECT field.
92
+ # DON'T USE THIS. WILL BE REMOVED.
93
+ PATCH_PROJECT = Static(str(PATCH_PROJECT), hidden=True),
94
+ BUILDSPEC_VERSION= Static(BUILDSPEC_VERSION, hidden=True),
95
+ )
96
+
97
+ config_ctx = config_item_context(BaseConfig)
98
+
99
+ def ChromiumSvnSubURL(c, *pieces):
100
+ BASES = ('https://src.chromium.org',
101
+ 'svn://svn-mirror.golo.chromium.org')
102
+ return '/'.join((BASES[c.USE_MIRROR],) + pieces)
103
+
104
+ def ChromiumGitURL(_c, *pieces):
105
+ return '/'.join(('https://chromium.googlesource.com',) + pieces)
106
+
107
+ def ChromiumSrcURL(c):
108
+ # TODO(phajdan.jr): Move to proper repo and add coverage.
109
+ if c.GIT_MODE: # pragma: no cover
110
+ return ChromiumGitURL(c, 'chromium', 'src.git')
111
+ else:
112
+ return ChromiumSvnSubURL(c, 'chrome', 'trunk', 'src')
113
+
114
+ def BlinkURL(c):
115
+ # TODO(phajdan.jr): Move to proper repo and add coverage.
116
+ if c.GIT_MODE: # pragma: no cover
117
+ return ChromiumGitURL(c, 'chromium', 'blink.git')
118
+ else:
119
+ return ChromiumSvnSubURL(c, 'blink', 'trunk')
120
+
121
+ def ChromeSvnSubURL(c, *pieces):
122
+ BASES = ('svn://svn.chromium.org',
123
+ 'svn://svn-mirror.golo.chromium.org')
124
+ return '/'.join((BASES[c.USE_MIRROR],) + pieces)
125
+
126
+ # TODO(phajdan.jr): Move to proper repo and add coverage.
127
+ def ChromeInternalGitURL(_c, *pieces): # pragma: no cover
128
+ return '/'.join(('https://chrome-internal.googlesource.com',) + pieces)
129
+
130
+ def ChromeInternalSrcURL(c):
131
+ # TODO(phajdan.jr): Move to proper repo and add coverage.
132
+ if c.GIT_MODE: # pragma: no cover
133
+ return ChromeInternalGitURL(c, 'chrome', 'src-internal.git')
134
+ else:
135
+ return ChromeSvnSubURL(c, 'chrome-internal', 'trunk', 'src-internal')
136
+
137
+ def mirror_only(c, obj, default=None):
138
+ return obj if c.USE_MIRROR else (default or obj.__class__())
139
+
140
+ @config_ctx()
141
+ def chromium_bare(c):
142
+ s = c.solutions.add()
143
+ s.name = 'src'
144
+ s.url = ChromiumSrcURL(c)
145
+ s.custom_vars = mirror_only(c, {
146
+ 'googlecode_url': 'svn://svn-mirror.golo.chromium.org/%s',
147
+ 'nacl_trunk': 'svn://svn-mirror.golo.chromium.org/native_client/trunk',
148
+ 'sourceforge_url': 'svn://svn-mirror.golo.chromium.org/%(repo)s',
149
+ 'webkit_trunk': BlinkURL(c)})
150
+ m = c.got_revision_mapping
151
+ m['src'] = 'got_revision'
152
+ m['src/native_client'] = 'got_nacl_revision'
153
+ m['src/tools/swarming_client'] = 'got_swarming_client_revision'
154
+ m['src/v8'] = 'got_v8_revision'
155
+ m['src/third_party/angle'] = 'got_angle_revision'
156
+ m['src/third_party/webrtc'] = 'got_webrtc_revision'
157
+ m['src/buildtools'] = 'got_buildtools_revision'
158
+
159
+ p = c.parent_got_revision_mapping
160
+ p['parent_got_revision'] = None
161
+ p['parent_got_angle_revision'] = 'angle_revision'
162
+ p['parent_got_nacl_revision'] = 'nacl_revision'
163
+ p['parent_got_swarming_client_revision'] = 'swarming_revision'
164
+ p['parent_got_v8_revision'] = 'v8_revision'
165
+ p['parent_got_webrtc_revision'] = 'webrtc_revision'
166
+
167
+ p = c.patch_projects
168
+ p['v8'] = ('src/v8', 'HEAD')
169
+ p['buildtools'] = ('src/buildtools', 'HEAD')
170
+ p['angle/angle'] = ('src/third_party/angle', None)
171
+ p['blink'] = ('src/third_party/WebKit', None)
172
+ p['pdfium'] = ('src/third_party/pdfium', 'HEAD')
173
+ p['skia'] = ('src/third_party/skia', 'HEAD')
174
+
175
+ @config_ctx(includes=['chromium_bare'])
176
+ def chromium_empty(c):
177
+ c.solutions[0].deps_file = '' # pragma: no cover
178
+
179
+ @config_ctx(includes=['chromium_bare'])
180
+ def chromium(c):
181
+ s = c.solutions[0]
182
+ s.custom_deps = mirror_only(c, {})
183
+
184
+ @config_ctx(includes=['chromium'])
185
+ def chromium_lkcr(c):
186
+ # TODO(phajdan.jr): Add git hashes for LKCR crbug.com/349277.
187
+ if c.GIT_MODE:
188
+ raise BadConf('Git has problems with safesync_url and LKCR, '
189
+ 'crbug.com/349277 crbug.com/109191') # pragma: no cover
190
+ s = c.solutions[0]
191
+ s.safesync_url = 'https://build.chromium.org/p/chromium/lkcr-status/lkgr'
192
+ # TODO(hinoka): Once lkcr exists and is a tag, it should just be lkcr
193
+ # rather than origin/lkcr.
194
+ s.revision = 'origin/lkcr'
195
+
196
+ @config_ctx(includes=['chromium'])
197
+ def chromium_lkgr(c):
198
+ s = c.solutions[0]
199
+ safesync_url = 'https://chromium-status.appspot.com/lkgr'
200
+ if c.GIT_MODE: # pragma: no cover
201
+ safesync_url = 'https://chromium-status.appspot.com/git-lkgr'
202
+ raise BadConf('Git has problems with safesync_url, crbug.com/109191.')
203
+ s.safesync_url = safesync_url
204
+ s.revision = 'origin/lkgr'
205
+
206
+ @config_ctx(includes=['chromium_bare'])
207
+ def android_bare(c):
208
+ # We inherit from chromium_bare to get the got_revision mapping.
209
+ # NOTE: We don't set a specific got_revision mapping for src/repo.
210
+ del c.solutions[0]
211
+ c.got_revision_mapping['src'] = 'got_src_revision'
212
+ s = c.solutions.add()
213
+ s.deps_file = '.DEPS.git'
214
+
215
+ # TODO(iannucci,vadimsh): Switch this to src-limited
216
+ @config_ctx()
217
+ def chrome_internal(c):
218
+ s = c.solutions.add()
219
+ s.name = 'src-internal'
220
+ s.url = ChromeInternalSrcURL(c)
221
+ # Remove some things which are generally not needed
222
+ s.custom_deps = {
223
+ "src/data/autodiscovery" : None,
224
+ "src/data/page_cycler" : None,
225
+ "src/tools/grit/grit/test/data" : None,
226
+ "src/chrome/test/data/perf/frame_rate/private" : None,
227
+ "src/data/mozilla_js_tests" : None,
228
+ "src/chrome/test/data/firefox2_profile/searchplugins" : None,
229
+ "src/chrome/test/data/firefox2_searchplugins" : None,
230
+ "src/chrome/test/data/firefox3_profile/searchplugins" : None,
231
+ "src/chrome/test/data/firefox3_searchplugins" : None,
232
+ "src/chrome/test/data/ssl/certs" : None,
233
+ "src/data/mach_ports" : None,
234
+ "src/data/esctf" : None,
235
+ "src/data/selenium_core" : None,
236
+ "src/chrome/test/data/plugin" : None,
237
+ "src/data/memory_test" : None,
238
+ "src/data/tab_switching" : None,
239
+ "src/chrome/test/data/osdd" : None,
240
+ "src/webkit/data/bmp_decoder":None,
241
+ "src/webkit/data/ico_decoder":None,
242
+ "src/webkit/data/test_shell/plugins":None,
243
+ "src/webkit/data/xbm_decoder":None,
244
+ }
245
+
246
+ @config_ctx(includes=['chromium'])
247
+ def blink(c):
248
+ c.solutions[0].revision = 'HEAD'
249
+ del c.solutions[0].custom_deps
250
+ c.revisions['src/third_party/WebKit'] = 'HEAD'
251
+
252
+ @config_ctx(includes=['chromium'])
253
+ def blink_or_chromium(c):
254
+ c.solutions[0].revision = gclient_api.ProjectRevisionResolver('chromium')
255
+ del c.solutions[0].custom_deps
256
+ c.revisions['src/third_party/WebKit'] = \
257
+ gclient_api.ProjectRevisionResolver(
258
+ 'webkit', parent_got_revision='parent_got_webkit_revision')
259
+
260
+ # TODO(phajdan.jr): Move to proper repo and add coverage.
261
+ @config_ctx(includes=['chromium'])
262
+ def blink_merged(c): # pragma: no cover
263
+ c.solutions[0].url = \
264
+ 'https://chromium.googlesource.com/playground/chromium-blink-merge.git'
265
+
266
+ @config_ctx()
267
+ def android(c):
268
+ c.target_os.add('android')
269
+
270
+ @config_ctx(includes=['chromium', 'chrome_internal'])
271
+ def ios(c):
272
+ c.target_os.add('ios')
273
+
274
+ @config_ctx(includes=['chromium'])
275
+ def show_v8_revision(c):
276
+ # Have the V8 revision appear in the web UI instead of Chromium's.
277
+ c.got_revision_mapping['src'] = 'got_cr_revision'
278
+ c.got_revision_mapping['src/v8'] = 'got_revision'
279
+ # Needed to get the testers to properly sync the right revision.
280
+ c.parent_got_revision_mapping['parent_got_revision'] = 'got_revision'
281
+
282
+ @config_ctx(includes=['chromium'])
283
+ def v8_bleeding_edge_git(c):
284
+ c.solutions[0].revision = 'HEAD'
285
+ # TODO(machenbach): If bot_update is activated for all v8-chromium bots
286
+ # and there's no gclient fallback, then the following line can be removed.
287
+ c.solutions[0].custom_vars['v8_branch'] = 'branches/bleeding_edge'
288
+ c.revisions['src/v8'] = 'HEAD'
289
+
290
+ @config_ctx()
291
+ def v8_canary(c):
292
+ c.revisions['src/v8'] = 'origin/canary'
293
+
294
+ @config_ctx(includes=['chromium'])
295
+ def oilpan(c): # pragma: no cover
296
+ if c.GIT_MODE:
297
+ raise BadConf("Oilpan requires SVN for now")
298
+ c.solutions[0].custom_vars = {
299
+ 'webkit_trunk': ChromiumSvnSubURL(c, 'blink', 'branches', 'oilpan')
300
+ }
301
+ c.solutions[0].custom_vars['sourceforge_url'] = mirror_only(
302
+ c,
303
+ 'svn://svn-mirror.golo.chromium.org/%(repo)s',
304
+ 'svn://svn.chromium.org/%(repo)s'
305
+ )
306
+
307
+ c.revisions['src/third_party/WebKit'] = 'HEAD'
308
+ c.solutions[0].revision = '197341'
309
+
310
+ c.solutions[0].custom_deps = {
311
+ 'src/chrome/tools/test/reference_build/chrome_linux' :
312
+ ChromiumSvnSubURL(c, 'blink', 'branches', 'oilpan', 'Tools',
313
+ 'reference_build', 'chrome_linux')
314
+ }
315
+ del c.got_revision_mapping['src']
316
+ c.got_revision_mapping['src/third_party/WebKit/Source'] = 'got_revision'
317
+
318
+ @config_ctx(includes=['oilpan', 'chrome_internal'])
319
+ def oilpan_internal(c): # pragma: no cover
320
+ # Add back the oilpan data dependencies
321
+ needed_components_internal = [
322
+ "src/data/memory_test",
323
+ "src/data/mozilla_js_tests",
324
+ "src/data/page_cycler",
325
+ "src/data/tab_switching",
326
+ "src/webkit/data/bmp_decoder",
327
+ "src/webkit/data/ico_decoder",
328
+ "src/webkit/data/test_shell/plugins",
329
+ "src/webkit/data/xbm_decoder",
330
+ ]
331
+ for key in needed_components_internal:
332
+ del c.solutions[1].custom_deps[key]
333
+
334
+ @config_ctx()
335
+ def nacl(c):
336
+ s = c.solutions.add()
337
+ s.name = 'native_client'
338
+ s.url = ChromiumGitURL(c, 'native_client', 'src', 'native_client.git')
339
+ m = c.got_revision_mapping
340
+ m['native_client'] = 'got_revision'
341
+
342
+ @config_ctx()
343
+ def webports(c):
344
+ s = c.solutions.add()
345
+ s.name = 'src'
346
+ s.url = ChromiumGitURL(c, 'webports.git')
347
+ m = c.got_revision_mapping
348
+ m['src'] = 'got_revision'
349
+
350
+ @config_ctx()
351
+ def wasm_llvm(c):
352
+ s = c.solutions.add()
353
+ s.name = 'src'
354
+ s.url = ChromiumGitURL(
355
+ c, 'external', 'github.com', 'WebAssembly', 'waterfall.git')
356
+ m = c.got_revision_mapping
357
+ m['src'] = 'got_waterfall_revision'
358
+ c.revisions['src'] = 'origin/master'
359
+
360
+ @config_ctx()
361
+ def gyp(c):
362
+ s = c.solutions.add()
363
+ s.name = 'gyp'
364
+ s.url = ChromiumGitURL(c, 'external', 'gyp.git')
365
+ m = c.got_revision_mapping
366
+ m['gyp'] = 'got_revision'
367
+
368
+ @config_ctx(config_vars={'GIT_MODE': True})
369
+ def build(c): # pragma: no cover
370
+ if not c.GIT_MODE:
371
+ raise BadConf('build only supports git')
372
+ s = c.solutions.add()
373
+ s.name = 'build'
374
+ s.url = ChromiumGitURL(c, 'chromium', 'tools', 'build.git')
375
+ m = c.got_revision_mapping
376
+ m['build'] = 'got_revision'
377
+
378
+ @config_ctx(config_vars={'GIT_MODE': True})
379
+ def depot_tools(c): # pragma: no cover
380
+ if not c.GIT_MODE:
381
+ raise BadConf('depot_tools only supports git')
382
+ s = c.solutions.add()
383
+ s.name = 'depot_tools'
384
+ s.url = ChromiumGitURL(c, 'chromium', 'tools', 'depot_tools.git')
385
+ m = c.got_revision_mapping
386
+ m['depot_tools'] = 'got_revision'
387
+
388
+ @config_ctx(config_vars={'GIT_MODE': True})
389
+ def skia(c): # pragma: no cover
390
+ if not c.GIT_MODE:
391
+ raise BadConf('skia only supports git')
392
+ s = c.solutions.add()
393
+ s.name = 'skia'
394
+ s.url = 'https://skia.googlesource.com/skia.git'
395
+ m = c.got_revision_mapping
396
+ m['skia'] = 'got_revision'
397
+
398
+ @config_ctx(config_vars={'GIT_MODE': True})
399
+ def chrome_golo(c): # pragma: no cover
400
+ if not c.GIT_MODE:
401
+ raise BadConf('chrome_golo only supports git')
402
+ s = c.solutions.add()
403
+ s.name = 'chrome_golo'
404
+ s.url = 'https://chrome-internal.googlesource.com/chrome-golo/chrome-golo.git'
405
+ c.got_revision_mapping['chrome_golo'] = 'got_revision'
406
+
407
+ @config_ctx(config_vars={'GIT_MODE': True})
408
+ def build_internal(c):
409
+ if not c.GIT_MODE: # pragma: no cover
410
+ raise BadConf('build_internal only supports git')
411
+ s = c.solutions.add()
412
+ s.name = 'build_internal'
413
+ s.url = 'https://chrome-internal.googlesource.com/chrome/tools/build.git'
414
+ c.got_revision_mapping['build_internal'] = 'got_revision'
415
+ # We do not use 'includes' here, because we want build_internal to be the
416
+ # first solution in the list as run_presubmit computes upstream revision
417
+ # from the first solution.
418
+ build(c)
419
+ c.got_revision_mapping['build'] = 'got_build_revision'
420
+
421
+ @config_ctx(config_vars={'GIT_MODE': True})
422
+ def build_internal_scripts_slave(c):
423
+ if not c.GIT_MODE: # pragma: no cover
424
+ raise BadConf('build_internal_scripts_slave only supports git')
425
+ s = c.solutions.add()
426
+ s.name = 'build_internal/scripts/slave'
427
+ s.url = ('https://chrome-internal.googlesource.com/'
428
+ 'chrome/tools/build_limited/scripts/slave.git')
429
+ c.got_revision_mapping['build_internal/scripts/slave'] = 'got_revision'
430
+ # We do not use 'includes' here, because we want build_internal to be the
431
+ # first solution in the list as run_presubmit computes upstream revision
432
+ # from the first solution.
433
+ build(c)
434
+ c.got_revision_mapping['build'] = 'got_build_revision'
435
+
436
+ @config_ctx()
437
+ def master_deps(c):
438
+ s = c.solutions.add()
439
+ s.name = 'build_internal/master.DEPS'
440
+ s.url = ('https://chrome-internal.googlesource.com/'
441
+ 'chrome/tools/build/master.DEPS.git')
442
+ c.got_revision_mapping['build_internal/master.DEPS'] = 'got_revision'
443
+
444
+ @config_ctx()
445
+ def slave_deps(c):
446
+ s = c.solutions.add()
447
+ s.name = 'build_internal/slave.DEPS'
448
+ s.url = ('https://chrome-internal.googlesource.com/'
449
+ 'chrome/tools/build/slave.DEPS.git')
450
+ c.got_revision_mapping['build_internal/slave.DEPS'] = 'got_revision'
451
+
452
+ @config_ctx()
453
+ def internal_deps(c):
454
+ s = c.solutions.add()
455
+ s.name = 'build_internal/internal.DEPS'
456
+ s.url = ('https://chrome-internal.googlesource.com/'
457
+ 'chrome/tools/build/internal.DEPS.git')
458
+ c.got_revision_mapping['build_internal/internal.DEPS'] = 'got_revision'
459
+
460
+ @config_ctx(includes=['chromium', 'chrome_internal'])
461
+ def perf(c):
462
+ s = c.solutions[0]
463
+ s.custom_vars['llvm_url'] = 'svn://svn-mirror.golo.chromium.org/llvm-project'
464
+ s.managed = False
465
+ needed_components_internal = [
466
+ "src/data/page_cycler",
467
+ ]
468
+ for key in needed_components_internal:
469
+ del c.solutions[1].custom_deps[key]
470
+ c.solutions[1].managed = False
471
+
472
+ @config_ctx(includes=['chromium'])
473
+ def chromium_skia(c):
474
+ c.solutions[0].revision = 'HEAD'
475
+ del c.solutions[0].custom_deps
476
+ c.revisions['src/third_party/skia'] = (
477
+ gclient_api.RevisionFallbackChain('origin/master'))
478
+ c.got_revision_mapping['src'] = 'got_chromium_revision'
479
+ c.got_revision_mapping['src/third_party/skia'] = 'got_revision'
480
+ c.parent_got_revision_mapping['parent_got_revision'] = 'got_revision'
481
+
482
+ @config_ctx(includes=['chromium'])
483
+ def chromium_webrtc(c):
484
+ c.got_revision_mapping['src/third_party/libjingle/source/talk'] = (
485
+ 'got_libjingle_revision')
486
+ c.got_revision_mapping['src/third_party/libvpx/source'] = (
487
+ 'got_libvpx_revision')
488
+
489
+ @config_ctx(includes=['chromium_webrtc'])
490
+ def chromium_webrtc_tot(c):
491
+ """Configures ToT revisions for WebRTC and Libjingle for Chromium.
492
+
493
+ Sets up ToT instead of the DEPS-pinned revision for WebRTC and Libjingle.
494
+ This is used for some bots to provide data about which revisions are green to
495
+ roll into Chromium.
496
+ """
497
+ c.revisions['src'] = 'HEAD'
498
+ c.revisions['src/third_party/webrtc'] = 'HEAD'
499
+ c.revisions['src/third_party/libjingle/source/talk'] = 'HEAD'
500
+
501
+ @config_ctx()
502
+ def webrtc_test_resources(c):
503
+ """Add webrtc.DEPS solution for test resources and tools.
504
+
505
+ The webrtc.DEPS solution pulls in additional resources needed for running
506
+ WebRTC-specific test setups in Chromium.
507
+ """
508
+ s = c.solutions.add()
509
+ s.name = 'webrtc.DEPS'
510
+ s.url = ChromiumGitURL(c, 'chromium', 'deps', 'webrtc', 'webrtc.DEPS')
511
+ s.deps_file = 'DEPS'
512
+
513
+ @config_ctx()
514
+ def pdfium(c):
515
+ soln = c.solutions.add()
516
+ soln.name = 'pdfium'
517
+ soln.url = 'https://pdfium.googlesource.com/pdfium.git'
518
+
519
+ @config_ctx()
520
+ def mojo(c):
521
+ soln = c.solutions.add()
522
+ soln.name = 'src'
523
+ soln.url = 'https://chromium.googlesource.com/external/mojo.git'
524
+
525
+ @config_ctx()
526
+ def crashpad(c):
527
+ soln = c.solutions.add()
528
+ soln.name = 'crashpad'
529
+ soln.url = 'https://chromium.googlesource.com/crashpad/crashpad.git'
530
+
531
+ @config_ctx()
532
+ def boringssl(c):
533
+ soln = c.solutions.add()
534
+ soln.name = 'boringssl'
535
+ soln.url = 'https://boringssl.googlesource.com/boringssl.git'
536
+ soln.deps_file = 'util/bot/DEPS'
537
+
538
+ @config_ctx()
539
+ def dart(c):
540
+ soln = c.solutions.add()
541
+ soln.name = 'sdk'
542
+ soln.url = ('https://chromium.googlesource.com/external/github.com/' +
543
+ 'dart-lang/sdk.git')
544
+ soln.deps_file = 'DEPS'
545
+ soln.managed = False
546
+
547
+ @config_ctx(config_vars={'GIT_MODE': True})
548
+ def infra(c):
549
+ soln = c.solutions.add()
550
+ soln.name = 'infra'
551
+ soln.url = 'https://chromium.googlesource.com/infra/infra.git'
552
+ c.got_revision_mapping['infra'] = 'got_revision'
553
+
554
+ p = c.patch_projects
555
+ p['luci-py'] = ('infra/luci', 'HEAD')
556
+ p['recipes-py'] = ('infra/recipes-py', 'HEAD')
557
+
558
+ @config_ctx(config_vars={'GIT_MODE': True})
559
+ def infra_internal(c): # pragma: no cover
560
+ soln = c.solutions.add()
561
+ soln.name = 'infra_internal'
562
+ soln.url = 'https://chrome-internal.googlesource.com/infra/infra_internal.git'
563
+ c.got_revision_mapping['infra_internal'] = 'got_revision'
564
+
565
+ @config_ctx(includes=['infra'])
566
+ def luci_gae(c):
567
+ # luci/gae is checked out as a part of infra.git solution at HEAD.
568
+ c.revisions['infra'] = 'origin/master'
569
+ # luci/gae is developed together with luci-go, which should be at HEAD.
570
+ c.revisions['infra/go/src/github.com/luci/luci-go'] = 'origin/master'
571
+ c.revisions['infra/go/src/github.com/luci/gae'] = (
572
+ gclient_api.RevisionFallbackChain('origin/master'))
573
+ m = c.got_revision_mapping
574
+ del m['infra']
575
+ m['infra/go/src/github.com/luci/gae'] = 'got_revision'
576
+
577
+ @config_ctx(includes=['infra'])
578
+ def luci_go(c):
579
+ # luci-go is checked out as a part of infra.git solution at HEAD.
580
+ c.revisions['infra'] = 'origin/master'
581
+ c.revisions['infra/go/src/github.com/luci/luci-go'] = (
582
+ gclient_api.RevisionFallbackChain('origin/master'))
583
+ m = c.got_revision_mapping
584
+ del m['infra']
585
+ m['infra/go/src/github.com/luci/luci-go'] = 'got_revision'
586
+
587
+ @config_ctx(includes=['infra'])
588
+ def luci_py(c):
589
+ # luci-py is checked out as part of infra just to have appengine
590
+ # pre-installed, as that's what luci-py PRESUBMIT relies on.
591
+ c.revisions['infra'] = 'origin/master'
592
+ # TODO(tandrii): make use of c.patch_projects.
593
+ c.revisions['infra/luci'] = (
594
+ gclient_api.RevisionFallbackChain('origin/master'))
595
+ m = c.got_revision_mapping
596
+ del m['infra']
597
+ m['infra/luci'] = 'got_revision'
598
+
599
+ @config_ctx(includes=['infra'])
600
+ def recipes_py(c):
601
+ c.revisions['infra'] = 'origin/master'
602
+ # TODO(tandrii): make use of c.patch_projects.
603
+ c.revisions['infra/recipes-py'] = (
604
+ gclient_api.RevisionFallbackChain('origin/master'))
605
+ m = c.got_revision_mapping
606
+ del m['infra']
607
+ m['infra/recipes-py'] = 'got_revision'
608
+
609
+ @config_ctx()
610
+ def chrome_from_buildspec(c): # pragma: no cover
611
+ soln = c.solutions.add()
612
+ soln.name = 'chrome_from_buildspec'
613
+ # This URL has to be augmented with the appropriate bucket by the recipe using
614
+ # it.
615
+ soln.url = ('svn://svn-mirror.golo.chromium.org/chrome-internal/trunk/tools/'
616
+ 'buildspec/build/')
617
+ soln.custom_vars['svn_url'] = 'svn://svn-mirror.golo.chromium.org'
618
+ soln.custom_deps = {}
619
+
620
+ @config_ctx()
621
+ def catapult(c):
622
+ soln = c.solutions.add()
623
+ soln.name = 'catapult'
624
+ soln.url = ('https://chromium.googlesource.com/external/github.com/'
625
+ 'catapult-project/catapult.git')
626
+ c.got_revision_mapping['catapult'] = 'got_revision'
627
+
628
+ @config_ctx(includes=['infra_internal'], config_vars={'GIT_MODE': True})
629
+ def infradata_master_manager(c):
630
+ soln = c.solutions.add()
631
+ soln.name = 'infra-data-master-manager'
632
+ soln.url = (
633
+ 'https://chrome-internal.googlesource.com/infradata/master-manager.git')
634
+ c.got_revision_mapping['infra-data-master-manager'] = 'got_revision'
635
+
636
+ @config_ctx()
637
+ def with_branch_heads(c):
638
+ c.with_branch_heads = True
639
+
640
+ @config_ctx()
641
+ def custom_tabs_client(c):
642
+ soln = c.solutions.add()
643
+ soln.name = 'custom_tabs_client'
644
+ # TODO(pasko): test custom-tabs-client within a full chromium checkout.
645
+ soln.url = ('https://chromium.googlesource.com/external/github.com/'
646
+ 'GoogleChrome/custom-tabs-client.git')
647
+ c.got_revision_mapping['custom_tabs_client'] = 'got_revision'
648
+
649
+ # TODO(phajdan.jr): Move to proper repo and add coverage.
650
+ @config_ctx()
651
+ def angle_top_of_tree(c): # pragma: no cover
652
+ """Configures the top-of-tree ANGLE in a Chromium checkout.
653
+
654
+ Sets up ToT instead of the DEPS-pinned revision for ANGLE.
655
+ """
656
+ # TODO(tandrii): I think patch_projects in bare_chromium fixed this.
657
+ c.solutions[0].revision = 'HEAD'
658
+ c.revisions['src/third_party/angle'] = 'HEAD'
659
+
660
+ @config_ctx()
661
+ def gerrit_test_cq_normal(c):
662
+ soln = c.solutions.add()
663
+ soln.name = 'gerrit-test-cq-normal'
664
+ soln.url = 'https://chromium.googlesource.com/playground/gerrit-cq/normal.git'
665
+
666
+ # TODO(phajdan.jr): Move to proper repo and add coverage.
667
+ @config_ctx()
668
+ def valgrind(c): # pragma: no cover
669
+ """Add Valgrind binaries to the gclient solution."""
670
+ c.solutions[0].custom_deps['src/third_party/valgrind'] = \
671
+ ChromiumGitURL(c, 'chromium', 'deps', 'valgrind', 'binaries')