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

Side by Side Diff: media/midi/midi.gyp

Issue 1065743003: Reland: Web MIDI: split build rules for media/midi (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: gyp fix 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
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 {
6 'variables': {
7 'chromium_code': 1,
8 'conditions': [
9 ['(OS=="linux" or OS=="freebsd" or OS=="solaris") and (embedded!=1 or (chr omecast==1 and target_arch!="arm"))', {
10 'use_alsa%': 1,
11 }, {
12 'use_alsa%': 0,
13 }],
14 ],
15 # Source files that are used in production code for Android, and in tests
16 # for others.
17 'usb_midi_sources': [
18 'midi_manager_usb.cc',
19 'midi_manager_usb.h',
20 'usb_midi_descriptor_parser.cc',
21 'usb_midi_descriptor_parser.h',
22 'usb_midi_device.h',
23 'usb_midi_input_stream.cc',
24 'usb_midi_input_stream.h',
25 'usb_midi_jack.h',
26 'usb_midi_output_stream.cc',
27 'usb_midi_output_stream.h',
28 ],
29 },
30 'targets': [
31 {
32 # GN version: //media/midi
33 'target_name': 'midi',
34 'type': '<(component)',
35 'dependencies': [
36 '../../base/base.gyp:base',
37 ],
38 'defines': [
39 # TODO(toyoshim): Do not use media/base/media_export.h in media/midi,
40 # and use MIDI_IMPLEMENTATION instead of MEDIA_IMPLEMENTATION. Also,
41 # create midi namespace inside media.
42 'MEDIA_IMPLEMENTATION',
43 ],
44 'include_dirs': [
45 '../..',
46 ],
47 'sources': [
48 'midi_manager.cc',
49 'midi_manager.h',
50 'midi_manager_android.cc',
51 'midi_manager_mac.cc',
52 'midi_manager_mac.h',
53 'midi_manager_win.cc',
54 'midi_manager_win.h',
55 'midi_message_queue.cc',
56 'midi_message_queue.h',
57 'midi_message_util.cc',
58 'midi_message_util.h',
59 'midi_port_info.cc',
60 'midi_port_info.h',
61 'midi_scheduler.cc',
62 'midi_scheduler.h',
63 'usb_midi_device_android.cc',
64 'usb_midi_device_android.h',
65 'usb_midi_device_factory_android.cc',
66 'usb_midi_device_factory_android.h',
67 ],
68 'direct_dependent_settings': {
69 'include_dirs': [
70 '../..',
71 ],
72 },
73 'conditions': [
74 ['use_alsa==1', {
75 'dependencies': [
76 '../../crypto/crypto.gyp:crypto',
DaleCurtis 2015/04/20 16:23:37 What's this dep for?
Takashi Toyoshima 2015/04/21 06:50:46 It's for crypto/sha2.h from midi_manager_alsa.cc.
77 ],
78 'defines': [
79 'USE_ALSA',
80 ],
81 'sources': [
82 'midi_manager_alsa.cc',
83 'midi_manager_alsa.h',
84 ],
85 'link_settings': {
86 'libraries': [
87 '-lasound',
88 ],
89 },
90 }],
91 ['OS=="android"', {
92 'dependencies': [
93 'midi_jni_headers',
94 'midi_java',
95 ],
96 'sources': [
97 '<@(usb_midi_sources)',
98 'midi_jni_registrar.cc',
99 'midi_jni_registrar.h',
100 ],
101 }],
102 ['OS=="mac"', {
103 'link_settings': {
104 'libraries': [
105 '$(SDKROOT)/System/Library/Frameworks/CoreAudio.framework',
106 '$(SDKROOT)/System/Library/Frameworks/CoreMIDI.framework',
107 ],
108 },
109 }],
110 ['OS=="win"', {
111 'dependencies': [
112 '../../device/usb/usb.gyp:device_usb',
113 ],
114 }],
115 ], # conditions
116 },
117 {
118 # GN version: //media/midi:midi_unittests
119 'target_name': 'midi_unittests',
120 'type': '<(gtest_target_type)',
121 'dependencies': [
122 'midi',
123 '../../base/base.gyp:base',
124 '../../base/base.gyp:run_all_unittests',
125 '../../testing/gtest.gyp:gtest',
126 ],
127 'defines': [
128 # TODO(toyoshim): Use MIDI_IMPLEMENTATION.
129 'MEDIA_IMPLEMENTATION',
130 ],
131 'include_dirs': [
132 '../..',
133 ],
134 'sources': [
135 'midi_manager_unittest.cc',
136 'midi_manager_usb_unittest.cc',
137 'midi_message_queue_unittest.cc',
138 'midi_message_util_unittest.cc',
139 'usb_midi_descriptor_parser_unittest.cc',
140 'usb_midi_input_stream_unittest.cc',
141 'usb_midi_output_stream_unittest.cc',
142 ],
143 'conditions': [
144 ['use_alsa==1', {
145 'defines': [
146 'USE_ALSA',
147 ],
148 'sources': [
149 'midi_manager_alsa_unittest.cc',
150 ],
151 }],
152 ['OS!="android"', {
153 'sources': [
154 '<@(usb_midi_sources)',
155 ],
156 }],
157 ['OS=="mac"', {
158 'sources': [
159 'midi_manager_mac_unittest.cc',
160 ],
161 }],
162 ],
163 },
164 ],
165 'conditions': [
166 ['OS=="android"', {
167 'targets': [
168 {
169 # TODO(GN)
170 'target_name': 'midi_unittests_apk',
171 'type': 'none',
172 'dependencies': [
173 'midi_java',
174 'midi_unittests',
175 ],
176 'variables': {
177 'test_suite_name': 'midi_unittests',
178 },
179 'includes': ['../../build/apk_test.gypi'],
180 },
181 {
182 # GN: //media/midi:midi_java
183 'target_name': 'midi_java',
184 'type': 'none',
185 'dependencies': [
186 '../../base/base.gyp:base',
187 ],
188 'variables': {
189 'java_in_dir': 'java',
190 },
191 'includes': ['../../build/java.gypi' ],
192 },
193 {
194 # GN: //media/midi:midi_jni_headers
195 'target_name': 'midi_jni_headers',
196 'type': 'none',
197 'sources': [
198 'java/src/org/chromium/media/midi/UsbMidiDeviceAndroid.java',
199 'java/src/org/chromium/media/midi/UsbMidiDeviceFactoryAndroid.java',
200 ],
201 'variables': {
202 'jni_gen_package': 'media/midi',
203 },
204 'includes': ['../../build/jni_generator.gypi'],
205 },
206 ],
207 }],
208 ['test_isolation_mode != "noop"', {
209 'targets': [
210 {
211 'target_name': 'midi_unittests_run',
212 'type': 'none',
213 'dependencies': [
214 'midi_unittests',
215 ],
216 'includes': [
217 '../../build/isolate.gypi',
218 ],
219 'sources': [
220 'midi_unittests.isolate',
221 ],
222 },
223 ],
224 }],
225 ],
226 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698