Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(29)

Side by Side Diff: tools/gn/bootstrap/bootstrap.py

Issue 1692303004: Update GN bootstrap build (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: wording of comments Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « AUTHORS ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright 2014 The Chromium Authors. All rights reserved. 2 # Copyright 2014 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 # This file isn't officially supported by the Chromium project. It's maintained 6 # This file isn't officially supported by the Chromium project. It's maintained
7 # on a best-effort basis by volunteers, so some things may be broken from time 7 # on a best-effort basis by volunteers, so some things may be broken from time
8 # to time. If you encounter errors, it's most often due to files in base that 8 # to time. If you encounter errors, it's most often due to files in base that
9 # have been added or moved since somebody last tried this script. Generally 9 # have been added or moved since somebody last tried this script. Generally
10 # such errors are easy to diagnose. 10 # such errors are easy to diagnose.
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
108 else: 108 else:
109 with scoped_tempdir() as tempdir: 109 with scoped_tempdir() as tempdir:
110 return run_build(tempdir, options) 110 return run_build(tempdir, options)
111 except subprocess.CalledProcessError as e: 111 except subprocess.CalledProcessError as e:
112 print >> sys.stderr, str(e) 112 print >> sys.stderr, str(e)
113 return 1 113 return 1
114 return 0 114 return 0
115 115
116 116
117 def build_gn_with_ninja_manually(tempdir, options): 117 def build_gn_with_ninja_manually(tempdir, options):
118 write_ninja(os.path.join(tempdir, 'build.ninja'), options) 118 root_gen_dir = os.path.join(tempdir, 'gen')
119 mkdir_p(root_gen_dir)
120
121 if is_mac:
tfarina 2016/02/18 22:47:54 Wait, why is this only for Mac? It is not included
NGG 2016/02/18 23:31:48 Because build_time.cc is not compiled for non-mac
brettw 2016/02/19 22:13:48 This seems wrong. Why did you add build_time.cc on
NGG 2016/02/20 14:58:44 It's only needed on Mac because //base/memory/shar
122 # //base/build_time.cc needs base/generated_build_date.h,
123 # and this file is only included for Mac builds.
124 mkdir_p(os.path.join(root_gen_dir, 'base'))
125 check_call([
126 os.path.join(SRC_ROOT, 'build', 'write_build_date_header.py'),
127 os.path.join(root_gen_dir, 'base', 'generated_build_date.h'),
128 'default'
129 ])
130
131 write_ninja(os.path.join(tempdir, 'build.ninja'), root_gen_dir, options)
119 cmd = ['ninja', '-C', tempdir] 132 cmd = ['ninja', '-C', tempdir]
120 if options.verbose: 133 if options.verbose:
121 cmd.append('-v') 134 cmd.append('-v')
122 cmd.append('gn') 135 cmd.append('gn')
123 check_call(cmd) 136 check_call(cmd)
124 137
125 def write_ninja(path, options): 138 def write_ninja(path, root_gen_dir, options):
126 cc = os.environ.get('CC', '') 139 cc = os.environ.get('CC', '')
127 cxx = os.environ.get('CXX', '') 140 cxx = os.environ.get('CXX', '')
128 cflags = os.environ.get('CFLAGS', '').split() 141 cflags = os.environ.get('CFLAGS', '').split()
129 cflags_cc = os.environ.get('CXXFLAGS', '').split() 142 cflags_cc = os.environ.get('CXXFLAGS', '').split()
130 ld = os.environ.get('LD', cxx) 143 ld = os.environ.get('LD', cxx)
131 ldflags = os.environ.get('LDFLAGS', '').split() 144 ldflags = os.environ.get('LDFLAGS', '').split()
132 include_dirs = [SRC_ROOT] 145 include_dirs = [root_gen_dir, SRC_ROOT]
133 libs = [] 146 libs = []
134 147
148 # //base/allocator/allocator_extension.cc needs this macro defined,
149 # otherwise there would be link errors.
150 cflags.extend(['-DNO_TCMALLOC'])
151
135 if is_posix: 152 if is_posix:
136 if options.debug: 153 if options.debug:
137 cflags.extend(['-O0', '-g']) 154 cflags.extend(['-O0', '-g'])
138 else: 155 else:
139 cflags.extend(['-O2', '-g0']) 156 cflags.extend(['-O2', '-g0'])
140 157
141 cflags.extend(['-D_FILE_OFFSET_BITS=64', '-pthread', '-pipe']) 158 cflags.extend(['-D_FILE_OFFSET_BITS=64', '-pthread', '-pipe'])
142 cflags_cc.extend(['-std=c++11', '-Wno-c++11-narrowing']) 159 cflags_cc.extend(['-std=c++11', '-Wno-c++11-narrowing'])
143 160
144 static_libraries = { 161 static_libraries = {
(...skipping 27 matching lines...) Expand all
172 'base/debug/alias.cc', 189 'base/debug/alias.cc',
173 'base/debug/stack_trace.cc', 190 'base/debug/stack_trace.cc',
174 'base/debug/task_annotator.cc', 191 'base/debug/task_annotator.cc',
175 'base/environment.cc', 192 'base/environment.cc',
176 'base/files/file.cc', 193 'base/files/file.cc',
177 'base/files/file_enumerator.cc', 194 'base/files/file_enumerator.cc',
178 'base/files/file_path.cc', 195 'base/files/file_path.cc',
179 'base/files/file_path_constants.cc', 196 'base/files/file_path_constants.cc',
180 'base/files/file_tracing.cc', 197 'base/files/file_tracing.cc',
181 'base/files/file_util.cc', 198 'base/files/file_util.cc',
199 'base/files/memory_mapped_file.cc',
182 'base/files/scoped_file.cc', 200 'base/files/scoped_file.cc',
183 'base/hash.cc', 201 'base/hash.cc',
184 'base/json/json_parser.cc', 202 'base/json/json_parser.cc',
185 'base/json/json_reader.cc', 203 'base/json/json_reader.cc',
186 'base/json/json_string_value_serializer.cc', 204 'base/json/json_string_value_serializer.cc',
187 'base/json/json_writer.cc', 205 'base/json/json_writer.cc',
188 'base/json/string_escape.cc', 206 'base/json/string_escape.cc',
189 'base/lazy_instance.cc', 207 'base/lazy_instance.cc',
190 'base/location.cc', 208 'base/location.cc',
191 'base/logging.cc', 209 'base/logging.cc',
192 'base/md5.cc', 210 'base/md5.cc',
193 'base/memory/ref_counted.cc', 211 'base/memory/ref_counted.cc',
194 'base/memory/ref_counted_memory.cc', 212 'base/memory/ref_counted_memory.cc',
195 'base/memory/singleton.cc', 213 'base/memory/singleton.cc',
196 'base/memory/weak_ptr.cc', 214 'base/memory/weak_ptr.cc',
197 'base/message_loop/incoming_task_queue.cc', 215 'base/message_loop/incoming_task_queue.cc',
198 'base/message_loop/message_loop.cc', 216 'base/message_loop/message_loop.cc',
199 'base/message_loop/message_loop_task_runner.cc', 217 'base/message_loop/message_loop_task_runner.cc',
200 'base/message_loop/message_pump.cc', 218 'base/message_loop/message_pump.cc',
201 'base/message_loop/message_pump_default.cc', 219 'base/message_loop/message_pump_default.cc',
202 'base/metrics/bucket_ranges.cc', 220 'base/metrics/bucket_ranges.cc',
203 'base/metrics/histogram.cc', 221 'base/metrics/histogram.cc',
204 'base/metrics/histogram_base.cc', 222 'base/metrics/histogram_base.cc',
223 'base/metrics/histogram_persistence.cc',
205 'base/metrics/histogram_samples.cc', 224 'base/metrics/histogram_samples.cc',
206 'base/metrics/metrics_hashes.cc', 225 'base/metrics/metrics_hashes.cc',
226 'base/metrics/persistent_memory_allocator.cc',
207 'base/metrics/sample_map.cc', 227 'base/metrics/sample_map.cc',
208 'base/metrics/sample_vector.cc', 228 'base/metrics/sample_vector.cc',
209 'base/metrics/sparse_histogram.cc', 229 'base/metrics/sparse_histogram.cc',
210 'base/metrics/statistics_recorder.cc', 230 'base/metrics/statistics_recorder.cc',
211 'base/path_service.cc', 231 'base/path_service.cc',
212 'base/pending_task.cc', 232 'base/pending_task.cc',
213 'base/pickle.cc', 233 'base/pickle.cc',
214 'base/process/kill.cc', 234 'base/process/kill.cc',
215 'base/process/process_iterator.cc', 235 'base/process/process_iterator.cc',
216 'base/process/process_metrics.cc', 236 'base/process/process_metrics.cc',
237 'base/profiler/scoped_profile.cc',
238 'base/profiler/scoped_tracker.cc',
217 'base/profiler/tracked_time.cc', 239 'base/profiler/tracked_time.cc',
218 'base/run_loop.cc', 240 'base/run_loop.cc',
219 'base/sequence_checker_impl.cc', 241 'base/sequence_checker_impl.cc',
220 'base/sequenced_task_runner.cc', 242 'base/sequenced_task_runner.cc',
221 'base/sha1_portable.cc', 243 'base/sha1_portable.cc',
222 'base/strings/pattern.cc', 244 'base/strings/pattern.cc',
223 'base/strings/string16.cc', 245 'base/strings/string16.cc',
224 'base/strings/string_number_conversions.cc', 246 'base/strings/string_number_conversions.cc',
225 'base/strings/string_piece.cc', 247 'base/strings/string_piece.cc',
226 'base/strings/string_split.cc', 248 'base/strings/string_split.cc',
(...skipping 30 matching lines...) Expand all
257 'base/trace_event/heap_profiler_stack_frame_deduplicator.cc', 279 'base/trace_event/heap_profiler_stack_frame_deduplicator.cc',
258 'base/trace_event/heap_profiler_type_name_deduplicator.cc', 280 'base/trace_event/heap_profiler_type_name_deduplicator.cc',
259 'base/trace_event/memory_allocator_dump.cc', 281 'base/trace_event/memory_allocator_dump.cc',
260 'base/trace_event/memory_allocator_dump_guid.cc', 282 'base/trace_event/memory_allocator_dump_guid.cc',
261 'base/trace_event/memory_dump_manager.cc', 283 'base/trace_event/memory_dump_manager.cc',
262 'base/trace_event/memory_dump_request_args.cc', 284 'base/trace_event/memory_dump_request_args.cc',
263 'base/trace_event/memory_dump_session_state.cc', 285 'base/trace_event/memory_dump_session_state.cc',
264 'base/trace_event/process_memory_dump.cc', 286 'base/trace_event/process_memory_dump.cc',
265 'base/trace_event/process_memory_maps.cc', 287 'base/trace_event/process_memory_maps.cc',
266 'base/trace_event/process_memory_totals.cc', 288 'base/trace_event/process_memory_totals.cc',
267 'base/trace_event/process_memory_totals_dump_provider.cc',
268 'base/trace_event/trace_buffer.cc', 289 'base/trace_event/trace_buffer.cc',
269 'base/trace_event/trace_config.cc', 290 'base/trace_event/trace_config.cc',
270 'base/trace_event/trace_event_argument.cc', 291 'base/trace_event/trace_event_argument.cc',
271 'base/trace_event/trace_event_impl.cc', 292 'base/trace_event/trace_event_impl.cc',
272 'base/trace_event/trace_event_memory_overhead.cc', 293 'base/trace_event/trace_event_memory_overhead.cc',
273 'base/trace_event/trace_event_synthetic_delay.cc', 294 'base/trace_event/trace_event_synthetic_delay.cc',
274 'base/trace_event/trace_log.cc', 295 'base/trace_event/trace_log.cc',
275 'base/trace_event/trace_log_constants.cc', 296 'base/trace_event/trace_log_constants.cc',
276 'base/trace_event/trace_sampling_thread.cc', 297 'base/trace_event/trace_sampling_thread.cc',
277 'base/trace_event/tracing_agent.cc', 298 'base/trace_event/tracing_agent.cc',
278 'base/tracked_objects.cc', 299 'base/tracked_objects.cc',
279 'base/tracking_info.cc', 300 'base/tracking_info.cc',
280 'base/values.cc', 301 'base/values.cc',
281 'base/vlog.cc', 302 'base/vlog.cc',
282 ]) 303 ])
283 304
284 if is_posix: 305 if is_posix:
285 static_libraries['base']['sources'].extend([ 306 static_libraries['base']['sources'].extend([
286 'base/base_paths_posix.cc', 307 'base/base_paths_posix.cc',
287 'base/debug/debugger_posix.cc', 308 'base/debug/debugger_posix.cc',
288 'base/debug/stack_trace_posix.cc', 309 'base/debug/stack_trace_posix.cc',
289 'base/files/file_enumerator_posix.cc', 310 'base/files/file_enumerator_posix.cc',
290 'base/files/file_posix.cc', 311 'base/files/file_posix.cc',
291 'base/files/file_util_posix.cc', 312 'base/files/file_util_posix.cc',
313 'base/files/memory_mapped_file_posix.cc',
292 'base/message_loop/message_pump_libevent.cc', 314 'base/message_loop/message_pump_libevent.cc',
293 'base/posix/file_descriptor_shuffle.cc', 315 'base/posix/file_descriptor_shuffle.cc',
294 'base/posix/safe_strerror.cc', 316 'base/posix/safe_strerror.cc',
295 'base/process/kill_posix.cc', 317 'base/process/kill_posix.cc',
296 'base/process/process_handle_posix.cc', 318 'base/process/process_handle_posix.cc',
297 'base/process/process_metrics_posix.cc', 319 'base/process/process_metrics_posix.cc',
298 'base/process/process_posix.cc', 320 'base/process/process_posix.cc',
299 'base/synchronization/condition_variable_posix.cc', 321 'base/synchronization/condition_variable_posix.cc',
300 'base/synchronization/lock_impl_posix.cc', 322 'base/synchronization/lock_impl_posix.cc',
301 'base/synchronization/waitable_event_posix.cc', 323 'base/synchronization/waitable_event_posix.cc',
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
333 libs.extend(['-lrt']) 355 libs.extend(['-lrt'])
334 ldflags.extend(['-pthread']) 356 ldflags.extend(['-pthread'])
335 357
336 static_libraries['xdg_user_dirs'] = { 358 static_libraries['xdg_user_dirs'] = {
337 'sources': [ 359 'sources': [
338 'base/third_party/xdg_user_dirs/xdg_user_dir_lookup.cc', 360 'base/third_party/xdg_user_dirs/xdg_user_dir_lookup.cc',
339 ], 361 ],
340 'tool': 'cxx', 362 'tool': 'cxx',
341 } 363 }
342 static_libraries['base']['sources'].extend([ 364 static_libraries['base']['sources'].extend([
365 'base/memory/shared_memory_posix.cc',
343 'base/nix/xdg_util.cc', 366 'base/nix/xdg_util.cc',
344 'base/process/internal_linux.cc', 367 'base/process/internal_linux.cc',
345 'base/process/process_handle_linux.cc', 368 'base/process/process_handle_linux.cc',
346 'base/process/process_iterator_linux.cc', 369 'base/process/process_iterator_linux.cc',
347 'base/process/process_linux.cc', 370 'base/process/process_linux.cc',
348 'base/process/process_metrics_linux.cc', 371 'base/process/process_metrics_linux.cc',
349 'base/strings/sys_string_conversions_posix.cc', 372 'base/strings/sys_string_conversions_posix.cc',
350 'base/sys_info_linux.cc', 373 'base/sys_info_linux.cc',
351 'base/threading/platform_thread_linux.cc', 374 'base/threading/platform_thread_linux.cc',
352 'base/trace_event/malloc_dump_provider.cc', 375 'base/trace_event/malloc_dump_provider.cc',
353 'base/trace_event/process_memory_maps_dump_provider.cc',
354 ]) 376 ])
355 static_libraries['libevent']['include_dirs'].extend([ 377 static_libraries['libevent']['include_dirs'].extend([
356 os.path.join(SRC_ROOT, 'base', 'third_party', 'libevent', 'linux') 378 os.path.join(SRC_ROOT, 'base', 'third_party', 'libevent', 'linux')
357 ]) 379 ])
358 static_libraries['libevent']['sources'].extend([ 380 static_libraries['libevent']['sources'].extend([
359 'base/third_party/libevent/epoll.c', 381 'base/third_party/libevent/epoll.c',
360 ]) 382 ])
361 383
362 384
363 if is_mac: 385 if is_mac:
364 static_libraries['base']['sources'].extend([ 386 static_libraries['base']['sources'].extend([
365 'base/base_paths_mac.mm', 387 'base/base_paths_mac.mm',
388 'base/build_time.cc',
389 'base/rand_util.cc',
390 'base/rand_util_posix.cc',
366 'base/files/file_util_mac.mm', 391 'base/files/file_util_mac.mm',
367 'base/mac/bundle_locations.mm', 392 'base/mac/bundle_locations.mm',
368 'base/mac/call_with_eh_frame.cc', 393 'base/mac/call_with_eh_frame.cc',
369 'base/mac/call_with_eh_frame_asm.S', 394 'base/mac/call_with_eh_frame_asm.S',
370 'base/mac/foundation_util.mm', 395 'base/mac/foundation_util.mm',
371 'base/mac/mach_logging.cc', 396 'base/mac/mach_logging.cc',
372 'base/mac/scoped_mach_port.cc', 397 'base/mac/scoped_mach_port.cc',
398 'base/mac/scoped_mach_vm.cc',
373 'base/mac/scoped_nsautorelease_pool.mm', 399 'base/mac/scoped_nsautorelease_pool.mm',
400 'base/memory/shared_memory_handle_mac.cc',
401 'base/memory/shared_memory_mac.cc',
374 'base/message_loop/message_pump_mac.mm', 402 'base/message_loop/message_pump_mac.mm',
403 'base/metrics/field_trial.cc',
375 'base/process/process_handle_mac.cc', 404 'base/process/process_handle_mac.cc',
376 'base/process/process_iterator_mac.cc', 405 'base/process/process_iterator_mac.cc',
377 'base/process/process_metrics_mac.cc', 406 'base/process/process_metrics_mac.cc',
378 'base/strings/sys_string_conversions_mac.mm', 407 'base/strings/sys_string_conversions_mac.mm',
379 'base/time/time_mac.cc', 408 'base/time/time_mac.cc',
380 'base/threading/platform_thread_mac.mm', 409 'base/threading/platform_thread_mac.mm',
381 'base/trace_event/malloc_dump_provider.cc', 410 'base/trace_event/malloc_dump_provider.cc',
382 ]) 411 ])
383 static_libraries['libevent']['include_dirs'].extend([ 412 static_libraries['libevent']['include_dirs'].extend([
384 os.path.join(SRC_ROOT, 'base', 'third_party', 'libevent', 'mac') 413 os.path.join(SRC_ROOT, 'base', 'third_party', 'libevent', 'mac')
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
459 cmd.append('-v') 488 cmd.append('-v')
460 cmd.append('gn') 489 cmd.append('gn')
461 check_call(cmd) 490 check_call(cmd)
462 491
463 if not options.debug: 492 if not options.debug:
464 check_call(['strip', os.path.join(build_dir, 'gn')]) 493 check_call(['strip', os.path.join(build_dir, 'gn')])
465 494
466 495
467 if __name__ == '__main__': 496 if __name__ == '__main__':
468 sys.exit(main(sys.argv[1:])) 497 sys.exit(main(sys.argv[1:]))
OLDNEW
« no previous file with comments | « AUTHORS ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698