Home | History | Annotate | Download | only in mojo
      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 # A set of GYP variables that are shared between various mojo .gyp files.
      7 #
      8 {
      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_base.gyp:mojo_system_impl",
     36         'mojo_system_for_loadable_module': "<(DEPTH)/mojo/mojo_base.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_base.gyp:mojo_system",
     41         'mojo_gles2_for_component': "<(DEPTH)/mojo/mojo_base.gyp:mojo_none",
     42       }],
     43     ],
     44     'mojo_public_system_unittest_sources': [
     45       'public/c/system/tests/core_unittest.cc',
     46       'public/c/system/tests/core_unittest_pure_c.c',
     47       'public/c/system/tests/macros_unittest.cc',
     48       'public/cpp/system/tests/core_unittest.cc',
     49       'public/cpp/system/tests/macros_unittest.cc',
     50     ],
     51   },
     52 }
     53