Fix sandbox IPC shared memory leak.
[chromium-blink-merge.git] / mojo / mojo_variables.gypi
blob047b25aa56b0ac4127c346735f3bf2641c28c2d2
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.
6 # A set of GYP variables that are shared between various mojo .gyp files.
9   'variables': {
10     'chromium_code': 1,
11     'mojo_shell_debug_url%': "",
12     'conditions': [
13       #
14       # The following mojo_system-prefixed variables are used to express a
15       # dependency on the mojo system APIs.
16       #
17       # In a component == "shared_library" build, everything can link against
18       # mojo_system_impl because it is built as a shared library. However, in a
19       # component != "shared_library" build, mojo_system_impl is linked into an
20       # executable (e.g., mojo_shell), and must be injected into other shared
21       # libraries (i.e., Mojo Apps) that need the mojo system API.
22       #
23       # For component targets, add <(mojo_system_for_component) to your
24       # dependencies section.  For loadable module targets (e.g., a Mojo App),
25       # add <(mojo_system_for_loadable_module) to your dependencies section.
26       #
27       # NOTE: component != "shared_library" implies that we are generating a
28       # static library, and in that case, it is expected that the target
29       # listing the component as a dependency will specify either mojo_system
30       # or mojo_system_impl to link against. This enables multiple targets to
31       # link against the same component library without having to agree on
32       # which Mojo system library they are using.
33       #
34       ['component=="shared_library"', {
35         'mojo_system_for_component': "<(DEPTH)/mojo/mojo_edk.gyp:mojo_system_impl",
36         'mojo_system_for_loadable_module': "<(DEPTH)/mojo/mojo_edk.gyp:mojo_system_impl",
37         'mojo_gles2_for_component': "<(DEPTH)/mojo/mojo_base.gyp:mojo_gles2_impl",
38       }, {
39         'mojo_system_for_component': "<(DEPTH)/mojo/mojo_base.gyp:mojo_none",
40         'mojo_system_for_loadable_module': "<(DEPTH)/mojo/mojo_public.gyp:mojo_system",
41         'mojo_gles2_for_component': "<(DEPTH)/mojo/mojo_base.gyp:mojo_none",
42       }],
43     ],
44     'mojo_public_system_unittest_sources': [
45       '<(DEPTH)/mojo/public/c/system/tests/core_unittest.cc',
46       '<(DEPTH)/mojo/public/c/system/tests/core_unittest_pure_c.c',
47       '<(DEPTH)/mojo/public/c/system/tests/macros_unittest.cc',
48       '<(DEPTH)/mojo/public/cpp/system/tests/core_unittest.cc',
49       '<(DEPTH)/mojo/public/cpp/system/tests/macros_unittest.cc',
50     ],
51   },