CMakeLists.txt 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843
  1. # Listing and grouping of all the source files.
  2. # 1) Set the file lists for each component
  3. # 2) Create a Source Group for each component, for IDE project orginization
  4. # 3) Add libassimp using the file lists (eliminates duplication of file names between
  5. # source groups and library command)
  6. #
  7. cmake_minimum_required( VERSION 2.6 )
  8. SET( HEADER_PATH ../include/assimp )
  9. SET( COMPILER_HEADERS
  10. ${HEADER_PATH}/Compiler/pushpack1.h
  11. ${HEADER_PATH}/Compiler/poppack1.h
  12. ${HEADER_PATH}/Compiler/pstdint.h
  13. )
  14. SOURCE_GROUP( Compiler FILES ${COMPILER_HEADERS})
  15. SET( PUBLIC_HEADERS
  16. ${HEADER_PATH}/anim.h
  17. ${HEADER_PATH}/ai_assert.h
  18. ${HEADER_PATH}/camera.h
  19. ${HEADER_PATH}/color4.h
  20. ${HEADER_PATH}/color4.inl
  21. ${HEADER_PATH}/config.h
  22. ${HEADER_PATH}/defs.h
  23. ${HEADER_PATH}/cfileio.h
  24. ${HEADER_PATH}/light.h
  25. ${HEADER_PATH}/material.h
  26. ${HEADER_PATH}/material.inl
  27. ${HEADER_PATH}/matrix3x3.h
  28. ${HEADER_PATH}/matrix3x3.inl
  29. ${HEADER_PATH}/matrix4x4.h
  30. ${HEADER_PATH}/matrix4x4.inl
  31. ${HEADER_PATH}/mesh.h
  32. ${HEADER_PATH}/postprocess.h
  33. ${HEADER_PATH}/quaternion.h
  34. ${HEADER_PATH}/quaternion.inl
  35. ${HEADER_PATH}/scene.h
  36. ${HEADER_PATH}/metadata.h
  37. ${HEADER_PATH}/texture.h
  38. ${HEADER_PATH}/types.h
  39. ${HEADER_PATH}/vector2.h
  40. ${HEADER_PATH}/vector2.inl
  41. ${HEADER_PATH}/vector3.h
  42. ${HEADER_PATH}/vector3.inl
  43. ${HEADER_PATH}/version.h
  44. ${HEADER_PATH}/cimport.h
  45. ${HEADER_PATH}/importerdesc.h
  46. ${HEADER_PATH}/Importer.hpp
  47. ${HEADER_PATH}/DefaultLogger.hpp
  48. ${HEADER_PATH}/ProgressHandler.hpp
  49. ${HEADER_PATH}/IOStream.hpp
  50. ${HEADER_PATH}/IOSystem.hpp
  51. ${HEADER_PATH}/Logger.hpp
  52. ${HEADER_PATH}/LogStream.hpp
  53. ${HEADER_PATH}/NullLogger.hpp
  54. ${HEADER_PATH}/cexport.h
  55. ${HEADER_PATH}/Exporter.hpp
  56. )
  57. SET( Core_SRCS
  58. Assimp.cpp
  59. )
  60. SET( Boost_SRCS
  61. BoostWorkaround/boost/math/common_factor_rt.hpp
  62. BoostWorkaround/boost/foreach.hpp
  63. BoostWorkaround/boost/format.hpp
  64. BoostWorkaround/boost/scoped_array.hpp
  65. BoostWorkaround/boost/scoped_ptr.hpp
  66. BoostWorkaround/boost/shared_array.hpp
  67. BoostWorkaround/boost/shared_ptr.hpp
  68. BoostWorkaround/boost/make_shared.hpp
  69. BoostWorkaround/boost/static_assert.hpp
  70. BoostWorkaround/boost/tuple/tuple.hpp
  71. )
  72. SOURCE_GROUP(Boost FILES ${Boost_SRCS})
  73. SET( Logging_SRCS
  74. ${HEADER_PATH}/DefaultLogger.hpp
  75. ${HEADER_PATH}/LogStream.hpp
  76. ${HEADER_PATH}/Logger.hpp
  77. ${HEADER_PATH}/NullLogger.hpp
  78. Win32DebugLogStream.h
  79. DefaultLogger.cpp
  80. FileLogStream.h
  81. StdOStreamLogStream.h
  82. )
  83. SOURCE_GROUP(Logging FILES ${Logging_SRCS})
  84. SET( Common_SRCS
  85. fast_atof.h
  86. qnan.h
  87. BaseImporter.cpp
  88. BaseImporter.h
  89. BaseProcess.cpp
  90. BaseProcess.h
  91. Importer.h
  92. ScenePrivate.h
  93. PostStepRegistry.cpp
  94. ImporterRegistry.cpp
  95. ByteSwap.h
  96. DefaultProgressHandler.h
  97. DefaultIOStream.cpp
  98. DefaultIOStream.h
  99. DefaultIOSystem.cpp
  100. DefaultIOSystem.h
  101. CInterfaceIOWrapper.h
  102. Hash.h
  103. Importer.cpp
  104. IFF.h
  105. MemoryIOWrapper.h
  106. ParsingUtils.h
  107. StreamReader.h
  108. StreamWriter.h
  109. StringComparison.h
  110. SGSpatialSort.cpp
  111. SGSpatialSort.h
  112. VertexTriangleAdjacency.cpp
  113. VertexTriangleAdjacency.h
  114. GenericProperty.h
  115. SpatialSort.cpp
  116. SpatialSort.h
  117. SceneCombiner.cpp
  118. SceneCombiner.h
  119. ScenePreprocessor.cpp
  120. ScenePreprocessor.h
  121. SkeletonMeshBuilder.cpp
  122. SkeletonMeshBuilder.h
  123. SplitByBoneCountProcess.cpp
  124. SplitByBoneCountProcess.h
  125. SmoothingGroups.h
  126. StandardShapes.cpp
  127. StandardShapes.h
  128. TargetAnimation.cpp
  129. TargetAnimation.h
  130. RemoveComments.cpp
  131. RemoveComments.h
  132. Subdivision.cpp
  133. Subdivision.h
  134. Vertex.h
  135. LineSplitter.h
  136. TinyFormatter.h
  137. Profiler.h
  138. LogAux.h
  139. Bitmap.cpp
  140. Bitmap.h
  141. XMLTools.h
  142. )
  143. SOURCE_GROUP(Common FILES ${Common_SRCS})
  144. IF ( ASSIMP_BUILD_NONFREE_C4D_IMPORTER )
  145. SET( C4D_SRCS
  146. C4DImporter.cpp
  147. C4DImporter.h
  148. )
  149. SOURCE_GROUP( C4D FILES ${C4D_SRCS})
  150. ENDIF ( ASSIMP_BUILD_NONFREE_C4D_IMPORTER )
  151. SET( 3DS_SRCS
  152. 3DSConverter.cpp
  153. 3DSHelper.h
  154. 3DSLoader.cpp
  155. 3DSLoader.h
  156. 3DSExporter.h
  157. 3DSExporter.cpp
  158. )
  159. SOURCE_GROUP(3DS FILES ${3DS_SRCS})
  160. SET( AC_SRCS
  161. ACLoader.cpp
  162. ACLoader.h
  163. )
  164. SOURCE_GROUP( AC FILES ${AC_SRCS})
  165. SET( ASE_SRCS
  166. ASELoader.cpp
  167. ASELoader.h
  168. ASEParser.cpp
  169. ASEParser.h
  170. )
  171. SOURCE_GROUP( ASE FILES ${ASE_SRCS})
  172. SET( ASSBIN_SRCS
  173. AssbinExporter.h
  174. AssbinExporter.cpp
  175. AssbinLoader.h
  176. AssbinLoader.cpp
  177. )
  178. SOURCE_GROUP( Assbin FILES ${ASSBIN_SRCS})
  179. SET( ASSXML_SRCS
  180. AssxmlExporter.h
  181. AssxmlExporter.cpp
  182. )
  183. SOURCE_GROUP( Assxml FILES ${ASSXML_SRCS})
  184. SET( B3D_SRCS
  185. B3DImporter.cpp
  186. B3DImporter.h
  187. )
  188. SOURCE_GROUP( B3D FILES ${B3D_SRCS})
  189. SET( BVH_SRCS
  190. BVHLoader.cpp
  191. BVHLoader.h
  192. )
  193. SOURCE_GROUP( BVH FILES ${BVH_SRCS})
  194. SET( Collada_SRCS
  195. ColladaHelper.h
  196. ColladaLoader.cpp
  197. ColladaLoader.h
  198. ColladaParser.cpp
  199. ColladaParser.h
  200. ColladaExporter.h
  201. ColladaExporter.cpp
  202. )
  203. SOURCE_GROUP( Collada FILES ${Collada_SRCS})
  204. SET( DXF_SRCS
  205. DXFLoader.cpp
  206. DXFLoader.h
  207. DXFHelper.h
  208. )
  209. SOURCE_GROUP( DXF FILES ${DXF_SRCS})
  210. SET( CSM_SRCS
  211. CSMLoader.cpp
  212. CSMLoader.h
  213. )
  214. SOURCE_GROUP( CSM FILES ${CSM_SRCS})
  215. SET( HMP_SRCS
  216. HMPFileData.h
  217. HMPLoader.cpp
  218. HMPLoader.h
  219. HalfLifeFileData.h
  220. )
  221. SOURCE_GROUP( HMP FILES ${HMP_SRCS})
  222. SET( Irr_SRCS
  223. IRRLoader.cpp
  224. IRRLoader.h
  225. IRRMeshLoader.cpp
  226. IRRMeshLoader.h
  227. IRRShared.cpp
  228. IRRShared.h
  229. )
  230. SOURCE_GROUP( Irr FILES ${Irr_SRCS})
  231. SET( LWO_SRCS
  232. LWOAnimation.cpp
  233. LWOAnimation.h
  234. LWOBLoader.cpp
  235. LWOFileData.h
  236. LWOLoader.cpp
  237. LWOLoader.h
  238. LWOMaterial.cpp
  239. )
  240. SOURCE_GROUP( LWO FILES ${LWO_SRCS})
  241. SET( LWS_SRCS
  242. LWSLoader.cpp
  243. LWSLoader.h
  244. )
  245. SOURCE_GROUP( LWS FILES ${LWS_SRCS})
  246. SET( MD2_SRCS
  247. MD2FileData.h
  248. MD2Loader.cpp
  249. MD2Loader.h
  250. MD2NormalTable.h
  251. )
  252. SOURCE_GROUP( MD2 FILES ${MD2_SRCS})
  253. SET( MD3_SRCS
  254. MD3FileData.h
  255. MD3Loader.cpp
  256. MD3Loader.h
  257. )
  258. SOURCE_GROUP( MD3 FILES ${MD3_SRCS})
  259. SET( MD5_SRCS
  260. MD5Loader.cpp
  261. MD5Loader.h
  262. MD5Parser.cpp
  263. MD5Parser.h
  264. )
  265. SOURCE_GROUP( MD5 FILES ${MD5_SRCS})
  266. SET( MDC_SRCS
  267. MDCFileData.h
  268. MDCLoader.cpp
  269. MDCLoader.h
  270. MDCNormalTable.h
  271. )
  272. SOURCE_GROUP( MDC FILES ${MDC_SRCS})
  273. SET( MDL_SRCS
  274. MDLDefaultColorMap.h
  275. MDLFileData.h
  276. MDLLoader.cpp
  277. MDLLoader.h
  278. MDLMaterialLoader.cpp
  279. )
  280. SOURCE_GROUP( MDL FILES ${MDL_SRCS})
  281. SET( MaterialSystem_SRCS
  282. MaterialSystem.cpp
  283. MaterialSystem.h
  284. )
  285. SOURCE_GROUP( MaterialSystem FILES ${MaterialSystem_SRCS})
  286. SET( NFF_SRCS
  287. NFFLoader.cpp
  288. NFFLoader.h
  289. )
  290. SOURCE_GROUP( NFF FILES ${NFF_SRCS})
  291. SET( NDO_SRCS
  292. NDOLoader.cpp
  293. NDOLoader.h
  294. )
  295. SOURCE_GROUP( NDO FILES ${NDO_SRCS})
  296. SET( OFFFormat_SRCS
  297. OFFLoader.cpp
  298. OFFLoader.h
  299. )
  300. SOURCE_GROUP( OFFFormat FILES ${OFFFormat_SRCS})
  301. SET( Obj_SRCS
  302. ObjFileData.h
  303. ObjFileImporter.cpp
  304. ObjFileImporter.h
  305. ObjFileMtlImporter.cpp
  306. ObjFileMtlImporter.h
  307. ObjFileParser.cpp
  308. ObjFileParser.h
  309. ObjTools.h
  310. ObjExporter.h
  311. ObjExporter.cpp
  312. )
  313. SOURCE_GROUP( Obj FILES ${Obj_SRCS})
  314. SET( Ogre_SRCS
  315. OgreImporter.h
  316. OgreStructs.h
  317. OgreParsingUtils.h
  318. OgreBinarySerializer.h
  319. OgreXmlSerializer.h
  320. OgreImporter.cpp
  321. OgreStructs.cpp
  322. OgreBinarySerializer.cpp
  323. OgreXmlSerializer.cpp
  324. OgreMaterial.cpp
  325. )
  326. SOURCE_GROUP( Ogre FILES ${Ogre_SRCS})
  327. SET( OpenGEX_SRCS
  328. OpenGEXImporter.cpp
  329. OpenGEXImporter.h
  330. OpenGEXStructs.h
  331. )
  332. SOURCE_GROUP( OpenGEX FILES ${OpenGEX_SRCS})
  333. SET( Ply_SRCS
  334. PlyLoader.cpp
  335. PlyLoader.h
  336. PlyParser.cpp
  337. PlyParser.h
  338. PlyExporter.cpp
  339. PlyExporter.h
  340. )
  341. SOURCE_GROUP( Ply FILES ${Ply_SRCS})
  342. SET(MS3D_SRCS
  343. MS3DLoader.cpp
  344. MS3DLoader.h
  345. )
  346. SOURCE_GROUP( MS3D FILES ${MS3D_SRCS})
  347. SET(COB_SRCS
  348. COBLoader.cpp
  349. COBLoader.h
  350. COBScene.h
  351. )
  352. SOURCE_GROUP( COB FILES ${COB_SRCS})
  353. SET(BLENDER_SRCS
  354. BlenderLoader.cpp
  355. BlenderLoader.h
  356. BlenderDNA.cpp
  357. BlenderDNA.h
  358. BlenderDNA.inl
  359. BlenderScene.cpp
  360. BlenderScene.h
  361. BlenderSceneGen.h
  362. BlenderIntermediate.h
  363. BlenderModifier.h
  364. BlenderModifier.cpp
  365. BlenderBMesh.h
  366. BlenderBMesh.cpp
  367. BlenderTessellator.h
  368. BlenderTessellator.cpp
  369. )
  370. SOURCE_GROUP( BLENDER FILES ${BLENDER_SRCS})
  371. SET(IFC_SRCS
  372. IFCLoader.cpp
  373. IFCLoader.h
  374. IFCReaderGen.cpp
  375. IFCReaderGen.h
  376. IFCUtil.h
  377. IFCUtil.cpp
  378. IFCGeometry.cpp
  379. IFCMaterial.cpp
  380. IFCProfile.cpp
  381. IFCCurve.cpp
  382. IFCBoolean.cpp
  383. IFCOpenings.cpp
  384. STEPFile.h
  385. STEPFileReader.h
  386. STEPFileReader.cpp
  387. STEPFileEncoding.cpp
  388. STEPFileEncoding.h
  389. )
  390. SOURCE_GROUP( IFC FILES ${IFC_SRCS})
  391. SET( XGL_SRCS
  392. XGLLoader.cpp
  393. XGLLoader.h
  394. )
  395. SOURCE_GROUP( XGL FILES ${XGL_SRCS})
  396. SET(FBX_SRCS
  397. FBXImporter.cpp
  398. FBXCompileConfig.h
  399. FBXImporter.h
  400. FBXParser.cpp
  401. FBXParser.h
  402. FBXTokenizer.cpp
  403. FBXTokenizer.h
  404. FBXImportSettings.h
  405. FBXConverter.h
  406. FBXConverter.cpp
  407. FBXUtil.h
  408. FBXUtil.cpp
  409. FBXDocument.h
  410. FBXDocument.cpp
  411. FBXProperties.h
  412. FBXProperties.cpp
  413. FBXMeshGeometry.cpp
  414. FBXMaterial.cpp
  415. FBXModel.cpp
  416. FBXAnimation.cpp
  417. FBXNodeAttribute.cpp
  418. FBXDeformer.cpp
  419. FBXBinaryTokenizer.cpp
  420. FBXDocumentUtil.cpp
  421. )
  422. SOURCE_GROUP( FBX FILES ${FBX_SRCS})
  423. SET( PostProcessing_SRCS
  424. CalcTangentsProcess.cpp
  425. CalcTangentsProcess.h
  426. ComputeUVMappingProcess.cpp
  427. ComputeUVMappingProcess.h
  428. ConvertToLHProcess.cpp
  429. ConvertToLHProcess.h
  430. FindDegenerates.cpp
  431. FindDegenerates.h
  432. FindInstancesProcess.cpp
  433. FindInstancesProcess.h
  434. FindInvalidDataProcess.cpp
  435. FindInvalidDataProcess.h
  436. FixNormalsStep.cpp
  437. FixNormalsStep.h
  438. GenFaceNormalsProcess.cpp
  439. GenFaceNormalsProcess.h
  440. GenVertexNormalsProcess.cpp
  441. GenVertexNormalsProcess.h
  442. PretransformVertices.cpp
  443. PretransformVertices.h
  444. ImproveCacheLocality.cpp
  445. ImproveCacheLocality.h
  446. JoinVerticesProcess.cpp
  447. JoinVerticesProcess.h
  448. LimitBoneWeightsProcess.cpp
  449. LimitBoneWeightsProcess.h
  450. RemoveRedundantMaterials.cpp
  451. RemoveRedundantMaterials.h
  452. RemoveVCProcess.cpp
  453. RemoveVCProcess.h
  454. SortByPTypeProcess.cpp
  455. SortByPTypeProcess.h
  456. SplitLargeMeshes.cpp
  457. SplitLargeMeshes.h
  458. TextureTransform.cpp
  459. TextureTransform.h
  460. TriangulateProcess.cpp
  461. TriangulateProcess.h
  462. ValidateDataStructure.cpp
  463. ValidateDataStructure.h
  464. OptimizeGraph.cpp
  465. OptimizeGraph.h
  466. OptimizeMeshes.cpp
  467. OptimizeMeshes.h
  468. DeboneProcess.cpp
  469. DeboneProcess.h
  470. ProcessHelper.h
  471. ProcessHelper.cpp
  472. PolyTools.h
  473. MakeVerboseFormat.cpp
  474. MakeVerboseFormat.h
  475. )
  476. SOURCE_GROUP( PostProcessing FILES ${PostProcessing_SRCS})
  477. SET( Q3D_SRCS
  478. Q3DLoader.cpp
  479. Q3DLoader.h
  480. )
  481. SOURCE_GROUP( Q3D FILES ${Q3D_SRCS})
  482. SET( Q3BSP_SRCS
  483. Q3BSPFileData.h
  484. Q3BSPFileParser.h
  485. Q3BSPFileParser.cpp
  486. Q3BSPFileImporter.h
  487. Q3BSPFileImporter.cpp
  488. Q3BSPZipArchive.h
  489. Q3BSPZipArchive.cpp
  490. )
  491. SOURCE_GROUP( Q3BSP FILES ${Q3BSP_SRCS})
  492. SET( Raw_SRCS
  493. RawLoader.cpp
  494. RawLoader.h
  495. )
  496. SOURCE_GROUP( Raw FILES ${Raw_SRCS})
  497. SET( SMD_SRCS
  498. SMDLoader.cpp
  499. SMDLoader.h
  500. )
  501. SOURCE_GROUP( SMD FILES ${SMD_SRCS})
  502. SET( STL_SRCS
  503. STLLoader.cpp
  504. STLLoader.h
  505. STLExporter.h
  506. STLExporter.cpp
  507. )
  508. SOURCE_GROUP( STL FILES ${STL_SRCS})
  509. SET( Terragen_SRCS
  510. TerragenLoader.cpp
  511. TerragenLoader.h
  512. )
  513. SOURCE_GROUP( Terragen FILES ${Terragen_SRCS})
  514. SET( Unreal_SRCS
  515. UnrealLoader.cpp
  516. UnrealLoader.h
  517. )
  518. SOURCE_GROUP( Unreal FILES ${Unreal_SRCS})
  519. SET( XFile_SRCS
  520. XFileHelper.h
  521. XFileImporter.cpp
  522. XFileImporter.h
  523. XFileParser.cpp
  524. XFileParser.h
  525. XFileExporter.h
  526. XFileExporter.cpp
  527. )
  528. SOURCE_GROUP( XFile FILES ${XFile_SRCS})
  529. SET( Step_SRCS
  530. StepExporter.h
  531. StepExporter.cpp
  532. )
  533. SOURCE_GROUP( Step FILES ${Step_SRCS})
  534. SET( Exporter_SRCS
  535. Exporter.cpp
  536. AssimpCExport.cpp
  537. BlobIOSystem.h
  538. )
  539. SOURCE_GROUP( Exporter FILES ${Exporter_SRCS})
  540. SET( Extra_SRCS
  541. MD4FileData.h
  542. )
  543. SOURCE_GROUP( Extra FILES ${Extra_SRCS})
  544. SET( IrrXML_SRCS
  545. irrXMLWrapper.h
  546. ../contrib/irrXML/CXMLReaderImpl.h
  547. ../contrib/irrXML/heapsort.h
  548. ../contrib/irrXML/irrArray.h
  549. ../contrib/irrXML/irrString.h
  550. ../contrib/irrXML/irrTypes.h
  551. ../contrib/irrXML/irrXML.cpp
  552. ../contrib/irrXML/irrXML.h
  553. )
  554. SOURCE_GROUP( IrrXML FILES ${IrrXML_SRCS})
  555. SET( ConvertUTF_SRCS
  556. ../contrib/ConvertUTF/ConvertUTF.h
  557. ../contrib/ConvertUTF/ConvertUTF.c
  558. )
  559. SOURCE_GROUP( ConvertUTF FILES ${ConvertUTF_SRCS})
  560. SET( Clipper_SRCS
  561. ../contrib/clipper/clipper.hpp
  562. ../contrib/clipper/clipper.cpp
  563. )
  564. SOURCE_GROUP( Clipper FILES ${Clipper_SRCS})
  565. SET( Poly2Tri_SRCS
  566. ../contrib/poly2tri/poly2tri/common/shapes.cc
  567. ../contrib/poly2tri/poly2tri/common/shapes.h
  568. ../contrib/poly2tri/poly2tri/common/utils.h
  569. ../contrib/poly2tri/poly2tri/sweep/advancing_front.h
  570. ../contrib/poly2tri/poly2tri/sweep/advancing_front.cc
  571. ../contrib/poly2tri/poly2tri/sweep/cdt.cc
  572. ../contrib/poly2tri/poly2tri/sweep/cdt.h
  573. ../contrib/poly2tri/poly2tri/sweep/sweep.cc
  574. ../contrib/poly2tri/poly2tri/sweep/sweep.h
  575. ../contrib/poly2tri/poly2tri/sweep/sweep_context.cc
  576. ../contrib/poly2tri/poly2tri/sweep/sweep_context.h
  577. )
  578. SOURCE_GROUP( Poly2Tri FILES ${Poly2Tri_SRCS})
  579. SET( unzip_SRCS
  580. ../contrib/unzip/crypt.h
  581. ../contrib/unzip/ioapi.c
  582. ../contrib/unzip/ioapi.h
  583. ../contrib/unzip/unzip.c
  584. ../contrib/unzip/unzip.h
  585. )
  586. SOURCE_GROUP( unzip FILES ${unzip_SRCS})
  587. SET ( openddl_parser_SRCS
  588. ../contrib/openddlparser/code/OpenDDLParser.cpp
  589. ../contrib/openddlparser/code/DDLNode.cpp
  590. ../contrib/openddlparser/code/Value.cpp
  591. ../contrib/openddlparser/include/openddlparser/OpenDDLParser.h
  592. ../contrib/openddlparser/include/openddlparser/OpenDDLParserUtils.h
  593. ../contrib/openddlparser/include/openddlparser/OpenDDLCommon.h
  594. ../contrib/openddlparser/include/openddlparser/DDLNode.h
  595. ../contrib/openddlparser/include/openddlparser/Value.h
  596. )
  597. SOURCE_GROUP( openddl_parser FILES ${openddl_parser_SRCS})
  598. # VC2010 fixes
  599. if(MSVC10)
  600. option( VC10_STDINT_FIX "Fix for VC10 Compiler regarding pstdint.h redefinition errors" OFF )
  601. if( VC10_STDINT_FIX )
  602. ADD_DEFINITIONS( -D_STDINT )
  603. endif( VC10_STDINT_FIX )
  604. endif(MSVC10)
  605. ADD_DEFINITIONS( -DASSIMP_BUILD_DLL_EXPORT )
  606. if ( MSVC )
  607. ADD_DEFINITIONS( -D_SCL_SECURE_NO_WARNINGS )
  608. ADD_DEFINITIONS( -D_CRT_SECURE_NO_WARNINGS )
  609. endif ( MSVC )
  610. if (UNZIP_FOUND)
  611. SET (unzip_compile_SRCS "")
  612. else (UNZIP_FOUND)
  613. SET (unzip_compile_SRCS ${unzip_SRCS})
  614. endif (UNZIP_FOUND)
  615. SET( assimp_src
  616. # Assimp Files
  617. ${Core_SRCS}
  618. ${Common_SRCS}
  619. ${Logging_SRCS}
  620. ${Exporter_SRCS}
  621. ${PostProcessing_SRCS}
  622. # Model Support
  623. ${3DS_SRCS}
  624. ${AC_SRCS}
  625. ${ASE_SRCS}
  626. ${ASSBIN_SRCS}
  627. ${ASSXML_SRCS}
  628. ${B3D_SRCS}
  629. ${BVH_SRCS}
  630. ${Collada_SRCS}
  631. ${DXF_SRCS}
  632. ${CSM_SRCS}
  633. ${HMP_SRCS}
  634. ${Irr_SRCS}
  635. ${LWO_SRCS}
  636. ${LWS_SRCS}
  637. ${MD2_SRCS}
  638. ${MD3_SRCS}
  639. ${MD5_SRCS}
  640. ${MDC_SRCS}
  641. ${MDL_SRCS}
  642. ${MaterialSystem_SRCS}
  643. ${NFF_SRCS}
  644. ${OFFFormat_SRCS}
  645. ${Obj_SRCS}
  646. ${Ogre_SRCS}
  647. ${OpenGEX_SRCS}
  648. ${Ply_SRCS}
  649. ${Q3D_SRCS}
  650. ${Q3BSP_SRCS}
  651. ${Raw_SRCS}
  652. ${SMD_SRCS}
  653. ${STL_SRCS}
  654. ${Terragen_SRCS}
  655. ${Unreal_SRCS}
  656. ${XFile_SRCS}
  657. ${Step_SRCS}
  658. ${Extra_SRCS}
  659. ${MS3D_SRCS}
  660. ${COB_SRCS}
  661. ${BLENDER_SRCS}
  662. ${NDO_SRCS}
  663. ${IFC_SRCS}
  664. ${XGL_SRCS}
  665. ${FBX_SRCS}
  666. # Third-party libraries
  667. ${IrrXML_SRCS}
  668. ${ConvertUTF_SRCS}
  669. ${unzip_compile_SRCS}
  670. ${Poly2Tri_SRCS}
  671. ${Clipper_SRCS}
  672. ${openddl_parser_SRCS}
  673. # Necessary to show the headers in the project when using the VC++ generator:
  674. ${Boost_SRCS}
  675. ${PUBLIC_HEADERS}
  676. ${COMPILER_HEADERS}
  677. # Old precompiled header
  678. # (removed because the precompiled header is not updated when visual studio switch configuration which leads to failed compilation.
  679. # Moreover it's a drag to recompile assimp entirely each time a modification is made to one of the included header, which is definitely counter-productive.)
  680. AssimpPCH.cpp
  681. )
  682. add_definitions( -DOPENDDLPARSER_BUILD )
  683. INCLUDE_DIRECTORIES(
  684. ../contrib/openddlparser/include
  685. )
  686. IF (ASSIMP_BUILD_NONFREE_C4D_IMPORTER)
  687. SET( assimp_src ${assimp_src} ${C4D_SRCS})
  688. INCLUDE_DIRECTORIES(${C4D_INCLUDES})
  689. ENDIF (ASSIMP_BUILD_NONFREE_C4D_IMPORTER)
  690. #ADD_MSVC_PRECOMPILED_HEADER("AssimpPCH.h" "AssimpPCH.cpp" assimp_src)
  691. ADD_LIBRARY( assimp ${assimp_src} )
  692. TARGET_LINK_LIBRARIES(assimp ${ZLIB_LIBRARIES} ${OPENDDL_PARSER_LIBRARIES} )
  693. if(ANDROID AND ASSIMP_ANDROID_JNIIOSYSTEM)
  694. set(ASSIMP_ANDROID_JNIIOSYSTEM_PATH port/AndroidJNI)
  695. add_subdirectory(../${ASSIMP_ANDROID_JNIIOSYSTEM_PATH}/ ../${ASSIMP_ANDROID_JNIIOSYSTEM_PATH}/)
  696. target_link_libraries(assimp android_jniiosystem)
  697. endif(ANDROID AND ASSIMP_ANDROID_JNIIOSYSTEM)
  698. IF (ASSIMP_BUILD_NONFREE_C4D_IMPORTER)
  699. TARGET_LINK_LIBRARIES(assimp optimized ${C4D_RELEASE_LIBRARY})
  700. TARGET_LINK_LIBRARIES(assimp debug ${C4D_DEBUG_LIBRARY})
  701. TARGET_LINK_LIBRARIES(assimp ${C4D_EXTRA_LIBRARIES})
  702. ENDIF (ASSIMP_BUILD_NONFREE_C4D_IMPORTER)
  703. if( MSVC )
  704. # in order to prevent DLL hell, each of the DLLs have to be suffixed with the major version and msvc prefix
  705. if( MSVC70 OR MSVC71 )
  706. set(MSVC_PREFIX "vc70")
  707. elseif( MSVC80 )
  708. set(MSVC_PREFIX "vc80")
  709. elseif( MSVC90 )
  710. set(MSVC_PREFIX "vc90")
  711. elseif( MSVC10 )
  712. set(MSVC_PREFIX "vc100")
  713. elseif( MSVC11 )
  714. set(MSVC_PREFIX "vc110")
  715. elseif( MSVC12 )
  716. set(MSVC_PREFIX "vc120")
  717. else()
  718. set(MSVC_PREFIX "vc130")
  719. endif()
  720. set(LIBRARY_SUFFIX "${ASSIMP_LIBRARY_SUFFIX}-${MSVC_PREFIX}-mt" CACHE STRING "the suffix for the assimp windows library" FORCE)
  721. endif()
  722. SET_TARGET_PROPERTIES( assimp PROPERTIES
  723. VERSION ${ASSIMP_VERSION}
  724. SOVERSION ${ASSIMP_SOVERSION} # use full version
  725. OUTPUT_NAME assimp${LIBRARY_SUFFIX}
  726. )
  727. if (APPLE)
  728. SET_TARGET_PROPERTIES( assimp PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}")
  729. endif()
  730. # Build against external unzip, or add ../contrib/unzip so
  731. # assimp can #include "unzip.h"
  732. if (UNZIP_FOUND)
  733. INCLUDE_DIRECTORIES(${UNZIP_INCLUDE_DIRS})
  734. TARGET_LINK_LIBRARIES(assimp ${UNZIP_LIBRARIES})
  735. else (UNZIP_FOUND)
  736. INCLUDE_DIRECTORIES("../contrib/unzip")
  737. endif (UNZIP_FOUND)
  738. INSTALL( TARGETS assimp
  739. LIBRARY DESTINATION ${ASSIMP_LIB_INSTALL_DIR}
  740. ARCHIVE DESTINATION ${ASSIMP_LIB_INSTALL_DIR}
  741. RUNTIME DESTINATION ${ASSIMP_BIN_INSTALL_DIR}
  742. COMPONENT ${LIBASSIMP_COMPONENT})
  743. INSTALL( FILES ${PUBLIC_HEADERS} DESTINATION ${ASSIMP_INCLUDE_INSTALL_DIR}/assimp COMPONENT assimp-dev)
  744. INSTALL( FILES ${COMPILER_HEADERS} DESTINATION ${ASSIMP_INCLUDE_INSTALL_DIR}/assimp/Compiler COMPONENT assimp-dev)
  745. if (ASSIMP_ANDROID_JNIIOSYSTEM)
  746. INSTALL(FILES ${HEADER_PATH}/../${ASSIMP_ANDROID_JNIIOSYSTEM_PATH}/AndroidJNIIOSystem.h
  747. DESTINATION ${ASSIMP_INCLUDE_INSTALL_DIR}
  748. COMPONENT assimp-dev)
  749. endif(ASSIMP_ANDROID_JNIIOSYSTEM)
  750. if(MSVC AND ASSIMP_INSTALL_PDB)
  751. install(FILES ${Assimp_BINARY_DIR}/code/Debug/assimp${CMAKE_DEBUG_POSTFIX}.pdb
  752. DESTINATION ${ASSIMP_LIB_INSTALL_DIR}
  753. CONFIGURATIONS Debug
  754. )
  755. install(FILES ${Assimp_BINARY_DIR}/code/RelWithDebInfo/assimp.pdb
  756. DESTINATION ${ASSIMP_LIB_INSTALL_DIR}
  757. CONFIGURATIONS RelWithDebInfo
  758. )
  759. endif ()