blob: f7bac6d1c5d5f63309775e8f0e34d2eb663fcfe4 [file] [log] [blame]
dan sinclair18540642018-06-05 21:36:50 -04001use_relative_paths = True
2
3vars = {
4 'chromium_git': 'https://chromium.googlesource.com',
5 'github': 'https://github.com',
6
Dan Sinclaira114e1f2018-07-17 13:53:15 -04007 'build_revision': '037f38ae0fe5e11b4f7c33b750fd7a1e9634a606',
dan sinclair18540642018-06-05 21:36:50 -04008 'buildtools_revision': 'ab7b6a7b350dd15804c87c20ce78982811fdd76f',
9 'clang_revision': 'abe5e4f9dc0f1df848c7a0efa05256253e77a7b7',
10 'effcee_revision': '04b624799f5a9dbaf3fa1dbed2ba9dce2fc8dcf2',
11 'googletest_revision': '98a0d007d7092b72eea0e501bb9ad17908a1a036',
Corentin Wallez2d9a3252018-08-02 18:48:03 +020012 'testing_revision': '340252637e2e7c72c0901dcbeeacfff419e19b59',
dan sinclair18540642018-06-05 21:36:50 -040013 're2_revision': '6cf8ccd82dbaab2668e9b13596c68183c9ecd13f',
dan sinclair903514f2018-09-25 11:04:51 -070014 'spirv_headers_revision': 'd5b2e1255f706ce1f88812217e9a554f299848af',
dan sinclair18540642018-06-05 21:36:50 -040015}
16
17deps = {
Dan Sinclaira114e1f2018-07-17 13:53:15 -040018 "build":
19 Var('chromium_git') + "/chromium/src/build.git@" + Var('build_revision'),
20
dan sinclair18540642018-06-05 21:36:50 -040021 'buildtools':
22 Var('chromium_git') + '/chromium/buildtools.git@' +
23 Var('buildtools_revision'),
24
25 'external/spirv-headers':
26 Var('github') + '/KhronosGroup/SPIRV-Headers.git@' +
27 Var('spirv_headers_revision'),
28
29 'external/googletest':
30 Var('github') + '/google/googletest.git@' + Var('googletest_revision'),
31
32 'external/effcee':
33 Var('github') + '/google/effcee.git@' + Var('effcee_revision'),
34
35 'external/re2':
36 Var('github') + '/google/re2.git@' + Var('re2_revision'),
37
Corentin Wallez2d9a3252018-08-02 18:48:03 +020038 'testing':
39 Var('chromium_git') + '/chromium/src/testing@' +
40 Var('testing_revision'),
Dan Sinclaira114e1f2018-07-17 13:53:15 -040041
dan sinclair18540642018-06-05 21:36:50 -040042 'tools/clang':
43 Var('chromium_git') + '/chromium/src/tools/clang@' + Var('clang_revision')
44}
45
46recursedeps = [
47 # buildtools provides clang_format, libc++, and libc++api
48 'buildtools',
49]
50
51hooks = [
Dan Sinclaira114e1f2018-07-17 13:53:15 -040052 {
53 'name': 'gn_win',
54 'action': [ 'download_from_google_storage',
55 '--no_resume',
56 '--platform=win32',
57 '--no_auth',
58 '--bucket', 'chromium-gn',
59 '-s', 'SPIRV-Tools/buildtools/win/gn.exe.sha1',
60 ],
61 },
62 {
63 'name': 'gn_mac',
64 'pattern': '.',
65 'action': [ 'download_from_google_storage',
66 '--no_resume',
67 '--platform=darwin',
68 '--no_auth',
69 '--bucket', 'chromium-gn',
70 '-s', 'SPIRV-Tools/buildtools/mac/gn.sha1',
71 ],
72 },
73 {
74 'name': 'gn_linux64',
75 'pattern': '.',
76 'action': [ 'download_from_google_storage',
77 '--no_resume',
78 '--platform=linux*',
79 '--no_auth',
80 '--bucket', 'chromium-gn',
81 '-s', 'SPIRV-Tools/buildtools/linux64/gn.sha1',
82 ],
83 },
dan sinclair18540642018-06-05 21:36:50 -040084 # Pull clang-format binaries using checked-in hashes.
85 {
86 'name': 'clang_format_win',
87 'pattern': '.',
88 'action': [ 'download_from_google_storage',
89 '--no_resume',
90 '--platform=win32',
91 '--no_auth',
92 '--bucket', 'chromium-clang-format',
93 '-s', 'SPIRV-Tools/buildtools/win/clang-format.exe.sha1',
94 ],
95 },
96 {
97 'name': 'clang_format_mac',
98 'pattern': '.',
99 'action': [ 'download_from_google_storage',
100 '--no_resume',
101 '--platform=darwin',
102 '--no_auth',
103 '--bucket', 'chromium-clang-format',
104 '-s', 'SPIRV-Tools/buildtools/mac/clang-format.sha1',
105 ],
106 },
107 {
108 'name': 'clang_format_linux',
109 'pattern': '.',
110 'action': [ 'download_from_google_storage',
111 '--no_resume',
112 '--platform=linux*',
113 '--no_auth',
114 '--bucket', 'chromium-clang-format',
115 '-s', 'SPIRV-Tools/buildtools/linux64/clang-format.sha1',
116 ],
117 },
118 {
119 # Pull clang
120 'name': 'clang',
121 'pattern': '.',
122 'action': ['python',
123 'SPIRV-Tools/tools/clang/scripts/update.py'
124 ],
125 },
Dan Sinclaira114e1f2018-07-17 13:53:15 -0400126 {
127 'name': 'sysroot_arm',
128 'pattern': '.',
129 'condition': 'checkout_linux and checkout_arm',
130 'action': ['python', 'SPIRV-Tools/build/linux/sysroot_scripts/install-sysroot.py',
131 '--arch=arm'],
132 },
133 {
134 'name': 'sysroot_arm64',
135 'pattern': '.',
136 'condition': 'checkout_linux and checkout_arm64',
137 'action': ['python', 'SPIRV-Tools/build/linux/sysroot_scripts/install-sysroot.py',
138 '--arch=arm64'],
139 },
140 {
141 'name': 'sysroot_x86',
142 'pattern': '.',
143 'condition': 'checkout_linux and (checkout_x86 or checkout_x64)',
144 'action': ['python', 'SPIRV-Tools/build/linux/sysroot_scripts/install-sysroot.py',
145 '--arch=x86'],
146 },
147 {
148 'name': 'sysroot_mips',
149 'pattern': '.',
150 'condition': 'checkout_linux and checkout_mips',
151 'action': ['python', 'SPIRV-Tools/build/linux/sysroot_scripts/install-sysroot.py',
152 '--arch=mips'],
153 },
154 {
155 'name': 'sysroot_x64',
156 'pattern': '.',
157 'condition': 'checkout_linux and checkout_x64',
158 'action': ['python', 'SPIRV-Tools/build/linux/sysroot_scripts/install-sysroot.py',
159 '--arch=x64'],
160 },
161 {
162 # Update the Windows toolchain if necessary.
163 'name': 'win_toolchain',
164 'pattern': '.',
165 'condition': 'checkout_win',
166 'action': ['python', 'SPIRV-Tools/build/vs_toolchain.py', 'update', '--force'],
167 },
168 {
169 # Update the Mac toolchain if necessary.
170 'name': 'mac_toolchain',
171 'pattern': '.',
172 'action': ['python', 'SPIRV-Tools/build/mac_toolchain.py'],
173 },
dan sinclair18540642018-06-05 21:36:50 -0400174]