DEPS 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. gclient_gn_args_file = 'src/build/config/gclient_args.gni'
  2. gclient_gn_args = [
  3. 'build_with_chromium',
  4. 'checkout_android',
  5. 'checkout_android_native_support',
  6. 'checkout_libaom',
  7. 'checkout_nacl',
  8. 'checkout_pgo_profiles',
  9. 'checkout_oculus_sdk',
  10. 'checkout_openxr',
  11. 'checkout_google_benchmark',
  12. 'mac_xcode_version',
  13. ]
  14. vars = {
  15. 'chromium_version':
  16. '93.0.4539.0',
  17. 'node_version':
  18. 'v14.17.0',
  19. 'nan_version':
  20. # The following commit hash of NAN is v2.14.2 with *only* changes to the
  21. # test suite. This should be updated to a specific tag when one becomes
  22. # available.
  23. '65b32af46e9d7fab2e4ff657751205b3865f4920',
  24. 'squirrel.mac_version':
  25. '0e5d146ba13101a1302d59ea6e6e0b3cace4ae38',
  26. 'pyyaml_version': '3.12',
  27. 'chromium_git': 'https://chromium.googlesource.com',
  28. 'electron_git': 'https://github.com/electron',
  29. 'nodejs_git': 'https://github.com/nodejs',
  30. 'yaml_git': 'https://github.com/yaml',
  31. 'squirrel_git': 'https://github.com/Squirrel',
  32. # KEEP IN SYNC WITH utils.js FILE
  33. 'yarn_version': '1.15.2',
  34. # To be able to build clean Chromium from sources.
  35. 'apply_patches': True,
  36. # To use an mtime cache for patched files to speed up builds.
  37. 'use_mtime_cache': True,
  38. # To allow in-house builds to checkout those manually.
  39. 'checkout_chromium': True,
  40. 'checkout_node': True,
  41. 'checkout_nan': True,
  42. 'checkout_pgo_profiles': True,
  43. # It's only needed to parse the native tests configurations.
  44. 'checkout_pyyaml': False,
  45. 'use_rts': False,
  46. 'mac_xcode_version': 'default',
  47. # To allow running hooks without parsing the DEPS tree
  48. 'process_deps': True,
  49. 'checkout_nacl':
  50. False,
  51. 'checkout_libaom':
  52. True,
  53. 'checkout_oculus_sdk':
  54. False,
  55. 'checkout_openxr':
  56. False,
  57. 'build_with_chromium':
  58. True,
  59. 'checkout_android':
  60. False,
  61. 'checkout_android_native_support':
  62. False,
  63. 'checkout_google_benchmark':
  64. False,
  65. 'checkout_clang_tidy':
  66. True,
  67. }
  68. deps = {
  69. 'src': {
  70. 'url': (Var("chromium_git")) + '/chromium/src.git@' + (Var("chromium_version")),
  71. 'condition': 'checkout_chromium and process_deps',
  72. },
  73. 'src/third_party/nan': {
  74. 'url': (Var("nodejs_git")) + '/nan.git@' + (Var("nan_version")),
  75. 'condition': 'checkout_nan and process_deps',
  76. },
  77. 'src/third_party/electron_node': {
  78. 'url': (Var("nodejs_git")) + '/node.git@' + (Var("node_version")),
  79. 'condition': 'checkout_node and process_deps',
  80. },
  81. 'src/third_party/pyyaml': {
  82. 'url': (Var("yaml_git")) + '/pyyaml.git@' + (Var("pyyaml_version")),
  83. 'condition': 'checkout_pyyaml and process_deps',
  84. },
  85. 'src/third_party/squirrel.mac': {
  86. 'url': Var("squirrel_git") + '/Squirrel.Mac.git@' + Var("squirrel.mac_version"),
  87. 'condition': 'process_deps',
  88. },
  89. 'src/third_party/squirrel.mac/vendor/ReactiveObjC': {
  90. 'url': 'https://github.com/ReactiveCocoa/ReactiveObjC.git@74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76',
  91. 'condition': 'process_deps'
  92. },
  93. 'src/third_party/squirrel.mac/vendor/Mantle': {
  94. 'url': 'https://github.com/Mantle/Mantle.git@78d3966b3c331292ea29ec38661b25df0a245948',
  95. 'condition': 'process_deps',
  96. }
  97. }
  98. pre_deps_hooks = [
  99. {
  100. 'name': 'generate_mtime_cache',
  101. 'condition': '(checkout_chromium and apply_patches and use_mtime_cache) and process_deps',
  102. 'pattern': 'src/electron',
  103. 'action': [
  104. 'python3',
  105. 'src/electron/script/patches-mtime-cache.py',
  106. 'generate',
  107. '--cache-file',
  108. 'src/electron/patches/mtime-cache.json',
  109. '--patches-config',
  110. 'src/electron/patches/config.json',
  111. ],
  112. },
  113. ]
  114. hooks = [
  115. {
  116. 'name': 'patch_chromium',
  117. 'condition': '(checkout_chromium and apply_patches) and process_deps',
  118. 'pattern': 'src/electron',
  119. 'action': [
  120. 'python3',
  121. 'src/electron/script/apply_all_patches.py',
  122. 'src/electron/patches/config.json',
  123. ],
  124. },
  125. {
  126. 'name': 'apply_mtime_cache',
  127. 'condition': '(checkout_chromium and apply_patches and use_mtime_cache) and process_deps',
  128. 'pattern': 'src/electron',
  129. 'action': [
  130. 'python3',
  131. 'src/electron/script/patches-mtime-cache.py',
  132. 'apply',
  133. '--cache-file',
  134. 'src/electron/patches/mtime-cache.json',
  135. ],
  136. },
  137. {
  138. 'name': 'electron_npm_deps',
  139. 'pattern': 'src/electron/package.json',
  140. 'action': [
  141. 'python3',
  142. '-c',
  143. 'import os, subprocess; os.chdir(os.path.join("src", "electron")); subprocess.check_call(["python3", "script/lib/npx.py", "yarn@' + (Var("yarn_version")) + '", "install", "--frozen-lockfile"]);',
  144. ],
  145. },
  146. ]
  147. recursedeps = [
  148. 'src',
  149. 'src/third_party/squirrel.mac',
  150. ]