blob: bd2b909278c4c6064b5be54468c982f33c78897d [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,
bungeman@google.coma02bc152012-05-16 18:21:56 +00009 'dependencies': [
10 'core.gyp:core',
11 'sfnt.gyp:sfnt',
12 'utils.gyp:utils',
13 ],
caryclark@google.comafcb55c2011-12-14 17:12:04 +000014 'include_dirs': [
bungeman@google.com5a64e582012-03-29 14:51:56 +000015 '../include/effects',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +000016 '../include/images',
bungeman@google.com29b63dc2012-03-29 14:28:59 +000017 '../include/ports',
bungeman@google.com5a64e582012-03-29 14:51:56 +000018 '../include/xml',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000019 '../src/core',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +000020 '../src/lazy',
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',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +000030 '../src/ports/SkPurgeableMemoryBlock_none.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000031 '../src/ports/SkThread_win.cpp',
32
caryclark@google.comafcb55c2011-12-14 17:12:04 +000033 '../src/ports/SkMemory_malloc.cpp',
34 '../src/ports/SkOSFile_stdio.cpp',
35 '../src/ports/SkTime_Unix.cpp',
36 '../src/ports/SkTime_win.cpp',
37 '../src/ports/SkXMLParser_empty.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000038 ],
39 'conditions': [
40 [ 'skia_os in ["linux", "freebsd", "openbsd", "solaris"]', {
borenet@google.com7158e6a2012-11-01 17:43:44 +000041 'defines': [
42 #The font host requires at least FreeType 2.3.0 at runtime.
43 'SK_FONTHOST_FREETYPE_RUNTIME_VERSION=0x020300',\
44 'SK_CAN_USE_DLOPEN=1',
45 ],
46 'link_settings': {
47 'libraries': [
48 '-lfreetype',
reed@google.com8333d2a2013-03-04 14:45:29 +000049 '-lfontconfig',
borenet@google.com7158e6a2012-11-01 17:43:44 +000050 '-ldl',
51 ],
52 },
53 'sources': [
54 '../src/ports/SkFontHost_FreeType.cpp',
55 '../src/ports/SkFontHost_FreeType_common.cpp',
reed@google.com8333d2a2013-03-04 14:45:29 +000056 '../src/ports/SkFontHost_fontconfig.cpp',
57 '../src/ports/SkFontConfigInterface_direct.cpp',
borenet@google.com7158e6a2012-11-01 17:43:44 +000058 '../src/ports/SkThread_pthread.cpp',
59 ],
60 }],
61 [ 'skia_os == "nacl"', {
62 'dependencies': [
63 # On other OS, we can dynamically link against freetype. For nacl,
64 # we have to include our own version since the naclports version is
65 # too old (<0x020300) to provide the functionality we need.
66 'freetype.gyp:freetype',
67 ],
68 'export_dependent_settings': [
69 'freetype.gyp:freetype',
70 ],
71 'defines': [
72 # We use Android's repo, which provides at least FreeType 2.4.0
73 'SK_FONTHOST_FREETYPE_RUNTIME_VERSION=0x020400',\
bungeman@google.comfd668cf2012-08-24 17:46:11 +000074 ],
caryclark@google.comafcb55c2011-12-14 17:12:04 +000075 'sources': [
borenet@google.com7158e6a2012-11-01 17:43:44 +000076 '../src/ports/SkFontHost_FreeType.cpp',
77 '../src/ports/SkFontHost_FreeType_common.cpp',
78 '../src/ports/SkFontHost_linux.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000079 '../src/ports/SkThread_pthread.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000080 ],
borenet@google.com7158e6a2012-11-01 17:43:44 +000081 'sources!': [
82 '../src/ports/SkDebug_stdio.cpp',
83 ],
84 }, {
85 'sources!': [
86 '../src/ports/SkDebug_nacl.cpp',
87 ],
caryclark@google.comafcb55c2011-12-14 17:12:04 +000088 }],
89 [ 'skia_os == "mac"', {
90 'include_dirs': [
91 '../include/utils/mac',
92 '../third_party/freetype/include/**',
93 ],
94 'sources': [
mike@reedtribe.orgb103ed42013-03-03 03:50:09 +000095 '../src/ports/SkFontHost_mac.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000096# '../src/ports/SkFontHost_FreeType.cpp',
george@mozilla.comc59b5da2012-08-23 00:39:08 +000097# '../src/ports/SkFontHost_FreeType_common.cpp',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +000098 '../src/ports/SkPurgeableMemoryBlock_mac.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +000099 '../src/ports/SkThread_pthread.cpp',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000100 '../src/utils/mac/SkStream_mac.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000101 ],
reed@google.com17aa07d2012-02-23 14:51:10 +0000102 'sources!': [
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000103 '../src/ports/SkPurgeableMemoryBlock_none.cpp',
reed@google.com17aa07d2012-02-23 14:51:10 +0000104 '../src/ports/SkFontHost_tables.cpp',
105 ],
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000106 }],
107 [ 'skia_os == "ios"', {
108 'include_dirs': [
109 '../include/utils/ios',
caryclark@google.com35f5ac92012-09-18 15:41:18 +0000110 '../include/utils/mac',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000111 ],
112 'sources': [
mike@reedtribe.orgb103ed42013-03-03 03:50:09 +0000113 '../src/ports/SkFontHost_mac.cpp',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000114 '../src/ports/SkPurgeableMemoryBlock_mac.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000115 '../src/ports/SkThread_pthread.cpp',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000116 '../src/utils/mac/SkStream_mac.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000117 ],
caryclark@google.com867cbd82012-09-20 15:45:41 +0000118 'sources!': [
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000119 '../src/ports/SkPurgeableMemoryBlock_none.cpp',
caryclark@google.com867cbd82012-09-20 15:45:41 +0000120 '../src/ports/SkFontHost_tables.cpp',
121 ],
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000122 }],
123 [ 'skia_os == "win"', {
124 'include_dirs': [
125 'config/win',
bungeman@google.come8f05922012-08-16 16:13:40 +0000126 '../src/utils/win',
127 ],
128 'conditions': [
129 [ 'skia_directwrite', {
130 'sources!': [
131 '../src/ports/SkFontHost_win.cpp',
132 ],
133 }, { # else !skia_directwrite
134 'sources!': [
135 '../src/ports/SkFontHost_win_dw.cpp',
136 ],
137 }],
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000138 ],
139 'sources!': [ # these are used everywhere but windows
140 '../src/ports/SkDebug_stdio.cpp',
141 '../src/ports/SkTime_Unix.cpp',
142 ],
143 }, { # else !win
144 'sources!': [
145 '../src/ports/SkDebug_win.cpp',
146 '../src/ports/SkFontHost_win.cpp',
bungeman@google.com6ca0a5d2012-08-16 16:23:09 +0000147 '../src/ports/SkFontHost_win_dw.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000148 '../src/ports/SkThread_win.cpp',
149 '../src/ports/SkTime_win.cpp',
150 ],
151 }],
152 [ 'skia_os == "android"', {
bungeman@google.comfd668cf2012-08-24 17:46:11 +0000153 'defines': [
154 #Android provides at least FreeType 2.4.0 at runtime.
155 'SK_FONTHOST_FREETYPE_RUNTIME_VERSION=0x020400',
156 #Skia should not use dlopen on Android.
157 'SK_CAN_USE_DLOPEN=0',
158 ],
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000159 'sources!': [
160 '../src/ports/SkDebug_stdio.cpp',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000161 '../src/ports/SkPurgeableMemoryBlock_none.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000162 ],
163 'sources': [
scroggo@google.combb281f72013-03-18 21:37:39 +0000164 '../src/ports/FontHostConfiguration_android.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000165 '../src/ports/SkDebug_android.cpp',
166 '../src/ports/SkThread_pthread.cpp',
167 '../src/ports/SkFontHost_android.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000168 '../src/ports/SkFontHost_FreeType.cpp',
george@mozilla.comc59b5da2012-08-23 00:39:08 +0000169 '../src/ports/SkFontHost_FreeType_common.cpp',
scroggo@google.comd9ef3a22013-03-15 18:08:09 +0000170 '../src/ports/SkPurgeableMemoryBlock_android.cpp',
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000171 ],
djsollen@google.com62b24b12011-12-15 16:16:22 +0000172 'dependencies': [
borenet@google.com7158e6a2012-11-01 17:43:44 +0000173 'freetype.gyp:freetype',
borenet@google.comaf730912012-08-09 15:54:28 +0000174 'android_deps.gyp:expat',
djsollen@google.com62b24b12011-12-15 16:16:22 +0000175 ],
rmistry@google.comd6176b02012-08-23 18:14:13 +0000176 }],
caryclark@google.comafcb55c2011-12-14 17:12:04 +0000177 ],
178 'direct_dependent_settings': {
179 'include_dirs': [
180 '../include/ports',
181 ],
182 },
183 },
184 ],
185}
186
187# Local Variables:
188# tab-width:2
189# indent-tabs-mode:nil
190# End:
191# vim: set expandtab tabstop=2 shiftwidth=2: