blob: 2641bc9641e0f5e928fa12a9842da0fd5a546c32 [file] [log] [blame]
caryclark@google.comafcb55c2011-12-14 17:12:04 +00001# Port-specific Skia library code.
2{
caryclark@google.comafcb55c2011-12-14 17:12:04 +00003 'targets': [
4 {
5 'target_name': 'ports',
borenet@google.comefb1d772012-10-10 19:45:51 +00006 'product_name': 'skia_ports',
caryclark@google.comafcb55c2011-12-14 17:12:04 +00007 'type': 'static_library',
borenet@google.comefb1d772012-10-10 19:45:51 +00008 'standalone_static_library': 1,
caryclark@google.comafcb55c2011-12-14 17:12:04 +00009 'include_dirs': [
djsollen@google.com52f02972013-06-03 12:10:19 +000010 '../include/config',
11 '../include/core',
bungeman@google.com5a64e582012-03-29 14:51:56 +000012 '../include/effects',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +000013 '../include/images',
bungeman@google.com29b63dc2012-03-29 14:28:59 +000014 '../include/ports',
djsollen@google.com52f02972013-06-03 12:10:19 +000015 '../include/utils',
djsollen@google.com28979312013-06-03 14:44:52 +000016 '../include/utils/win',
bungeman@google.com5a64e582012-03-29 14:51:56 +000017 '../include/xml',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000018 '../src/core',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +000019 '../src/lazy',
djsollen@google.com52f02972013-06-03 12:10:19 +000020 '../src/sfnt',
bungeman@google.coma02bc152012-05-16 18:21:56 +000021 '../src/utils',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000022 ],
23 'sources': [
borenet@google.com7158e6a2012-11-01 17:43:44 +000024 '../src/ports/SkDebug_nacl.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000025 '../src/ports/SkDebug_stdio.cpp',
26 '../src/ports/SkDebug_win.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000027 '../src/ports/SkFontHost_win.cpp',
bungeman@google.come8f05922012-08-16 16:13:40 +000028 '../src/ports/SkFontHost_win_dw.cpp',
caryclark@google.comd26147a2011-12-15 14:16:43 +000029 '../src/ports/SkGlobalInitialization_default.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000030 '../src/ports/SkMemory_malloc.cpp',
bungeman@google.com6cab1a42013-05-29 13:43:31 +000031 '../src/ports/SkOSFile_posix.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000032 '../src/ports/SkOSFile_stdio.cpp',
bungeman@google.com6cab1a42013-05-29 13:43:31 +000033 '../src/ports/SkOSFile_win.cpp',
bungeman@google.comf2e7dbb2013-07-16 14:59:24 +000034 '../src/ports/SkPurgeableMemoryBlock_none.cpp',
35 #'../src/ports/SkThread_none.cpp',
36 '../src/ports/SkThread_pthread.cpp',
37 '../src/ports/SkThread_win.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000038 '../src/ports/SkTime_Unix.cpp',
39 '../src/ports/SkTime_win.cpp',
bungeman@google.comf2e7dbb2013-07-16 14:59:24 +000040 #'../src/ports/SkTLS_none.cpp',
41 '../src/ports/SkTLS_pthread.cpp',
42 '../src/ports/SkTLS_win.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000043 '../src/ports/SkXMLParser_empty.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000044 ],
45 'conditions': [
borenet@google.com05d550e2013-06-11 15:52:19 +000046 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris", "chromeos"]', {
borenet@google.com7158e6a2012-11-01 17:43:44 +000047 'defines': [
48 #The font host requires at least FreeType 2.3.0 at runtime.
49 'SK_FONTHOST_FREETYPE_RUNTIME_VERSION=0x020300',\
50 'SK_CAN_USE_DLOPEN=1',
51 ],
52 'link_settings': {
53 'libraries': [
54 '-lfreetype',
reed@google.com8333d2a2013-03-04 14:45:29 +000055 '-lfontconfig',
borenet@google.com7158e6a2012-11-01 17:43:44 +000056 '-ldl',
57 ],
58 },
59 'sources': [
reed@google.com381bb432013-05-13 19:43:59 +000060 '../src/fonts/SkFontMgr_fontconfig.cpp',
borenet@google.com7158e6a2012-11-01 17:43:44 +000061 '../src/ports/SkFontHost_FreeType.cpp',
62 '../src/ports/SkFontHost_FreeType_common.cpp',
reed@google.com8333d2a2013-03-04 14:45:29 +000063 '../src/ports/SkFontHost_fontconfig.cpp',
64 '../src/ports/SkFontConfigInterface_direct.cpp',
borenet@google.com7158e6a2012-11-01 17:43:44 +000065 ],
66 }],
67 [ 'skia_os == "nacl"', {
68 'dependencies': [
69 # On other OS, we can dynamically link against freetype. For nacl,
70 # we have to include our own version since the naclports version is
71 # too old (<0x020300) to provide the functionality we need.
72 'freetype.gyp:freetype',
73 ],
74 'export_dependent_settings': [
75 'freetype.gyp:freetype',
76 ],
77 'defines': [
78 # We use Android's repo, which provides at least FreeType 2.4.0
79 'SK_FONTHOST_FREETYPE_RUNTIME_VERSION=0x020400',\
bungeman@google.comfd668cf2012-08-24 17:46:11 +000080 ],
caryclark@google.comafcb55c2011-12-14 17:12:04 +000081 'sources': [
borenet@google.com7158e6a2012-11-01 17:43:44 +000082 '../src/ports/SkFontHost_FreeType.cpp',
83 '../src/ports/SkFontHost_FreeType_common.cpp',
84 '../src/ports/SkFontHost_linux.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000085 ],
borenet@google.com7158e6a2012-11-01 17:43:44 +000086 'sources!': [
87 '../src/ports/SkDebug_stdio.cpp',
88 ],
89 }, {
90 'sources!': [
91 '../src/ports/SkDebug_nacl.cpp',
92 ],
caryclark@google.comafcb55c2011-12-14 17:12:04 +000093 }],
94 [ 'skia_os == "mac"', {
95 'include_dirs': [
96 '../include/utils/mac',
97 '../third_party/freetype/include/**',
98 ],
99 'sources': [
mike@reedtribe.orgb103ed42013-03-03 03:50:09 +0000100 '../src/ports/SkFontHost_mac.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000101# '../src/ports/SkFontHost_FreeType.cpp',
george@mozilla.comc59b5da2012-08-23 00:39:08 +0000102# '../src/ports/SkFontHost_FreeType_common.cpp',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000103 '../src/ports/SkPurgeableMemoryBlock_mac.cpp',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000104 '../src/utils/mac/SkStream_mac.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000105 ],
reed@google.com17aa07d2012-02-23 14:51:10 +0000106 'sources!': [
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000107 '../src/ports/SkPurgeableMemoryBlock_none.cpp',
reed@google.com17aa07d2012-02-23 14:51:10 +0000108 '../src/ports/SkFontHost_tables.cpp',
109 ],
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000110 }],
111 [ 'skia_os == "ios"', {
112 'include_dirs': [
113 '../include/utils/ios',
caryclark@google.com35f5ac92012-09-18 15:41:18 +0000114 '../include/utils/mac',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000115 ],
116 'sources': [
mike@reedtribe.orgb103ed42013-03-03 03:50:09 +0000117 '../src/ports/SkFontHost_mac.cpp',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000118 '../src/ports/SkPurgeableMemoryBlock_mac.cpp',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000119 '../src/utils/mac/SkStream_mac.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000120 ],
caryclark@google.com867cbd82012-09-20 15:45:41 +0000121 'sources!': [
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000122 '../src/ports/SkPurgeableMemoryBlock_none.cpp',
caryclark@google.com867cbd82012-09-20 15:45:41 +0000123 '../src/ports/SkFontHost_tables.cpp',
124 ],
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000125 }],
126 [ 'skia_os == "win"', {
127 'include_dirs': [
128 'config/win',
bungeman@google.come8f05922012-08-16 16:13:40 +0000129 '../src/utils/win',
130 ],
131 'conditions': [
132 [ 'skia_directwrite', {
133 'sources!': [
134 '../src/ports/SkFontHost_win.cpp',
135 ],
136 }, { # else !skia_directwrite
137 'sources!': [
138 '../src/ports/SkFontHost_win_dw.cpp',
139 ],
140 }],
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000141 ],
142 'sources!': [ # these are used everywhere but windows
143 '../src/ports/SkDebug_stdio.cpp',
bungeman@google.com6cab1a42013-05-29 13:43:31 +0000144 '../src/ports/SkOSFile_posix.cpp',
bungeman@google.comf2e7dbb2013-07-16 14:59:24 +0000145 '../src/ports/SkThread_pthread.cpp',
146 '../src/ports/SkTime_Unix.cpp',
147 '../src/ports/SkTLS_pthread.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000148 ],
149 }, { # else !win
150 'sources!': [
151 '../src/ports/SkDebug_win.cpp',
152 '../src/ports/SkFontHost_win.cpp',
bungeman@google.com6ca0a5d2012-08-16 16:23:09 +0000153 '../src/ports/SkFontHost_win_dw.cpp',
bungeman@google.com6cab1a42013-05-29 13:43:31 +0000154 '../src/ports/SkOSFile_win.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000155 '../src/ports/SkThread_win.cpp',
156 '../src/ports/SkTime_win.cpp',
bungeman@google.comf2e7dbb2013-07-16 14:59:24 +0000157 '../src/ports/SkTLS_win.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000158 ],
159 }],
160 [ 'skia_os == "android"', {
bungeman@google.comfd668cf2012-08-24 17:46:11 +0000161 'defines': [
162 #Android provides at least FreeType 2.4.0 at runtime.
163 'SK_FONTHOST_FREETYPE_RUNTIME_VERSION=0x020400',
164 #Skia should not use dlopen on Android.
165 'SK_CAN_USE_DLOPEN=0',
166 ],
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000167 'sources!': [
168 '../src/ports/SkDebug_stdio.cpp',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000169 '../src/ports/SkPurgeableMemoryBlock_none.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000170 ],
171 'sources': [
172 '../src/ports/SkDebug_android.cpp',
173 '../src/ports/SkThread_pthread.cpp',
djsollen@google.combfae9d32013-05-21 16:53:50 +0000174 '../src/ports/SkFontConfigInterface_android.cpp',
175 '../src/ports/SkFontConfigParser_android.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000176 '../src/ports/SkFontHost_FreeType.cpp',
george@mozilla.comc59b5da2012-08-23 00:39:08 +0000177 '../src/ports/SkFontHost_FreeType_common.cpp',
djsollen@google.combfae9d32013-05-21 16:53:50 +0000178 '../src/ports/SkFontHost_fontconfig.cpp',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000179 '../src/ports/SkPurgeableMemoryBlock_android.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000180 ],
djsollen@google.com62b24b12011-12-15 16:16:22 +0000181 'dependencies': [
borenet@google.com7158e6a2012-11-01 17:43:44 +0000182 'freetype.gyp:freetype',
borenet@google.comaf730912012-08-09 15:54:28 +0000183 'android_deps.gyp:expat',
djsollen@google.com62b24b12011-12-15 16:16:22 +0000184 ],
rmistry@google.comd6176b02012-08-23 18:14:13 +0000185 }],
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000186 ],
187 'direct_dependent_settings': {
188 'include_dirs': [
189 '../include/ports',
190 ],
191 },
192 },
193 ],
194}
195
196# Local Variables:
197# tab-width:2
198# indent-tabs-mode:nil
199# End:
200# vim: set expandtab tabstop=2 shiftwidth=2: