blob: 479929c563ec94729093c194b46b3dbe1a1f5b81 [file] [log] [blame]
Dan Sinclair6e581892020-03-02 15:47:43 -05001use_relative_paths = True
2
Ryan Harrison7b819aa2020-07-07 19:11:07 +00003gclient_gn_args_file = 'build/config/gclient_args.gni'
4gclient_gn_args = [
5 'mac_xcode_version',
6]
7
Dan Sinclair6e581892020-03-02 15:47:43 -05008vars = {
Ryan Harrison7b819aa2020-07-07 19:11:07 +00009 # This can be overridden, e.g. with custom_vars, to download a nonstandard
10 # Xcode version in build/mac_toolchain.py
11 # instead of downloading the prebuilt pinned revision.
12 'mac_xcode_version': 'default',
13
Dan Sinclaire631c002020-03-04 14:15:39 +000014 'chromium_git': 'https://chromium.googlesource.com',
15 'github': '/external/github.com',
Dan Sinclair6e581892020-03-02 15:47:43 -050016
David Neto3e025a42020-05-08 13:56:54 +000017 'binutils_revision': '2566778206fdacdff455b2d96df3d52a18d439d4',
dan sinclair35f47d62020-07-06 16:07:03 +000018 'build_revision': '1a541c15828e268c005eb956adc09816af2b01a5',
19 'buildtools_revision': '6b951673d17662ea2510995700922657d30f3542',
20 'clang_revision': 'b49c12a8f3fb25181855d0ea641bbcc2b2e95213',
Dan Sinclaire631c002020-03-04 14:15:39 +000021 'cpplint_revision': '305ac8725a166ed42e3f5dd3f80d6de2cf840ef1',
dan sinclair35f47d62020-07-06 16:07:03 +000022 'googletest_revision': '356f2d264a485db2fcc50ec1c672e0d37b6cb39b',
dan sinclair6249e382020-07-06 19:50:42 +000023 'spirv_headers_revision': '308bd07424350a6000f35a77b5f85cd4f3da319e',
dan sinclair35f47d62020-07-06 16:07:03 +000024 'spirv_tools_revision': 'bd2a9ea85210d3bb474bc5adb9ff4b0bb536b4fc',
25 'testing_revision': 'a711b1132571869bdd7084c86083698671b290a6',
Dan Sinclair6e581892020-03-02 15:47:43 -050026}
27
28deps = {
Dan Sinclaire631c002020-03-04 14:15:39 +000029 'third_party/cpplint': Var('chromium_git') + Var('github') +
30 '/google/styleguide.git@' + Var('cpplint_revision'),
Dan Sinclair6e581892020-03-02 15:47:43 -050031
Dan Sinclaire631c002020-03-04 14:15:39 +000032 'third_party/spirv-headers': Var('chromium_git') + Var('github') +
33 '/KhronosGroup/SPIRV-Headers.git@' + Var('spirv_headers_revision'),
Dan Sinclair6e581892020-03-02 15:47:43 -050034
Dan Sinclaire631c002020-03-04 14:15:39 +000035 'third_party/spirv-tools': Var('chromium_git') + Var('github') +
36 '/KhronosGroup//SPIRV-Tools.git@' + Var('spirv_tools_revision'),
Ryan Harrison29628882020-04-08 20:40:25 +000037
38 # Dependencies required to use GN/Clang in standalone
39 'build': Var('chromium_git') + '/chromium/src/build@' +
40 Var('build_revision'),
41
42 'buildtools': Var('chromium_git') + '/chromium/src/buildtools@' +
43 Var('buildtools_revision'),
44
45 'tools/clang': Var('chromium_git') + '/chromium/src/tools/clang@' +
46 Var('clang_revision'),
47
48 'third_party/binutils': Var('chromium_git') +
49 '/chromium/src/third_party/binutils@' + Var('binutils_revision'),
Ryan Harrison0a196c12020-04-17 13:18:20 +000050
51 # Dependencies required for testing
52 'testing': Var('chromium_git') + '/chromium/src/testing@' +
53 Var('testing_revision'),
54
55 'third_party/googletest': Var('chromium_git') + Var('github') +
56 '/google/googletest.git@' + Var('googletest_revision'),
Dan Sinclair6e581892020-03-02 15:47:43 -050057}
Ryan Harrison29628882020-04-08 20:40:25 +000058
59hooks = [
60 # Pull clang-format binaries using checked-in hashes.
61 {
62 'name': 'clang_format_win',
63 'pattern': '.',
64 'condition': 'host_os == "win"',
65 'action': [ 'download_from_google_storage',
66 '--no_resume',
67 '--platform=win32',
68 '--no_auth',
69 '--bucket', 'chromium-clang-format',
70 '-s', 'buildtools/win/clang-format.exe.sha1',
71 ],
72 },
73 {
74 'name': 'clang_format_mac',
75 'pattern': '.',
76 'condition': 'host_os == "mac"',
77 'action': [ 'download_from_google_storage',
78 '--no_resume',
79 '--platform=darwin',
80 '--no_auth',
81 '--bucket', 'chromium-clang-format',
82 '-s', 'buildtools/mac/clang-format.sha1',
83 ],
84 },
85 {
86 'name': 'clang_format_linux',
87 'pattern': '.',
88 'condition': 'host_os == "linux"',
89 'action': [ 'download_from_google_storage',
90 '--no_resume',
91 '--platform=linux*',
92 '--no_auth',
93 '--bucket', 'chromium-clang-format',
94 '-s', 'buildtools/linux64/clang-format.sha1',
95 ],
96 },
97
98 # Pull the compilers and system libraries for hermetic builds
99 {
100 'name': 'sysroot_x86',
101 'pattern': '.',
102 'condition': 'checkout_linux and ((checkout_x86 or checkout_x64))',
103 'action': ['python', 'build/linux/sysroot_scripts/install-sysroot.py',
104 '--arch=x86'],
105 },
106 {
107 'name': 'sysroot_x64',
108 'pattern': '.',
109 'condition': 'checkout_linux and (checkout_x64)',
110 'action': ['python', 'build/linux/sysroot_scripts/install-sysroot.py',
111 '--arch=x64'],
112 },
113 {
114 # Update the Windows toolchain if necessary. Must run before 'clang' below.
115 'name': 'win_toolchain',
116 'pattern': '.',
117 'condition': 'checkout_win',
118 'action': ['python', 'build/vs_toolchain.py', 'update', '--force'],
119 },
120 {
121 # Note: On Win, this should run after win_toolchain, as it may use it.
122 'name': 'clang',
123 'pattern': '.',
124 'action': ['python', 'tools/clang/scripts/update.py'],
125 },
126 {
127 # Pull rc binaries using checked-in hashes.
128 'name': 'rc_win',
129 'pattern': '.',
130 'condition': 'checkout_win and (host_os == "win")',
131 'action': [ 'download_from_google_storage',
132 '--no_resume',
133 '--no_auth',
134 '--bucket', 'chromium-browser-clang/rc',
135 '-s', 'build/toolchain/win/rc/win/rc.exe.sha1',
136 ],
137 },
138 # Pull binutils for linux hermetic builds
139 {
140 'name': 'binutils',
141 'pattern': 'src/third_party/binutils',
142 'condition': 'host_os == "linux"',
143 'action': [
144 'python',
145 'third_party/binutils/download.py',
146 ],
147 },
148 # Update build/util/LASTCHANGE.
149 {
150 'name': 'lastchange',
151 'pattern': '.',
152 'action': ['python', 'build/util/lastchange.py',
153 '-o', 'build/util/LASTCHANGE'],
154 },
155]
156
157recursedeps = [
158 # buildtools provides clang_format, libc++, and libc++abi
159 'buildtools',
160]