Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(275)

Side by Side Diff: media/midi/BUILD.gn

Issue 1065743003: Reland: Web MIDI: split build rules for media/midi (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: remove MIDI_IMPLEMENTATION TODOs Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « media/media.gyp ('k') | media/midi/java/src/org/chromium/media/midi/UsbMidiDeviceAndroid.java » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 # Copyright 2015 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 import("//build/config/android/config.gni")
6 import("//build/config/features.gni")
7 import("//media/media_options.gni")
8 import("//testing/test.gni")
9
10 if (is_android) {
11 # For generate_jni().
12 import("//build/config/android/rules.gni")
13 }
14
15 # Common configuration for targets in the media/midi directory.
16 # NOT for exporting.
Dirk Pranke 2015/04/21 20:31:27 You can use ' visibility = [ ":*" ]' to make this
Takashi Toyoshima 2015/04/22 05:37:18 Done.
17 config("midi_config") {
18 if (use_alsa) {
19 defines = [ "USE_ALSA" ]
20 }
21 }
22
23 # USB MIDI specific source files that are used in Android port, and unit tests.
24 source_set("usb_midi") {
25 sources = [
26 "midi_manager_usb.cc",
27 "midi_manager_usb.h",
28 "usb_midi_descriptor_parser.cc",
29 "usb_midi_descriptor_parser.h",
30 "usb_midi_device.h",
31 "usb_midi_input_stream.cc",
32 "usb_midi_input_stream.h",
33 "usb_midi_jack.h",
34 "usb_midi_output_stream.cc",
35 "usb_midi_output_stream.h",
36 ]
37
38 defines = [ "MEDIA_IMPLEMENTATION" ]
39 deps = [
40 "//base",
41 ]
42 }
43
44 # Android specific Java source files that are used to generate jni header files.
45 if (is_android) {
46 android_library("midi_java") {
47 deps = [
48 "//base:base_java",
49 ]
50
51 DEPRECATED_java_in_dir = "java/src"
52 }
53
54 generate_jni("midi_jni_headers") {
55 sources = [
56 "java/src/org/chromium/media/midi/UsbMidiDeviceAndroid.java",
57 "java/src/org/chromium/media/midi/UsbMidiDeviceFactoryAndroid.java",
58 ]
59 jni_package = "media/midi"
60 }
61 }
62
63 component("midi") {
64 sources = [
65 "midi_manager.cc",
66 "midi_manager.h",
67 "midi_manager_mac.cc",
68 "midi_manager_mac.h",
69 "midi_manager_win.cc",
70 "midi_manager_win.h",
71 "midi_message_queue.cc",
72 "midi_message_queue.h",
73 "midi_message_util.cc",
74 "midi_message_util.h",
75 "midi_port_info.cc",
76 "midi_port_info.h",
77 "midi_scheduler.cc",
78 "midi_scheduler.h",
79 ]
80
81 configs += [ ":midi_config" ]
82
83 defines = [ "MEDIA_IMPLEMENTATION" ]
84 deps = []
85 libs = []
86
87 if (is_android) {
88 sources += [
89 "midi_jni_registrar.cc",
90 "midi_jni_registrar.h",
91 "midi_manager_android.cc",
92 "usb_midi_device_android.cc",
93 "usb_midi_device_android.h",
94 "usb_midi_device_factory_android.cc",
95 "usb_midi_device_factory_android.h",
96 ]
97
98 deps += [
99 ":usb_midi",
100 ":midi_jni_headers",
101 ]
102 }
103
104 if (is_mac) {
105 libs += [
106 "CoreAudio.framework",
107 "CoreMIDI.framework",
108 ]
109 }
110
111 if (is_win) {
112 deps += [ "//device/usb" ]
113 }
114
115 if (use_alsa) {
116 deps += [
117 "//crypto",
118 "//crypto:platform",
119 ]
120 libs += [ "asound" ]
121 sources += [
122 "midi_manager_alsa.cc",
123 "midi_manager_alsa.h",
124 ]
125 }
126
127 if (use_udev) {
128 deps += [ "//device/udev_linux" ]
129 }
130 }
131
132 test("midi_unittests") {
133 sources = [
134 "midi_manager_unittest.cc",
135 "midi_manager_usb_unittest.cc",
136 "midi_message_queue_unittest.cc",
137 "midi_message_util_unittest.cc",
138 "usb_midi_descriptor_parser_unittest.cc",
139 "usb_midi_input_stream_unittest.cc",
140 "usb_midi_output_stream_unittest.cc",
141 ]
142
143 configs += [ ":midi_config" ]
144 deps = [
145 ":midi",
146 "//base/test/:run_all_unittests",
147 "//base/test/:test_support",
148 "//testing/gtest",
149 ]
150
151 if (!is_android) {
152 deps += [ ":usb_midi" ]
153 }
154
155 if (is_mac) {
156 sources += [ "midi_manager_mac_unittest.cc" ]
157 }
158
159 if (use_alsa) {
160 sources += [ "midi_manager_alsa_unittest.cc" ]
161 }
162 }
OLDNEW
« no previous file with comments | « media/media.gyp ('k') | media/midi/java/src/org/chromium/media/midi/UsbMidiDeviceAndroid.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698