blob: 76df7d178efefe9ef82bbe71adb3fde2172a8858 [file] [log] [blame]
scroggo@google.com73e4d572013-05-20 22:15:32 +00001# GYP file for images project.
scroggo@google.com4c6adf92013-04-17 21:07:55 +00002{
epoger@google.comae85aea2011-05-31 13:50:51 +00003 'targets': [
4 {
5 'target_name': 'images',
borenet@google.comefb1d772012-10-10 19:45:51 +00006 'product_name': 'skia_images',
epoger@google.comae85aea2011-05-31 13:50:51 +00007 'type': 'static_library',
borenet@google.comefb1d772012-10-10 19:45:51 +00008 'standalone_static_library': 1,
bungeman@google.com9df621d2011-06-23 21:43:52 +00009 'dependencies': [
bungeman@google.comb8f36552013-07-22 14:39:45 +000010 'core.gyp:*',
robertphillips@google.com3a4553e2012-04-05 14:52:01 +000011 'libjpeg.gyp:*',
commit-bot@chromium.orga936e372013-03-14 14:42:18 +000012 'libwebp.gyp:libwebp',
bungeman@google.com9df621d2011-06-23 21:43:52 +000013 'utils.gyp:utils',
14 ],
robertphillips@google.com3a4553e2012-04-05 14:52:01 +000015 'export_dependent_settings': [
16 'libjpeg.gyp:*',
17 ],
epoger@google.comae85aea2011-05-31 13:50:51 +000018 'include_dirs': [
epoger@google.comae85aea2011-05-31 13:50:51 +000019 '../include/images',
scroggo@google.comf8d7d272013-02-22 21:38:35 +000020 '../include/lazy',
scroggo@google.com39edf4c2013-04-25 17:33:51 +000021 # for access to SkErrorInternals.h
22 '../src/core/',
scroggo@google.comf8d7d272013-02-22 21:38:35 +000023 # for access to SkImagePriv.h
24 '../src/image/',
epoger@google.comae85aea2011-05-31 13:50:51 +000025 ],
26 'sources': [
scroggo@google.com7def5e12013-05-31 14:00:10 +000027 '../include/images/SkForceLinking.h',
epoger@google.comae85aea2011-05-31 13:50:51 +000028 '../include/images/SkImageRef.h',
29 '../include/images/SkImageRef_GlobalPool.h',
robertphillips@google.comcb693192013-03-22 16:44:14 +000030 '../src/images/SkJpegUtility.h',
epoger@google.comae85aea2011-05-31 13:50:51 +000031 '../include/images/SkMovie.h',
32 '../include/images/SkPageFlipper.h',
33
34 '../src/images/bmpdecoderhelper.cpp',
35 '../src/images/bmpdecoderhelper.h',
commit-bot@chromium.orga936e372013-03-14 14:42:18 +000036
37 '../src/images/SkBitmapRegionDecoder.cpp',
38
scroggo@google.com7def5e12013-05-31 14:00:10 +000039 '../src/images/SkForceLinking.cpp',
epoger@google.comae85aea2011-05-31 13:50:51 +000040 '../src/images/SkImageDecoder.cpp',
scroggo@google.com4c6adf92013-04-17 21:07:55 +000041 '../src/images/SkImageDecoder_FactoryDefault.cpp',
42 '../src/images/SkImageDecoder_FactoryRegistrar.cpp',
scroggo@google.comc4ebdb02013-05-01 21:17:27 +000043 # If decoders are added/removed to/from (all/individual)
scroggo@google.com7def5e12013-05-31 14:00:10 +000044 # platform(s), be sure to update SkForceLinking.cpp
scroggo@google.comc4ebdb02013-05-01 21:17:27 +000045 # so the right decoders will be forced to link.
epoger@google.comae85aea2011-05-31 13:50:51 +000046 '../src/images/SkImageDecoder_libbmp.cpp',
47 '../src/images/SkImageDecoder_libgif.cpp',
48 '../src/images/SkImageDecoder_libico.cpp',
commit-bot@chromium.orga936e372013-03-14 14:42:18 +000049 '../src/images/SkImageDecoder_libjpeg.cpp',
epoger@google.comae85aea2011-05-31 13:50:51 +000050 '../src/images/SkImageDecoder_libpng.cpp',
commit-bot@chromium.orga936e372013-03-14 14:42:18 +000051 '../src/images/SkImageDecoder_libwebp.cpp',
epoger@google.comae85aea2011-05-31 13:50:51 +000052 '../src/images/SkImageDecoder_wbmp.cpp',
53 '../src/images/SkImageEncoder.cpp',
54 '../src/images/SkImageEncoder_Factory.cpp',
bungeman@google.com8c6a4f22013-04-23 18:06:23 +000055 '../src/images/SkImageEncoder_argb.cpp',
epoger@google.comae85aea2011-05-31 13:50:51 +000056 '../src/images/SkImageRef.cpp',
57 '../src/images/SkImageRefPool.cpp',
58 '../src/images/SkImageRefPool.h',
djsollen@google.com528a5562013-02-01 15:57:13 +000059 '../src/images/SkImageRef_ashmem.h',
60 '../src/images/SkImageRef_ashmem.cpp',
epoger@google.comae85aea2011-05-31 13:50:51 +000061 '../src/images/SkImageRef_GlobalPool.cpp',
scroggo@google.com5a7c6be2012-10-04 21:46:08 +000062 '../src/images/SkImages.cpp',
epoger@google.comae85aea2011-05-31 13:50:51 +000063 '../src/images/SkJpegUtility.cpp',
64 '../src/images/SkMovie.cpp',
65 '../src/images/SkMovie_gif.cpp',
66 '../src/images/SkPageFlipper.cpp',
67 '../src/images/SkScaledBitmapSampler.cpp',
68 '../src/images/SkScaledBitmapSampler.h',
bungeman@google.com242bb892011-06-22 20:42:34 +000069
70 '../src/ports/SkImageDecoder_CG.cpp',
71 '../src/ports/SkImageDecoder_WIC.cpp',
epoger@google.comae85aea2011-05-31 13:50:51 +000072 ],
73 'conditions': [
epoger@google.com8846cb22011-07-01 20:20:07 +000074 [ 'skia_os == "win"', {
epoger@google.comae85aea2011-05-31 13:50:51 +000075 'sources!': [
scroggo@google.com4c6adf92013-04-17 21:07:55 +000076 '../src/images/SkImageDecoder_FactoryDefault.cpp',
epoger@google.comae85aea2011-05-31 13:50:51 +000077 '../src/images/SkImageDecoder_libgif.cpp',
epoger@google.comae85aea2011-05-31 13:50:51 +000078 '../src/images/SkImageDecoder_libpng.cpp',
epoger@google.comae85aea2011-05-31 13:50:51 +000079 '../src/images/SkMovie_gif.cpp',
80 ],
bsalomon@google.com897e66c2011-11-21 21:04:06 +000081 'link_settings': {
82 'libraries': [
83 'windowscodecs.lib',
84 ],
85 },
epoger@google.com8846cb22011-07-01 20:20:07 +000086 },{ #else if skia_os != win
bungeman@google.com242bb892011-06-22 20:42:34 +000087 'sources!': [
88 '../src/ports/SkImageDecoder_WIC.cpp',
89 ],
epoger@google.comae85aea2011-05-31 13:50:51 +000090 }],
caryclark@google.com35f5ac92012-09-18 15:41:18 +000091 [ 'skia_os in ["mac", "ios"]', {
epoger@google.comae85aea2011-05-31 13:50:51 +000092 'sources!': [
scroggo@google.com4c6adf92013-04-17 21:07:55 +000093 '../src/images/SkImageDecoder_FactoryDefault.cpp',
reed@google.comaf9d9c22011-06-15 17:33:29 +000094 '../src/images/SkImageDecoder_libpng.cpp',
epoger@google.comae85aea2011-05-31 13:50:51 +000095 '../src/images/SkImageDecoder_libgif.cpp',
epoger@google.comae85aea2011-05-31 13:50:51 +000096 '../src/images/SkMovie_gif.cpp',
97 ],
epoger@google.com8846cb22011-07-01 20:20:07 +000098 },{ #else if skia_os != mac
bungeman@google.com242bb892011-06-22 20:42:34 +000099 'sources!': [
100 '../src/ports/SkImageDecoder_CG.cpp',
101 ],
epoger@google.comae85aea2011-05-31 13:50:51 +0000102 }],
scroggo@google.com3f178282013-04-11 22:24:35 +0000103 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris"]', {
scroggo@google.com9c5f9692013-04-11 18:32:01 +0000104 # Any targets that depend on this target should link in libpng, libgif, and
epoger@google.com38a91342011-06-15 13:45:10 +0000105 # our code that calls it.
106 # See http://code.google.com/p/gyp/wiki/InputFormatReference#Dependent_Settings
epoger@google.comccdbd2c2011-06-02 14:38:23 +0000107 'link_settings': {
epoger@google.comb1b721a2011-06-16 12:27:14 +0000108 'libraries': [
scroggo@google.com9c5f9692013-04-11 18:32:01 +0000109 '-lgif',
epoger@google.comb1b721a2011-06-16 12:27:14 +0000110 '-lpng',
borenet@google.com327b9b22013-03-07 15:33:28 +0000111 '-lz',
epoger@google.comb1b721a2011-06-16 12:27:14 +0000112 ],
epoger@google.comccdbd2c2011-06-02 14:38:23 +0000113 },
scroggo@google.com9c5f9692013-04-11 18:32:01 +0000114 # end libpng/libgif stuff
epoger@google.comae85aea2011-05-31 13:50:51 +0000115 }],
scroggo@google.com3f178282013-04-11 22:24:35 +0000116 # FIXME: NaCl should be just like linux, etc, above, but it currently is separated out
117 # to remove gif. Once gif is supported by naclports, this can be merged into the above
118 # condition.
119 [ 'skia_os == "nacl"', {
120 'sources!': [
121 '../src/images/SkImageDecoder_libgif.cpp',
122 '../src/images/SkMovie_gif.cpp',
123 ],
124 'link_settings': {
scroggo@google.com3f178282013-04-11 22:24:35 +0000125 'libraries': [
126 '-lpng',
127 '-lz',
128 ],
129 },
130 }],
djsollen@google.com58629292011-11-03 13:08:29 +0000131 [ 'skia_os == "android"', {
djsollen@google.com528a5562013-02-01 15:57:13 +0000132 'include_dirs': [
133 '../src/utils',
djsollen@google.com58629292011-11-03 13:08:29 +0000134 ],
135 'dependencies': [
borenet@google.comaf730912012-08-09 15:54:28 +0000136 'android_deps.gyp:gif',
137 'android_deps.gyp:png',
djsollen@google.com58629292011-11-03 13:08:29 +0000138 ],
djsollen@google.com528a5562013-02-01 15:57:13 +0000139 },{ #else if skia_os != android
140 'sources!': [
141 '../src/images/SkImageRef_ashmem.h',
142 '../src/images/SkImageRef_ashmem.cpp',
143 ],
djsollen@google.com58629292011-11-03 13:08:29 +0000144 }],
borenet@google.com05d550e2013-06-11 15:52:19 +0000145 [ 'skia_os == "chromeos"', {
146 'dependencies': [
147 'chromeos_deps.gyp:gif',
148 ],
149 'link_settings': {
150 'libraries': [
151 '-lpng',
152 ],
153 },
154 }],
caryclark@google.com35f5ac92012-09-18 15:41:18 +0000155 [ 'skia_os == "ios"', {
156 'include_dirs': [
157 '../include/utils/mac',
158 ],
159 }],
epoger@google.comae85aea2011-05-31 13:50:51 +0000160 ],
161 'direct_dependent_settings': {
162 'include_dirs': [
163 '../include/images',
scroggo@google.comf8d7d272013-02-22 21:38:35 +0000164 '../include/lazy',
epoger@google.comae85aea2011-05-31 13:50:51 +0000165 ],
166 },
167 },
168 ],
169}
170
171# Local Variables:
172# tab-width:2
173# indent-tabs-mode:nil
174# End:
175# vim: set expandtab tabstop=2 shiftwidth=2: