mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-12-03 02:36:09 +03:00
142 lines
3.7 KiB
Plaintext
142 lines
3.7 KiB
Plaintext
# Copyright 2016 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.
|
|
|
|
import("//build/config/features.gni")
|
|
|
|
if (is_android) {
|
|
import("//build/config/android/config.gni")
|
|
import("//build/config/android/rules.gni") # For generate_jni().
|
|
}
|
|
|
|
component("gamepad") {
|
|
output_name = "device_gamepad"
|
|
|
|
sources = [
|
|
"game_controller_data_fetcher_mac.h",
|
|
"game_controller_data_fetcher_mac.mm",
|
|
"gamepad_consumer.cc",
|
|
"gamepad_consumer.h",
|
|
"gamepad_data_fetcher.cc",
|
|
"gamepad_data_fetcher.h",
|
|
"gamepad_data_fetcher_manager.cc",
|
|
"gamepad_data_fetcher_manager.h",
|
|
"gamepad_export.h",
|
|
"gamepad_haptics_manager.cc",
|
|
"gamepad_haptics_manager.h",
|
|
"gamepad_monitor.cc",
|
|
"gamepad_monitor.h",
|
|
"gamepad_pad_state_provider.cc",
|
|
"gamepad_pad_state_provider.h",
|
|
"gamepad_platform_data_fetcher.h",
|
|
"gamepad_platform_data_fetcher_android.cc",
|
|
"gamepad_platform_data_fetcher_android.h",
|
|
"gamepad_platform_data_fetcher_linux.cc",
|
|
"gamepad_platform_data_fetcher_linux.h",
|
|
"gamepad_platform_data_fetcher_mac.h",
|
|
"gamepad_platform_data_fetcher_mac.mm",
|
|
"gamepad_platform_data_fetcher_win.cc",
|
|
"gamepad_platform_data_fetcher_win.h",
|
|
"gamepad_provider.cc",
|
|
"gamepad_provider.h",
|
|
"gamepad_service.cc",
|
|
"gamepad_service.h",
|
|
"gamepad_shared_buffer.cc",
|
|
"gamepad_shared_buffer.h",
|
|
"gamepad_standard_mappings.cc",
|
|
"gamepad_standard_mappings.h",
|
|
"gamepad_standard_mappings_linux.cc",
|
|
"gamepad_standard_mappings_mac.mm",
|
|
"gamepad_standard_mappings_win.cc",
|
|
"gamepad_user_gesture.cc",
|
|
"gamepad_user_gesture.h",
|
|
"raw_input_data_fetcher_win.cc",
|
|
"raw_input_data_fetcher_win.h",
|
|
"xbox_controller_mac.h",
|
|
"xbox_controller_mac.mm",
|
|
"xbox_data_fetcher_mac.cc",
|
|
"xbox_data_fetcher_mac.h",
|
|
]
|
|
|
|
deps = [
|
|
"//base",
|
|
"//base/third_party/dynamic_annotations",
|
|
"//device/base/synchronization",
|
|
"//device/gamepad/public/cpp:shared_with_blink",
|
|
"//device/gamepad/public/interfaces",
|
|
"//mojo/public/cpp/system",
|
|
"//third_party/WebKit/public:blink_headers",
|
|
]
|
|
|
|
defines = [ "DEVICE_GAMEPAD_IMPLEMENTATION" ]
|
|
|
|
if (is_win) {
|
|
cflags = [ "/wd4267" ] # conversion from 'size_t' (64 bit) to 'type'(32 bit).
|
|
}
|
|
|
|
if (is_linux) {
|
|
if (use_udev) {
|
|
deps += [ "//device/udev_linux" ]
|
|
} else {
|
|
sources -= [ "gamepad_platform_data_fetcher_linux.cc" ]
|
|
}
|
|
}
|
|
|
|
if (is_android) {
|
|
deps += [ ":jni_headers" ]
|
|
}
|
|
|
|
if (is_mac) {
|
|
libs = [
|
|
"CoreFoundation.framework",
|
|
"Foundation.framework",
|
|
"GameController.framework",
|
|
"IOKit.framework",
|
|
]
|
|
}
|
|
}
|
|
|
|
static_library("test_helpers") {
|
|
testonly = true
|
|
|
|
sources = [
|
|
"gamepad_test_helpers.cc",
|
|
"gamepad_test_helpers.h",
|
|
]
|
|
|
|
public_deps = [
|
|
":gamepad",
|
|
"//base",
|
|
"//device/gamepad/public/cpp:shared_with_blink",
|
|
"//third_party/WebKit/public:blink_headers",
|
|
]
|
|
}
|
|
|
|
if (is_android) {
|
|
generate_jni("jni_headers") {
|
|
sources = [
|
|
"android/java/src/org/chromium/device/gamepad/GamepadList.java",
|
|
]
|
|
jni_package = "gamepad"
|
|
}
|
|
|
|
android_library("java") {
|
|
java_files = [
|
|
"android/java/src/org/chromium/device/gamepad/GamepadDevice.java",
|
|
"android/java/src/org/chromium/device/gamepad/GamepadList.java",
|
|
"android/java/src/org/chromium/device/gamepad/GamepadMappings.java",
|
|
]
|
|
deps = [
|
|
"//base:base_java",
|
|
"//third_party/android_tools:android_support_annotations_java",
|
|
]
|
|
srcjar_deps = [ ":java_enums_srcjar" ]
|
|
}
|
|
|
|
java_cpp_enum("java_enums_srcjar") {
|
|
sources = [
|
|
"gamepad_standard_mappings.h",
|
|
]
|
|
}
|
|
}
|