| Index: base/allocator/allocator.gyp
|
| diff --git a/base/allocator/allocator.gyp b/base/allocator/allocator.gyp
|
| deleted file mode 100644
|
| index a493baec721e9d9d2261556959cb9b3d62ec06c2..0000000000000000000000000000000000000000
|
| --- a/base/allocator/allocator.gyp
|
| +++ /dev/null
|
| @@ -1,458 +0,0 @@
|
| -# Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| -# Use of this source code is governed by a BSD-style license that can be
|
| -# found in the LICENSE file.
|
| -
|
| -{
|
| - 'target_defaults': {
|
| - 'variables': {
|
| - # This code gets run a lot and debugged rarely, so it should be fast
|
| - # by default. See http://crbug.com/388949.
|
| - 'debug_optimize': '2',
|
| - 'win_debug_Optimization': '0',
|
| - # Run time checks are incompatible with any level of optimizations.
|
| - 'win_debug_RuntimeChecks': '0',
|
| - },
|
| - },
|
| - 'variables': {
|
| - 'tcmalloc_dir': '../../third_party/tcmalloc/chromium',
|
| - 'use_vtable_verify%': 0,
|
| - # Provide a way to force disable debugallocation in Debug builds
|
| - # e.g. for profiling (it's more rare to profile Debug builds,
|
| - # but people sometimes need to do that).
|
| - 'disable_debugallocation%': 0,
|
| - },
|
| - 'targets': [
|
| - # The only targets that should depend on allocator are 'base' and
|
| - # executables that don't depend, directly or indirectly, on base (a few).
|
| - # All the other targets get a transitive dependency on this target via base.
|
| - {
|
| - 'target_name': 'allocator',
|
| - 'variables': {
|
| - 'conditions': [
|
| - ['use_allocator!="none" or (OS=="win" and win_use_allocator_shim==1)', {
|
| - 'allocator_target_type%': 'static_library',
|
| - }, {
|
| - 'allocator_target_type%': 'none',
|
| - }],
|
| - ],
|
| - },
|
| - 'type': '<(allocator_target_type)',
|
| - 'toolsets': ['host', 'target'],
|
| - 'conditions': [
|
| - ['OS=="win" and win_use_allocator_shim==1', {
|
| - 'msvs_settings': {
|
| - # TODO(sgk): merge this with build/common.gypi settings
|
| - 'VCLibrarianTool': {
|
| - 'AdditionalOptions': ['/ignore:4006,4221'],
|
| - },
|
| - 'VCLinkerTool': {
|
| - 'AdditionalOptions': ['/ignore:4006'],
|
| - },
|
| - },
|
| - 'include_dirs': [
|
| - '../..',
|
| - ],
|
| - 'sources': [
|
| - 'allocator_shim_win.cc',
|
| - 'allocator_shim_win.h',
|
| - 'winheap_stubs_win.cc',
|
| - 'winheap_stubs_win.h',
|
| - ],
|
| - 'configurations': {
|
| - 'Debug_Base': {
|
| - 'msvs_settings': {
|
| - 'VCCLCompilerTool': {
|
| - 'RuntimeLibrary': '0',
|
| - },
|
| - },
|
| - },
|
| - },
|
| - }], # OS=="win"
|
| - ['use_allocator=="tcmalloc"', {
|
| - # Disable the heap checker in tcmalloc.
|
| - 'defines': [
|
| - 'NO_HEAP_CHECK',
|
| - ],
|
| - 'dependencies': [
|
| - '../third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
|
| - ],
|
| - # The order of this include_dirs matters, as tc-malloc has its own
|
| - # base/ mini-fork. Do not factor these out of this conditions section.
|
| - 'include_dirs': [
|
| - '.',
|
| - '<(tcmalloc_dir)/src/base',
|
| - '<(tcmalloc_dir)/src',
|
| - '../..',
|
| - ],
|
| - 'sources': [
|
| - # Generated for our configuration from tcmalloc's build
|
| - # and checked in.
|
| - '<(tcmalloc_dir)/src/config.h',
|
| - '<(tcmalloc_dir)/src/config_android.h',
|
| - '<(tcmalloc_dir)/src/config_linux.h',
|
| - '<(tcmalloc_dir)/src/config_win.h',
|
| -
|
| - # all tcmalloc native and forked files
|
| - '<(tcmalloc_dir)/src/addressmap-inl.h',
|
| - '<(tcmalloc_dir)/src/base/abort.cc',
|
| - '<(tcmalloc_dir)/src/base/abort.h',
|
| - '<(tcmalloc_dir)/src/base/arm_instruction_set_select.h',
|
| - '<(tcmalloc_dir)/src/base/atomicops-internals-arm-generic.h',
|
| - '<(tcmalloc_dir)/src/base/atomicops-internals-arm-v6plus.h',
|
| - '<(tcmalloc_dir)/src/base/atomicops-internals-linuxppc.h',
|
| - '<(tcmalloc_dir)/src/base/atomicops-internals-macosx.h',
|
| - '<(tcmalloc_dir)/src/base/atomicops-internals-windows.h',
|
| - '<(tcmalloc_dir)/src/base/atomicops-internals-x86.cc',
|
| - '<(tcmalloc_dir)/src/base/atomicops-internals-x86.h',
|
| - '<(tcmalloc_dir)/src/base/atomicops.h',
|
| - '<(tcmalloc_dir)/src/base/commandlineflags.h',
|
| - '<(tcmalloc_dir)/src/base/cycleclock.h',
|
| - # We don't list dynamic_annotations.c since its copy is already
|
| - # present in the dynamic_annotations target.
|
| - '<(tcmalloc_dir)/src/base/dynamic_annotations.h',
|
| - '<(tcmalloc_dir)/src/base/elf_mem_image.cc',
|
| - '<(tcmalloc_dir)/src/base/elf_mem_image.h',
|
| - '<(tcmalloc_dir)/src/base/elfcore.h',
|
| - '<(tcmalloc_dir)/src/base/googleinit.h',
|
| - '<(tcmalloc_dir)/src/base/linux_syscall_support.h',
|
| - '<(tcmalloc_dir)/src/base/linuxthreads.cc',
|
| - '<(tcmalloc_dir)/src/base/linuxthreads.h',
|
| - '<(tcmalloc_dir)/src/base/logging.cc',
|
| - '<(tcmalloc_dir)/src/base/logging.h',
|
| - '<(tcmalloc_dir)/src/base/low_level_alloc.cc',
|
| - '<(tcmalloc_dir)/src/base/low_level_alloc.h',
|
| - '<(tcmalloc_dir)/src/base/simple_mutex.h',
|
| - '<(tcmalloc_dir)/src/base/spinlock.cc',
|
| - '<(tcmalloc_dir)/src/base/spinlock.h',
|
| - '<(tcmalloc_dir)/src/base/spinlock_internal.cc',
|
| - '<(tcmalloc_dir)/src/base/spinlock_internal.h',
|
| - '<(tcmalloc_dir)/src/base/spinlock_linux-inl.h',
|
| - '<(tcmalloc_dir)/src/base/spinlock_posix-inl.h',
|
| - '<(tcmalloc_dir)/src/base/spinlock_win32-inl.h',
|
| - '<(tcmalloc_dir)/src/base/stl_allocator.h',
|
| - '<(tcmalloc_dir)/src/base/synchronization_profiling.h',
|
| - '<(tcmalloc_dir)/src/base/sysinfo.cc',
|
| - '<(tcmalloc_dir)/src/base/sysinfo.h',
|
| - '<(tcmalloc_dir)/src/base/thread_annotations.h',
|
| - '<(tcmalloc_dir)/src/base/thread_lister.c',
|
| - '<(tcmalloc_dir)/src/base/thread_lister.h',
|
| - '<(tcmalloc_dir)/src/base/vdso_support.cc',
|
| - '<(tcmalloc_dir)/src/base/vdso_support.h',
|
| - '<(tcmalloc_dir)/src/central_freelist.cc',
|
| - '<(tcmalloc_dir)/src/central_freelist.h',
|
| - '<(tcmalloc_dir)/src/common.cc',
|
| - '<(tcmalloc_dir)/src/common.h',
|
| - '<(tcmalloc_dir)/src/debugallocation.cc',
|
| - '<(tcmalloc_dir)/src/free_list.cc',
|
| - '<(tcmalloc_dir)/src/free_list.h',
|
| - '<(tcmalloc_dir)/src/getpc.h',
|
| - '<(tcmalloc_dir)/src/gperftools/heap-checker.h',
|
| - '<(tcmalloc_dir)/src/gperftools/heap-profiler.h',
|
| - '<(tcmalloc_dir)/src/gperftools/malloc_extension.h',
|
| - '<(tcmalloc_dir)/src/gperftools/malloc_extension_c.h',
|
| - '<(tcmalloc_dir)/src/gperftools/malloc_hook.h',
|
| - '<(tcmalloc_dir)/src/gperftools/malloc_hook_c.h',
|
| - '<(tcmalloc_dir)/src/gperftools/profiler.h',
|
| - '<(tcmalloc_dir)/src/gperftools/stacktrace.h',
|
| - '<(tcmalloc_dir)/src/gperftools/tcmalloc.h',
|
| - '<(tcmalloc_dir)/src/heap-checker-bcad.cc',
|
| - '<(tcmalloc_dir)/src/heap-checker.cc',
|
| - '<(tcmalloc_dir)/src/heap-profile-table.cc',
|
| - '<(tcmalloc_dir)/src/heap-profile-table.h',
|
| - '<(tcmalloc_dir)/src/heap-profiler.cc',
|
| - '<(tcmalloc_dir)/src/internal_logging.cc',
|
| - '<(tcmalloc_dir)/src/internal_logging.h',
|
| - '<(tcmalloc_dir)/src/libc_override.h',
|
| - '<(tcmalloc_dir)/src/libc_override_gcc_and_weak.h',
|
| - '<(tcmalloc_dir)/src/libc_override_glibc.h',
|
| - '<(tcmalloc_dir)/src/libc_override_osx.h',
|
| - '<(tcmalloc_dir)/src/libc_override_redefine.h',
|
| - '<(tcmalloc_dir)/src/linked_list.h',
|
| - '<(tcmalloc_dir)/src/malloc_extension.cc',
|
| - '<(tcmalloc_dir)/src/malloc_hook-inl.h',
|
| - '<(tcmalloc_dir)/src/malloc_hook.cc',
|
| - '<(tcmalloc_dir)/src/malloc_hook_mmap_freebsd.h',
|
| - '<(tcmalloc_dir)/src/malloc_hook_mmap_linux.h',
|
| - '<(tcmalloc_dir)/src/maybe_threads.cc',
|
| - '<(tcmalloc_dir)/src/maybe_threads.h',
|
| - '<(tcmalloc_dir)/src/memfs_malloc.cc',
|
| - '<(tcmalloc_dir)/src/memory_region_map.cc',
|
| - '<(tcmalloc_dir)/src/memory_region_map.h',
|
| - '<(tcmalloc_dir)/src/packed-cache-inl.h',
|
| - '<(tcmalloc_dir)/src/page_heap.cc',
|
| - '<(tcmalloc_dir)/src/page_heap.h',
|
| - '<(tcmalloc_dir)/src/page_heap_allocator.h',
|
| - '<(tcmalloc_dir)/src/pagemap.h',
|
| - '<(tcmalloc_dir)/src/profile-handler.cc',
|
| - '<(tcmalloc_dir)/src/profile-handler.h',
|
| - '<(tcmalloc_dir)/src/profiledata.cc',
|
| - '<(tcmalloc_dir)/src/profiledata.h',
|
| - '<(tcmalloc_dir)/src/profiler.cc',
|
| - '<(tcmalloc_dir)/src/raw_printer.cc',
|
| - '<(tcmalloc_dir)/src/raw_printer.h',
|
| - '<(tcmalloc_dir)/src/sampler.cc',
|
| - '<(tcmalloc_dir)/src/sampler.h',
|
| - '<(tcmalloc_dir)/src/span.cc',
|
| - '<(tcmalloc_dir)/src/span.h',
|
| - '<(tcmalloc_dir)/src/stack_trace_table.cc',
|
| - '<(tcmalloc_dir)/src/stack_trace_table.h',
|
| - '<(tcmalloc_dir)/src/stacktrace.cc',
|
| - '<(tcmalloc_dir)/src/stacktrace_arm-inl.h',
|
| - '<(tcmalloc_dir)/src/stacktrace_config.h',
|
| - '<(tcmalloc_dir)/src/stacktrace_generic-inl.h',
|
| - '<(tcmalloc_dir)/src/stacktrace_libunwind-inl.h',
|
| - '<(tcmalloc_dir)/src/stacktrace_powerpc-inl.h',
|
| - '<(tcmalloc_dir)/src/stacktrace_win32-inl.h',
|
| - '<(tcmalloc_dir)/src/stacktrace_with_context.cc',
|
| - '<(tcmalloc_dir)/src/stacktrace_x86-inl.h',
|
| - '<(tcmalloc_dir)/src/static_vars.cc',
|
| - '<(tcmalloc_dir)/src/static_vars.h',
|
| - '<(tcmalloc_dir)/src/symbolize.cc',
|
| - '<(tcmalloc_dir)/src/symbolize.h',
|
| - '<(tcmalloc_dir)/src/system-alloc.cc',
|
| - '<(tcmalloc_dir)/src/system-alloc.h',
|
| - '<(tcmalloc_dir)/src/tcmalloc.cc',
|
| - '<(tcmalloc_dir)/src/tcmalloc_guard.h',
|
| - '<(tcmalloc_dir)/src/thread_cache.cc',
|
| - '<(tcmalloc_dir)/src/thread_cache.h',
|
| -
|
| - 'debugallocation_shim.cc',
|
| - ],
|
| - # sources! means that these are not compiled directly.
|
| - 'sources!': [
|
| - # We simply don't use these, but list them above so that IDE
|
| - # users can view the full available source for reference, etc.
|
| - '<(tcmalloc_dir)/src/addressmap-inl.h',
|
| - '<(tcmalloc_dir)/src/base/atomicops-internals-linuxppc.h',
|
| - '<(tcmalloc_dir)/src/base/atomicops-internals-macosx.h',
|
| - '<(tcmalloc_dir)/src/base/atomicops-internals-x86-msvc.h',
|
| - '<(tcmalloc_dir)/src/base/atomicops-internals-x86.h',
|
| - '<(tcmalloc_dir)/src/base/atomicops.h',
|
| - '<(tcmalloc_dir)/src/base/commandlineflags.h',
|
| - '<(tcmalloc_dir)/src/base/cycleclock.h',
|
| - '<(tcmalloc_dir)/src/base/elf_mem_image.h',
|
| - '<(tcmalloc_dir)/src/base/elfcore.h',
|
| - '<(tcmalloc_dir)/src/base/googleinit.h',
|
| - '<(tcmalloc_dir)/src/base/linux_syscall_support.h',
|
| - '<(tcmalloc_dir)/src/base/simple_mutex.h',
|
| - '<(tcmalloc_dir)/src/base/spinlock_linux-inl.h',
|
| - '<(tcmalloc_dir)/src/base/spinlock_posix-inl.h',
|
| - '<(tcmalloc_dir)/src/base/spinlock_win32-inl.h',
|
| - '<(tcmalloc_dir)/src/base/stl_allocator.h',
|
| - '<(tcmalloc_dir)/src/base/thread_annotations.h',
|
| - '<(tcmalloc_dir)/src/getpc.h',
|
| - '<(tcmalloc_dir)/src/gperftools/heap-checker.h',
|
| - '<(tcmalloc_dir)/src/gperftools/heap-profiler.h',
|
| - '<(tcmalloc_dir)/src/gperftools/malloc_extension.h',
|
| - '<(tcmalloc_dir)/src/gperftools/malloc_extension_c.h',
|
| - '<(tcmalloc_dir)/src/gperftools/malloc_hook.h',
|
| - '<(tcmalloc_dir)/src/gperftools/malloc_hook_c.h',
|
| - '<(tcmalloc_dir)/src/gperftools/profiler.h',
|
| - '<(tcmalloc_dir)/src/gperftools/stacktrace.h',
|
| - '<(tcmalloc_dir)/src/gperftools/tcmalloc.h',
|
| - '<(tcmalloc_dir)/src/heap-checker-bcad.cc',
|
| - '<(tcmalloc_dir)/src/heap-checker.cc',
|
| - '<(tcmalloc_dir)/src/libc_override.h',
|
| - '<(tcmalloc_dir)/src/libc_override_gcc_and_weak.h',
|
| - '<(tcmalloc_dir)/src/libc_override_glibc.h',
|
| - '<(tcmalloc_dir)/src/libc_override_osx.h',
|
| - '<(tcmalloc_dir)/src/libc_override_redefine.h',
|
| - '<(tcmalloc_dir)/src/malloc_hook_mmap_freebsd.h',
|
| - '<(tcmalloc_dir)/src/malloc_hook_mmap_linux.h',
|
| - '<(tcmalloc_dir)/src/memfs_malloc.cc',
|
| - '<(tcmalloc_dir)/src/packed-cache-inl.h',
|
| - '<(tcmalloc_dir)/src/page_heap_allocator.h',
|
| - '<(tcmalloc_dir)/src/pagemap.h',
|
| - '<(tcmalloc_dir)/src/stacktrace_arm-inl.h',
|
| - '<(tcmalloc_dir)/src/stacktrace_config.h',
|
| - '<(tcmalloc_dir)/src/stacktrace_generic-inl.h',
|
| - '<(tcmalloc_dir)/src/stacktrace_libunwind-inl.h',
|
| - '<(tcmalloc_dir)/src/stacktrace_powerpc-inl.h',
|
| - '<(tcmalloc_dir)/src/stacktrace_win32-inl.h',
|
| - '<(tcmalloc_dir)/src/stacktrace_with_context.cc',
|
| - '<(tcmalloc_dir)/src/stacktrace_x86-inl.h',
|
| - '<(tcmalloc_dir)/src/tcmalloc_guard.h',
|
| -
|
| - # Included by debugallocation_shim.cc.
|
| - '<(tcmalloc_dir)/src/debugallocation.cc',
|
| - '<(tcmalloc_dir)/src/tcmalloc.cc',
|
| - ],
|
| - 'variables': {
|
| - 'clang_warning_flags': [
|
| - # tcmalloc initializes some fields in the wrong order.
|
| - '-Wno-reorder',
|
| - # tcmalloc contains some unused local template specializations.
|
| - '-Wno-unused-function',
|
| - # tcmalloc uses COMPILE_ASSERT without static_assert but with
|
| - # typedefs.
|
| - '-Wno-unused-local-typedefs',
|
| - # for magic2_ in debugallocation.cc (only built in Debug builds)
|
| - # typedefs.
|
| - '-Wno-unused-private-field',
|
| - ],
|
| - },
|
| - 'conditions': [
|
| - ['OS=="linux" or OS=="freebsd" or OS=="solaris" or OS=="android"', {
|
| - 'sources!': [
|
| - '<(tcmalloc_dir)/src/system-alloc.h',
|
| - ],
|
| - # We enable all warnings by default, but upstream disables a few.
|
| - # Keep "-Wno-*" flags in sync with upstream by comparing against:
|
| - # http://code.google.com/p/google-perftools/source/browse/trunk/Makefile.am
|
| - 'cflags': [
|
| - '-Wno-sign-compare',
|
| - '-Wno-unused-result',
|
| - ],
|
| - 'link_settings': {
|
| - 'ldflags': [
|
| - # Don't let linker rip this symbol out, otherwise the heap&cpu
|
| - # profilers will not initialize properly on startup.
|
| - '-Wl,-uIsHeapProfilerRunning,-uProfilerStart',
|
| - # Do the same for heap leak checker.
|
| - '-Wl,-u_Z21InitialMallocHook_NewPKvj,-u_Z22InitialMallocHook_MMapPKvS0_jiiix,-u_Z22InitialMallocHook_SbrkPKvi',
|
| - '-Wl,-u_Z21InitialMallocHook_NewPKvm,-u_Z22InitialMallocHook_MMapPKvS0_miiil,-u_Z22InitialMallocHook_SbrkPKvl',
|
| - '-Wl,-u_ZN15HeapLeakChecker12IgnoreObjectEPKv,-u_ZN15HeapLeakChecker14UnIgnoreObjectEPKv',
|
| - ],
|
| - },
|
| - # Compiling tcmalloc with -fvisibility=default is only necessary when
|
| - # not using the allocator shim, which provides the correct visibility
|
| - # annotations for those symbols which need to be exported (see
|
| - # //base/allocator/allocator_shim_override_glibc_weak_symbols.h and
|
| - # //base/allocator/allocator_shim_internals.h for the definition of
|
| - # SHIM_ALWAYS_EXPORT).
|
| - 'conditions': [
|
| - ['use_experimental_allocator_shim==0', {
|
| - 'cflags!': [
|
| - '-fvisibility=hidden',
|
| - ],
|
| - }],
|
| - ],
|
| - }],
|
| - ['profiling!=1', {
|
| - 'sources!': [
|
| - # cpuprofiler
|
| - '<(tcmalloc_dir)/src/base/thread_lister.c',
|
| - '<(tcmalloc_dir)/src/base/thread_lister.h',
|
| - '<(tcmalloc_dir)/src/profile-handler.cc',
|
| - '<(tcmalloc_dir)/src/profile-handler.h',
|
| - '<(tcmalloc_dir)/src/profiledata.cc',
|
| - '<(tcmalloc_dir)/src/profiledata.h',
|
| - '<(tcmalloc_dir)/src/profiler.cc',
|
| - ],
|
| - }],
|
| - ['use_experimental_allocator_shim==1', {
|
| - 'defines': [
|
| - 'TCMALLOC_DONT_REPLACE_SYSTEM_ALLOC',
|
| - ],
|
| - }]
|
| - ],
|
| - 'configurations': {
|
| - 'Debug_Base': {
|
| - 'conditions': [
|
| - ['disable_debugallocation==0', {
|
| - 'defines': [
|
| - # Use debugallocation for Debug builds to catch problems
|
| - # early and cleanly, http://crbug.com/30715 .
|
| - 'TCMALLOC_FOR_DEBUGALLOCATION',
|
| - ],
|
| - }],
|
| - ],
|
| - },
|
| - },
|
| - }], # use_allocator=="tcmalloc
|
| - # For CrOS builds with vtable verification. According to the author of
|
| - # crrev.com/10854031 this is used in conjuction with some other CrOS
|
| - # build flag, to enable verification of any allocator that uses virtual
|
| - # function calls.
|
| - ['use_vtable_verify==1', {
|
| - 'cflags': [
|
| - '-fvtable-verify=preinit',
|
| - ],
|
| - }],
|
| - ['order_profiling != 0', {
|
| - 'target_conditions' : [
|
| - ['_toolset=="target"', {
|
| - 'cflags!': [ '-finstrument-functions' ],
|
| - }],
|
| - ],
|
| - }],
|
| - ], # conditions of 'allocator' target.
|
| - }, # 'allocator' target.
|
| - {
|
| - # GN: //base/allocator:features
|
| - # When referenced from a target that might be compiled in the host
|
| - # toolchain, always refer to 'allocator_features#target'.
|
| - 'target_name': 'allocator_features',
|
| - 'includes': [ '../../build/buildflag_header.gypi' ],
|
| - 'variables': {
|
| - 'buildflag_header_path': 'base/allocator/features.h',
|
| - 'buildflag_flags': [
|
| - 'USE_EXPERIMENTAL_ALLOCATOR_SHIM=<(use_experimental_allocator_shim)',
|
| - ],
|
| - 'conditions': [
|
| - ['<(use_experimental_allocator_shim) or <(win_use_allocator_shim)',
|
| - {'buildflag_flags': [ 'ENABLE_WIN_ALLOCATOR_SHIM_TESTS=1' ],},
|
| - {'buildflag_flags': [ 'ENABLE_WIN_ALLOCATOR_SHIM_TESTS=0' ],}
|
| - ],
|
| - ],
|
| - },
|
| - }, # 'allocator_features' target.
|
| - ], # targets.
|
| - 'conditions': [
|
| - ['use_experimental_allocator_shim==1', {
|
| - 'targets': [
|
| - {
|
| - # GN: //base/allocator:unified_allocator_shim
|
| - 'target_name': 'unified_allocator_shim',
|
| - 'toolsets': ['host', 'target'],
|
| - 'type': 'static_library',
|
| - 'defines': [ 'BASE_IMPLEMENTATION' ],
|
| - 'sources': [
|
| - 'allocator_shim.cc',
|
| - 'allocator_shim.h',
|
| - 'allocator_shim_internals.h',
|
| - 'allocator_shim_override_cpp_symbols.h',
|
| - 'allocator_shim_override_libc_symbols.h',
|
| - ],
|
| - 'include_dirs': [
|
| - '../..',
|
| - ],
|
| - 'conditions': [
|
| - ['OS=="linux" and use_allocator=="tcmalloc"', {
|
| - 'sources': [
|
| - 'allocator_shim_default_dispatch_to_tcmalloc.cc',
|
| - 'allocator_shim_override_glibc_weak_symbols.h',
|
| - ],
|
| - }],
|
| - ['use_allocator=="none" and (OS=="linux" or (OS=="android" and _toolset == "host" and host_os == "linux"))', {
|
| - 'sources': [
|
| - 'allocator_shim_default_dispatch_to_glibc.cc',
|
| - ],
|
| - }],
|
| - ['OS=="android" and _toolset == "target"', {
|
| - 'sources': [
|
| - 'allocator_shim_default_dispatch_to_linker_wrapped_symbols.cc',
|
| - 'allocator_shim_override_linker_wrapped_symbols.h',
|
| - ],
|
| - # On Android all references to malloc & friends symbols are
|
| - # rewritten, at link time, and routed to the shim.
|
| - # See //base/allocator/README.md.
|
| - 'all_dependent_settings': {
|
| - 'ldflags': [
|
| - '-Wl,-wrap,calloc',
|
| - '-Wl,-wrap,free',
|
| - '-Wl,-wrap,malloc',
|
| - '-Wl,-wrap,memalign',
|
| - '-Wl,-wrap,posix_memalign',
|
| - '-Wl,-wrap,pvalloc',
|
| - '-Wl,-wrap,realloc',
|
| - '-Wl,-wrap,valloc',
|
| - ],
|
| - },
|
| - }],
|
| - ]
|
| - }, # 'unified_allocator_shim' target.
|
| - ],
|
| - }]
|
| - ],
|
| -}
|
|
|