OLD | NEW |
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 { | 5 { |
6 'target_defaults': { | 6 'target_defaults': { |
7 'variables': { | 7 'variables': { |
8 # This code gets run a lot and debugged rarely, so it should be fast | 8 # This code gets run a lot and debugged rarely, so it should be fast |
9 # by default. See http://crbug.com/388949. | 9 # by default. See http://crbug.com/388949. |
10 'debug_optimize': '2', | 10 'debug_optimize': '2', |
(...skipping 13 matching lines...) Expand all Loading... |
24 'targets': [ | 24 'targets': [ |
25 # Only executables and not libraries should depend on the | 25 # Only executables and not libraries should depend on the |
26 # allocator target; only the application (the final executable) | 26 # allocator target; only the application (the final executable) |
27 # knows what allocator makes sense. | 27 # knows what allocator makes sense. |
28 { | 28 { |
29 'target_name': 'allocator', | 29 'target_name': 'allocator', |
30 # TODO(primiano): This should be type: none for the noop cases (an empty | 30 # TODO(primiano): This should be type: none for the noop cases (an empty |
31 # static lib can confuse some gyp generators). Fix it once the refactoring | 31 # static lib can confuse some gyp generators). Fix it once the refactoring |
32 # (crbug.com/564618) bring this file to a saner state (fewer conditions). | 32 # (crbug.com/564618) bring this file to a saner state (fewer conditions). |
33 'type': 'static_library', | 33 'type': 'static_library', |
| 34 'toolsets': ['host', 'target'], |
34 'conditions': [ | 35 'conditions': [ |
35 ['OS=="win" and win_use_allocator_shim==1', { | 36 ['OS=="win" and win_use_allocator_shim==1', { |
36 'msvs_settings': { | 37 'msvs_settings': { |
37 # TODO(sgk): merge this with build/common.gypi settings | 38 # TODO(sgk): merge this with build/common.gypi settings |
38 'VCLibrarianTool': { | 39 'VCLibrarianTool': { |
39 'AdditionalOptions': ['/ignore:4006,4221'], | 40 'AdditionalOptions': ['/ignore:4006,4221'], |
40 }, | 41 }, |
41 'VCLinkerTool': { | 42 'VCLinkerTool': { |
42 'AdditionalOptions': ['/ignore:4006'], | 43 'AdditionalOptions': ['/ignore:4006'], |
43 }, | 44 }, |
44 }, | 45 }, |
45 'dependencies': [ | 46 'dependencies': [ |
46 'libcmt', | 47 'libcmt', |
47 ], | 48 ], |
48 'include_dirs': [ | 49 'include_dirs': [ |
49 '../..', | 50 '../..', |
50 ], | 51 ], |
51 'sources': [ | 52 'sources': [ |
52 'allocator_shim_win.cc', | 53 'allocator_shim_win.cc', |
53 ], | 54 ], |
| 55 'link_settings': { |
| 56 'msvs_settings': { |
| 57 'VCLinkerTool': { |
| 58 'IgnoreDefaultLibraryNames': ['libcmtd.lib', 'libcmt.lib'], |
| 59 'AdditionalDependencies': [ |
| 60 '<(SHARED_INTERMEDIATE_DIR)/allocator/libcmt.lib' |
| 61 ], |
| 62 }, |
| 63 }, |
| 64 }, |
54 'configurations': { | 65 'configurations': { |
55 'Debug_Base': { | 66 'Debug_Base': { |
56 'msvs_settings': { | 67 'msvs_settings': { |
57 'VCCLCompilerTool': { | 68 'VCCLCompilerTool': { |
58 'RuntimeLibrary': '0', | 69 'RuntimeLibrary': '0', |
59 }, | 70 }, |
60 }, | 71 }, |
61 }, | 72 }, |
62 }, | 73 }, |
63 'direct_dependent_settings': { | |
64 'configurations': { | |
65 'Common_Base': { | |
66 'msvs_settings': { | |
67 'VCLinkerTool': { | |
68 'IgnoreDefaultLibraryNames': ['libcmtd.lib', 'libcmt.lib'], | |
69 'AdditionalDependencies': [ | |
70 '<(SHARED_INTERMEDIATE_DIR)/allocator/libcmt.lib' | |
71 ], | |
72 }, | |
73 }, | |
74 }, | |
75 }, | |
76 }, | |
77 }], # OS=="win" | 74 }], # OS=="win" |
78 ['use_allocator=="tcmalloc"', { | 75 ['use_allocator=="tcmalloc"', { |
79 # Disable the heap checker in tcmalloc. | 76 # Disable the heap checker in tcmalloc. |
80 'defines': [ | 77 'defines': [ |
81 'NO_HEAP_CHECK', | 78 'NO_HEAP_CHECK', |
82 ], | 79 ], |
83 'dependencies': [ | 80 'dependencies': [ |
84 '../third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_
annotations', | 81 '../third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_
annotations', |
85 ], | 82 ], |
86 # The order of this include_dirs matters, as tc-malloc has its own | 83 # The order of this include_dirs matters, as tc-malloc has its own |
(...skipping 278 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
365 'target_conditions' : [ | 362 'target_conditions' : [ |
366 ['_toolset=="target"', { | 363 ['_toolset=="target"', { |
367 'cflags!': [ '-finstrument-functions' ], | 364 'cflags!': [ '-finstrument-functions' ], |
368 }], | 365 }], |
369 ], | 366 ], |
370 }], | 367 }], |
371 ], # conditions of 'allocator' target. | 368 ], # conditions of 'allocator' target. |
372 }, # 'allocator' target. | 369 }, # 'allocator' target. |
373 ], # targets. | 370 ], # targets. |
374 'conditions': [ | 371 'conditions': [ |
375 ['OS=="win" and component!="shared_library"', { | 372 ['OS=="win" and win_use_allocator_shim==1', { |
376 'targets': [ | 373 'targets': [ |
377 { | 374 { |
378 'target_name': 'libcmt', | 375 'target_name': 'libcmt', |
379 'type': 'none', | 376 'type': 'none', |
380 'actions': [ | 377 'actions': [ |
381 { | 378 { |
382 'action_name': 'libcmt', | 379 'action_name': 'libcmt', |
383 'inputs': [ | 380 'inputs': [ |
384 'prep_libc.py', | 381 'prep_libc.py', |
385 ], | 382 ], |
386 'outputs': [ | 383 'outputs': [ |
387 '<(SHARED_INTERMEDIATE_DIR)/allocator/libcmt.lib', | 384 '<(SHARED_INTERMEDIATE_DIR)/allocator/libcmt.lib', |
388 ], | 385 ], |
389 'action': [ | 386 'action': [ |
390 'python', | 387 'python', |
391 'prep_libc.py', | 388 'prep_libc.py', |
392 '$(VCInstallDir)lib', | 389 '$(VCInstallDir)lib', |
393 '<(SHARED_INTERMEDIATE_DIR)/allocator', | 390 '<(SHARED_INTERMEDIATE_DIR)/allocator', |
394 '<(target_arch)', | 391 '<(target_arch)', |
395 ], | 392 ], |
396 }, | 393 }, |
397 ], | 394 ], |
398 }, | 395 }, |
399 ], | 396 ], |
400 }], | 397 }], |
401 ], | 398 ], |
402 } | 399 } |
OLD | NEW |