fd9a878bf3e145d0a34c50b1c699d99656392152
[platform/framework/web/chromium-efl.git] / tizen_src / build / system.gyp
1 # Copyright (c) 2015 Samsung Electronics. 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     'pkg-config': 'pkg-config',
8   },
9   'targets': [
10     {
11       'target_name': 'evas',
12       'type': 'none',
13       'direct_dependent_settings': {
14         'cflags': [
15           '<!@(<(pkg-config) --cflags evas)',
16         ],
17       },
18       'link_settings': {
19         'ldflags': [
20           '<!@(<(pkg-config) --libs-only-L --libs-only-other evas)',
21         ],
22         'libraries': [
23           '<!@(<(pkg-config) --libs-only-l evas)',
24         ],
25       },
26     }, # evas
27     {
28       'target_name': 'ecore',
29       'type': 'none',
30       'direct_dependent_settings': {
31         'cflags': [
32           '<!@(<(pkg-config) --cflags ecore)',
33         ],
34       },
35       'link_settings': {
36         'ldflags': [
37           '<!@(<(pkg-config) --libs-only-L --libs-only-other ecore)',
38         ],
39         'libraries': [
40           '<!@(<(pkg-config) --libs-only-l ecore)',
41         ],
42       },
43     }, # ecore
44     {
45       'target_name': 'ecore-imf-evas',
46       'type': 'none',
47       'direct_dependent_settings': {
48         'cflags': [
49           '<!@(<(pkg-config) --cflags ecore-imf-evas)',
50         ],
51       },
52       'link_settings': {
53         'ldflags': [
54           '<!@(<(pkg-config) --libs-only-L --libs-only-other ecore-imf-evas)',
55         ],
56         'libraries': [
57           '<!@(<(pkg-config) --libs-only-l ecore-imf-evas)',
58         ],
59       },
60     }, # ecore-imf-evas
61     {
62       'target_name': 'ecore-x',
63       'type': 'none',
64       'conditions': [
65         ['use_wayland==0', {
66           'direct_dependent_settings': {
67             'cflags': [
68               '<!@(<(pkg-config) --cflags ecore-x)',
69             ],
70           },
71           'link_settings': {
72             'ldflags': [
73               '<!@(<(pkg-config) --libs-only-L --libs-only-other ecore-x)',
74             ],
75             'libraries': [
76               '<!@(<(pkg-config) --libs-only-l ecore-x)',
77             ],
78           },
79         }],
80       ],
81     }, # ecore-x
82     {
83       'target_name': 'ecore-wayland',
84       'type': 'none',
85       'conditions': [
86         ['building_for_tizen==1 and use_wayland==1', {
87           'direct_dependent_settings': {
88             'cflags': [
89               '<!@(<(pkg-config) --cflags ecore-wayland)',
90             ],
91           },
92           'link_settings': {
93             'ldflags': [
94               '<!@(<(pkg-config) --libs-only-L --libs-only-other ecore-wayland)',
95             ],
96             'libraries': [
97               '<!@(<(pkg-config) --libs-only-l ecore-wayland)',
98             ],
99           },
100         }],
101       ],
102     }, # ecore-wayland
103     {
104       'target_name': 'ecore-evas',
105       'type': 'none',
106       'direct_dependent_settings': {
107         'cflags': [
108           '<!@(<(pkg-config) --cflags ecore-evas)',
109         ],
110       },
111       'link_settings': {
112         'ldflags': [
113           '<!@(<(pkg-config) --libs-only-L --libs-only-other ecore-evas)',
114         ],
115         'libraries': [
116           '<!@(<(pkg-config) --libs-only-l ecore-evas)',
117         ],
118       },
119     }, # ecore-evas
120     {
121       'target_name': 'ecore-input',
122       'type': 'none',
123       'direct_dependent_settings': {
124         'cflags': [
125           '<!@(<(pkg-config) --cflags ecore-input)',
126         ],
127       },
128       'link_settings': {
129         'ldflags': [
130           '<!@(<(pkg-config) --libs-only-L --libs-only-other ecore-input)',
131         ],
132         'libraries': [
133           '<!@(<(pkg-config) --libs-only-l ecore-input)',
134         ],
135       },
136     }, # ecore-input
137     {
138       'target_name': 'elementary',
139       'type': 'none',
140       'direct_dependent_settings': {
141         'cflags': [
142           '<!@(<(pkg-config) --cflags elementary)',
143         ],
144       },
145       'link_settings': {
146         'ldflags': [
147           '<!@(<(pkg-config) --libs-only-L --libs-only-other elementary)',
148         ],
149         'libraries': [
150           '<!@(<(pkg-config) --libs-only-l elementary)',
151         ],
152       },
153       'conditions': [
154          ['clang==1', {
155             'direct_dependent_settings': {
156               'cflags': [
157                  # Fix: elm_prefs_common.h:27:9: warning: empty struct has size 0 in C, size 1 in C++
158                  '-Wno-extern-c-compat',
159               ],
160             },
161          }],
162       ],
163     }, # elementary
164     {
165       'target_name': 'edje',
166       'type': 'none',
167       'direct_dependent_settings': {
168         'cflags': [
169           '<!@(<(pkg-config) --cflags edje)',
170         ],
171       },
172       'link_settings': {
173         'ldflags': [
174           '<!@(<(pkg-config) --libs-only-L --libs-only-other edje)',
175         ],
176         'libraries': [
177           '<!@(<(pkg-config) --libs-only-l edje)',
178         ],
179       },
180     }, # edje
181     {
182       'target_name': 'efl-assist',
183       'type': 'none',
184       'conditions': [
185         ['building_for_tizen_mobile==1', {
186           'direct_dependent_settings': {
187             'cflags': [
188               '<!@(<(pkg-config) --cflags efl-assist)',
189             ],
190           },
191           'link_settings': {
192             'ldflags': [
193               '<!@(<(pkg-config) --libs-only-L --libs-only-other efl-assist)',
194             ],
195             'libraries': [
196               '<!@(<(pkg-config) --libs-only-l efl-assist)',
197             ],
198           },
199         }],
200       ],
201     }, # efl-assist
202     {
203       'target_name': 'ui-gadget',
204       'type': 'none',
205       'conditions': [
206         ['building_for_tizen==1', {
207           'direct_dependent_settings': {
208             'cflags': [
209               '<!@(<(pkg-config) --cflags ui-gadget-1)',
210             ],
211           },
212           'link_settings': {
213             'ldflags': [
214               '<!@(<(pkg-config) --libs-only-L --libs-only-other ui-gadget-1)',
215             ],
216             'libraries': [
217               '<!@(<(pkg-config) --libs-only-l ui-gadget-1)',
218             ],
219           },
220         }],
221       ],
222     }, # ui-gadget
223     {
224       'target_name': 'capi-appfw-application',
225       'type': 'none',
226       'conditions': [
227         ['building_for_tizen==1', {
228           'direct_dependent_settings': {
229             'cflags': [
230               '<!@(<(pkg-config) --cflags capi-appfw-application)',
231             ],
232           },
233           'link_settings': {
234             'ldflags': [
235               '<!@(<(pkg-config) --libs-only-L --libs-only-other capi-appfw-application)',
236             ],
237             'libraries': [
238               '<!@(<(pkg-config) --libs-only-l capi-appfw-application)',
239             ],
240           },
241         }],
242       ],
243     }, # capi-appfw-application
244     {
245       'target_name': 'capi-location-manager',
246       'type': 'none',
247       'conditions': [
248         ['building_for_tizen==1', {
249           'direct_dependent_settings': {
250             'cflags': [
251               '<!@(<(pkg-config) --cflags capi-location-manager)',
252             ],
253           },
254           'link_settings': {
255             'ldflags': [
256               '<!@(<(pkg-config) --libs-only-L --libs-only-other capi-location-manager)',
257             ],
258             'libraries': [
259               '<!@(<(pkg-config) --libs-only-l capi-location-manager)',
260             ],
261           },
262         }],
263       ],
264     }, # capi-location-manager
265     {
266       'target_name': 'capi-system-info',
267       'type': 'none',
268       'conditions': [
269         ['building_for_tizen==1', {
270           'direct_dependent_settings': {
271             'cflags': [
272               '<!@(<(pkg-config) --cflags capi-system-info)',
273             ],
274           },
275           'link_settings': {
276             'ldflags': [
277               '<!@(<(pkg-config) --libs-only-L --libs-only-other capi-system-info)',
278             ],
279             'libraries': [
280               '<!@(<(pkg-config) --libs-only-l capi-system-info)',
281             ],
282           },
283         }],
284       ],
285     }, # capi-system-info
286     {
287       'target_name': 'capi-system-device',
288       'type': 'none',
289       'conditions': [
290         ['building_for_tizen_mobile==1', {
291           'direct_dependent_settings': {
292             'cflags': [
293               '<!@(<(pkg-config) --cflags capi-system-device)',
294             ],
295           },
296           'link_settings': {
297             'ldflags': [
298               '<!@(<(pkg-config) --libs-only-L --libs-only-other capi-system-device)',
299             ],
300             'libraries': [
301               '<!@(<(pkg-config) --libs-only-l capi-system-device)',
302             ],
303           },
304         }],
305       ],
306     }, # capi-system-device
307     {
308       'target_name': 'capi-system-sensor',
309       'type': 'none',
310       'conditions': [
311         ['building_for_tizen_mobile==1', {
312           'direct_dependent_settings': {
313             'cflags': [
314               '<!@(<(pkg-config) --cflags capi-system-sensor)',
315             ],
316           },
317           'link_settings': {
318             'ldflags': [
319               '<!@(<(pkg-config) --libs-only-L --libs-only-other capi-system-sensor)',
320             ],
321             'libraries': [
322               '<!@(<(pkg-config) --libs-only-l capi-system-sensor)',
323             ],
324           },
325         }],
326       ],
327     }, # capi-system-sensor
328     {
329       'target_name': 'capi-system-system-settings',
330       'type': 'none',
331       'conditions': [
332         ['building_for_tizen==1', {
333           'direct_dependent_settings': {
334             'cflags': [
335               '<!@(<(pkg-config) --cflags capi-system-system-settings)',
336             ],
337           },
338           'link_settings': {
339             'ldflags': [
340               '<!@(<(pkg-config) --libs-only-L --libs-only-other capi-system-system-settings)',
341             ],
342             'libraries': [
343               '<!@(<(pkg-config) --libs-only-l capi-system-system-settings)',
344             ],
345           },
346         }],
347       ],
348     }, # capi-system-system-settings
349     {
350       'target_name': 'libdri2',
351       'type': 'none',
352       'conditions': [
353         ['building_for_tizen==1 and use_wayland==0', {
354           'direct_dependent_settings': {
355             'cflags': [
356               '<!@(<(pkg-config) --cflags libdri2)',
357             ],
358           },
359           'link_settings': {
360             'ldflags': [
361               '<!@(<(pkg-config) --libs-only-L --libs-only-other libdri2)',
362             ],
363             'libraries': [
364               '<!@(<(pkg-config) --libs-only-l libdri2)',
365             ],
366           },
367         }],
368       ],
369     }, # libdri2
370     {
371       'target_name': 'libdrm',
372       'type': 'none',
373       'conditions': [
374         ['building_for_tizen==1', {
375           'direct_dependent_settings': {
376             'cflags': [
377               '<!@(<(pkg-config) --cflags libdrm)',
378             ],
379           },
380           'link_settings': {
381             'ldflags': [
382               '<!@(<(pkg-config) --libs-only-L --libs-only-other libdrm)',
383             ],
384             'libraries': [
385               '<!@(<(pkg-config) --libs-only-l libdrm)',
386             ],
387           },
388         }],
389       ],
390     }, # libdri2
391     {
392       'target_name': 'libtbm',
393       'type': 'none',
394       'conditions': [
395         ['building_for_tizen==1', {
396           'direct_dependent_settings': {
397             'cflags': [
398               '<!@(<(pkg-config) --cflags libtbm)',
399             ],
400           },
401           'link_settings': {
402             'ldflags': [
403               '<!@(<(pkg-config) --libs-only-L --libs-only-other libtbm)',
404             ],
405             'libraries': [
406               '<!@(<(pkg-config) --libs-only-l libtbm)',
407             ],
408           },
409         }],
410       ],
411     }, # libtbm
412     {
413       'target_name': 'x11',
414       'type': 'none',
415       'conditions': [
416         ['use_wayland==0', {
417           'direct_dependent_settings': {
418             'cflags': [
419               '<!@(<(pkg-config) --cflags x11)',
420             ],
421           },
422           'link_settings': {
423             'ldflags': [
424               '<!@(<(pkg-config) --libs-only-L --libs-only-other x11)',
425             ],
426             'libraries': [
427               '<!@(<(pkg-config) --libs-only-l x11)',
428             ],
429           },
430         }],
431       ],
432     },
433     {
434       'target_name': 'gstreamer',
435       'type': 'none',
436       'conditions': [
437         ['chromium_efl_tizen_version >= "2.4"', {
438           'variables': {
439             'dependent_pkgs': [
440               'gstreamer-1.0',
441               'gstreamer-base-1.0',
442               'gstreamer-app-1.0',
443               'gstreamer-pbutils-1.0',
444               'gstreamer-video-1.0',
445             ],
446           },
447         }, { # for Tizen v2.X
448           'variables': {
449             'dependent_pkgs': [
450               'gstreamer-0.10',
451               'gstreamer-base-0.10',
452               'gstreamer-app-0.10',
453               'gstreamer-pbutils-0.10',
454               'gstreamer-interfaces-0.10',
455               'gstreamer-video-0.10',
456             ],
457           },
458         }]
459       ],
460       'direct_dependent_settings': {
461         'cflags': [
462           '<!@(<(pkg-config) --cflags <(dependent_pkgs))',
463         ],
464       },
465       'link_settings': {
466         'ldflags': [
467           '<!@(<(pkg-config) --libs-only-L --libs-only-other <(dependent_pkgs))',
468         ],
469         'libraries': [
470           '<!@(<(pkg-config) --libs-only-l <(dependent_pkgs))',
471         ],
472       },
473     }, # gstreamer
474     {
475       'target_name': 'capi-media-camera',
476       'type': 'none',
477       'conditions': [
478         ['building_for_tizen==1', {
479           'direct_dependent_settings': {
480             'cflags': [
481               '<!@(<(pkg-config) --cflags capi-media-camera)',
482             ],
483           },
484           'link_settings': {
485             'ldflags': [
486               '<!@(<(pkg-config) --libs-only-L --libs-only-other capi-media-camera)',
487             ],
488             'libraries': [
489               '<!@(<(pkg-config) --libs-only-l capi-media-camera)',
490             ],
491           },
492         }],
493       ],
494     }, # capi-media-camera
495     {
496       'target_name': 'capi-media-player',
497       'type': 'none',
498       'conditions': [
499         ['building_for_tizen==1', {
500           'direct_dependent_settings': {
501             'cflags': [
502               '<!@(<(pkg-config) --cflags capi-media-player)',
503             ],
504           },
505           'link_settings': {
506             'ldflags': [
507               '<!@(<(pkg-config) --libs-only-L --libs-only-other capi-media-player)',
508             ],
509             'libraries': [
510               '<!@(<(pkg-config) --libs-only-l capi-media-player)',
511             ],
512           },
513         }],
514       ],
515     }, # capi-media-player
516     {
517       'target_name': 'capi-media-tool',
518       'type': 'none',
519       'conditions': [
520         ['building_for_tizen==1', {
521           'direct_dependent_settings': {
522             'cflags': [
523               '<!@(<(pkg-config) --cflags capi-media-tool)',
524             ],
525           },
526           'link_settings': {
527             'ldflags': [
528               '<!@(<(pkg-config) --libs-only-L --libs-only-other capi-media-tool)',
529             ],
530             'libraries': [
531               '<!@(<(pkg-config) --libs-only-l capi-media-tool)',
532             ],
533           },
534         }],
535       ],
536     }, # capi-media-tool
537     {
538       'target_name': 'tts',
539       'type': 'none',
540       'conditions': [
541         ['building_for_tizen==1', {
542           'direct_dependent_settings': {
543             'cflags': [
544               '<!@(<(pkg-config) --cflags tts)',
545             ],
546           },
547           'link_settings': {
548             'ldflags': [
549               '<!@(<(pkg-config) --libs-only-L --libs-only-other tts)',
550             ],
551             'libraries': [
552               '<!@(<(pkg-config) --libs-only-l tts)',
553             ],
554           },
555         }],
556       ],
557     }, # tts
558     {
559       'target_name': 'vconf',
560       'type': 'none',
561       'conditions': [
562         ['building_for_tizen==1', {
563           'direct_dependent_settings': {
564             'cflags': [
565               '<!@(<(pkg-config) --cflags vconf)',
566             ],
567           },
568           'link_settings': {
569             'ldflags': [
570               '<!@(<(pkg-config) --libs-only-L --libs-only-other vconf)',
571             ],
572             'libraries': [
573               '<!@(<(pkg-config) --libs-only-l vconf)',
574             ],
575           },
576         }],
577       ],
578     }, # vconf
579     {
580       'target_name': 'feedback',
581       'type': 'none',
582       'conditions': [
583         ['building_for_tizen==1', {
584           'direct_dependent_settings': {
585             'cflags': [
586               '<!@(<(pkg-config) --cflags feedback)',
587             ],
588           },
589           'link_settings': {
590             'ldflags': [
591               '<!@(<(pkg-config) --libs-only-L --libs-only-other feedback)',
592             ],
593             'libraries': [
594               '<!@(<(pkg-config) --libs-only-l feedback)',
595             ],
596           },
597         }],
598       ],
599     }, # feedback
600     {
601       'target_name': 'wayland-client',
602       'type': 'none',
603       'conditions': [
604         ['building_for_tizen==1 and use_wayland==1', {
605           'direct_dependent_settings': {
606             'cflags': [
607               '<!@(<(pkg-config) --cflags wayland-client)',
608             ],
609           },
610           'link_settings': {
611             'ldflags': [
612               '<!@(<(pkg-config) --libs-only-L --libs-only-other wayland-client)',
613             ],
614             'libraries': [
615               '<!@(<(pkg-config) --libs-only-l wayland-client)',
616             ],
617           },
618         }],
619       ],
620     }, # wayland-client
621     {
622       'target_name': 'wayland-cursor',
623       'type': 'none',
624       'conditions': [
625         ['building_for_tizen==1 and use_wayland==1', {
626           'direct_dependent_settings': {
627             'cflags': [
628               '<!@(<(pkg-config) --cflags wayland-cursor)',
629             ],
630           },
631           'link_settings': {
632             'ldflags': [
633               '<!@(<(pkg-config) --libs-only-L --libs-only-other wayland-cursor)',
634             ],
635             'libraries': [
636               '<!@(<(pkg-config) --libs-only-l wayland-cursor)',
637             ],
638           },
639         }],
640       ],
641     }, # wayland-cursor
642     {
643       'target_name': 'wayland-egl',
644       'type': 'none',
645       'conditions': [
646         ['building_for_tizen==1 and use_wayland==1', {
647           'direct_dependent_settings': {
648             'cflags': [
649               '<!@(<(pkg-config) --cflags wayland-egl)',
650             ],
651           },
652           'link_settings': {
653             'ldflags': [
654               '<!@(<(pkg-config) --libs-only-L --libs-only-other wayland-egl)',
655             ],
656             'libraries': [
657               '<!@(<(pkg-config) --libs-only-l wayland-egl)',
658             ],
659           },
660         }],
661       ],
662     }, # wayland-egl
663     {
664       'target_name': 'wayland-server',
665       'type': 'none',
666       'conditions': [
667         ['building_for_tizen==1 and use_wayland==1', {
668           'direct_dependent_settings': {
669             'cflags': [
670               '<!@(<(pkg-config) --cflags wayland-server)',
671             ],
672           },
673           'link_settings': {
674             'ldflags': [
675               '<!@(<(pkg-config) --libs-only-L --libs-only-other wayland-server)',
676             ],
677             'libraries': [
678               '<!@(<(pkg-config) --libs-only-l wayland-server)',
679             ],
680           },
681         }],
682       ],
683     }, # wayland-server
684   ],
685 }