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 11 matching lines...) Expand all Loading... |
22 # allocator target; only the application (the final executable) | 22 # allocator target; only the application (the final executable) |
23 # knows what allocator makes sense. | 23 # knows what allocator makes sense. |
24 { | 24 { |
25 'target_name': 'allocator', | 25 'target_name': 'allocator', |
26 'type': 'static_library', | 26 'type': 'static_library', |
27 # Make sure the allocation library is optimized to | 27 # Make sure the allocation library is optimized to |
28 # the hilt in official builds. | 28 # the hilt in official builds. |
29 'variables': { | 29 'variables': { |
30 'optimize': 'max', | 30 'optimize': 'max', |
31 }, | 31 }, |
32 'include_dirs': [ | |
33 '.', | |
34 '<(tcmalloc_dir)/src/base', | |
35 '<(tcmalloc_dir)/src', | |
36 '../..', | |
37 ], | |
38 'direct_dependent_settings': { | 32 'direct_dependent_settings': { |
39 'configurations': { | 33 'configurations': { |
40 'Common_Base': { | 34 'Common_Base': { |
41 'msvs_settings': { | 35 'msvs_settings': { |
42 'VCLinkerTool': { | 36 'VCLinkerTool': { |
43 'IgnoreDefaultLibraryNames': ['libcmtd.lib', 'libcmt.lib'], | 37 'IgnoreDefaultLibraryNames': ['libcmtd.lib', 'libcmt.lib'], |
44 'AdditionalDependencies': [ | 38 'AdditionalDependencies': [ |
45 '<(SHARED_INTERMEDIATE_DIR)/allocator/libcmt.lib' | 39 '<(SHARED_INTERMEDIATE_DIR)/allocator/libcmt.lib' |
46 ], | 40 ], |
47 }, | 41 }, |
48 }, | 42 }, |
49 }, | 43 }, |
50 }, | 44 }, |
51 'conditions': [ | 45 'conditions': [ |
52 ['OS=="win"', { | 46 ['OS=="win"', { |
53 'defines': [ | 47 'defines': [ |
54 'PERFTOOLS_DLL_DECL=', | 48 'PERFTOOLS_DLL_DECL=', |
55 ], | 49 ], |
56 }], | 50 }], |
57 ], | 51 ], |
58 }, | 52 }, |
59 'sources': [ | |
60 # Generated for our configuration from tcmalloc's build | |
61 # and checked in. | |
62 '<(tcmalloc_dir)/src/config.h', | |
63 '<(tcmalloc_dir)/src/config_android.h', | |
64 '<(tcmalloc_dir)/src/config_linux.h', | |
65 '<(tcmalloc_dir)/src/config_win.h', | |
66 | |
67 # all tcmalloc native and forked files | |
68 '<(tcmalloc_dir)/src/addressmap-inl.h', | |
69 '<(tcmalloc_dir)/src/base/abort.cc', | |
70 '<(tcmalloc_dir)/src/base/abort.h', | |
71 '<(tcmalloc_dir)/src/base/arm_instruction_set_select.h', | |
72 '<(tcmalloc_dir)/src/base/atomicops-internals-linuxppc.h', | |
73 '<(tcmalloc_dir)/src/base/atomicops-internals-arm-generic.h', | |
74 '<(tcmalloc_dir)/src/base/atomicops-internals-arm-v6plus.h', | |
75 '<(tcmalloc_dir)/src/base/atomicops-internals-macosx.h', | |
76 '<(tcmalloc_dir)/src/base/atomicops-internals-windows.h', | |
77 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.cc', | |
78 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.h', | |
79 '<(tcmalloc_dir)/src/base/atomicops.h', | |
80 '<(tcmalloc_dir)/src/base/basictypes.h', | |
81 '<(tcmalloc_dir)/src/base/commandlineflags.h', | |
82 '<(tcmalloc_dir)/src/base/cycleclock.h', | |
83 # We don't list dynamic_annotations.c since its copy is already | |
84 # present in the dynamic_annotations target. | |
85 '<(tcmalloc_dir)/src/base/dynamic_annotations.h', | |
86 '<(tcmalloc_dir)/src/base/elf_mem_image.cc', | |
87 '<(tcmalloc_dir)/src/base/elf_mem_image.h', | |
88 '<(tcmalloc_dir)/src/base/elfcore.h', | |
89 '<(tcmalloc_dir)/src/base/googleinit.h', | |
90 '<(tcmalloc_dir)/src/base/linux_syscall_support.h', | |
91 '<(tcmalloc_dir)/src/base/linuxthreads.cc', | |
92 '<(tcmalloc_dir)/src/base/linuxthreads.h', | |
93 '<(tcmalloc_dir)/src/base/logging.cc', | |
94 '<(tcmalloc_dir)/src/base/logging.h', | |
95 '<(tcmalloc_dir)/src/base/low_level_alloc.cc', | |
96 '<(tcmalloc_dir)/src/base/low_level_alloc.h', | |
97 '<(tcmalloc_dir)/src/base/simple_mutex.h', | |
98 '<(tcmalloc_dir)/src/base/spinlock.cc', | |
99 '<(tcmalloc_dir)/src/base/spinlock.h', | |
100 '<(tcmalloc_dir)/src/base/spinlock_internal.cc', | |
101 '<(tcmalloc_dir)/src/base/spinlock_internal.h', | |
102 '<(tcmalloc_dir)/src/base/spinlock_linux-inl.h', | |
103 '<(tcmalloc_dir)/src/base/spinlock_posix-inl.h', | |
104 '<(tcmalloc_dir)/src/base/spinlock_win32-inl.h', | |
105 '<(tcmalloc_dir)/src/base/stl_allocator.h', | |
106 '<(tcmalloc_dir)/src/base/synchronization_profiling.h', | |
107 '<(tcmalloc_dir)/src/base/sysinfo.cc', | |
108 '<(tcmalloc_dir)/src/base/sysinfo.h', | |
109 '<(tcmalloc_dir)/src/base/thread_annotations.h', | |
110 '<(tcmalloc_dir)/src/base/thread_lister.c', | |
111 '<(tcmalloc_dir)/src/base/thread_lister.h', | |
112 '<(tcmalloc_dir)/src/base/vdso_support.cc', | |
113 '<(tcmalloc_dir)/src/base/vdso_support.h', | |
114 '<(tcmalloc_dir)/src/central_freelist.cc', | |
115 '<(tcmalloc_dir)/src/central_freelist.h', | |
116 '<(tcmalloc_dir)/src/common.cc', | |
117 '<(tcmalloc_dir)/src/common.h', | |
118 '<(tcmalloc_dir)/src/debugallocation.cc', | |
119 '<(tcmalloc_dir)/src/deep-heap-profile.cc', | |
120 '<(tcmalloc_dir)/src/deep-heap-profile.h', | |
121 '<(tcmalloc_dir)/src/free_list.cc', | |
122 '<(tcmalloc_dir)/src/free_list.h', | |
123 '<(tcmalloc_dir)/src/getpc.h', | |
124 '<(tcmalloc_dir)/src/gperftools/heap-checker.h', | |
125 '<(tcmalloc_dir)/src/gperftools/heap-profiler.h', | |
126 '<(tcmalloc_dir)/src/gperftools/malloc_extension.h', | |
127 '<(tcmalloc_dir)/src/gperftools/malloc_extension_c.h', | |
128 '<(tcmalloc_dir)/src/gperftools/malloc_hook.h', | |
129 '<(tcmalloc_dir)/src/gperftools/malloc_hook_c.h', | |
130 '<(tcmalloc_dir)/src/gperftools/profiler.h', | |
131 '<(tcmalloc_dir)/src/gperftools/stacktrace.h', | |
132 '<(tcmalloc_dir)/src/gperftools/tcmalloc.h', | |
133 '<(tcmalloc_dir)/src/heap-checker-bcad.cc', | |
134 '<(tcmalloc_dir)/src/heap-checker.cc', | |
135 '<(tcmalloc_dir)/src/heap-profile-table.cc', | |
136 '<(tcmalloc_dir)/src/heap-profile-table.h', | |
137 '<(tcmalloc_dir)/src/heap-profiler.cc', | |
138 '<(tcmalloc_dir)/src/internal_logging.cc', | |
139 '<(tcmalloc_dir)/src/internal_logging.h', | |
140 '<(tcmalloc_dir)/src/libc_override.h', | |
141 '<(tcmalloc_dir)/src/libc_override_gcc_and_weak.h', | |
142 '<(tcmalloc_dir)/src/libc_override_glibc.h', | |
143 '<(tcmalloc_dir)/src/libc_override_osx.h', | |
144 '<(tcmalloc_dir)/src/libc_override_redefine.h', | |
145 '<(tcmalloc_dir)/src/linked_list.h', | |
146 '<(tcmalloc_dir)/src/malloc_extension.cc', | |
147 '<(tcmalloc_dir)/src/malloc_hook-inl.h', | |
148 '<(tcmalloc_dir)/src/malloc_hook.cc', | |
149 '<(tcmalloc_dir)/src/malloc_hook_mmap_freebsd.h', | |
150 '<(tcmalloc_dir)/src/malloc_hook_mmap_linux.h', | |
151 '<(tcmalloc_dir)/src/maybe_threads.cc', | |
152 '<(tcmalloc_dir)/src/maybe_threads.h', | |
153 '<(tcmalloc_dir)/src/memfs_malloc.cc', | |
154 '<(tcmalloc_dir)/src/memory_region_map.cc', | |
155 '<(tcmalloc_dir)/src/memory_region_map.h', | |
156 '<(tcmalloc_dir)/src/packed-cache-inl.h', | |
157 '<(tcmalloc_dir)/src/page_heap.cc', | |
158 '<(tcmalloc_dir)/src/page_heap.h', | |
159 '<(tcmalloc_dir)/src/page_heap_allocator.h', | |
160 '<(tcmalloc_dir)/src/pagemap.h', | |
161 '<(tcmalloc_dir)/src/profile-handler.cc', | |
162 '<(tcmalloc_dir)/src/profile-handler.h', | |
163 '<(tcmalloc_dir)/src/profiledata.cc', | |
164 '<(tcmalloc_dir)/src/profiledata.h', | |
165 '<(tcmalloc_dir)/src/profiler.cc', | |
166 '<(tcmalloc_dir)/src/raw_printer.cc', | |
167 '<(tcmalloc_dir)/src/raw_printer.h', | |
168 '<(tcmalloc_dir)/src/sampler.cc', | |
169 '<(tcmalloc_dir)/src/sampler.h', | |
170 '<(tcmalloc_dir)/src/span.cc', | |
171 '<(tcmalloc_dir)/src/span.h', | |
172 '<(tcmalloc_dir)/src/stack_trace_table.cc', | |
173 '<(tcmalloc_dir)/src/stack_trace_table.h', | |
174 '<(tcmalloc_dir)/src/stacktrace.cc', | |
175 '<(tcmalloc_dir)/src/stacktrace_arm-inl.h', | |
176 '<(tcmalloc_dir)/src/stacktrace_config.h', | |
177 '<(tcmalloc_dir)/src/stacktrace_generic-inl.h', | |
178 '<(tcmalloc_dir)/src/stacktrace_libunwind-inl.h', | |
179 '<(tcmalloc_dir)/src/stacktrace_powerpc-inl.h', | |
180 '<(tcmalloc_dir)/src/stacktrace_win32-inl.h', | |
181 '<(tcmalloc_dir)/src/stacktrace_with_context.cc', | |
182 '<(tcmalloc_dir)/src/stacktrace_x86-inl.h', | |
183 '<(tcmalloc_dir)/src/static_vars.cc', | |
184 '<(tcmalloc_dir)/src/static_vars.h', | |
185 '<(tcmalloc_dir)/src/symbolize.cc', | |
186 '<(tcmalloc_dir)/src/symbolize.h', | |
187 '<(tcmalloc_dir)/src/system-alloc.cc', | |
188 '<(tcmalloc_dir)/src/system-alloc.h', | |
189 '<(tcmalloc_dir)/src/tcmalloc.cc', | |
190 '<(tcmalloc_dir)/src/tcmalloc_guard.h', | |
191 '<(tcmalloc_dir)/src/thread_cache.cc', | |
192 '<(tcmalloc_dir)/src/thread_cache.h', | |
193 '<(tcmalloc_dir)/src/windows/config.h', | |
194 '<(tcmalloc_dir)/src/windows/get_mangled_names.cc', | |
195 '<(tcmalloc_dir)/src/windows/gperftools/tcmalloc.h', | |
196 '<(tcmalloc_dir)/src/windows/ia32_modrm_map.cc', | |
197 '<(tcmalloc_dir)/src/windows/ia32_opcode_map.cc', | |
198 '<(tcmalloc_dir)/src/windows/mingw.h', | |
199 '<(tcmalloc_dir)/src/windows/mini_disassembler.cc', | |
200 '<(tcmalloc_dir)/src/windows/mini_disassembler.h', | |
201 '<(tcmalloc_dir)/src/windows/mini_disassembler_types.h', | |
202 '<(tcmalloc_dir)/src/windows/override_functions.cc', | |
203 '<(tcmalloc_dir)/src/windows/patch_functions.cc', | |
204 '<(tcmalloc_dir)/src/windows/port.cc', | |
205 '<(tcmalloc_dir)/src/windows/port.h', | |
206 '<(tcmalloc_dir)/src/windows/preamble_patcher.cc', | |
207 '<(tcmalloc_dir)/src/windows/preamble_patcher.h', | |
208 '<(tcmalloc_dir)/src/windows/preamble_patcher_with_stub.cc', | |
209 | |
210 'allocator_shim.cc', | |
211 'allocator_shim.h', | |
212 'debugallocation_shim.cc', | |
213 'generic_allocators.cc', | |
214 'win_allocator.cc', | |
215 ], | |
216 # sources! means that these are not compiled directly. | |
217 'sources!': [ | |
218 # Included by allocator_shim.cc for maximal inlining. | |
219 'generic_allocators.cc', | |
220 'win_allocator.cc', | |
221 | |
222 # Included by debugallocation_shim.cc. | |
223 '<(tcmalloc_dir)/src/debugallocation.cc', | |
224 '<(tcmalloc_dir)/src/tcmalloc.cc', | |
225 | |
226 # We simply don't use these, but list them above so that IDE | |
227 # users can view the full available source for reference, etc. | |
228 '<(tcmalloc_dir)/src/addressmap-inl.h', | |
229 '<(tcmalloc_dir)/src/base/atomicops-internals-linuxppc.h', | |
230 '<(tcmalloc_dir)/src/base/atomicops-internals-macosx.h', | |
231 '<(tcmalloc_dir)/src/base/atomicops-internals-x86-msvc.h', | |
232 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.cc', | |
233 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.h', | |
234 '<(tcmalloc_dir)/src/base/atomicops.h', | |
235 '<(tcmalloc_dir)/src/base/basictypes.h', | |
236 '<(tcmalloc_dir)/src/base/commandlineflags.h', | |
237 '<(tcmalloc_dir)/src/base/cycleclock.h', | |
238 '<(tcmalloc_dir)/src/base/elf_mem_image.h', | |
239 '<(tcmalloc_dir)/src/base/elfcore.h', | |
240 '<(tcmalloc_dir)/src/base/googleinit.h', | |
241 '<(tcmalloc_dir)/src/base/linux_syscall_support.h', | |
242 '<(tcmalloc_dir)/src/base/simple_mutex.h', | |
243 '<(tcmalloc_dir)/src/base/spinlock_linux-inl.h', | |
244 '<(tcmalloc_dir)/src/base/spinlock_posix-inl.h', | |
245 '<(tcmalloc_dir)/src/base/spinlock_win32-inl.h', | |
246 '<(tcmalloc_dir)/src/base/stl_allocator.h', | |
247 '<(tcmalloc_dir)/src/base/thread_annotations.h', | |
248 '<(tcmalloc_dir)/src/getpc.h', | |
249 '<(tcmalloc_dir)/src/gperftools/heap-checker.h', | |
250 '<(tcmalloc_dir)/src/gperftools/heap-profiler.h', | |
251 '<(tcmalloc_dir)/src/gperftools/malloc_extension.h', | |
252 '<(tcmalloc_dir)/src/gperftools/malloc_extension_c.h', | |
253 '<(tcmalloc_dir)/src/gperftools/malloc_hook.h', | |
254 '<(tcmalloc_dir)/src/gperftools/malloc_hook_c.h', | |
255 '<(tcmalloc_dir)/src/gperftools/profiler.h', | |
256 '<(tcmalloc_dir)/src/gperftools/stacktrace.h', | |
257 '<(tcmalloc_dir)/src/gperftools/tcmalloc.h', | |
258 '<(tcmalloc_dir)/src/heap-checker-bcad.cc', | |
259 '<(tcmalloc_dir)/src/heap-checker.cc', | |
260 '<(tcmalloc_dir)/src/libc_override.h', | |
261 '<(tcmalloc_dir)/src/libc_override_gcc_and_weak.h', | |
262 '<(tcmalloc_dir)/src/libc_override_glibc.h', | |
263 '<(tcmalloc_dir)/src/libc_override_osx.h', | |
264 '<(tcmalloc_dir)/src/libc_override_redefine.h', | |
265 '<(tcmalloc_dir)/src/malloc_hook_mmap_freebsd.h', | |
266 '<(tcmalloc_dir)/src/malloc_hook_mmap_linux.h', | |
267 '<(tcmalloc_dir)/src/memfs_malloc.cc', | |
268 '<(tcmalloc_dir)/src/packed-cache-inl.h', | |
269 '<(tcmalloc_dir)/src/page_heap_allocator.h', | |
270 '<(tcmalloc_dir)/src/pagemap.h', | |
271 '<(tcmalloc_dir)/src/stacktrace_arm-inl.h', | |
272 '<(tcmalloc_dir)/src/stacktrace_config.h', | |
273 '<(tcmalloc_dir)/src/stacktrace_generic-inl.h', | |
274 '<(tcmalloc_dir)/src/stacktrace_libunwind-inl.h', | |
275 '<(tcmalloc_dir)/src/stacktrace_powerpc-inl.h', | |
276 '<(tcmalloc_dir)/src/stacktrace_win32-inl.h', | |
277 '<(tcmalloc_dir)/src/stacktrace_with_context.cc', | |
278 '<(tcmalloc_dir)/src/stacktrace_x86-inl.h', | |
279 '<(tcmalloc_dir)/src/tcmalloc_guard.h', | |
280 '<(tcmalloc_dir)/src/windows/config.h', | |
281 '<(tcmalloc_dir)/src/windows/gperftools/tcmalloc.h', | |
282 '<(tcmalloc_dir)/src/windows/get_mangled_names.cc', | |
283 '<(tcmalloc_dir)/src/windows/ia32_modrm_map.cc', | |
284 '<(tcmalloc_dir)/src/windows/ia32_opcode_map.cc', | |
285 '<(tcmalloc_dir)/src/windows/mingw.h', | |
286 '<(tcmalloc_dir)/src/windows/mini_disassembler.cc', | |
287 '<(tcmalloc_dir)/src/windows/mini_disassembler.h', | |
288 '<(tcmalloc_dir)/src/windows/mini_disassembler_types.h', | |
289 '<(tcmalloc_dir)/src/windows/override_functions.cc', | |
290 '<(tcmalloc_dir)/src/windows/patch_functions.cc', | |
291 '<(tcmalloc_dir)/src/windows/preamble_patcher.cc', | |
292 '<(tcmalloc_dir)/src/windows/preamble_patcher.h', | |
293 '<(tcmalloc_dir)/src/windows/preamble_patcher_with_stub.cc', | |
294 ], | |
295 'dependencies': [ | 53 'dependencies': [ |
296 '../third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_anno
tations', | 54 '../third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_anno
tations', |
297 ], | 55 ], |
298 'msvs_settings': { | 56 'msvs_settings': { |
299 # TODO(sgk): merge this with build/common.gypi settings | 57 # TODO(sgk): merge this with build/common.gypi settings |
300 'VCLibrarianTool': { | 58 'VCLibrarianTool': { |
301 'AdditionalOptions': ['/ignore:4006,4221'], | 59 'AdditionalOptions': ['/ignore:4006,4221'], |
302 }, | 60 }, |
303 'VCLinkerTool': { | 61 'VCLinkerTool': { |
304 'AdditionalOptions': ['/ignore:4006'], | 62 'AdditionalOptions': ['/ignore:4006'], |
(...skipping 17 matching lines...) Expand all Loading... |
322 ['disable_debugallocation==0 and OS!="win"', { | 80 ['disable_debugallocation==0 and OS!="win"', { |
323 'defines': [ | 81 'defines': [ |
324 # Use debugallocation for Debug builds to catch problems early | 82 # Use debugallocation for Debug builds to catch problems early |
325 # and cleanly, http://crbug.com/30715 . | 83 # and cleanly, http://crbug.com/30715 . |
326 'TCMALLOC_FOR_DEBUGALLOCATION', | 84 'TCMALLOC_FOR_DEBUGALLOCATION', |
327 ], | 85 ], |
328 }], | 86 }], |
329 ], | 87 ], |
330 }, | 88 }, |
331 }, | 89 }, |
332 # Disable the heap checker in tcmalloc. | |
333 'defines': [ | |
334 'NO_HEAP_CHECK', | |
335 ], | |
336 'conditions': [ | 90 'conditions': [ |
| 91 ['use_allocator=="tcmalloc"', { |
| 92 # Disable the heap checker in tcmalloc. |
| 93 'defines': [ |
| 94 'NO_HEAP_CHECK', |
| 95 ], |
| 96 'include_dirs': [ |
| 97 '.', |
| 98 '<(tcmalloc_dir)/src/base', |
| 99 '<(tcmalloc_dir)/src', |
| 100 '../..', |
| 101 ], |
| 102 'sources': [ |
| 103 # Generated for our configuration from tcmalloc's build |
| 104 # and checked in. |
| 105 '<(tcmalloc_dir)/src/config.h', |
| 106 '<(tcmalloc_dir)/src/config_android.h', |
| 107 '<(tcmalloc_dir)/src/config_linux.h', |
| 108 '<(tcmalloc_dir)/src/config_win.h', |
| 109 |
| 110 # all tcmalloc native and forked files |
| 111 '<(tcmalloc_dir)/src/addressmap-inl.h', |
| 112 '<(tcmalloc_dir)/src/base/abort.cc', |
| 113 '<(tcmalloc_dir)/src/base/abort.h', |
| 114 '<(tcmalloc_dir)/src/base/arm_instruction_set_select.h', |
| 115 '<(tcmalloc_dir)/src/base/atomicops-internals-linuxppc.h', |
| 116 '<(tcmalloc_dir)/src/base/atomicops-internals-arm-generic.h', |
| 117 '<(tcmalloc_dir)/src/base/atomicops-internals-arm-v6plus.h', |
| 118 '<(tcmalloc_dir)/src/base/atomicops-internals-macosx.h', |
| 119 '<(tcmalloc_dir)/src/base/atomicops-internals-windows.h', |
| 120 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.cc', |
| 121 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.h', |
| 122 '<(tcmalloc_dir)/src/base/atomicops.h', |
| 123 '<(tcmalloc_dir)/src/base/basictypes.h', |
| 124 '<(tcmalloc_dir)/src/base/commandlineflags.h', |
| 125 '<(tcmalloc_dir)/src/base/cycleclock.h', |
| 126 # We don't list dynamic_annotations.c since its copy is already |
| 127 # present in the dynamic_annotations target. |
| 128 '<(tcmalloc_dir)/src/base/dynamic_annotations.h', |
| 129 '<(tcmalloc_dir)/src/base/elf_mem_image.cc', |
| 130 '<(tcmalloc_dir)/src/base/elf_mem_image.h', |
| 131 '<(tcmalloc_dir)/src/base/elfcore.h', |
| 132 '<(tcmalloc_dir)/src/base/googleinit.h', |
| 133 '<(tcmalloc_dir)/src/base/linux_syscall_support.h', |
| 134 '<(tcmalloc_dir)/src/base/linuxthreads.cc', |
| 135 '<(tcmalloc_dir)/src/base/linuxthreads.h', |
| 136 '<(tcmalloc_dir)/src/base/logging.cc', |
| 137 '<(tcmalloc_dir)/src/base/logging.h', |
| 138 '<(tcmalloc_dir)/src/base/low_level_alloc.cc', |
| 139 '<(tcmalloc_dir)/src/base/low_level_alloc.h', |
| 140 '<(tcmalloc_dir)/src/base/simple_mutex.h', |
| 141 '<(tcmalloc_dir)/src/base/spinlock.cc', |
| 142 '<(tcmalloc_dir)/src/base/spinlock.h', |
| 143 '<(tcmalloc_dir)/src/base/spinlock_internal.cc', |
| 144 '<(tcmalloc_dir)/src/base/spinlock_internal.h', |
| 145 '<(tcmalloc_dir)/src/base/spinlock_linux-inl.h', |
| 146 '<(tcmalloc_dir)/src/base/spinlock_posix-inl.h', |
| 147 '<(tcmalloc_dir)/src/base/spinlock_win32-inl.h', |
| 148 '<(tcmalloc_dir)/src/base/stl_allocator.h', |
| 149 '<(tcmalloc_dir)/src/base/synchronization_profiling.h', |
| 150 '<(tcmalloc_dir)/src/base/sysinfo.cc', |
| 151 '<(tcmalloc_dir)/src/base/sysinfo.h', |
| 152 '<(tcmalloc_dir)/src/base/thread_annotations.h', |
| 153 '<(tcmalloc_dir)/src/base/thread_lister.c', |
| 154 '<(tcmalloc_dir)/src/base/thread_lister.h', |
| 155 '<(tcmalloc_dir)/src/base/vdso_support.cc', |
| 156 '<(tcmalloc_dir)/src/base/vdso_support.h', |
| 157 '<(tcmalloc_dir)/src/central_freelist.cc', |
| 158 '<(tcmalloc_dir)/src/central_freelist.h', |
| 159 '<(tcmalloc_dir)/src/common.cc', |
| 160 '<(tcmalloc_dir)/src/common.h', |
| 161 '<(tcmalloc_dir)/src/debugallocation.cc', |
| 162 '<(tcmalloc_dir)/src/deep-heap-profile.cc', |
| 163 '<(tcmalloc_dir)/src/deep-heap-profile.h', |
| 164 '<(tcmalloc_dir)/src/free_list.cc', |
| 165 '<(tcmalloc_dir)/src/free_list.h', |
| 166 '<(tcmalloc_dir)/src/getpc.h', |
| 167 '<(tcmalloc_dir)/src/gperftools/heap-checker.h', |
| 168 '<(tcmalloc_dir)/src/gperftools/heap-profiler.h', |
| 169 '<(tcmalloc_dir)/src/gperftools/malloc_extension.h', |
| 170 '<(tcmalloc_dir)/src/gperftools/malloc_extension_c.h', |
| 171 '<(tcmalloc_dir)/src/gperftools/malloc_hook.h', |
| 172 '<(tcmalloc_dir)/src/gperftools/malloc_hook_c.h', |
| 173 '<(tcmalloc_dir)/src/gperftools/profiler.h', |
| 174 '<(tcmalloc_dir)/src/gperftools/stacktrace.h', |
| 175 '<(tcmalloc_dir)/src/gperftools/tcmalloc.h', |
| 176 '<(tcmalloc_dir)/src/heap-checker-bcad.cc', |
| 177 '<(tcmalloc_dir)/src/heap-checker.cc', |
| 178 '<(tcmalloc_dir)/src/heap-profile-table.cc', |
| 179 '<(tcmalloc_dir)/src/heap-profile-table.h', |
| 180 '<(tcmalloc_dir)/src/heap-profiler.cc', |
| 181 '<(tcmalloc_dir)/src/internal_logging.cc', |
| 182 '<(tcmalloc_dir)/src/internal_logging.h', |
| 183 '<(tcmalloc_dir)/src/libc_override.h', |
| 184 '<(tcmalloc_dir)/src/libc_override_gcc_and_weak.h', |
| 185 '<(tcmalloc_dir)/src/libc_override_glibc.h', |
| 186 '<(tcmalloc_dir)/src/libc_override_osx.h', |
| 187 '<(tcmalloc_dir)/src/libc_override_redefine.h', |
| 188 '<(tcmalloc_dir)/src/linked_list.h', |
| 189 '<(tcmalloc_dir)/src/malloc_extension.cc', |
| 190 '<(tcmalloc_dir)/src/malloc_hook-inl.h', |
| 191 '<(tcmalloc_dir)/src/malloc_hook.cc', |
| 192 '<(tcmalloc_dir)/src/malloc_hook_mmap_freebsd.h', |
| 193 '<(tcmalloc_dir)/src/malloc_hook_mmap_linux.h', |
| 194 '<(tcmalloc_dir)/src/maybe_threads.cc', |
| 195 '<(tcmalloc_dir)/src/maybe_threads.h', |
| 196 '<(tcmalloc_dir)/src/memfs_malloc.cc', |
| 197 '<(tcmalloc_dir)/src/memory_region_map.cc', |
| 198 '<(tcmalloc_dir)/src/memory_region_map.h', |
| 199 '<(tcmalloc_dir)/src/packed-cache-inl.h', |
| 200 '<(tcmalloc_dir)/src/page_heap.cc', |
| 201 '<(tcmalloc_dir)/src/page_heap.h', |
| 202 '<(tcmalloc_dir)/src/page_heap_allocator.h', |
| 203 '<(tcmalloc_dir)/src/pagemap.h', |
| 204 '<(tcmalloc_dir)/src/profile-handler.cc', |
| 205 '<(tcmalloc_dir)/src/profile-handler.h', |
| 206 '<(tcmalloc_dir)/src/profiledata.cc', |
| 207 '<(tcmalloc_dir)/src/profiledata.h', |
| 208 '<(tcmalloc_dir)/src/profiler.cc', |
| 209 '<(tcmalloc_dir)/src/raw_printer.cc', |
| 210 '<(tcmalloc_dir)/src/raw_printer.h', |
| 211 '<(tcmalloc_dir)/src/sampler.cc', |
| 212 '<(tcmalloc_dir)/src/sampler.h', |
| 213 '<(tcmalloc_dir)/src/span.cc', |
| 214 '<(tcmalloc_dir)/src/span.h', |
| 215 '<(tcmalloc_dir)/src/stack_trace_table.cc', |
| 216 '<(tcmalloc_dir)/src/stack_trace_table.h', |
| 217 '<(tcmalloc_dir)/src/stacktrace.cc', |
| 218 '<(tcmalloc_dir)/src/stacktrace_arm-inl.h', |
| 219 '<(tcmalloc_dir)/src/stacktrace_config.h', |
| 220 '<(tcmalloc_dir)/src/stacktrace_generic-inl.h', |
| 221 '<(tcmalloc_dir)/src/stacktrace_libunwind-inl.h', |
| 222 '<(tcmalloc_dir)/src/stacktrace_powerpc-inl.h', |
| 223 '<(tcmalloc_dir)/src/stacktrace_win32-inl.h', |
| 224 '<(tcmalloc_dir)/src/stacktrace_with_context.cc', |
| 225 '<(tcmalloc_dir)/src/stacktrace_x86-inl.h', |
| 226 '<(tcmalloc_dir)/src/static_vars.cc', |
| 227 '<(tcmalloc_dir)/src/static_vars.h', |
| 228 '<(tcmalloc_dir)/src/symbolize.cc', |
| 229 '<(tcmalloc_dir)/src/symbolize.h', |
| 230 '<(tcmalloc_dir)/src/system-alloc.cc', |
| 231 '<(tcmalloc_dir)/src/system-alloc.h', |
| 232 '<(tcmalloc_dir)/src/tcmalloc.cc', |
| 233 '<(tcmalloc_dir)/src/tcmalloc_guard.h', |
| 234 '<(tcmalloc_dir)/src/thread_cache.cc', |
| 235 '<(tcmalloc_dir)/src/thread_cache.h', |
| 236 |
| 237 'debugallocation_shim.cc', |
| 238 ], |
| 239 # sources! means that these are not compiled directly. |
| 240 'sources!': [ |
| 241 # We simply don't use these, but list them above so that IDE |
| 242 # users can view the full available source for reference, etc. |
| 243 '<(tcmalloc_dir)/src/addressmap-inl.h', |
| 244 '<(tcmalloc_dir)/src/base/atomicops-internals-linuxppc.h', |
| 245 '<(tcmalloc_dir)/src/base/atomicops-internals-macosx.h', |
| 246 '<(tcmalloc_dir)/src/base/atomicops-internals-x86-msvc.h', |
| 247 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.cc', |
| 248 '<(tcmalloc_dir)/src/base/atomicops-internals-x86.h', |
| 249 '<(tcmalloc_dir)/src/base/atomicops.h', |
| 250 '<(tcmalloc_dir)/src/base/basictypes.h', |
| 251 '<(tcmalloc_dir)/src/base/commandlineflags.h', |
| 252 '<(tcmalloc_dir)/src/base/cycleclock.h', |
| 253 '<(tcmalloc_dir)/src/base/elf_mem_image.h', |
| 254 '<(tcmalloc_dir)/src/base/elfcore.h', |
| 255 '<(tcmalloc_dir)/src/base/googleinit.h', |
| 256 '<(tcmalloc_dir)/src/base/linux_syscall_support.h', |
| 257 '<(tcmalloc_dir)/src/base/simple_mutex.h', |
| 258 '<(tcmalloc_dir)/src/base/spinlock_linux-inl.h', |
| 259 '<(tcmalloc_dir)/src/base/spinlock_posix-inl.h', |
| 260 '<(tcmalloc_dir)/src/base/spinlock_win32-inl.h', |
| 261 '<(tcmalloc_dir)/src/base/stl_allocator.h', |
| 262 '<(tcmalloc_dir)/src/base/thread_annotations.h', |
| 263 '<(tcmalloc_dir)/src/getpc.h', |
| 264 '<(tcmalloc_dir)/src/gperftools/heap-checker.h', |
| 265 '<(tcmalloc_dir)/src/gperftools/heap-profiler.h', |
| 266 '<(tcmalloc_dir)/src/gperftools/malloc_extension.h', |
| 267 '<(tcmalloc_dir)/src/gperftools/malloc_extension_c.h', |
| 268 '<(tcmalloc_dir)/src/gperftools/malloc_hook.h', |
| 269 '<(tcmalloc_dir)/src/gperftools/malloc_hook_c.h', |
| 270 '<(tcmalloc_dir)/src/gperftools/profiler.h', |
| 271 '<(tcmalloc_dir)/src/gperftools/stacktrace.h', |
| 272 '<(tcmalloc_dir)/src/gperftools/tcmalloc.h', |
| 273 '<(tcmalloc_dir)/src/heap-checker-bcad.cc', |
| 274 '<(tcmalloc_dir)/src/heap-checker.cc', |
| 275 '<(tcmalloc_dir)/src/libc_override.h', |
| 276 '<(tcmalloc_dir)/src/libc_override_gcc_and_weak.h', |
| 277 '<(tcmalloc_dir)/src/libc_override_glibc.h', |
| 278 '<(tcmalloc_dir)/src/libc_override_osx.h', |
| 279 '<(tcmalloc_dir)/src/libc_override_redefine.h', |
| 280 '<(tcmalloc_dir)/src/malloc_hook_mmap_freebsd.h', |
| 281 '<(tcmalloc_dir)/src/malloc_hook_mmap_linux.h', |
| 282 '<(tcmalloc_dir)/src/memfs_malloc.cc', |
| 283 '<(tcmalloc_dir)/src/packed-cache-inl.h', |
| 284 '<(tcmalloc_dir)/src/page_heap_allocator.h', |
| 285 '<(tcmalloc_dir)/src/pagemap.h', |
| 286 '<(tcmalloc_dir)/src/stacktrace_arm-inl.h', |
| 287 '<(tcmalloc_dir)/src/stacktrace_config.h', |
| 288 '<(tcmalloc_dir)/src/stacktrace_generic-inl.h', |
| 289 '<(tcmalloc_dir)/src/stacktrace_libunwind-inl.h', |
| 290 '<(tcmalloc_dir)/src/stacktrace_powerpc-inl.h', |
| 291 '<(tcmalloc_dir)/src/stacktrace_win32-inl.h', |
| 292 '<(tcmalloc_dir)/src/stacktrace_with_context.cc', |
| 293 '<(tcmalloc_dir)/src/stacktrace_x86-inl.h', |
| 294 '<(tcmalloc_dir)/src/tcmalloc_guard.h', |
| 295 |
| 296 # Included by debugallocation_shim.cc. |
| 297 '<(tcmalloc_dir)/src/debugallocation.cc', |
| 298 '<(tcmalloc_dir)/src/tcmalloc.cc', |
| 299 ] |
| 300 },{ |
| 301 'include_dirs': [ |
| 302 '.', |
| 303 '../..', |
| 304 ], |
| 305 }], |
337 ['OS=="linux" and clang_type_profiler==1', { | 306 ['OS=="linux" and clang_type_profiler==1', { |
338 'dependencies': [ | 307 'dependencies': [ |
339 'type_profiler_tcmalloc', | 308 'type_profiler_tcmalloc', |
340 ], | 309 ], |
341 # It is undoing dependencies and cflags_cc for type_profiler which | 310 # It is undoing dependencies and cflags_cc for type_profiler which |
342 # build/common.gypi injects into all targets. | 311 # build/common.gypi injects into all targets. |
343 'dependencies!': [ | 312 'dependencies!': [ |
344 'type_profiler', | 313 'type_profiler', |
345 ], | 314 ], |
346 'cflags_cc!': [ | 315 'cflags_cc!': [ |
347 '-fintercept-allocation-functions', | 316 '-fintercept-allocation-functions', |
348 ], | 317 ], |
349 }], | 318 }], |
350 ['OS=="win"', { | 319 ['OS=="win"', { |
351 'defines': [ | |
352 'PERFTOOLS_DLL_DECL=', | |
353 ], | |
354 'defines!': [ | |
355 # tcmalloc source files unconditionally define this, remove it from | |
356 # the list of defines that common.gypi defines globally. | |
357 'NOMINMAX', | |
358 ], | |
359 'dependencies': [ | 320 'dependencies': [ |
360 'libcmt', | 321 'libcmt', |
361 ], | 322 ], |
362 'include_dirs': [ | 323 'sources': [ |
363 '<(tcmalloc_dir)/src/windows', | 324 'allocator_shim.cc', |
| 325 'generic_allocators.cc', |
| 326 'win_allocator.cc', |
364 ], | 327 ], |
| 328 # sources! means that these are not compiled directly. |
365 'sources!': [ | 329 'sources!': [ |
366 '<(tcmalloc_dir)/src/base/elf_mem_image.cc', | 330 # Included by allocator_shim.cc for maximal inlining. |
367 '<(tcmalloc_dir)/src/base/elf_mem_image.h', | 331 'generic_allocators.cc', |
368 '<(tcmalloc_dir)/src/base/linuxthreads.cc', | 332 'win_allocator.cc', |
369 '<(tcmalloc_dir)/src/base/linuxthreads.h', | |
370 '<(tcmalloc_dir)/src/base/vdso_support.cc', | |
371 '<(tcmalloc_dir)/src/base/vdso_support.h', | |
372 '<(tcmalloc_dir)/src/maybe_threads.cc', | |
373 '<(tcmalloc_dir)/src/maybe_threads.h', | |
374 '<(tcmalloc_dir)/src/symbolize.h', | |
375 '<(tcmalloc_dir)/src/system-alloc.cc', | |
376 '<(tcmalloc_dir)/src/system-alloc.h', | |
377 | |
378 # included by allocator_shim.cc | |
379 'debugallocation_shim.cc', | |
380 ], | 333 ], |
381 }], | 334 }], |
382 ['OS=="win" or profiling!=1', { | 335 ['profiling!=1', { |
383 'sources!': [ | 336 'sources!': [ |
384 # cpuprofiler | 337 # cpuprofiler |
385 '<(tcmalloc_dir)/src/base/thread_lister.c', | 338 '<(tcmalloc_dir)/src/base/thread_lister.c', |
386 '<(tcmalloc_dir)/src/base/thread_lister.h', | 339 '<(tcmalloc_dir)/src/base/thread_lister.h', |
387 '<(tcmalloc_dir)/src/profiledata.cc', | 340 '<(tcmalloc_dir)/src/profiledata.cc', |
388 '<(tcmalloc_dir)/src/profiledata.h', | 341 '<(tcmalloc_dir)/src/profiledata.h', |
389 '<(tcmalloc_dir)/src/profile-handler.cc', | 342 '<(tcmalloc_dir)/src/profile-handler.cc', |
390 '<(tcmalloc_dir)/src/profile-handler.h', | 343 '<(tcmalloc_dir)/src/profile-handler.h', |
391 '<(tcmalloc_dir)/src/profiler.cc', | 344 '<(tcmalloc_dir)/src/profiler.cc', |
392 ], | 345 ], |
393 }], | 346 }], |
394 ['OS=="linux" or OS=="freebsd" or OS=="solaris" or OS=="android"', { | 347 ['OS=="linux" or OS=="freebsd" or OS=="solaris" or OS=="android"', { |
395 'sources!': [ | 348 'sources!': [ |
396 '<(tcmalloc_dir)/src/system-alloc.h', | 349 '<(tcmalloc_dir)/src/system-alloc.h', |
397 '<(tcmalloc_dir)/src/windows/port.cc', | |
398 '<(tcmalloc_dir)/src/windows/port.h', | |
399 | |
400 # TODO(willchan): Support allocator shim later on. | |
401 'allocator_shim.cc', | |
402 ], | 350 ], |
403 # We enable all warnings by default, but upstream disables a few. | 351 # We enable all warnings by default, but upstream disables a few. |
404 # Keep "-Wno-*" flags in sync with upstream by comparing against: | 352 # Keep "-Wno-*" flags in sync with upstream by comparing against: |
405 # http://code.google.com/p/google-perftools/source/browse/trunk/Makefi
le.am | 353 # http://code.google.com/p/google-perftools/source/browse/trunk/Makefi
le.am |
406 'cflags': [ | 354 'cflags': [ |
407 '-Wno-sign-compare', | 355 '-Wno-sign-compare', |
408 '-Wno-unused-result', | 356 '-Wno-unused-result', |
409 ], | 357 ], |
410 'cflags!': [ | 358 'cflags!': [ |
411 '-fvisibility=hidden', | 359 '-fvisibility=hidden', |
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
501 '<(tcmalloc_dir)/src/base', | 449 '<(tcmalloc_dir)/src/base', |
502 '<(tcmalloc_dir)/src', | 450 '<(tcmalloc_dir)/src', |
503 '../..', | 451 '../..', |
504 ], | 452 ], |
505 'sources': [ | 453 'sources': [ |
506 'allocator_unittest.cc', | 454 'allocator_unittest.cc', |
507 '../profiler/alternate_timer.cc', | 455 '../profiler/alternate_timer.cc', |
508 '../profiler/alternate_timer.h', | 456 '../profiler/alternate_timer.h', |
509 ], | 457 ], |
510 }, | 458 }, |
511 { | |
512 'target_name': 'tcmalloc_unittest', | |
513 'type': 'executable', | |
514 'sources': [ | |
515 'tcmalloc_unittest.cc', | |
516 ], | |
517 'include_dirs': [ | |
518 '../..', | |
519 # For constants of TCMalloc. | |
520 '<(tcmalloc_dir)/src', | |
521 ], | |
522 'dependencies': [ | |
523 '../../testing/gtest.gyp:gtest', | |
524 '../base.gyp:base', | |
525 'allocator', | |
526 ], | |
527 }, | |
528 ], | 459 ], |
529 }], | 460 }], |
530 ['OS=="win" and target_arch=="ia32"', { | 461 ['OS=="win" and target_arch=="ia32"', { |
531 'targets': [ | 462 'targets': [ |
532 { | 463 { |
533 'target_name': 'allocator_extension_thunks_win64', | 464 'target_name': 'allocator_extension_thunks_win64', |
534 'type': 'static_library', | 465 'type': 'static_library', |
535 'sources': [ | 466 'sources': [ |
536 'allocator_extension_thunks.cc', | 467 'allocator_extension_thunks.cc', |
537 'allocator_extension_thunks.h', | 468 'allocator_extension_thunks.h', |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
628 '../..', | 559 '../..', |
629 ], | 560 ], |
630 'sources': [ | 561 'sources': [ |
631 'type_profiler_map_unittest.cc', | 562 'type_profiler_map_unittest.cc', |
632 '<(tcmalloc_dir)/src/gperftools/type_profiler_map.h', | 563 '<(tcmalloc_dir)/src/gperftools/type_profiler_map.h', |
633 '<(tcmalloc_dir)/src/type_profiler_map.cc', | 564 '<(tcmalloc_dir)/src/type_profiler_map.cc', |
634 ], | 565 ], |
635 }, | 566 }, |
636 ], | 567 ], |
637 }], | 568 }], |
| 569 ['use_allocator=="tcmalloc"', { |
| 570 'targets': [ |
| 571 { |
| 572 'target_name': 'tcmalloc_unittest', |
| 573 'type': 'executable', |
| 574 'sources': [ |
| 575 'tcmalloc_unittest.cc', |
| 576 ], |
| 577 'include_dirs': [ |
| 578 '<(tcmalloc_dir)/src', |
| 579 '../..', |
| 580 ], |
| 581 'dependencies': [ |
| 582 '../../testing/gtest.gyp:gtest', |
| 583 '../base.gyp:base', |
| 584 'allocator', |
| 585 ], |
| 586 }, |
| 587 ], |
| 588 }], |
638 ], | 589 ], |
639 } | 590 } |
OLD | NEW |