# Copyright 2017 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. # This target contains only those files that are shared by the Device Gamepad # implementation and all Device Gamepad clients, including Blink. Add a file # here only if it meets the following constraints: # (1) It is *necessary* to use the file to consume Device Gamepad (the # current files define structs that are used as a consistent interpretation of # shared memory by the Device Gamepad and its clients). # (2) The file has no dependencies on the STL or Chromium code and will not # grow them over time (the current files are POD structs and will necessarily # stay that way due to their above-described purpose). # Consult {platform-architecture-dev, services-dev}@chromium.org in the case # of any uncertainty. source_set("shared_with_blink") { sources = [ "gamepad.cc", "gamepad.h", "gamepads.cc", "gamepads.h", ] # Do not add deps here per the above comment. } # Normally typemap traits sources should be build directly into mojom targets # via the typemap file. This target is for typemapped types whose # traits are shared between chromium and blink variants. component("shared_typemap_traits") { output_name = "gamepad_shared_typemap_traits" sources = [ "gamepad_mojom_traits.cc", "gamepad_mojom_traits.h", ] defines = [ "IS_GAMEPAD_SHARED_TRAITS_IMPL" ] public_deps = [ ":shared_with_blink", "//base", "//device/gamepad/public/mojom:mojom_shared", ] } static_library("switches") { sources = [ "gamepad_features.cc", "gamepad_features.h", "gamepad_switches.cc", "gamepad_switches.h", ] public_deps = [ "//base", ] }