OLD | NEW |
| (Empty) |
1 # Copyright 2009, Google Inc. | |
2 # All rights reserved. | |
3 # | |
4 # Redistribution and use in source and binary forms, with or without | |
5 # modification, are permitted provided that the following conditions are | |
6 # met: | |
7 # | |
8 # * Redistributions of source code must retain the above copyright | |
9 # notice, this list of conditions and the following disclaimer. | |
10 # * Redistributions in binary form must reproduce the above | |
11 # copyright notice, this list of conditions and the following disclaimer | |
12 # in the documentation and/or other materials provided with the | |
13 # distribution. | |
14 # * Neither the name of Google Inc. nor the names of its | |
15 # contributors may be used to endorse or promote products derived from | |
16 # this software without specific prior written permission. | |
17 # | |
18 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | |
19 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | |
20 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | |
21 # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | |
22 # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | |
23 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | |
24 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |
25 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | |
26 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |
27 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |
28 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
29 | |
30 | |
31 Import('env') | |
32 | |
33 c_sources = [ | |
34 'LibXML/DOCBparser', | |
35 'LibXML/HTMLparser', | |
36 'LibXML/HTMLtree', | |
37 'LibXML/SAX', | |
38 'LibXML/SAX2', | |
39 'LibXML/c14n', | |
40 'LibXML/catalog', | |
41 'LibXML/chvalid', | |
42 'LibXML/debugXML', | |
43 'LibXML/dict', | |
44 'LibXML/encoding', | |
45 'LibXML/entities', | |
46 'LibXML/error', | |
47 'LibXML/globals', | |
48 'LibXML/hash', | |
49 'LibXML/legacy', | |
50 'LibXML/list', | |
51 'LibXML/nanoftp', | |
52 'LibXML/nanohttp', | |
53 'LibXML/parser', | |
54 'LibXML/parserInternals', | |
55 'LibXML/pattern', | |
56 'LibXML/relaxng', | |
57 'LibXML/threads', | |
58 'LibXML/tree', | |
59 'LibXML/uri', | |
60 'LibXML/valid', | |
61 'LibXML/xinclude', | |
62 'LibXML/xlink', | |
63 'LibXML/xmlIO', | |
64 'LibXML/xmlcatalog', | |
65 'LibXML/xmlmemory', | |
66 'LibXML/xmlmodule', | |
67 'LibXML/xmlreader', | |
68 'LibXML/xmlregexp', | |
69 'LibXML/xmlsave', | |
70 'LibXML/xmlstring', | |
71 'LibXML/xmlunicode', | |
72 'LibXML/xmlwriter', | |
73 ] | |
74 | |
75 cpp_sources = [ | |
76 'DLLEntry', | |
77 'FCollada', | |
78 'FColladaPlugin', | |
79 'StdAfx', | |
80 | |
81 'FArchiveXML/FAXAnimationExport', | |
82 'FArchiveXML/FAXAnimationImport', | |
83 'FArchiveXML/FAXCameraExport', | |
84 'FArchiveXML/FAXCameraImport', | |
85 'FArchiveXML/FAXColladaParser', | |
86 'FArchiveXML/FAXColladaWriter', | |
87 'FArchiveXML/FAXControllerExport', | |
88 'FArchiveXML/FAXControllerImport', | |
89 'FArchiveXML/FAXEmitterExport', | |
90 'FArchiveXML/FAXEmitterImport', | |
91 'FArchiveXML/FAXEntityExport', | |
92 'FArchiveXML/FAXEntityImport', | |
93 'FArchiveXML/FAXForceFieldExport', | |
94 'FArchiveXML/FAXForceFieldImport', | |
95 'FArchiveXML/FAXGeometryExport', | |
96 'FArchiveXML/FAXGeometryImport', | |
97 'FArchiveXML/FAXImportLinking', | |
98 'FArchiveXML/FAXInstanceExport', | |
99 'FArchiveXML/FAXInstanceImport', | |
100 'FArchiveXML/FAXLightExport', | |
101 'FArchiveXML/FAXLightImport', | |
102 'FArchiveXML/FAXMaterialExport', | |
103 'FArchiveXML/FAXMaterialImport', | |
104 'FArchiveXML/FAXPhysicsExport', | |
105 'FArchiveXML/FAXPhysicsImport', | |
106 'FArchiveXML/FAXSceneExport', | |
107 'FArchiveXML/FAXSceneImport', | |
108 'FArchiveXML/FArchiveXML', | |
109 'FArchiveXML/StdAfx', | |
110 | |
111 'FCDocument/FCDAnimated', | |
112 'FCDocument/FCDAnimation', | |
113 'FCDocument/FCDAnimationChannel', | |
114 'FCDocument/FCDAnimationClip', | |
115 'FCDocument/FCDAnimationClipTools', | |
116 'FCDocument/FCDAnimationCurve', | |
117 'FCDocument/FCDAnimationCurveTools', | |
118 'FCDocument/FCDAnimationKey', | |
119 'FCDocument/FCDAnimationMultiCurve', | |
120 'FCDocument/FCDAsset', | |
121 'FCDocument/FCDCamera', | |
122 'FCDocument/FCDController', | |
123 'FCDocument/FCDControllerInstance', | |
124 'FCDocument/FCDControllerTools', | |
125 'FCDocument/FCDEffect', | |
126 'FCDocument/FCDEffectCode', | |
127 'FCDocument/FCDEffectParameter', | |
128 'FCDocument/FCDEffectParameterFactory', | |
129 'FCDocument/FCDEffectParameterSampler', | |
130 'FCDocument/FCDEffectParameterSurface', | |
131 'FCDocument/FCDEffectPass', | |
132 'FCDocument/FCDEffectPassShader', | |
133 'FCDocument/FCDEffectPassState', | |
134 'FCDocument/FCDEffectProfile', | |
135 'FCDocument/FCDEffectProfileFX', | |
136 'FCDocument/FCDEffectStandard', | |
137 'FCDocument/FCDEffectTechnique', | |
138 'FCDocument/FCDEffectTools', | |
139 'FCDocument/FCDEmitter', | |
140 'FCDocument/FCDEmitterInstance', | |
141 'FCDocument/FCDEmitterObject', | |
142 'FCDocument/FCDEmitterParticle', | |
143 'FCDocument/FCDEntity', | |
144 'FCDocument/FCDEntityInstance', | |
145 'FCDocument/FCDEntityReference', | |
146 'FCDocument/FCDExternalReferenceManager', | |
147 'FCDocument/FCDExtra', | |
148 'FCDocument/FCDForceDeflector', | |
149 'FCDocument/FCDForceDrag', | |
150 'FCDocument/FCDForceField', | |
151 'FCDocument/FCDForceGravity', | |
152 'FCDocument/FCDForcePBomb', | |
153 'FCDocument/FCDForceWind', | |
154 'FCDocument/FCDGeometry', | |
155 'FCDocument/FCDGeometryInstance', | |
156 'FCDocument/FCDGeometryMesh', | |
157 'FCDocument/FCDGeometryNURBSSurface', | |
158 'FCDocument/FCDGeometryPolygons', | |
159 'FCDocument/FCDGeometryPolygonsInput', | |
160 'FCDocument/FCDGeometryPolygonsTools', | |
161 'FCDocument/FCDGeometrySource', | |
162 'FCDocument/FCDGeometrySpline', | |
163 'FCDocument/FCDImage', | |
164 'FCDocument/FCDLibrary', | |
165 'FCDocument/FCDLight', | |
166 'FCDocument/FCDLightTools', | |
167 'FCDocument/FCDMaterial', | |
168 'FCDocument/FCDMaterialInstance', | |
169 'FCDocument/FCDMorphController', | |
170 'FCDocument/FCDObject', | |
171 'FCDocument/FCDObjectWithId', | |
172 'FCDocument/FCDParameterAnimatable', | |
173 'FCDocument/FCDParticleModifier', | |
174 'FCDocument/FCDPhysicsAnalyticalGeometry', | |
175 'FCDocument/FCDPhysicsForceFieldInstance', | |
176 'FCDocument/FCDPhysicsMaterial', | |
177 'FCDocument/FCDPhysicsModel', | |
178 'FCDocument/FCDPhysicsModelInstance', | |
179 'FCDocument/FCDPhysicsRigidBody', | |
180 'FCDocument/FCDPhysicsRigidBodyInstance', | |
181 'FCDocument/FCDPhysicsRigidBodyParameters', | |
182 'FCDocument/FCDPhysicsRigidConstraint', | |
183 'FCDocument/FCDPhysicsRigidConstraintInstance', | |
184 'FCDocument/FCDPhysicsScene', | |
185 'FCDocument/FCDPhysicsShape', | |
186 'FCDocument/FCDPlaceHolder', | |
187 'FCDocument/FCDSceneNode', | |
188 'FCDocument/FCDSceneNodeIterator', | |
189 'FCDocument/FCDSceneNodeTools', | |
190 'FCDocument/FCDSkinController', | |
191 'FCDocument/FCDTargetedEntity', | |
192 'FCDocument/FCDTexture', | |
193 'FCDocument/FCDTransform', | |
194 'FCDocument/FCDVersion', | |
195 'FCDocument/FCDocument', | |
196 'FCDocument/FCDocumentTools', | |
197 | |
198 'FMath/FMAllocator', | |
199 'FMath/FMAngleAxis', | |
200 'FMath/FMColor', | |
201 'FMath/FMInterpolation', | |
202 'FMath/FMLookAt', | |
203 'FMath/FMMatrix33', | |
204 'FMath/FMMatrix44', | |
205 'FMath/FMQuaternion', | |
206 'FMath/FMRandom', | |
207 'FMath/FMSkew', | |
208 'FMath/FMVector3', | |
209 'FMath/FMVolume', | |
210 'FMath/StdAfx', | |
211 | |
212 'FUtils/FUAssert', | |
213 'FUtils/FUBase64', | |
214 'FUtils/FUBoundingBox', | |
215 'FUtils/FUBoundingSphere', | |
216 'FUtils/FUCrc32', | |
217 'FUtils/FUCriticalSection', | |
218 'FUtils/FUDaeEnum', | |
219 'FUtils/FUDateTime', | |
220 'FUtils/FUDebug', | |
221 'FUtils/FUError', | |
222 'FUtils/FUErrorLog', | |
223 'FUtils/FUFile', | |
224 'FUtils/FUFileManager', | |
225 'FUtils/FULogFile', | |
226 'FUtils/FUObject', | |
227 'FUtils/FUObjectType', | |
228 'FUtils/FUParameter', | |
229 'FUtils/FUParameterizable', | |
230 'FUtils/FUPluginManager', | |
231 'FUtils/FUSemaphore', | |
232 'FUtils/FUStringBuilder', | |
233 'FUtils/FUStringConversion', | |
234 'FUtils/FUSynchronizableObject', | |
235 'FUtils/FUThread', | |
236 'FUtils/FUTracker', | |
237 'FUtils/FUUniqueStringMap', | |
238 'FUtils/FUUniqueStringMapTest', | |
239 'FUtils/FUUri', | |
240 'FUtils/FUXmlDocument', | |
241 'FUtils/FUXmlParser', | |
242 'FUtils/FUXmlWriter', | |
243 'FUtils/StdAfx', | |
244 ] | |
245 | |
246 env.Append(CPPPATH=['$COLLADA_DIR/LibXML/include', '$COLLADA_DIR'], | |
247 # Always set RETAIL so that we don't link in tests. | |
248 CPPDEFINES=['RETAIL']) | |
249 | |
250 # TESTING is added on our test- targets but messes up fcollada | |
251 env.FilterOut(CPPDEFINES=['TESTING']) | |
252 | |
253 if env.Bit('mac'): | |
254 # LibXML needs this define on Mac. | |
255 env.Append(CPPDEFINES = ['OS_MACINTOSH']) | |
256 | |
257 if env.Bit('linux'): | |
258 # On linux, -O3 seems to cause problems with template instantiation, -O2 is | |
259 # fine. | |
260 if not env['DEBUG']: | |
261 env.FilterOut(CCFLAGS=['-O3']) | |
262 env.Append(CCFLAGS=['-O2']) | |
263 | |
264 inputs = env.MakeObjects(c_sources, '$COLLADA_DIR', 'c') | |
265 inputs += env.MakeObjects(cpp_sources, '$COLLADA_DIR', 'cpp') | |
266 | |
267 env.ComponentLibrary('FColladaU', inputs) | |
OLD | NEW |