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

Side by Side Diff: build/linux/system.gyp

Issue 29363008: Reorder dependencies based on target_name. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 { 5 {
6 'variables': { 6 'variables': {
7 'conditions': [ 7 'conditions': [
8 ['sysroot!=""', { 8 ['sysroot!=""', {
9 'pkg-config': './pkg-config-wrapper "<(sysroot)" "<(target_arch)"', 9 'pkg-config': './pkg-config-wrapper "<(sysroot)" "<(target_arch)"',
10 }, { 10 }, {
(...skipping 16 matching lines...) Expand all
27 }, { 27 }, {
28 'variables': { 28 'variables': {
29 'use_system_ssl%': 1, 29 'use_system_ssl%': 1,
30 }, 30 },
31 }], 31 }],
32 [ 'chromeos==0', { 32 [ 'chromeos==0', {
33 # Hide GTK and related dependencies for Chrome OS, so they won't get 33 # Hide GTK and related dependencies for Chrome OS, so they won't get
34 # added back to Chrome OS. Don't try to use GTK on Chrome OS. 34 # added back to Chrome OS. Don't try to use GTK on Chrome OS.
35 'targets': [ 35 'targets': [
36 { 36 {
37 'target_name': 'gdk',
38 'type': 'none',
39 'conditions': [
40 ['_toolset=="target"', {
41 'direct_dependent_settings': {
42 'cflags': [
43 '<!@(<(pkg-config) --cflags gdk-2.0)',
44 ],
45 },
46 'link_settings': {
47 'ldflags': [
48 '<!@(<(pkg-config) --libs-only-L --libs-only-other gdk-2.0)',
49 ],
50 'libraries': [
51 '<!@(<(pkg-config) --libs-only-l gdk-2.0)',
52 ],
53 },
54 }],
55 ],
56 },
57 {
37 'target_name': 'gtk', 58 'target_name': 'gtk',
38 'type': 'none', 59 'type': 'none',
39 'toolsets': ['host', 'target'], 60 'toolsets': ['host', 'target'],
40 'variables': { 61 'variables': {
41 # gtk requires gmodule, but it does not list it as a dependency 62 # gtk requires gmodule, but it does not list it as a dependency
42 # in some misconfigured systems. 63 # in some misconfigured systems.
43 'gtk_packages': 'gmodule-2.0 gtk+-2.0 gthread-2.0', 64 'gtk_packages': 'gmodule-2.0 gtk+-2.0 gthread-2.0',
44 }, 65 },
45 'conditions': [ 66 'conditions': [
46 ['_toolset=="target"', { 67 ['_toolset=="target"', {
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
88 'ldflags': [ 109 'ldflags': [
89 '<!@(<(pkg-config) --libs-only-L --libs-only-other gtk+-unix-p rint-2.0)', 110 '<!@(<(pkg-config) --libs-only-L --libs-only-other gtk+-unix-p rint-2.0)',
90 ], 111 ],
91 'libraries': [ 112 'libraries': [
92 '<!@(<(pkg-config) --libs-only-l gtk+-unix-print-2.0)', 113 '<!@(<(pkg-config) --libs-only-l gtk+-unix-print-2.0)',
93 ], 114 ],
94 }, 115 },
95 }], 116 }],
96 ], 117 ],
97 }, 118 },
98 {
99 'target_name': 'gdk',
100 'type': 'none',
101 'conditions': [
102 ['_toolset=="target"', {
103 'direct_dependent_settings': {
104 'cflags': [
105 '<!@(<(pkg-config) --cflags gdk-2.0)',
106 ],
107 },
108 'link_settings': {
109 'ldflags': [
110 '<!@(<(pkg-config) --libs-only-L --libs-only-other gdk-2.0)',
111 ],
112 'libraries': [
113 '<!@(<(pkg-config) --libs-only-l gdk-2.0)',
114 ],
115 },
116 }],
117 ],
118 },
119 ], # targets 119 ], # targets
120 }], 120 }],
121 ], # conditions 121 ], # conditions
122 'targets': [ 122 'targets': [
123 { 123 {
124 'target_name': 'ssl', 124 'target_name': 'dbus',
125 'type': 'none',
126 'direct_dependent_settings': {
127 'cflags': [
128 '<!@(<(pkg-config) --cflags dbus-1)',
129 ],
130 },
131 'link_settings': {
132 'ldflags': [
133 '<!@(<(pkg-config) --libs-only-L --libs-only-other dbus-1)',
134 ],
135 'libraries': [
136 '<!@(<(pkg-config) --libs-only-l dbus-1)',
137 ],
138 },
139 },
140 {
141 'target_name': 'dridrm',
142 'type': 'none',
143 'direct_dependent_settings': {
144 'cflags': [
145 '<!@(<(pkg-config) --cflags libdrm)',
146 ],
147 },
148 'link_settings': {
149 'libraries': [
150 '<!@(<(pkg-config) --libs-only-l libdrm)',
151 ],
152 },
153 },
154 {
155 'target_name': 'fontconfig',
125 'type': 'none', 156 'type': 'none',
126 'conditions': [ 157 'conditions': [
127 ['_toolset=="target"', { 158 ['_toolset=="target"', {
128 'conditions': [ 159 'direct_dependent_settings': {
129 ['use_openssl==1', { 160 'cflags': [
130 'dependencies': [ 161 '<!@(<(pkg-config) --cflags fontconfig)',
131 '../../third_party/openssl/openssl.gyp:openssl', 162 ],
132 ], 163 },
133 }], 164 'link_settings': {
134 ['use_openssl==0 and use_system_ssl==0', { 165 'ldflags': [
135 'dependencies': [ 166 '<!@(<(pkg-config) --libs-only-L --libs-only-other fontconfig)',
136 '../../net/third_party/nss/ssl.gyp:libssl', 167 ],
137 ], 168 'libraries': [
138 'direct_dependent_settings': { 169 '<!@(<(pkg-config) --libs-only-l fontconfig)',
139 'include_dirs+': [ 170 ],
140 # We need for our local copies of the libssl3 headers to come 171 },
141 # before other includes, as we are shadowing system headers.
142 '<(DEPTH)/net/third_party/nss/ssl',
143 ],
144 'cflags': [
145 '<!@(<(pkg-config) --cflags nss)',
146 ],
147 },
148 'link_settings': {
149 'ldflags': [
150 '<!@(<(pkg-config) --libs-only-L --libs-only-other nss)',
151 ],
152 'libraries': [
153 '<!@(<(pkg-config) --libs-only-l nss | sed -e "s/-lssl3//")',
154 ],
155 },
156 }],
157 ['use_openssl==0 and use_system_ssl==1', {
158 'direct_dependent_settings': {
159 'cflags': [
160 '<!@(<(pkg-config) --cflags nss)',
161 ],
162 'defines': [
163 'USE_SYSTEM_SSL',
164 ],
165 },
166 'link_settings': {
167 'ldflags': [
168 '<!@(<(pkg-config) --libs-only-L --libs-only-other nss)',
169 ],
170 'libraries': [
171 '<!@(<(pkg-config) --libs-only-l nss)',
172 ],
173 },
174 }],
175 ['use_openssl==0 and clang==1', {
176 'direct_dependent_settings': {
177 'cflags': [
178 # There is a broken header guard in /usr/include/nss/secmod.h:
179 # https://bugzilla.mozilla.org/show_bug.cgi?id=884072
180 '-Wno-header-guard',
181 ],
182 },
183 }],
184 ]
185 }], 172 }],
186 ], 173 ],
187 }, 174 },
188 { 175 {
189 'target_name': 'freetype2', 176 'target_name': 'freetype2',
190 'type': 'none', 177 'type': 'none',
191 'conditions': [ 178 'conditions': [
192 ['_toolset=="target"', { 179 ['_toolset=="target"', {
193 'direct_dependent_settings': { 180 'direct_dependent_settings': {
194 'cflags': [ 181 'cflags': [
195 '<!@(<(pkg-config) --cflags freetype2)', 182 '<!@(<(pkg-config) --cflags freetype2)',
196 ], 183 ],
197 }, 184 },
198 'link_settings': { 185 'link_settings': {
199 'ldflags': [ 186 'ldflags': [
200 '<!@(<(pkg-config) --libs-only-L --libs-only-other freetype2)', 187 '<!@(<(pkg-config) --libs-only-L --libs-only-other freetype2)',
201 ], 188 ],
202 'libraries': [ 189 'libraries': [
203 '<!@(<(pkg-config) --libs-only-l freetype2)', 190 '<!@(<(pkg-config) --libs-only-l freetype2)',
204 ], 191 ],
205 }, 192 },
206 }], 193 }],
207 ],
208 },
209 {
210 'target_name': 'fontconfig',
211 'type': 'none',
212 'conditions': [
213 ['_toolset=="target"', {
214 'direct_dependent_settings': {
215 'cflags': [
216 '<!@(<(pkg-config) --cflags fontconfig)',
217 ],
218 },
219 'link_settings': {
220 'ldflags': [
221 '<!@(<(pkg-config) --libs-only-L --libs-only-other fontconfig)',
222 ],
223 'libraries': [
224 '<!@(<(pkg-config) --libs-only-l fontconfig)',
225 ],
226 },
227 }],
228 ], 194 ],
229 }, 195 },
230 { 196 {
231 'target_name': 'gconf', 197 'target_name': 'gconf',
232 'type': 'none', 198 'type': 'none',
233 'conditions': [ 199 'conditions': [
234 ['use_gconf==1 and _toolset=="target"', { 200 ['use_gconf==1 and _toolset=="target"', {
235 'direct_dependent_settings': { 201 'direct_dependent_settings': {
236 'cflags': [ 202 'cflags': [
237 '<!@(<(pkg-config) --cflags gconf-2.0)', 203 '<!@(<(pkg-config) --cflags gconf-2.0)',
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
320 'g_settings_list_schemas', 286 'g_settings_list_schemas',
321 ], 287 ],
322 'message': 'Generating libgio library loader.', 288 'message': 'Generating libgio library loader.',
323 'process_outputs_as_sources': 1, 289 'process_outputs_as_sources': 1,
324 }, 290 },
325 ], 291 ],
326 }], 292 }],
327 ], 293 ],
328 }, 294 },
329 { 295 {
330 'target_name': 'libpci', 296 'target_name': 'glib',
331 'type': 'static_library', 297 'type': 'none',
332 'cflags': [ 298 'toolsets': ['host', 'target'],
333 '<!@(<(pkg-config) --cflags libpci)', 299 'variables': {
334 ], 300 'glib_packages': 'glib-2.0 gmodule-2.0 gobject-2.0 gthread-2.0',
335 'direct_dependent_settings': {
336 'include_dirs': [
337 '<(SHARED_INTERMEDIATE_DIR)',
338 ],
339 'conditions': [
340 ['linux_link_libpci==1', {
341 'link_settings': {
342 'ldflags': [
343 '<!@(<(pkg-config) --libs-only-L --libs-only-other libpci)',
344 ],
345 'libraries': [
346 '<!@(<(pkg-config) --libs-only-l libpci)',
347 ],
348 }
349 }],
350 ],
351 }, 301 },
352 'include_dirs': [ 302 'conditions': [
353 '../..', 303 ['_toolset=="target"', {
354 ], 304 'direct_dependent_settings': {
355 'hard_dependency': 1, 305 'cflags': [
356 'actions': [ 306 '<!@(<(pkg-config) --cflags <(glib_packages))',
357 { 307 ],
358 'variables': {
359 'output_h': '<(SHARED_INTERMEDIATE_DIR)/library_loaders/libpci.h',
360 'output_cc': '<(INTERMEDIATE_DIR)/libpci_loader.cc',
361 'generator': '../../tools/generate_library_loader/generate_library_l oader.py',
362 }, 308 },
363 'action_name': 'generate_libpci_loader', 309 'link_settings': {
364 'inputs': [ 310 'ldflags': [
365 '<(generator)', 311 '<!@(<(pkg-config) --libs-only-L --libs-only-other <(glib_packages ))',
366 ], 312 ],
367 'outputs': [ 313 'libraries': [
368 '<(output_h)', 314 '<!@(<(pkg-config) --libs-only-l <(glib_packages))',
369 '<(output_cc)', 315 ],
370 ], 316 },
371 'action': ['python', 317 }, {
372 '<(generator)', 318 'direct_dependent_settings': {
373 '--name', 'LibPciLoader', 319 'cflags': [
374 '--output-h', '<(output_h)', 320 '<!@(pkg-config --cflags <(glib_packages))',
375 '--output-cc', '<(output_cc)', 321 ],
376 '--header', '<pci/pci.h>', 322 },
377 # TODO(phajdan.jr): Report problem to pciutils project 323 'link_settings': {
378 # and get it fixed so that we don't need --use-extern-c. 324 'ldflags': [
379 '--use-extern-c', 325 '<!@(pkg-config --libs-only-L --libs-only-other <(glib_packages))' ,
380 '--link-directly=<(linux_link_libpci)', 326 ],
381 'pci_alloc', 327 'libraries': [
382 'pci_init', 328 '<!@(pkg-config --libs-only-l <(glib_packages))',
383 'pci_cleanup', 329 ],
384 'pci_scan_bus', 330 },
385 'pci_fill_info', 331 }],
386 'pci_lookup_name', 332 ['use_x11==1', {
387 ], 333 'link_settings': {
388 'message': 'Generating libpci library loader.', 334 'libraries': [ '-lXtst' ]
389 'process_outputs_as_sources': 1, 335 }
390 }, 336 }],
391 ], 337 ],
392 }, 338 },
393 { 339 {
394 'target_name': 'libspeechd', 340 'target_name': 'gnome_keyring',
395 'type': 'static_library', 341 'type': 'none',
396 'direct_dependent_settings': { 342 'conditions': [
397 'include_dirs': [ 343 ['use_gnome_keyring==1', {
398 '<(SHARED_INTERMEDIATE_DIR)', 344 'direct_dependent_settings': {
399 ], 345 'cflags': [
400 'conditions': [ 346 '<!@(<(pkg-config) --cflags gnome-keyring-1)',
401 ['linux_link_libspeechd==1', { 347 ],
402 'link_settings': { 348 'defines': [
403 'libraries': [ 349 'USE_GNOME_KEYRING',
404 '-lspeechd', 350 ],
351 'conditions': [
352 ['linux_link_gnome_keyring==0', {
353 'defines': ['DLOPEN_GNOME_KEYRING'],
354 }],
355 ],
356 },
357 'conditions': [
358 ['linux_link_gnome_keyring!=0', {
359 'link_settings': {
360 'ldflags': [
361 '<!@(<(pkg-config) --libs-only-L --libs-only-other gnome-keyri ng-1)',
362 ],
363 'libraries': [
364 '<!@(<(pkg-config) --libs-only-l gnome-keyring-1)',
365 ],
366 },
367 }, {
368 'conditions': [
369 ['OS=="linux"', {
370 'link_settings': {
371 'libraries': [
372 '-ldl',
373 ],
374 },
375 }],
405 ], 376 ],
406 } 377 }],
407 }],
408 ],
409 },
410 'include_dirs': [
411 '../..',
412 ],
413 'hard_dependency': 1,
414 'actions': [
415 {
416 'variables': {
417 'output_h': '<(SHARED_INTERMEDIATE_DIR)/library_loaders/libspeechd.h ',
418 'output_cc': '<(INTERMEDIATE_DIR)/libspeechd_loader.cc',
419 'generator': '../../tools/generate_library_loader/generate_library_l oader.py',
420
421 # speech-dispatcher >= 0.8 installs libspeechd.h into
422 # speech-dispatcher/libspeechd.h, whereas speech-dispatcher < 0.8
423 # puts libspeechd.h in the top-level include directory.
424 # Since we need to support both cases for now, we ship a copy of
425 # libspeechd.h in third_party/speech-dispatcher. If the user
426 # prefers to link against the speech-dispatcher directly, the
427 # `libspeechd_h_prefix' variable can be passed to gyp with a value
428 # such as "speech-dispatcher/" that will be prepended to
429 # "libspeechd.h" in the #include directive.
430 # TODO(phaldan.jr): Once we do not need to support
431 # speech-dispatcher < 0.8 we can get rid of all this (including
432 # third_party/speech-dispatcher) and just include
433 # speech-dispatcher/libspeechd.h unconditionally.
434 'libspeechd_h_prefix%': '',
435 },
436 'action_name': 'generate_libspeechd_loader',
437 'inputs': [
438 '<(generator)',
439 ], 378 ],
440 'outputs': [ 379 }],
441 '<(output_h)',
442 '<(output_cc)',
443 ],
444 'action': ['python',
445 '<(generator)',
446 '--name', 'LibSpeechdLoader',
447 '--output-h', '<(output_h)',
448 '--output-cc', '<(output_cc)',
449 '--header', '<<(libspeechd_h_prefix)libspeechd.h>',
450 '--bundled-header',
451 '"third_party/speech-dispatcher/libspeechd.h"',
452 '--link-directly=<(linux_link_libspeechd)',
453 'spd_open',
454 'spd_say',
455 'spd_stop',
456 'spd_close',
457 'spd_pause',
458 'spd_resume',
459 'spd_set_notification_on',
460 'spd_set_voice_rate',
461 'spd_set_voice_pitch',
462 'spd_list_synthesis_voices',
463 'spd_set_synthesis_voice',
464 'spd_list_modules',
465 'spd_set_output_module',
466 ],
467 'message': 'Generating libspeechd library loader.',
468 'process_outputs_as_sources': 1,
469 },
470 ], 380 ],
471 }, 381 },
472 { 382 {
383 # The unit tests use a few convenience functions from the GNOME
384 # Keyring library directly. We ignore linux_link_gnome_keyring and
385 # link directly in this version of the target to allow this.
386 # *** Do not use this target in the main binary! ***
387 'target_name': 'gnome_keyring_direct',
388 'type': 'none',
389 'conditions': [
390 ['use_gnome_keyring==1', {
391 'direct_dependent_settings': {
392 'cflags': [
393 '<!@(<(pkg-config) --cflags gnome-keyring-1)',
394 ],
395 'defines': [
396 'USE_GNOME_KEYRING',
397 ],
398 'conditions': [
399 ['linux_link_gnome_keyring==0', {
400 'defines': ['DLOPEN_GNOME_KEYRING'],
401 }],
402 ],
403 },
404 'link_settings': {
405 'ldflags': [
406 '<!@(<(pkg-config) --libs-only-L --libs-only-other gnome-keyring-1 )',
407 ],
408 'libraries': [
409 '<!@(<(pkg-config) --libs-only-l gnome-keyring-1)',
410 ],
411 },
412 }],
413 ],
414 },
415 {
473 'target_name': 'libbrlapi', 416 'target_name': 'libbrlapi',
474 'type': 'static_library', 417 'type': 'static_library',
475 'dependencies': [ 418 'dependencies': [
476 '../../base/base.gyp:base', 419 '../../base/base.gyp:base',
477 ], 420 ],
478 'all_dependent_settings': { 421 'all_dependent_settings': {
479 'include_dirs': [ 422 'include_dirs': [
480 '<(SHARED_INTERMEDIATE_DIR)', 423 '<(SHARED_INTERMEDIATE_DIR)',
481 ], 424 ],
482 'defines': [ 425 'defines': [
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
527 'brlapi__leaveTtyMode', 470 'brlapi__leaveTtyMode',
528 'brlapi__writeDots', 471 'brlapi__writeDots',
529 'brlapi__readKey', 472 'brlapi__readKey',
530 ], 473 ],
531 'message': 'Generating libbrlapi library loader.', 474 'message': 'Generating libbrlapi library loader.',
532 'process_outputs_as_sources': 1, 475 'process_outputs_as_sources': 1,
533 }, 476 },
534 ], 477 ],
535 }, 478 },
536 { 479 {
537 'target_name': 'x11',
538 'type': 'none',
539 'toolsets': ['host', 'target'],
540 'conditions': [
541 ['_toolset=="target"', {
542 'direct_dependent_settings': {
543 'cflags': [
544 '<!@(<(pkg-config) --cflags x11)',
545 ],
546 },
547 'link_settings': {
548 'ldflags': [
549 '<!@(<(pkg-config) --libs-only-L --libs-only-other x11 xi)',
550 ],
551 'libraries': [
552 '<!@(<(pkg-config) --libs-only-l x11 xi)',
553 ],
554 },
555 }, {
556 'direct_dependent_settings': {
557 'cflags': [
558 '<!@(pkg-config --cflags x11)',
559 ],
560 },
561 'link_settings': {
562 'ldflags': [
563 '<!@(pkg-config --libs-only-L --libs-only-other x11 xi)',
564 ],
565 'libraries': [
566 '<!@(pkg-config --libs-only-l x11 xi)',
567 ],
568 },
569 }],
570 ],
571 },
572 {
573 'target_name': 'xext',
574 'type': 'none',
575 'conditions': [
576 ['_toolset=="target"', {
577 'direct_dependent_settings': {
578 'cflags': [
579 '<!@(<(pkg-config) --cflags xext)',
580 ],
581 },
582 'link_settings': {
583 'ldflags': [
584 '<!@(<(pkg-config) --libs-only-L --libs-only-other xext)',
585 ],
586 'libraries': [
587 '<!@(<(pkg-config) --libs-only-l xext)',
588 ],
589 },
590 }],
591 ],
592 },
593 {
594 'target_name': 'xfixes',
595 'type': 'none',
596 'conditions': [
597 ['_toolset=="target"', {
598 'direct_dependent_settings': {
599 'cflags': [
600 '<!@(<(pkg-config) --cflags xfixes)',
601 ],
602 },
603 'link_settings': {
604 'ldflags': [
605 '<!@(<(pkg-config) --libs-only-L --libs-only-other xfixes)',
606 ],
607 'libraries': [
608 '<!@(<(pkg-config) --libs-only-l xfixes)',
609 ],
610 },
611 }],
612 ],
613 },
614 {
615 'target_name': 'xrandr',
616 'type': 'none',
617 'toolsets': ['host', 'target'],
618 'conditions': [
619 ['_toolset=="target"', {
620 'direct_dependent_settings': {
621 'cflags': [
622 '<!@(<(pkg-config) --cflags xrandr)',
623 ],
624 },
625 'link_settings': {
626 'ldflags': [
627 '<!@(<(pkg-config) --libs-only-L --libs-only-other xrandr)',
628 ],
629 'libraries': [
630 '<!@(<(pkg-config) --libs-only-l xrandr)',
631 ],
632 },
633 }, {
634 'direct_dependent_settings': {
635 'cflags': [
636 '<!@(pkg-config --cflags xrandr)',
637 ],
638 },
639 'link_settings': {
640 'ldflags': [
641 '<!@(pkg-config --libs-only-L --libs-only-other xrandr)',
642 ],
643 'libraries': [
644 '<!@(pkg-config --libs-only-l xrandr)',
645 ],
646 },
647 }],
648 ],
649 },
650 {
651 'target_name': 'libgcrypt', 480 'target_name': 'libgcrypt',
652 'type': 'none', 481 'type': 'none',
653 'conditions': [ 482 'conditions': [
654 ['_toolset=="target" and use_cups==1', { 483 ['_toolset=="target" and use_cups==1', {
655 'direct_dependent_settings': { 484 'direct_dependent_settings': {
656 'cflags': [ 485 'cflags': [
657 '<!@(libgcrypt-config --cflags)', 486 '<!@(libgcrypt-config --cflags)',
658 ], 487 ],
659 }, 488 },
660 'link_settings': { 489 'link_settings': {
661 'libraries': [ 490 'libraries': [
662 '<!@(libgcrypt-config --libs)', 491 '<!@(libgcrypt-config --libs)',
663 ], 492 ],
664 }, 493 },
665 }], 494 }],
666 ], 495 ],
667 }, 496 },
668 { 497 {
669 'target_name': 'gnome_keyring', 498 'target_name': 'libpci',
670 'type': 'none', 499 'type': 'static_library',
671 'conditions': [ 500 'cflags': [
672 ['use_gnome_keyring==1', { 501 '<!@(<(pkg-config) --cflags libpci)',
673 'direct_dependent_settings': { 502 ],
674 'cflags': [ 503 'direct_dependent_settings': {
675 '<!@(<(pkg-config) --cflags gnome-keyring-1)', 504 'include_dirs': [
676 ], 505 '<(SHARED_INTERMEDIATE_DIR)',
677 'defines': [ 506 ],
678 'USE_GNOME_KEYRING', 507 'conditions': [
679 ], 508 ['linux_link_libpci==1', {
680 'conditions': [ 509 'link_settings': {
681 ['linux_link_gnome_keyring==0', { 510 'ldflags': [
682 'defines': ['DLOPEN_GNOME_KEYRING'], 511 '<!@(<(pkg-config) --libs-only-L --libs-only-other libpci)',
683 }],
684 ],
685 },
686 'conditions': [
687 ['linux_link_gnome_keyring!=0', {
688 'link_settings': {
689 'ldflags': [
690 '<!@(<(pkg-config) --libs-only-L --libs-only-other gnome-keyri ng-1)',
691 ],
692 'libraries': [
693 '<!@(<(pkg-config) --libs-only-l gnome-keyring-1)',
694 ],
695 },
696 }, {
697 'conditions': [
698 ['OS=="linux"', {
699 'link_settings': {
700 'libraries': [
701 '-ldl',
702 ],
703 },
704 }],
705 ], 512 ],
706 }], 513 'libraries': [
707 ], 514 '<!@(<(pkg-config) --libs-only-l libpci)',
708 }], 515 ],
709 ], 516 }
710 }, 517 }],
711 {
712 # The unit tests use a few convenience functions from the GNOME
713 # Keyring library directly. We ignore linux_link_gnome_keyring and
714 # link directly in this version of the target to allow this.
715 # *** Do not use this target in the main binary! ***
716 'target_name': 'gnome_keyring_direct',
717 'type': 'none',
718 'conditions': [
719 ['use_gnome_keyring==1', {
720 'direct_dependent_settings': {
721 'cflags': [
722 '<!@(<(pkg-config) --cflags gnome-keyring-1)',
723 ],
724 'defines': [
725 'USE_GNOME_KEYRING',
726 ],
727 'conditions': [
728 ['linux_link_gnome_keyring==0', {
729 'defines': ['DLOPEN_GNOME_KEYRING'],
730 }],
731 ],
732 },
733 'link_settings': {
734 'ldflags': [
735 '<!@(<(pkg-config) --libs-only-L --libs-only-other gnome-keyring-1 )',
736 ],
737 'libraries': [
738 '<!@(<(pkg-config) --libs-only-l gnome-keyring-1)',
739 ],
740 },
741 }],
742 ],
743 },
744 {
745 'target_name': 'dbus',
746 'type': 'none',
747 'direct_dependent_settings': {
748 'cflags': [
749 '<!@(<(pkg-config) --cflags dbus-1)',
750 ], 518 ],
751 }, 519 },
752 'link_settings': { 520 'include_dirs': [
753 'ldflags': [ 521 '../..',
754 '<!@(<(pkg-config) --libs-only-L --libs-only-other dbus-1)', 522 ],
755 ], 523 'hard_dependency': 1,
756 'libraries': [ 524 'actions': [
757 '<!@(<(pkg-config) --libs-only-l dbus-1)', 525 {
758 ], 526 'variables': {
759 }, 527 'output_h': '<(SHARED_INTERMEDIATE_DIR)/library_loaders/libpci.h',
760 }, 528 'output_cc': '<(INTERMEDIATE_DIR)/libpci_loader.cc',
761 { 529 'generator': '../../tools/generate_library_loader/generate_library_l oader.py',
762 'target_name': 'glib', 530 },
763 'type': 'none', 531 'action_name': 'generate_libpci_loader',
764 'toolsets': ['host', 'target'], 532 'inputs': [
765 'variables': { 533 '<(generator)',
766 'glib_packages': 'glib-2.0 gmodule-2.0 gobject-2.0 gthread-2.0', 534 ],
767 }, 535 'outputs': [
768 'conditions': [ 536 '<(output_h)',
769 ['_toolset=="target"', { 537 '<(output_cc)',
770 'direct_dependent_settings': { 538 ],
771 'cflags': [ 539 'action': ['python',
772 '<!@(<(pkg-config) --cflags <(glib_packages))', 540 '<(generator)',
773 ], 541 '--name', 'LibPciLoader',
774 }, 542 '--output-h', '<(output_h)',
775 'link_settings': { 543 '--output-cc', '<(output_cc)',
776 'ldflags': [ 544 '--header', '<pci/pci.h>',
777 '<!@(<(pkg-config) --libs-only-L --libs-only-other <(glib_packages ))', 545 # TODO(phajdan.jr): Report problem to pciutils project
778 ], 546 # and get it fixed so that we don't need --use-extern-c.
779 'libraries': [ 547 '--use-extern-c',
780 '<!@(<(pkg-config) --libs-only-l <(glib_packages))', 548 '--link-directly=<(linux_link_libpci)',
781 ], 549 'pci_alloc',
782 }, 550 'pci_init',
783 }, { 551 'pci_cleanup',
784 'direct_dependent_settings': { 552 'pci_scan_bus',
785 'cflags': [ 553 'pci_fill_info',
786 '<!@(pkg-config --cflags <(glib_packages))', 554 'pci_lookup_name',
787 ], 555 ],
788 }, 556 'message': 'Generating libpci library loader.',
789 'link_settings': { 557 'process_outputs_as_sources': 1,
790 'ldflags': [ 558 },
791 '<!@(pkg-config --libs-only-L --libs-only-other <(glib_packages))' ,
792 ],
793 'libraries': [
794 '<!@(pkg-config --libs-only-l <(glib_packages))',
795 ],
796 },
797 }],
798 ['use_x11==1', {
799 'link_settings': {
800 'libraries': [ '-lXtst' ]
801 }
802 }],
803 ],
804 },
805 {
806 'target_name': 'pangocairo',
807 'type': 'none',
808 'toolsets': ['host', 'target'],
809 'conditions': [
810 ['_toolset=="target"', {
811 'direct_dependent_settings': {
812 'cflags': [
813 '<!@(<(pkg-config) --cflags pangocairo pangoft2)',
814 ],
815 },
816 'link_settings': {
817 'ldflags': [
818 '<!@(<(pkg-config) --libs-only-L --libs-only-other pangocairo pang oft2)',
819 ],
820 'libraries': [
821 '<!@(<(pkg-config) --libs-only-l pangocairo pangoft2)',
822 ],
823 },
824 }, {
825 'direct_dependent_settings': {
826 'cflags': [
827 '<!@(pkg-config --cflags pangocairo pangoft2)',
828 ],
829 },
830 'link_settings': {
831 'ldflags': [
832 '<!@(pkg-config --libs-only-L --libs-only-other pangocairo pangoft 2)',
833 ],
834 'libraries': [
835 '<!@(pkg-config --libs-only-l pangocairo pangoft2)',
836 ],
837 },
838 }],
839 ], 559 ],
840 }, 560 },
841 { 561 {
842 'target_name': 'libresolv', 562 'target_name': 'libresolv',
843 'type': 'none', 563 'type': 'none',
844 'link_settings': { 564 'link_settings': {
845 'libraries': [ 565 'libraries': [
846 '-lresolv', 566 '-lresolv',
847 ], 567 ],
848 }, 568 },
849 }, 569 },
850 { 570 {
571 'target_name': 'libspeechd',
572 'type': 'static_library',
573 'direct_dependent_settings': {
574 'include_dirs': [
575 '<(SHARED_INTERMEDIATE_DIR)',
576 ],
577 'conditions': [
578 ['linux_link_libspeechd==1', {
579 'link_settings': {
580 'libraries': [
581 '-lspeechd',
582 ],
583 }
584 }],
585 ],
586 },
587 'include_dirs': [
588 '../..',
589 ],
590 'hard_dependency': 1,
591 'actions': [
592 {
593 'variables': {
594 'output_h': '<(SHARED_INTERMEDIATE_DIR)/library_loaders/libspeechd.h ',
595 'output_cc': '<(INTERMEDIATE_DIR)/libspeechd_loader.cc',
596 'generator': '../../tools/generate_library_loader/generate_library_l oader.py',
597
598 # speech-dispatcher >= 0.8 installs libspeechd.h into
599 # speech-dispatcher/libspeechd.h, whereas speech-dispatcher < 0.8
600 # puts libspeechd.h in the top-level include directory.
601 # Since we need to support both cases for now, we ship a copy of
602 # libspeechd.h in third_party/speech-dispatcher. If the user
603 # prefers to link against the speech-dispatcher directly, the
604 # `libspeechd_h_prefix' variable can be passed to gyp with a value
605 # such as "speech-dispatcher/" that will be prepended to
606 # "libspeechd.h" in the #include directive.
607 # TODO(phaldan.jr): Once we do not need to support
608 # speech-dispatcher < 0.8 we can get rid of all this (including
609 # third_party/speech-dispatcher) and just include
610 # speech-dispatcher/libspeechd.h unconditionally.
611 'libspeechd_h_prefix%': '',
612 },
613 'action_name': 'generate_libspeechd_loader',
614 'inputs': [
615 '<(generator)',
616 ],
617 'outputs': [
618 '<(output_h)',
619 '<(output_cc)',
620 ],
621 'action': ['python',
622 '<(generator)',
623 '--name', 'LibSpeechdLoader',
624 '--output-h', '<(output_h)',
625 '--output-cc', '<(output_cc)',
626 '--header', '<<(libspeechd_h_prefix)libspeechd.h>',
627 '--bundled-header',
628 '"third_party/speech-dispatcher/libspeechd.h"',
629 '--link-directly=<(linux_link_libspeechd)',
630 'spd_open',
631 'spd_say',
632 'spd_stop',
633 'spd_close',
634 'spd_pause',
635 'spd_resume',
636 'spd_set_notification_on',
637 'spd_set_voice_rate',
638 'spd_set_voice_pitch',
639 'spd_list_synthesis_voices',
640 'spd_set_synthesis_voice',
641 'spd_list_modules',
642 'spd_set_output_module',
643 ],
644 'message': 'Generating libspeechd library loader.',
645 'process_outputs_as_sources': 1,
646 },
647 ],
648 },
649 {
650 'target_name': 'pangocairo',
651 'type': 'none',
652 'toolsets': ['host', 'target'],
653 'conditions': [
654 ['_toolset=="target"', {
655 'direct_dependent_settings': {
656 'cflags': [
657 '<!@(<(pkg-config) --cflags pangocairo pangoft2)',
658 ],
659 },
660 'link_settings': {
661 'ldflags': [
662 '<!@(<(pkg-config) --libs-only-L --libs-only-other pangocairo pang oft2)',
663 ],
664 'libraries': [
665 '<!@(<(pkg-config) --libs-only-l pangocairo pangoft2)',
666 ],
667 },
668 }, {
669 'direct_dependent_settings': {
670 'cflags': [
671 '<!@(pkg-config --cflags pangocairo pangoft2)',
672 ],
673 },
674 'link_settings': {
675 'ldflags': [
676 '<!@(pkg-config --libs-only-L --libs-only-other pangocairo pangoft 2)',
677 ],
678 'libraries': [
679 '<!@(pkg-config --libs-only-l pangocairo pangoft2)',
680 ],
681 },
682 }],
683 ],
684 },
685 {
686 'target_name': 'ssl',
687 'type': 'none',
688 'conditions': [
689 ['_toolset=="target"', {
690 'conditions': [
691 ['use_openssl==1', {
692 'dependencies': [
693 '../../third_party/openssl/openssl.gyp:openssl',
694 ],
695 }],
696 ['use_openssl==0 and use_system_ssl==0', {
697 'dependencies': [
698 '../../net/third_party/nss/ssl.gyp:libssl',
699 ],
700 'direct_dependent_settings': {
701 'include_dirs+': [
702 # We need for our local copies of the libssl3 headers to come
703 # before other includes, as we are shadowing system headers.
704 '<(DEPTH)/net/third_party/nss/ssl',
705 ],
706 'cflags': [
707 '<!@(<(pkg-config) --cflags nss)',
708 ],
709 },
710 'link_settings': {
711 'ldflags': [
712 '<!@(<(pkg-config) --libs-only-L --libs-only-other nss)',
713 ],
714 'libraries': [
715 '<!@(<(pkg-config) --libs-only-l nss | sed -e "s/-lssl3//")',
716 ],
717 },
718 }],
719 ['use_openssl==0 and use_system_ssl==1', {
720 'direct_dependent_settings': {
721 'cflags': [
722 '<!@(<(pkg-config) --cflags nss)',
723 ],
724 'defines': [
725 'USE_SYSTEM_SSL',
726 ],
727 },
728 'link_settings': {
729 'ldflags': [
730 '<!@(<(pkg-config) --libs-only-L --libs-only-other nss)',
731 ],
732 'libraries': [
733 '<!@(<(pkg-config) --libs-only-l nss)',
734 ],
735 },
736 }],
737 ['use_openssl==0 and clang==1', {
738 'direct_dependent_settings': {
739 'cflags': [
740 # There is a broken header guard in /usr/include/nss/secmod.h:
741 # https://bugzilla.mozilla.org/show_bug.cgi?id=884072
742 '-Wno-header-guard',
743 ],
744 },
745 }],
746 ]
747 }],
748 ],
749 },
750 {
851 'target_name': 'udev', 751 'target_name': 'udev',
852 'type': 'none', 752 'type': 'none',
853 'conditions': [ 753 'conditions': [
854 # libudev is not available on *BSD 754 # libudev is not available on *BSD
855 ['_toolset=="target" and os_bsd!=1', { 755 ['_toolset=="target" and os_bsd!=1', {
856 'direct_dependent_settings': { 756 'direct_dependent_settings': {
857 'cflags': [ 757 'cflags': [
858 '<!@(<(pkg-config) --cflags libudev)' 758 '<!@(<(pkg-config) --cflags libudev)'
859 ], 759 ],
860 }, 760 },
861 'link_settings': { 761 'link_settings': {
862 'ldflags': [ 762 'ldflags': [
863 '<!@(<(pkg-config) --libs-only-L --libs-only-other libudev)', 763 '<!@(<(pkg-config) --libs-only-L --libs-only-other libudev)',
864 ], 764 ],
865 'libraries': [ 765 'libraries': [
866 '<!@(<(pkg-config) --libs-only-l libudev)', 766 '<!@(<(pkg-config) --libs-only-l libudev)',
867 ], 767 ],
868 }, 768 },
869 }], 769 }],
870 ], 770 ],
871 }, 771 },
872 { 772 {
873 'target_name': 'dridrm', 773 'target_name': 'x11',
874 'type': 'none', 774 'type': 'none',
875 'direct_dependent_settings': { 775 'toolsets': ['host', 'target'],
876 'cflags': [ 776 'conditions': [
877 '<!@(<(pkg-config) --cflags libdrm)', 777 ['_toolset=="target"', {
878 ], 778 'direct_dependent_settings': {
879 }, 779 'cflags': [
880 'link_settings': { 780 '<!@(<(pkg-config) --cflags x11)',
881 'libraries': [ 781 ],
882 '<!@(<(pkg-config) --libs-only-l libdrm)', 782 },
883 ], 783 'link_settings': {
884 }, 784 'ldflags': [
785 '<!@(<(pkg-config) --libs-only-L --libs-only-other x11 xi)',
786 ],
787 'libraries': [
788 '<!@(<(pkg-config) --libs-only-l x11 xi)',
789 ],
790 },
791 }, {
792 'direct_dependent_settings': {
793 'cflags': [
794 '<!@(pkg-config --cflags x11)',
795 ],
796 },
797 'link_settings': {
798 'ldflags': [
799 '<!@(pkg-config --libs-only-L --libs-only-other x11 xi)',
800 ],
801 'libraries': [
802 '<!@(pkg-config --libs-only-l x11 xi)',
803 ],
804 },
805 }],
806 ],
807 },
808 {
809 'target_name': 'xext',
810 'type': 'none',
811 'conditions': [
812 ['_toolset=="target"', {
813 'direct_dependent_settings': {
814 'cflags': [
815 '<!@(<(pkg-config) --cflags xext)',
816 ],
817 },
818 'link_settings': {
819 'ldflags': [
820 '<!@(<(pkg-config) --libs-only-L --libs-only-other xext)',
821 ],
822 'libraries': [
823 '<!@(<(pkg-config) --libs-only-l xext)',
824 ],
825 },
826 }],
827 ],
828 },
829 {
830 'target_name': 'xfixes',
831 'type': 'none',
832 'conditions': [
833 ['_toolset=="target"', {
834 'direct_dependent_settings': {
835 'cflags': [
836 '<!@(<(pkg-config) --cflags xfixes)',
837 ],
838 },
839 'link_settings': {
840 'ldflags': [
841 '<!@(<(pkg-config) --libs-only-L --libs-only-other xfixes)',
842 ],
843 'libraries': [
844 '<!@(<(pkg-config) --libs-only-l xfixes)',
845 ],
846 },
847 }],
848 ],
849 },
850 {
851 'target_name': 'xrandr',
852 'type': 'none',
853 'toolsets': ['host', 'target'],
854 'conditions': [
855 ['_toolset=="target"', {
856 'direct_dependent_settings': {
857 'cflags': [
858 '<!@(<(pkg-config) --cflags xrandr)',
859 ],
860 },
861 'link_settings': {
862 'ldflags': [
863 '<!@(<(pkg-config) --libs-only-L --libs-only-other xrandr)',
864 ],
865 'libraries': [
866 '<!@(<(pkg-config) --libs-only-l xrandr)',
867 ],
868 },
869 }, {
870 'direct_dependent_settings': {
871 'cflags': [
872 '<!@(pkg-config --cflags xrandr)',
873 ],
874 },
875 'link_settings': {
876 'ldflags': [
877 '<!@(pkg-config --libs-only-L --libs-only-other xrandr)',
878 ],
879 'libraries': [
880 '<!@(pkg-config --libs-only-l xrandr)',
881 ],
882 },
883 }],
884 ],
885 }, 885 },
886 ], 886 ],
887 } 887 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698