CMakeLists.txt 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675
  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. SET( HEADER_PATH ../include/assimp )
  8. SET( COMPILER_HEADERS
  9. ${HEADER_PATH}/Compiler/pushpack1.h
  10. ${HEADER_PATH}/Compiler/poppack1.h
  11. pstdint.h
  12. )
  13. SOURCE_GROUP( Compiler FILES ${COMPILER_HEADERS})
  14. SET( PUBLIC_HEADERS
  15. ${HEADER_PATH}/anim.h
  16. ${HEADER_PATH}/ai_assert.h
  17. ${HEADER_PATH}/camera.h
  18. ${HEADER_PATH}/color4.h
  19. ${HEADER_PATH}/color4.inl
  20. ${HEADER_PATH}/config.h
  21. ${HEADER_PATH}/defs.h
  22. ${HEADER_PATH}/cfileio.h
  23. ${HEADER_PATH}/light.h
  24. ${HEADER_PATH}/material.h
  25. ${HEADER_PATH}/material.inl
  26. ${HEADER_PATH}/matrix3x3.h
  27. ${HEADER_PATH}/matrix3x3.inl
  28. ${HEADER_PATH}/matrix4x4.h
  29. ${HEADER_PATH}/matrix4x4.inl
  30. ${HEADER_PATH}/mesh.h
  31. ${HEADER_PATH}/postprocess.h
  32. ${HEADER_PATH}/quaternion.h
  33. ${HEADER_PATH}/quaternion.inl
  34. ${HEADER_PATH}/scene.h
  35. ${HEADER_PATH}/texture.h
  36. ${HEADER_PATH}/types.h
  37. ${HEADER_PATH}/vector2.h
  38. ${HEADER_PATH}/vector2.inl
  39. ${HEADER_PATH}/vector3.h
  40. ${HEADER_PATH}/vector3.inl
  41. ${HEADER_PATH}/version.h
  42. ${HEADER_PATH}/cimport.h
  43. ${HEADER_PATH}/importerdesc.h
  44. ${HEADER_PATH}/Importer.hpp
  45. ${HEADER_PATH}/DefaultLogger.hpp
  46. ${HEADER_PATH}/ProgressHandler.hpp
  47. ${HEADER_PATH}/IOStream.hpp
  48. ${HEADER_PATH}/IOSystem.hpp
  49. ${HEADER_PATH}/Logger.hpp
  50. ${HEADER_PATH}/LogStream.hpp
  51. ${HEADER_PATH}/NullLogger.hpp
  52. ${HEADER_PATH}/cexport.h
  53. ${HEADER_PATH}/Exporter.hpp
  54. )
  55. SET( Core_SRCS
  56. Assimp.cpp
  57. AssimpPCH.cpp
  58. AssimpPCH.h
  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}/IOStream.hpp
  76. ${HEADER_PATH}/LogStream.hpp
  77. ${HEADER_PATH}/Logger.hpp
  78. ${HEADER_PATH}/NullLogger.hpp
  79. Win32DebugLogStream.h
  80. DefaultLogger.cpp
  81. FileLogStream.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. ParsingUtils.h
  106. StdOStreamLogStream.h
  107. StreamReader.h
  108. StringComparison.h
  109. SGSpatialSort.cpp
  110. SGSpatialSort.h
  111. VertexTriangleAdjacency.cpp
  112. VertexTriangleAdjacency.h
  113. GenericProperty.h
  114. SpatialSort.cpp
  115. SpatialSort.h
  116. SceneCombiner.cpp
  117. SceneCombiner.h
  118. ScenePreprocessor.cpp
  119. ScenePreprocessor.h
  120. SkeletonMeshBuilder.cpp
  121. SkeletonMeshBuilder.h
  122. SplitByBoneCountProcess.cpp
  123. SplitByBoneCountProcess.h
  124. SmoothingGroups.h
  125. StandardShapes.cpp
  126. StandardShapes.h
  127. TargetAnimation.cpp
  128. TargetAnimation.h
  129. RemoveComments.cpp
  130. RemoveComments.h
  131. Subdivision.cpp
  132. Subdivision.h
  133. Vertex.h
  134. LineSplitter.h
  135. TinyFormatter.h
  136. Profiler.h
  137. LogAux.h
  138. )
  139. SOURCE_GROUP(Common FILES ${Common_SRCS})
  140. SET( 3DS_SRCS
  141. 3DSConverter.cpp
  142. 3DSHelper.h
  143. 3DSLoader.cpp
  144. 3DSLoader.h
  145. )
  146. SOURCE_GROUP(3DS FILES ${3DS_SRCS})
  147. SET( AC_SRCS
  148. ACLoader.cpp
  149. ACLoader.h
  150. )
  151. SOURCE_GROUP( AC FILES ${AC_SRCS})
  152. SET( ASE_SRCS
  153. ASELoader.cpp
  154. ASELoader.h
  155. ASEParser.cpp
  156. ASEParser.h
  157. )
  158. SOURCE_GROUP( ASE FILES ${ASE_SRCS})
  159. SET( B3D_SRCS
  160. B3DImporter.cpp
  161. B3DImporter.h
  162. )
  163. SOURCE_GROUP( B3D FILES ${B3D_SRCS})
  164. SET( BVH_SRCS
  165. BVHLoader.cpp
  166. BVHLoader.h
  167. )
  168. SOURCE_GROUP( BVH FILES ${BVH_SRCS})
  169. SET( Collada_SRCS
  170. ColladaHelper.h
  171. ColladaLoader.cpp
  172. ColladaLoader.h
  173. ColladaParser.cpp
  174. ColladaParser.h
  175. ColladaExporter.h
  176. ColladaExporter.cpp
  177. )
  178. SOURCE_GROUP( Collada FILES ${Collada_SRCS})
  179. SET( DXF_SRCS
  180. DXFLoader.cpp
  181. DXFLoader.h
  182. DXFHelper.h
  183. )
  184. SOURCE_GROUP( DXF FILES ${DXF_SRCS})
  185. SET( CSM_SRCS
  186. CSMLoader.cpp
  187. CSMLoader.h
  188. )
  189. SOURCE_GROUP( CSM FILES ${CSM_SRCS})
  190. SET( HMP_SRCS
  191. HMPFileData.h
  192. HMPLoader.cpp
  193. HMPLoader.h
  194. HalfLifeFileData.h
  195. )
  196. SOURCE_GROUP( HMP FILES ${HMP_SRCS})
  197. SET( Irr_SRCS
  198. IRRLoader.cpp
  199. IRRLoader.h
  200. IRRMeshLoader.cpp
  201. IRRMeshLoader.h
  202. IRRShared.cpp
  203. IRRShared.h
  204. )
  205. SOURCE_GROUP( Irr FILES ${Irr_SRCS})
  206. SET( LWO_SRCS
  207. LWOAnimation.cpp
  208. LWOAnimation.h
  209. LWOBLoader.cpp
  210. LWOFileData.h
  211. LWOLoader.cpp
  212. LWOLoader.h
  213. LWOMaterial.cpp
  214. )
  215. SOURCE_GROUP( LWO FILES ${LWO_SRCS})
  216. SET( LWS_SRCS
  217. LWSLoader.cpp
  218. LWSLoader.h
  219. )
  220. SOURCE_GROUP( LWS FILES ${LWS_SRCS})
  221. SET ( M3_SRCS
  222. M3Importer.cpp
  223. M3Importer.h
  224. )
  225. SOURCE_GROUP( M3 FILES ${M3_SRCS} )
  226. SET( MD2_SRCS
  227. MD2FileData.h
  228. MD2Loader.cpp
  229. MD2Loader.h
  230. MD2NormalTable.h
  231. )
  232. SOURCE_GROUP( MD2 FILES ${MD2_SRCS})
  233. SET( MD3_SRCS
  234. MD3FileData.h
  235. MD3Loader.cpp
  236. MD3Loader.h
  237. )
  238. SOURCE_GROUP( MD3 FILES ${MD3_SRCS})
  239. SET( MD5_SRCS
  240. MD5Loader.cpp
  241. MD5Loader.h
  242. MD5Parser.cpp
  243. MD5Parser.h
  244. )
  245. SOURCE_GROUP( MD5 FILES ${MD5_SRCS})
  246. SET( MDC_SRCS
  247. MDCFileData.h
  248. MDCLoader.cpp
  249. MDCLoader.h
  250. MDCNormalTable.h
  251. )
  252. SOURCE_GROUP( MDC FILES ${MDC_SRCS})
  253. SET( MDL_SRCS
  254. MDLDefaultColorMap.h
  255. MDLFileData.h
  256. MDLLoader.cpp
  257. MDLLoader.h
  258. MDLMaterialLoader.cpp
  259. )
  260. SOURCE_GROUP( MDL FILES ${MDL_SRCS})
  261. SET( MaterialSystem_SRCS
  262. MaterialSystem.cpp
  263. MaterialSystem.h
  264. )
  265. SOURCE_GROUP( MaterialSystem FILES ${MaterialSystem_SRCS})
  266. SET( NFF_SRCS
  267. NFFLoader.cpp
  268. NFFLoader.h
  269. )
  270. SOURCE_GROUP( NFF FILES ${NFF_SRCS})
  271. SET( NDO_SRCS
  272. NDOLoader.cpp
  273. NDOLoader.h
  274. )
  275. SOURCE_GROUP( NDO FILES ${NDO_SRCS})
  276. SET( OFFFormat_SRCS
  277. OFFLoader.cpp
  278. OFFLoader.h
  279. )
  280. SOURCE_GROUP( OFFFormat FILES ${OFFFormat_SRCS})
  281. SET( Obj_SRCS
  282. ObjFileData.h
  283. ObjFileImporter.cpp
  284. ObjFileImporter.h
  285. ObjFileMtlImporter.cpp
  286. ObjFileMtlImporter.h
  287. ObjFileParser.cpp
  288. ObjFileParser.h
  289. ObjTools.h
  290. ObjExporter.h
  291. ObjExporter.cpp
  292. )
  293. SOURCE_GROUP( Obj FILES ${Obj_SRCS})
  294. SET( Ogre_SRCS
  295. OgreImporter.hpp
  296. OgreXmlHelper.hpp
  297. OgreImporter.cpp
  298. OgreMaterial.cpp
  299. OgreMesh.cpp
  300. OgreSkeleton.cpp
  301. )
  302. SOURCE_GROUP( Ogre FILES ${Ogre_SRCS})
  303. SET( Ply_SRCS
  304. PlyLoader.cpp
  305. PlyLoader.h
  306. PlyParser.cpp
  307. PlyParser.h
  308. PlyExporter.cpp
  309. PlyExporter.h
  310. )
  311. SOURCE_GROUP( Ply FILES ${Ply_SRCS})
  312. SET(MS3D_SRCS
  313. MS3DLoader.cpp
  314. MS3DLoader.h
  315. )
  316. SOURCE_GROUP( MS3D FILES ${MS3D_SRCS})
  317. SET(COB_SRCS
  318. COBLoader.cpp
  319. COBLoader.h
  320. COBScene.h
  321. )
  322. SOURCE_GROUP( COB FILES ${COB_SRCS})
  323. SET(BLENDER_SRCS
  324. BlenderLoader.cpp
  325. BlenderLoader.h
  326. BlenderDNA.cpp
  327. BlenderDNA.h
  328. BlenderDNA.inl
  329. BlenderScene.cpp
  330. BlenderScene.h
  331. BlenderSceneGen.h
  332. BlenderIntermediate.h
  333. BlenderModifier.h
  334. BlenderModifier.cpp
  335. )
  336. SOURCE_GROUP( BLENDER FILES ${BLENDER_SRCS})
  337. SET(IFC_SRCS
  338. IFCLoader.cpp
  339. IFCLoader.h
  340. IFCReaderGen.cpp
  341. IFCReaderGen.h
  342. IFCUtil.h
  343. IFCUtil.cpp
  344. IFCGeometry.cpp
  345. IFCMaterial.cpp
  346. IFCProfile.cpp
  347. IFCCurve.cpp
  348. STEPFile.h
  349. STEPFileReader.h
  350. STEPFileReader.cpp
  351. )
  352. SOURCE_GROUP( IFC FILES ${IFC_SRCS})
  353. SET( XGL_SRCS
  354. XGLLoader.cpp
  355. XGLLoader.h
  356. )
  357. SOURCE_GROUP( XGL FILES ${XGL_SRCS})
  358. SET( PostProcessing_SRCS
  359. CalcTangentsProcess.cpp
  360. CalcTangentsProcess.h
  361. ComputeUVMappingProcess.cpp
  362. ComputeUVMappingProcess.h
  363. ConvertToLHProcess.cpp
  364. ConvertToLHProcess.h
  365. FindDegenerates.cpp
  366. FindDegenerates.h
  367. FindInstancesProcess.cpp
  368. FindInstancesProcess.h
  369. FindInvalidDataProcess.cpp
  370. FindInvalidDataProcess.h
  371. FixNormalsStep.cpp
  372. FixNormalsStep.h
  373. GenFaceNormalsProcess.cpp
  374. GenFaceNormalsProcess.h
  375. GenVertexNormalsProcess.cpp
  376. GenVertexNormalsProcess.h
  377. PretransformVertices.cpp
  378. PretransformVertices.h
  379. ImproveCacheLocality.cpp
  380. ImproveCacheLocality.h
  381. JoinVerticesProcess.cpp
  382. JoinVerticesProcess.h
  383. LimitBoneWeightsProcess.cpp
  384. LimitBoneWeightsProcess.h
  385. RemoveRedundantMaterials.cpp
  386. RemoveRedundantMaterials.h
  387. RemoveVCProcess.cpp
  388. RemoveVCProcess.h
  389. SortByPTypeProcess.cpp
  390. SortByPTypeProcess.h
  391. SplitLargeMeshes.cpp
  392. SplitLargeMeshes.h
  393. TerragenLoader.cpp
  394. TerragenLoader.h
  395. TextureTransform.cpp
  396. TextureTransform.h
  397. TriangulateProcess.cpp
  398. TriangulateProcess.h
  399. ValidateDataStructure.cpp
  400. ValidateDataStructure.h
  401. OptimizeGraph.cpp
  402. OptimizeGraph.h
  403. OptimizeMeshes.cpp
  404. OptimizeMeshes.h
  405. DeboneProcess.cpp
  406. DeboneProcess.h
  407. ProcessHelper.h
  408. ProcessHelper.cpp
  409. PolyTools.h
  410. MakeVerboseFormat.cpp
  411. MakeVerboseFormat.h
  412. )
  413. SOURCE_GROUP( PostProcessing FILES ${PostProcessing_SRCS})
  414. SET( Q3D_SRCS
  415. Q3DLoader.cpp
  416. Q3DLoader.h
  417. )
  418. SOURCE_GROUP( Q3D FILES ${Q3D_SRCS})
  419. SET( Q3BSP_SRCS
  420. Q3BSPFileData.h
  421. Q3BSPFileParser.h
  422. Q3BSPFileParser.cpp
  423. Q3BSPFileImporter.h
  424. Q3BSPFileImporter.cpp
  425. Q3BSPZipArchive.h
  426. Q3BSPZipArchive.cpp
  427. )
  428. SOURCE_GROUP( Q3BSP FILES ${Q3BSP_SRCS})
  429. SET( Raw_SRCS
  430. RawLoader.cpp
  431. RawLoader.h
  432. )
  433. SOURCE_GROUP( Raw FILES ${Raw_SRCS})
  434. SET( SMD_SRCS
  435. SMDLoader.cpp
  436. SMDLoader.h
  437. )
  438. SOURCE_GROUP( SMD FILES ${SMD_SRCS})
  439. SET( STL_SRCS
  440. STLLoader.cpp
  441. STLLoader.h
  442. STLExporter.h
  443. STLExporter.cpp
  444. )
  445. SOURCE_GROUP( STL FILES ${STL_SRCS})
  446. SET( Unreal_SRCS
  447. UnrealLoader.cpp
  448. UnrealLoader.h
  449. )
  450. SOURCE_GROUP( Unreal FILES ${Unreal_SRCS})
  451. SET( XFile_SRCS
  452. XFileHelper.h
  453. XFileImporter.cpp
  454. XFileImporter.h
  455. XFileParser.cpp
  456. XFileParser.h
  457. )
  458. SOURCE_GROUP( XFile FILES ${XFile_SRCS})
  459. SET( Exporter_SRCS
  460. Exporter.cpp
  461. AssimpCExport.cpp
  462. BlobIOSystem.h
  463. )
  464. SOURCE_GROUP( Exporter FILES ${Exporter_SRCS})
  465. SET( Extra_SRCS
  466. MD4FileData.h
  467. )
  468. SOURCE_GROUP( Extra FILES ${Extra_SRCS})
  469. SET( IrrXML_SRCS
  470. irrXMLWrapper.h
  471. ../contrib/irrXML/CXMLReaderImpl.h
  472. ../contrib/irrXML/heapsort.h
  473. ../contrib/irrXML/irrArray.h
  474. ../contrib/irrXML/irrString.h
  475. ../contrib/irrXML/irrTypes.h
  476. ../contrib/irrXML/irrXML.cpp
  477. ../contrib/irrXML/irrXML.h
  478. )
  479. SOURCE_GROUP( IrrXML FILES ${IrrXML_SRCS})
  480. SET( ConvertUTF_SRCS
  481. ../contrib/ConvertUTF/ConvertUTF.h
  482. ../contrib/ConvertUTF/ConvertUTF.c
  483. )
  484. SOURCE_GROUP( ConvertUTF FILES ${ConvertUTF_SRCS})
  485. SET( Clipper_SRCS
  486. ../contrib/clipper/clipper.hpp
  487. ../contrib/clipper/clipper.cpp
  488. )
  489. SOURCE_GROUP( Clipper FILES ${Clipper_SRCS})
  490. SET( Poly2Tri_SRCS
  491. ../contrib/poly2tri/poly2tri/common/shapes.cc
  492. ../contrib/poly2tri/poly2tri/common/shapes.h
  493. ../contrib/poly2tri/poly2tri/common/utils.h
  494. ../contrib/poly2tri/poly2tri/sweep/advancing_front.h
  495. ../contrib/poly2tri/poly2tri/sweep/advancing_front.cc
  496. ../contrib/poly2tri/poly2tri/sweep/cdt.cc
  497. ../contrib/poly2tri/poly2tri/sweep/cdt.h
  498. ../contrib/poly2tri/poly2tri/sweep/sweep.cc
  499. ../contrib/poly2tri/poly2tri/sweep/sweep.h
  500. ../contrib/poly2tri/poly2tri/sweep/sweep_context.cc
  501. ../contrib/poly2tri/poly2tri/sweep/sweep_context.h
  502. )
  503. SOURCE_GROUP( Poly2Tri FILES ${Poly2Tri_SRCS})
  504. SET( unzip_SRCS
  505. ../contrib/unzip/crypt.h
  506. ../contrib/unzip/ioapi.c
  507. ../contrib/unzip/ioapi.h
  508. ../contrib/unzip/unzip.c
  509. ../contrib/unzip/unzip.h
  510. )
  511. SOURCE_GROUP( unzip FILES ${unzip_SRCS})
  512. # VC2010 fixes
  513. OPTION( VC10_STDINT_FIX "Fix for VC10 Compiler regarding pstdint.h redefinition errors" OFF )
  514. if( VC10_STDINT_FIX )
  515. ADD_DEFINITIONS( -D_STDINT )
  516. endif( VC10_STDINT_FIX )
  517. ADD_DEFINITIONS( -DASSIMP_BUILD_DLL_EXPORT )
  518. if ( MSVC80 OR MSVC90 OR MSVC10 )
  519. ADD_DEFINITIONS( -D_SCL_SECURE_NO_WARNINGS )
  520. ADD_DEFINITIONS( -D_CRT_SECURE_NO_WARNINGS )
  521. endif ( MSVC80 OR MSVC90 OR MSVC10 )
  522. if (UNZIP_FOUND)
  523. SET (unzip_compile_SRCS "")
  524. else (UNZIP_FOUND)
  525. SET (unzip_compile_SRCS ${unzip_SRCS})
  526. endif (UNZIP_FOUND)
  527. SET( assim_src
  528. # Assimp Files
  529. ${Core_SRCS}
  530. ${Common_SRCS}
  531. ${Logging_SRCS}
  532. ${Exporter_SRCS}
  533. ${PostProcessing_SRCS}
  534. # Model Support
  535. ${3DS_SRCS}
  536. ${AC_SRCS}
  537. ${ASE_SRCS}
  538. ${B3D_SRCS}
  539. ${BVH_SRCS}
  540. ${Collada_SRCS}
  541. ${DXF_SRCS}
  542. ${CSM_SRCS}
  543. ${HMP_SRCS}
  544. ${Irr_SRCS}
  545. ${LWO_SRCS}
  546. ${LWS_SRCS}
  547. ${M3_SRCS}
  548. ${MD2_SRCS}
  549. ${MD3_SRCS}
  550. ${MD5_SRCS}
  551. ${MDC_SRCS}
  552. ${MDL_SRCS}
  553. ${MaterialSystem_SRCS}
  554. ${NFF_SRCS}
  555. ${OFFFormat_SRCS}
  556. ${Obj_SRCS}
  557. ${Ogre_SRCS}
  558. ${Ply_SRCS}
  559. ${Q3D_SRCS}
  560. ${Q3BSP_SRCS}
  561. ${Raw_SRCS}
  562. ${SMD_SRCS}
  563. ${STL_SRCS}
  564. ${Unreal_SRCS}
  565. ${XFile_SRCS}
  566. ${Extra_SRCS}
  567. ${MS3D_SRCS}
  568. ${COB_SRCS}
  569. ${BLENDER_SRCS}
  570. ${NDO_SRCS}
  571. ${IFC_SRCS}
  572. ${XGL_SRCS}
  573. # Third-party libraries
  574. ${IrrXML_SRCS}
  575. ${ConvertUTF_SRCS}
  576. ${unzip_compile_SRCS}
  577. ${Poly2Tri_SRCS}
  578. ${Clipper_SRCS}
  579. # Necessary to show the headers in the project when using the VC++ generator:
  580. ${Boost_SRCS}
  581. ${PUBLIC_HEADERS}
  582. ${COMPILER_HEADERS}
  583. )
  584. IF ( BUILD_STATIC_LIB )
  585. ADD_LIBRARY( assimp STATIC
  586. ${assim_src}
  587. )
  588. ELSE ( BUILD_STATIC_LIB )
  589. ADD_LIBRARY( assimp SHARED
  590. ${assim_src}
  591. )
  592. ENDIF ( BUILD_STATIC_LIB )
  593. SET_PROPERTY(TARGET assimp PROPERTY DEBUG_POSTFIX ${DEBUG_POSTFIX})
  594. TARGET_LINK_LIBRARIES(assimp ${ZLIB_LIBRARIES})
  595. SET_TARGET_PROPERTIES( assimp PROPERTIES
  596. VERSION ${ASSIMP_VERSION}
  597. SOVERSION ${ASSIMP_SOVERSION} # use full version
  598. )
  599. # Build against external unzip, or add ../contrib/unzip so
  600. # assimp can #include "unzip.h"
  601. if (UNZIP_FOUND)
  602. INCLUDE_DIRECTORIES(${UNZIP_INCLUDE_DIRS})
  603. TARGET_LINK_LIBRARIES(assimp ${UNZIP_LIBRARIES})
  604. else (UNZIP_FOUND)
  605. INCLUDE_DIRECTORIES("../contrib/unzip")
  606. endif (UNZIP_FOUND)
  607. INSTALL( TARGETS assimp DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${LIBASSIMP_COMPONENT})
  608. INSTALL( FILES ${PUBLIC_HEADERS} DESTINATION ${INCLUDE_INSTALL_DIR}/assimp COMPONENT assimp-dev)
  609. INSTALL( FILES ${COMPILER_HEADERS} DESTINATION ${INCLUDE_INSTALL_DIR}/assimp/Compiler COMPONENT assimp-dev)