Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / libpng / libpng.gyp
blob48b3fa409c24e80d9df8e0c4623f634943c8de82
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
3 # found in the LICENSE file.
6   'targets': [
7     {
8       'target_name': 'libpng',
9       'dependencies': [
10         '../zlib/zlib.gyp:zlib',
11       ],
12       'variables': {
13         # Upstream uses self-assignment to avoid warnings.
14         'clang_warning_flags': [ '-Wno-self-assign' ]
15       },
16       'defines': [
17         'CHROME_PNG_WRITE_SUPPORT',
18         'PNG_USER_CONFIG',
19       ],
20       'sources': [
21         'png.c',
22         'png.h',
23         'pngconf.h',
24         'pngerror.c',
25         'pnggccrd.c',
26         'pngget.c',
27         'pngmem.c',
28         'pngpread.c',
29         'pngread.c',
30         'pngrio.c',
31         'pngrtran.c',
32         'pngrutil.c',
33         'pngset.c',
34         'pngtrans.c',
35         'pngusr.h',
36         'pngvcrd.c',
37         'pngwio.c',
38         'pngwrite.c',
39         'pngwtran.c',
40         'pngwutil.c',
41       ],
42       'direct_dependent_settings': {
43         'include_dirs': [
44           '.',
45         ],
46         'defines': [
47           'CHROME_PNG_WRITE_SUPPORT',
48           'PNG_USER_CONFIG',
49         ],
50       },
51       'export_dependent_settings': [
52         '../zlib/zlib.gyp:zlib',
53       ],
54       # TODO(jschuh): http://crbug.com/167187
55       'msvs_disabled_warnings': [ 4267 ],
56       'conditions': [
57         ['OS!="win"', {'product_name': 'png'}],
58         ['OS=="win"', {
59           'type': '<(component)',
60         }, {
61           # Chromium libpng does not support building as a shared_library
62           # on non-Windows platforms.
63           'type': 'static_library',
64         }],
65         ['OS=="win" and component=="shared_library"', {
66           'defines': [
67             'PNG_BUILD_DLL',
68             'PNG_NO_MODULEDEF',
69           ],
70           'direct_dependent_settings': {
71             'defines': [
72               'PNG_USE_DLL',
73             ],
74           },
75         }],
76         ['OS=="android"', {
77           'toolsets': ['target', 'host'],
78           'defines': [
79             'CHROME_PNG_READ_PACK_SUPPORT',  # Required by freetype.
80           ],
81           'direct_dependent_settings': {
82             'defines': [
83               'CHROME_PNG_READ_PACK_SUPPORT',
84             ],
85           },
86         }],
87       ],
88     },
89   ]