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