blob: 64caf066b634f542c020c2baa49d61f210ca1c2d [file] [log] [blame]
Lei Zhange4bf8342015-10-21 17:11:04 -07001use_relative_paths = True
2
Dan Sinclaira03c3432016-03-16 15:35:20 -04003vars = {
4 'chromium_git': 'https://chromium.googlesource.com',
5 'pdfium_git': 'https://pdfium.googlesource.com',
6
thestig50feafc2016-11-09 23:45:50 -08007 'android_ndk_revision': '26d93ec07f3ce2ec2cdfeae1b21ee6f12ff868d8',
Lei Zhang1831ca92017-03-29 22:55:08 -07008 'build_revision': 'a634e44492100123636cd2e66cc3cadd828f7031',
9 'buildtools_revision': 'e6b510a9daf822bbe9f922c200c58150803d2fd8',
jbudorick2430b302016-11-23 15:43:09 -080010 'catapult_revision': '86352b966b0245d6883e5f7df27687856978b6d7',
Lei Zhang1831ca92017-03-29 22:55:08 -070011 'clang_revision': 'c55112ff399f9ad6958b4bb58ca031b8ada63628',
Dan Sinclaira03c3432016-03-16 15:35:20 -040012 'cygwin_revision': 'c89e446b273697fadf3a10ff1007a97c0b7de6df',
dsinclair11988d72016-05-04 10:17:00 -070013 'gen_library_loader_revision': '916d4acd8b2cde67a390737dfba90b3c37de23a1',
Dan Sinclaira03c3432016-03-16 15:35:20 -040014 'gmock_revision': '29763965ab52f24565299976b936d1265cb6a271',
15 'gtest_revision': '8245545b6dc9c4703e6496d1efd19e975ad2b038',
dsinclair94686392016-12-12 08:38:09 -080016 'icu_revision': '73e24736676b4b438270fda44e5b2c83b49fdd80',
Lei Zhang3de50052017-03-29 21:02:13 -070017 'pdfium_tests_revision': '46cec65c6895ed37a9bf960ce341a5655c7519bf',
Tom Anderson4e8edf52017-03-30 18:27:21 -070018 'instrumented_lib_revision': '45f5814b1543e41ea0be54c771e3840ea52cca4a',
Ben Wanger9d5fd1d2017-02-09 11:21:11 -050019 'skia_revision': '90e3cd78991ef337dbd0023efb30ece864694308',
dsinclairfb969002016-05-31 12:55:32 -070020 'tools_memory_revision': '427f10475e1a8d72424c29d00bf689122b738e5d',
thestig08959c62016-11-10 13:19:23 -080021 'trace_event_revision': '06294c8a4a6f744ef284cd63cfe54dbf61eea290',
Dan Sinclair3c4f2a12017-03-23 14:31:50 -040022 'v8_revision': '01498094d09202413aab3ab513785261f82b755d',
Dan Sinclaira03c3432016-03-16 15:35:20 -040023}
24
Aneesh Mulye2ee9c3a2014-08-06 18:11:02 -070025deps = {
thestig5fec5972016-08-30 06:39:40 -070026 "base/trace_event/common":
27 Var('chromium_git') + "/chromium/src/base/trace_event/common.git@" +
28 Var('trace_event_revision'),
29
dsinclair685bb882016-04-20 07:32:39 -070030 "build":
31 Var('chromium_git') + "/chromium/src/build.git@" + Var('build_revision'),
Aneesh Mulye2ee9c3a2014-08-06 18:11:02 -070032
Tom Sepez4c0e2752015-06-05 13:46:08 -070033 "buildtools":
Dan Sinclaira03c3432016-03-16 15:35:20 -040034 Var('chromium_git') + "/chromium/buildtools.git@" + Var('buildtools_revision'),
Tom Sepez4c0e2752015-06-05 13:46:08 -070035
Tom Sepez9519ab22015-03-16 15:27:19 -070036 "testing/corpus":
Dan Sinclaira03c3432016-03-16 15:35:20 -040037 Var('pdfium_git') + "/pdfium_tests@" + Var('pdfium_tests_revision'),
Tom Sepez9519ab22015-03-16 15:27:19 -070038
Tom Sepeza310e002015-02-27 13:03:07 -080039 "testing/gmock":
Dan Sinclaira03c3432016-03-16 15:35:20 -040040 Var('chromium_git') + "/external/googlemock.git@" + Var('gmock_revision'),
Tom Sepeza310e002015-02-27 13:03:07 -080041
Tom Sepez22ee2482015-01-07 10:04:16 -080042 "testing/gtest":
Dan Sinclaira03c3432016-03-16 15:35:20 -040043 Var('chromium_git') + "/external/googletest.git@" + Var('gtest_revision'),
44
dsinclair685bb882016-04-20 07:32:39 -070045 "third_party/icu":
46 Var('chromium_git') + "/chromium/deps/icu.git@" + Var('icu_revision'),
47
weili62f36732016-10-14 16:59:40 -070048 "third_party/instrumented_libraries":
49 Var('chromium_git') + "/chromium/src/third_party/instrumented_libraries.git@" + Var('instrumented_lib_revision'),
50
Dan Sinclaira03c3432016-03-16 15:35:20 -040051 "third_party/skia":
52 Var('chromium_git') + '/skia.git' + '@' + Var('skia_revision'),
Tom Sepez22ee2482015-01-07 10:04:16 -080053
Oliver Changafaa98e2015-10-21 15:29:47 -070054 "tools/clang":
weilib34d72b2016-04-18 12:24:36 -070055 Var('chromium_git') + "/chromium/src/tools/clang@" + Var('clang_revision'),
Oliver Changafaa98e2015-10-21 15:29:47 -070056
dsinclair11988d72016-05-04 10:17:00 -070057 "tools/generate_library_loader":
58 Var('chromium_git') + "/chromium/src/tools/generate_library_loader@" +
59 Var('gen_library_loader_revision'),
60
dsinclairfb969002016-05-31 12:55:32 -070061 "tools/memory":
62 Var('chromium_git') + "/chromium/src/tools/memory@" +
63 Var('tools_memory_revision'),
64
John Abd-El-Malekfe453722014-10-16 15:32:26 -070065 "v8":
Dan Sinclaira03c3432016-03-16 15:35:20 -040066 Var('chromium_git') + "/v8/v8.git@" + Var('v8_revision'),
Aneesh Mulye2ee9c3a2014-08-06 18:11:02 -070067}
68
69deps_os = {
jbudorick7f3a15f2016-06-10 06:28:40 -070070 "android": {
71 "third_party/android_ndk":
72 Var('chromium_git') + "/android_ndk.git@" + Var('android_ndk_revision'),
73 "third_party/catapult":
74 Var('chromium_git') + "/external/github.com/catapult-project/catapult.git@" + Var('catapult_revision'),
75 },
Aneesh Mulye2ee9c3a2014-08-06 18:11:02 -070076 "win": {
Lei Zhangce88e772017-03-16 16:34:54 -070077 # TODO(GYP): Remove this when no tools rely on GYP anymore.
78 "tools/gyp":
79 Var('chromium_git') + '/external/gyp.git' + '@' + 'c61b0b35c8396bfd59efc6cfc11401d912b0f510',
80
John Abd-El-Malekfe453722014-10-16 15:32:26 -070081 "v8/third_party/cygwin":
Dan Sinclaira03c3432016-03-16 15:35:20 -040082 Var('chromium_git') + "/chromium/deps/cygwin@" + Var('cygwin_revision'),
Aneesh Mulye2ee9c3a2014-08-06 18:11:02 -070083 },
84}
Tom Sepez4c0e2752015-06-05 13:46:08 -070085
thestig3873f302016-09-28 17:39:26 -070086recursedeps = [
87 # buildtools provides clang_format, libc++, and libc++abi
88 'buildtools',
89]
90
Tom Sepez4c0e2752015-06-05 13:46:08 -070091include_rules = [
Lei Zhang8fec3e42015-11-04 15:32:02 -080092 # Basic stuff that everyone can use.
93 # Note: public is not here because core cannot depend on public.
Tom Sepez0c1bd7c2015-06-17 15:56:43 -070094 '+testing',
95 '+third_party/base',
Tom Sepez4c0e2752015-06-05 13:46:08 -070096]
Tom Sepez0c1bd7c2015-06-17 15:56:43 -070097
weili90c964f2016-04-22 15:25:14 -070098specific_include_rules = {
99 # Allow embedder tests to use public APIs.
100 "(.*embeddertest\.cpp)": [
101 "+public",
102 ]
103}
104
Tom Sepez0c1bd7c2015-06-17 15:56:43 -0700105hooks = [
dsinclair685bb882016-04-20 07:32:39 -0700106 # Pull GN binaries. This needs to be before running GYP below.
107 {
dsinclairb4e87082016-04-20 12:18:16 -0700108 'name': 'gn_win',
dsinclair685bb882016-04-20 07:32:39 -0700109 'action': [ 'download_from_google_storage',
110 '--no_resume',
111 '--platform=win32',
112 '--no_auth',
113 '--bucket', 'chromium-gn',
114 '-s', 'pdfium/buildtools/win/gn.exe.sha1',
115 ],
116 },
117 {
118 'name': 'gn_mac',
119 'pattern': '.',
120 'action': [ 'download_from_google_storage',
121 '--no_resume',
122 '--platform=darwin',
123 '--no_auth',
124 '--bucket', 'chromium-gn',
125 '-s', 'pdfium/buildtools/mac/gn.sha1',
126 ],
127 },
128 {
129 'name': 'gn_linux64',
130 'pattern': '.',
131 'action': [ 'download_from_google_storage',
132 '--no_resume',
133 '--platform=linux*',
134 '--no_auth',
135 '--bucket', 'chromium-gn',
136 '-s', 'pdfium/buildtools/linux64/gn.sha1',
137 ],
138 },
Tom Sepeze9446f82015-08-13 15:51:43 -0700139 # Pull clang-format binaries using checked-in hashes.
140 {
141 'name': 'clang_format_win',
142 'pattern': '.',
143 'action': [ 'download_from_google_storage',
144 '--no_resume',
145 '--platform=win32',
146 '--no_auth',
147 '--bucket', 'chromium-clang-format',
Oliver Chang5a21e142015-10-21 15:19:20 -0700148 '-s', 'pdfium/buildtools/win/clang-format.exe.sha1',
Tom Sepeze9446f82015-08-13 15:51:43 -0700149 ],
150 },
151 {
152 'name': 'clang_format_mac',
153 'pattern': '.',
154 'action': [ 'download_from_google_storage',
155 '--no_resume',
156 '--platform=darwin',
157 '--no_auth',
158 '--bucket', 'chromium-clang-format',
Oliver Chang5a21e142015-10-21 15:19:20 -0700159 '-s', 'pdfium/buildtools/mac/clang-format.sha1',
Tom Sepeze9446f82015-08-13 15:51:43 -0700160 ],
161 },
162 {
163 'name': 'clang_format_linux',
164 'pattern': '.',
165 'action': [ 'download_from_google_storage',
166 '--no_resume',
167 '--platform=linux*',
168 '--no_auth',
169 '--bucket', 'chromium-clang-format',
Oliver Chang5a21e142015-10-21 15:19:20 -0700170 '-s', 'pdfium/buildtools/linux64/clang-format.sha1',
Tom Sepeze9446f82015-08-13 15:51:43 -0700171 ],
172 },
Oliver Changafaa98e2015-10-21 15:29:47 -0700173 {
dsinclairb12fbdde2016-09-19 10:45:14 -0700174 # Pull clang
Oliver Changafaa98e2015-10-21 15:29:47 -0700175 'name': 'clang',
176 'pattern': '.',
dsinclair685bb882016-04-20 07:32:39 -0700177 'action': ['python',
dsinclairb12fbdde2016-09-19 10:45:14 -0700178 'pdfium/tools/clang/scripts/update.py'
dsinclair685bb882016-04-20 07:32:39 -0700179 ],
Oliver Changafaa98e2015-10-21 15:29:47 -0700180 },
weili9a1b6652016-04-28 15:26:45 -0700181 {
182 # Update the Windows toolchain if necessary.
183 'name': 'win_toolchain',
184 'pattern': '.',
weili5593bb82016-04-29 20:14:55 -0700185 'action': ['python', 'pdfium/build/vs_toolchain.py', 'update'],
weili9a1b6652016-04-28 15:26:45 -0700186 },
weili62f36732016-10-14 16:59:40 -0700187 {
weili9053f192016-11-18 14:03:49 -0800188 # Update the Mac toolchain if necessary.
189 'name': 'mac_toolchain',
190 'pattern': '.',
191 'action': ['python', 'pdfium/build/mac_toolchain.py'],
192 },
Tom Anderson4e8edf52017-03-30 18:27:21 -0700193 {
194 # Pull sanitizer-instrumented third-party libraries if requested via
195 # GYP_DEFINES.
196 'name': 'instrumented_libraries',
197 'pattern': '\\.sha1',
198 'action': ['python', 'pdfium/third_party/instrumented_libraries/scripts/download_binaries.py'],
199 },
weili62f36732016-10-14 16:59:40 -0700200
Tom Sepeze9446f82015-08-13 15:51:43 -0700201]