Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / tools / android / heap_profiler / heap_profiler.gyp
1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4
5 {
6   'targets': [
7     {
8       # libheap_profiler is the library that will be preloaded in the Android
9       # Zygote and contains the black magic to hook malloc/mmap calls.
10       'target_name': 'heap_profiler',
11       'type': 'shared_library',
12       'include_dirs': [ '../../..' ],
13       'sources': [ 'heap_profiler_hooks_android.c' ],
14       'dependencies': [ 'heap_profiler_core' ],
15     },
16     {
17       # heap_profiler_core contains only the tracking metadata code without any
18       # hooks. It is required by both the hprof library itself and the unittest.
19       'target_name': 'heap_profiler_core',
20       'type': 'static_library',
21       'sources': [
22         'heap_profiler.c',
23         'heap_profiler.h',
24       ],
25       'include_dirs': [ '../../..' ],
26     },
27     {
28       'target_name': 'heap_dump',
29       'type': 'executable',
30       'sources': [ 'heap_dump.c' ],
31       'include_dirs': [ '../../..' ],
32     },
33     {
34       'target_name': 'heap_profiler_unittests',
35       'type': 'executable',
36       'sources': [ 'heap_profiler_unittest.cc' ],
37       'dependencies': [
38         'heap_profiler_core',
39         '../../../testing/gtest.gyp:gtest',
40         '../../../testing/gtest.gyp:gtest_main',
41       ],
42       'include_dirs': [ '../../..' ],
43     },
44     {
45       'target_name': 'heap_profiler_unittests_stripped',
46       'type': 'none',
47       'dependencies': [ 'heap_profiler_unittests' ],
48       'actions': [{
49         'action_name': 'strip heap_profiler_unittests',
50         'inputs': [ '<(PRODUCT_DIR)/heap_profiler_unittests' ],
51         'outputs': [ '<(PRODUCT_DIR)/heap_profiler_unittests_stripped' ],
52         'action': [ '<(android_strip)', '<@(_inputs)', '-o', '<@(_outputs)' ],
53       }],
54     },
55     {
56       'target_name': 'heap_profiler_integrationtest',
57       'type': 'executable',
58       'sources': [ 'heap_profiler_integrationtest.cc' ],
59       'dependencies': [ '../../../testing/gtest.gyp:gtest' ],
60       'include_dirs': [ '../../..' ],
61     },
62     {
63       'target_name': 'heap_profiler_integrationtest_stripped',
64       'type': 'none',
65       'dependencies': [ 'heap_profiler_integrationtest' ],
66       'actions': [{
67         'action_name': 'strip heap_profiler_integrationtest',
68         'inputs': [ '<(PRODUCT_DIR)/heap_profiler_integrationtest' ],
69         'outputs': [ '<(PRODUCT_DIR)/heap_profiler_integrationtest_stripped' ],
70         'action': [ '<(android_strip)', '<@(_inputs)', '-o', '<@(_outputs)' ],
71       }],
72     },
73   ],
74 }