2016-09-29 20:16:59 +00:00
|
|
|
# Open Asset Import Library (assimp)
|
2016-04-23 07:42:05 +00:00
|
|
|
# ----------------------------------------------------------------------
|
2022-01-10 20:13:43 +00:00
|
|
|
# Copyright (c) 2006-2022, assimp team
|
2019-06-10 21:26:00 +00:00
|
|
|
#
|
2016-04-23 07:42:05 +00:00
|
|
|
# All rights reserved.
|
|
|
|
#
|
|
|
|
# Redistribution and use of this software in source and binary forms,
|
|
|
|
# with or without modification, are permitted provided that the
|
|
|
|
# following conditions are met:
|
|
|
|
#
|
|
|
|
# * Redistributions of source code must retain the above
|
|
|
|
# copyright notice, this list of conditions and the
|
|
|
|
# following disclaimer.
|
|
|
|
#
|
|
|
|
# * Redistributions in binary form must reproduce the above
|
|
|
|
# copyright notice, this list of conditions and the
|
|
|
|
# following disclaimer in the documentation and/or other
|
|
|
|
# materials provided with the distribution.
|
|
|
|
#
|
|
|
|
# * Neither the name of the assimp team, nor the names of its
|
|
|
|
# contributors may be used to endorse or promote products
|
|
|
|
# derived from this software without specific prior
|
|
|
|
# written permission of the assimp team.
|
|
|
|
#
|
|
|
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
|
|
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
|
|
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
|
|
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
|
|
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
|
|
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
|
|
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
|
|
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
|
|
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
|
|
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
|
|
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
#
|
|
|
|
#----------------------------------------------------------------------
|
|
|
|
|
2015-05-19 03:44:54 +00:00
|
|
|
# Listing and grouping of all the source files.
|
|
|
|
# 1) Set the file lists for each component
|
|
|
|
# 2) Create a Source Group for each component, for IDE project orginization
|
|
|
|
# 3) Add libassimp using the file lists (eliminates duplication of file names between
|
|
|
|
# source groups and library command)
|
|
|
|
#
|
2021-01-29 20:05:46 +00:00
|
|
|
cmake_minimum_required( VERSION 3.10 )
|
2015-05-19 03:44:54 +00:00
|
|
|
SET( HEADER_PATH ../include/assimp )
|
|
|
|
|
2019-02-18 13:14:27 +00:00
|
|
|
if(NOT ANDROID AND ASSIMP_ANDROID_JNIIOSYSTEM)
|
2019-02-18 13:10:32 +00:00
|
|
|
message(WARNING "Requesting Android JNI I/O-System in non-Android toolchain. Resetting ASSIMP_ANDROID_JNIIOSYSTEM to OFF.")
|
|
|
|
set(ASSIMP_ANDROID_JNIIOSYSTEM OFF)
|
2020-02-23 12:09:35 +00:00
|
|
|
endif()
|
2019-02-18 13:10:32 +00:00
|
|
|
|
2015-05-19 03:44:54 +00:00
|
|
|
SET( COMPILER_HEADERS
|
|
|
|
${HEADER_PATH}/Compiler/pushpack1.h
|
|
|
|
${HEADER_PATH}/Compiler/poppack1.h
|
|
|
|
${HEADER_PATH}/Compiler/pstdint.h
|
|
|
|
)
|
|
|
|
SOURCE_GROUP( Compiler FILES ${COMPILER_HEADERS})
|
|
|
|
|
|
|
|
SET( PUBLIC_HEADERS
|
|
|
|
${HEADER_PATH}/anim.h
|
2019-06-23 18:24:32 +00:00
|
|
|
${HEADER_PATH}/aabb.h
|
2015-05-19 03:44:54 +00:00
|
|
|
${HEADER_PATH}/ai_assert.h
|
|
|
|
${HEADER_PATH}/camera.h
|
|
|
|
${HEADER_PATH}/color4.h
|
|
|
|
${HEADER_PATH}/color4.inl
|
2017-05-13 18:09:21 +00:00
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/../include/assimp/config.h
|
2020-04-29 16:17:46 +00:00
|
|
|
${HEADER_PATH}/ColladaMetaData.h
|
2019-12-09 14:05:41 +00:00
|
|
|
${HEADER_PATH}/commonMetaData.h
|
2015-05-19 03:44:54 +00:00
|
|
|
${HEADER_PATH}/defs.h
|
|
|
|
${HEADER_PATH}/cfileio.h
|
|
|
|
${HEADER_PATH}/light.h
|
|
|
|
${HEADER_PATH}/material.h
|
|
|
|
${HEADER_PATH}/material.inl
|
|
|
|
${HEADER_PATH}/matrix3x3.h
|
|
|
|
${HEADER_PATH}/matrix3x3.inl
|
|
|
|
${HEADER_PATH}/matrix4x4.h
|
|
|
|
${HEADER_PATH}/matrix4x4.inl
|
|
|
|
${HEADER_PATH}/mesh.h
|
2022-03-09 03:00:22 +00:00
|
|
|
${HEADER_PATH}/ObjMaterial.h
|
2018-02-24 16:57:42 +00:00
|
|
|
${HEADER_PATH}/pbrmaterial.h
|
Infrastructure for reporting progress
This commit adds two classes:
* ProgressTracker
* ProgressScope
The first is for users to implement, and to instantiate when they desire
to get informed about the overall progress.
The second is to be added to all functions that may take a considerable
amount of time, such that they can report back how far along they are.
These are much more convenient to use than the existing ProgressHandler.
ProgressScope is designed such that it only requires "local knowledge"
about upcoming and finished work. Scopes are nested and combined to
form the final global progress.
The active ProgressTracker is stored in a thread_local pointer.
This is a consicius decision since in assimp there is often no 'context'
passed through. The ProgressTracker may be needed anywhere, and it would
be tedious and a huge change to pass it through to every function.
Therefore, using a thread_local variable makes it accessible everywhere,
without a major interface change. Since assimmp is single-threaded,
but may be run in parallel on multiple threads, a thread_local is a
good trade-off, in my opinion.
This change only adds few uses of ProgressScope, to generally show how
it would be used. Also for our use cases these where the most pressing
places to add progress reporting, so this already covers loading from FBX
files pretty well.
2023-07-31 16:49:28 +00:00
|
|
|
${HEADER_PATH}/ProgressTracker.h
|
2021-11-16 11:42:59 +00:00
|
|
|
${HEADER_PATH}/GltfMaterial.h
|
2015-05-19 03:44:54 +00:00
|
|
|
${HEADER_PATH}/postprocess.h
|
|
|
|
${HEADER_PATH}/quaternion.h
|
|
|
|
${HEADER_PATH}/quaternion.inl
|
|
|
|
${HEADER_PATH}/scene.h
|
|
|
|
${HEADER_PATH}/metadata.h
|
|
|
|
${HEADER_PATH}/texture.h
|
|
|
|
${HEADER_PATH}/types.h
|
|
|
|
${HEADER_PATH}/vector2.h
|
|
|
|
${HEADER_PATH}/vector2.inl
|
|
|
|
${HEADER_PATH}/vector3.h
|
|
|
|
${HEADER_PATH}/vector3.inl
|
|
|
|
${HEADER_PATH}/version.h
|
|
|
|
${HEADER_PATH}/cimport.h
|
2022-12-23 15:19:39 +00:00
|
|
|
${HEADER_PATH}/AssertHandler.h
|
2015-05-19 03:44:54 +00:00
|
|
|
${HEADER_PATH}/importerdesc.h
|
|
|
|
${HEADER_PATH}/Importer.hpp
|
|
|
|
${HEADER_PATH}/DefaultLogger.hpp
|
|
|
|
${HEADER_PATH}/ProgressHandler.hpp
|
|
|
|
${HEADER_PATH}/IOStream.hpp
|
|
|
|
${HEADER_PATH}/IOSystem.hpp
|
|
|
|
${HEADER_PATH}/Logger.hpp
|
|
|
|
${HEADER_PATH}/LogStream.hpp
|
|
|
|
${HEADER_PATH}/NullLogger.hpp
|
|
|
|
${HEADER_PATH}/cexport.h
|
|
|
|
${HEADER_PATH}/Exporter.hpp
|
2017-02-28 02:31:56 +00:00
|
|
|
${HEADER_PATH}/DefaultIOStream.h
|
|
|
|
${HEADER_PATH}/DefaultIOSystem.h
|
2019-07-12 10:35:43 +00:00
|
|
|
${HEADER_PATH}/ZipArchiveIOSystem.h
|
2017-06-21 12:21:16 +00:00
|
|
|
${HEADER_PATH}/SceneCombiner.h
|
2018-01-06 00:18:33 +00:00
|
|
|
${HEADER_PATH}/fast_atof.h
|
|
|
|
${HEADER_PATH}/qnan.h
|
|
|
|
${HEADER_PATH}/BaseImporter.h
|
|
|
|
${HEADER_PATH}/Hash.h
|
|
|
|
${HEADER_PATH}/MemoryIOWrapper.h
|
|
|
|
${HEADER_PATH}/ParsingUtils.h
|
|
|
|
${HEADER_PATH}/StreamReader.h
|
|
|
|
${HEADER_PATH}/StreamWriter.h
|
|
|
|
${HEADER_PATH}/StringComparison.h
|
|
|
|
${HEADER_PATH}/StringUtils.h
|
|
|
|
${HEADER_PATH}/SGSpatialSort.h
|
|
|
|
${HEADER_PATH}/GenericProperty.h
|
|
|
|
${HEADER_PATH}/SpatialSort.h
|
|
|
|
${HEADER_PATH}/SkeletonMeshBuilder.h
|
2020-03-22 10:47:42 +00:00
|
|
|
${HEADER_PATH}/SmallVector.h
|
2018-01-06 00:18:33 +00:00
|
|
|
${HEADER_PATH}/SmoothingGroups.h
|
|
|
|
${HEADER_PATH}/SmoothingGroups.inl
|
|
|
|
${HEADER_PATH}/StandardShapes.h
|
|
|
|
${HEADER_PATH}/RemoveComments.h
|
|
|
|
${HEADER_PATH}/Subdivision.h
|
|
|
|
${HEADER_PATH}/Vertex.h
|
|
|
|
${HEADER_PATH}/LineSplitter.h
|
|
|
|
${HEADER_PATH}/TinyFormatter.h
|
|
|
|
${HEADER_PATH}/Profiler.h
|
|
|
|
${HEADER_PATH}/LogAux.h
|
|
|
|
${HEADER_PATH}/Bitmap.h
|
|
|
|
${HEADER_PATH}/XMLTools.h
|
|
|
|
${HEADER_PATH}/IOStreamBuffer.h
|
|
|
|
${HEADER_PATH}/CreateAnimMesh.h
|
2020-01-23 20:16:10 +00:00
|
|
|
${HEADER_PATH}/XmlParser.h
|
2018-01-06 00:18:33 +00:00
|
|
|
${HEADER_PATH}/BlobIOSystem.h
|
|
|
|
${HEADER_PATH}/MathFunctions.h
|
|
|
|
${HEADER_PATH}/Exceptional.h
|
|
|
|
${HEADER_PATH}/ByteSwapper.h
|
2022-01-02 18:47:43 +00:00
|
|
|
${HEADER_PATH}/Base64.hpp
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
SET( Core_SRCS
|
2019-06-09 16:43:56 +00:00
|
|
|
Common/Assimp.cpp
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2022-04-30 15:01:15 +00:00
|
|
|
IF(MSVC OR (MINGW AND BUILD_SHARED_LIBS))
|
2019-03-08 15:49:18 +00:00
|
|
|
list(APPEND Core_SRCS "res/assimp.rc")
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF()
|
2019-03-08 15:49:18 +00:00
|
|
|
|
2015-05-19 03:44:54 +00:00
|
|
|
SET( Logging_SRCS
|
|
|
|
${HEADER_PATH}/DefaultLogger.hpp
|
|
|
|
${HEADER_PATH}/LogStream.hpp
|
|
|
|
${HEADER_PATH}/Logger.hpp
|
|
|
|
${HEADER_PATH}/NullLogger.hpp
|
2019-06-09 16:43:56 +00:00
|
|
|
Common/Win32DebugLogStream.h
|
|
|
|
Common/DefaultLogger.cpp
|
|
|
|
Common/FileLogStream.h
|
|
|
|
Common/StdOStreamLogStream.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
SOURCE_GROUP(Logging FILES ${Logging_SRCS})
|
|
|
|
|
|
|
|
SET( Common_SRCS
|
2022-04-05 17:53:41 +00:00
|
|
|
Common/StbCommon.h
|
2022-02-06 19:42:58 +00:00
|
|
|
Common/Compression.cpp
|
|
|
|
Common/Compression.h
|
2019-06-09 16:43:56 +00:00
|
|
|
Common/BaseImporter.cpp
|
|
|
|
Common/BaseProcess.cpp
|
|
|
|
Common/BaseProcess.h
|
|
|
|
Common/Importer.h
|
|
|
|
Common/ScenePrivate.h
|
|
|
|
Common/PostStepRegistry.cpp
|
|
|
|
Common/ImporterRegistry.cpp
|
|
|
|
Common/DefaultProgressHandler.h
|
|
|
|
Common/DefaultIOStream.cpp
|
2021-11-23 19:39:48 +00:00
|
|
|
Common/IOSystem.cpp
|
2019-06-09 16:43:56 +00:00
|
|
|
Common/DefaultIOSystem.cpp
|
2019-07-12 10:35:43 +00:00
|
|
|
Common/ZipArchiveIOSystem.cpp
|
2019-06-09 16:43:56 +00:00
|
|
|
Common/PolyTools.h
|
2022-03-11 21:29:59 +00:00
|
|
|
Common/Maybe.h
|
2019-06-09 16:43:56 +00:00
|
|
|
Common/Importer.cpp
|
|
|
|
Common/IFF.h
|
|
|
|
Common/SGSpatialSort.cpp
|
|
|
|
Common/VertexTriangleAdjacency.cpp
|
|
|
|
Common/VertexTriangleAdjacency.h
|
|
|
|
Common/SpatialSort.cpp
|
|
|
|
Common/SceneCombiner.cpp
|
|
|
|
Common/ScenePreprocessor.cpp
|
|
|
|
Common/ScenePreprocessor.h
|
|
|
|
Common/SkeletonMeshBuilder.cpp
|
2022-04-20 10:33:39 +00:00
|
|
|
Common/StackAllocator.h
|
2022-04-21 09:33:04 +00:00
|
|
|
Common/StackAllocator.inl
|
2019-06-09 16:43:56 +00:00
|
|
|
Common/StandardShapes.cpp
|
|
|
|
Common/TargetAnimation.cpp
|
|
|
|
Common/TargetAnimation.h
|
|
|
|
Common/RemoveComments.cpp
|
|
|
|
Common/Subdivision.cpp
|
|
|
|
Common/scene.cpp
|
|
|
|
Common/Bitmap.cpp
|
|
|
|
Common/Version.cpp
|
|
|
|
Common/CreateAnimMesh.cpp
|
|
|
|
Common/simd.h
|
|
|
|
Common/simd.cpp
|
2020-02-06 18:19:01 +00:00
|
|
|
Common/material.cpp
|
2020-06-23 10:55:51 +00:00
|
|
|
Common/AssertHandler.cpp
|
2020-08-18 15:32:34 +00:00
|
|
|
Common/Exceptional.cpp
|
2022-01-02 18:47:43 +00:00
|
|
|
Common/Base64.cpp
|
Infrastructure for reporting progress
This commit adds two classes:
* ProgressTracker
* ProgressScope
The first is for users to implement, and to instantiate when they desire
to get informed about the overall progress.
The second is to be added to all functions that may take a considerable
amount of time, such that they can report back how far along they are.
These are much more convenient to use than the existing ProgressHandler.
ProgressScope is designed such that it only requires "local knowledge"
about upcoming and finished work. Scopes are nested and combined to
form the final global progress.
The active ProgressTracker is stored in a thread_local pointer.
This is a consicius decision since in assimp there is often no 'context'
passed through. The ProgressTracker may be needed anywhere, and it would
be tedious and a huge change to pass it through to every function.
Therefore, using a thread_local variable makes it accessible everywhere,
without a major interface change. Since assimmp is single-threaded,
but may be run in parallel on multiple threads, a thread_local is a
good trade-off, in my opinion.
This change only adds few uses of ProgressScope, to generally show how
it would be used. Also for our use cases these where the most pressing
places to add progress reporting, so this already covers loading from FBX
files pretty well.
2023-07-31 16:49:28 +00:00
|
|
|
Common/ProgressTracker.cpp
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
SOURCE_GROUP(Common FILES ${Common_SRCS})
|
|
|
|
|
2019-06-09 16:43:56 +00:00
|
|
|
SET( CApi_SRCS
|
|
|
|
CApi/CInterfaceIOWrapper.cpp
|
|
|
|
CApi/CInterfaceIOWrapper.h
|
|
|
|
)
|
|
|
|
SOURCE_GROUP(CApi FILES ${CApi_SRCS})
|
|
|
|
|
2023-03-14 19:03:14 +00:00
|
|
|
SET(Geometry_SRCS
|
|
|
|
Geometry/GeometryUtils.h
|
|
|
|
Geometry/GeometryUtils.cpp
|
|
|
|
)
|
|
|
|
SOURCE_GROUP(Geometry FILES ${Geometry_SRCS})
|
|
|
|
|
2018-11-25 11:00:51 +00:00
|
|
|
SET( STEPParser_SRCS
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/STEPParser/STEPFileReader.h
|
|
|
|
AssetLib/STEPParser/STEPFileReader.cpp
|
|
|
|
AssetLib/STEPParser/STEPFileEncoding.cpp
|
|
|
|
AssetLib/STEPParser/STEPFileEncoding.h
|
2018-11-25 11:00:51 +00:00
|
|
|
)
|
|
|
|
SOURCE_GROUP(STEPParser FILES ${STEPParser_SRCS})
|
|
|
|
|
2015-05-19 03:44:54 +00:00
|
|
|
IF ( ASSIMP_BUILD_NONFREE_C4D_IMPORTER )
|
|
|
|
SET( C4D_SRCS
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/C4D/C4DImporter.cpp
|
|
|
|
AssetLib/C4D/C4DImporter.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
SOURCE_GROUP( C4D FILES ${C4D_SRCS})
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF ()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
2017-02-28 02:32:44 +00:00
|
|
|
# if this variable is set to TRUE, the user can manually disable importers by setting
|
|
|
|
# ASSIMP_BUILD_XXX_IMPORTER to FALSE for each importer
|
|
|
|
# if this variable is set to FALSE, the user can manually enable importers by setting
|
|
|
|
# ASSIMP_BUILD_XXX_IMPORTER to TRUE for each importer
|
2019-03-16 15:40:17 +00:00
|
|
|
OPTION(ASSIMP_BUILD_ALL_IMPORTERS_BY_DEFAULT "default value of all ASSIMP_BUILD_XXX_IMPORTER values" TRUE)
|
2017-02-28 02:32:44 +00:00
|
|
|
|
2015-05-19 03:44:54 +00:00
|
|
|
# macro to add the CMake Option ADD_ASSIMP_IMPORTER_<name> which enables compile of loader
|
|
|
|
# this way selective loaders can be compiled (reduces filesize + compile time)
|
|
|
|
MACRO(ADD_ASSIMP_IMPORTER name)
|
2018-05-05 20:57:59 +00:00
|
|
|
IF (ASSIMP_BUILD_ALL_IMPORTERS_BY_DEFAULT)
|
|
|
|
set(ASSIMP_IMPORTER_ENABLED TRUE)
|
|
|
|
IF (DEFINED ASSIMP_BUILD_${name}_IMPORTER AND NOT ASSIMP_BUILD_${name}_IMPORTER)
|
|
|
|
set(ASSIMP_IMPORTER_ENABLED FALSE)
|
|
|
|
ENDIF ()
|
|
|
|
ELSE ()
|
|
|
|
set(ASSIMP_IMPORTER_ENABLED ${ASSIMP_BUILD_${name}_IMPORTER})
|
|
|
|
ENDIF ()
|
|
|
|
IF (ASSIMP_IMPORTER_ENABLED)
|
2015-05-19 03:44:54 +00:00
|
|
|
LIST(APPEND ASSIMP_LOADER_SRCS ${ARGN})
|
|
|
|
SET(ASSIMP_IMPORTERS_ENABLED "${ASSIMP_IMPORTERS_ENABLED} ${name}")
|
2020-05-02 13:14:38 +00:00
|
|
|
SOURCE_GROUP(AssetLib\\${name} FILES ${ARGN})
|
2015-05-19 03:44:54 +00:00
|
|
|
ELSE()
|
|
|
|
SET(${name}_SRC "")
|
|
|
|
SET(ASSIMP_IMPORTERS_DISABLED "${ASSIMP_IMPORTERS_DISABLED} ${name}")
|
|
|
|
add_definitions(-DASSIMP_BUILD_NO_${name}_IMPORTER)
|
2019-03-16 15:40:17 +00:00
|
|
|
ENDIF()
|
|
|
|
ENDMACRO()
|
|
|
|
|
2020-02-21 18:17:38 +00:00
|
|
|
if (NOT ASSIMP_NO_EXPORT)
|
2019-03-16 15:40:17 +00:00
|
|
|
|
2020-02-21 18:17:38 +00:00
|
|
|
# if this variable is set to TRUE, the user can manually disable exporters by setting
|
|
|
|
# ASSIMP_BUILD_XXX_EXPORTER to FALSE for each exporter
|
|
|
|
# if this variable is set to FALSE, the user can manually enable exporters by setting
|
|
|
|
# ASSIMP_BUILD_XXX_EXPORTER to TRUE for each exporter
|
|
|
|
OPTION(ASSIMP_BUILD_ALL_EXPORTERS_BY_DEFAULT "default value of all ASSIMP_BUILD_XXX_EXPORTER values" TRUE)
|
|
|
|
|
2023-01-01 18:27:16 +00:00
|
|
|
# macro to add the CMake Option ADD_ASSIMP_EXPORTER_<name> which enables compilation of an exporter
|
|
|
|
# this way selective exporters can be compiled (reduces filesize + compile time)
|
2020-02-21 18:17:38 +00:00
|
|
|
MACRO(ADD_ASSIMP_EXPORTER name)
|
|
|
|
IF (ASSIMP_NO_EXPORT)
|
2019-03-16 15:40:17 +00:00
|
|
|
set(ASSIMP_EXPORTER_ENABLED FALSE)
|
2020-02-21 18:17:38 +00:00
|
|
|
ELSEIF (ASSIMP_BUILD_ALL_EXPORTERS_BY_DEFAULT)
|
|
|
|
set(ASSIMP_EXPORTER_ENABLED TRUE)
|
|
|
|
IF (DEFINED ASSIMP_BUILD_${name}_EXPORTER AND NOT ASSIMP_BUILD_${name}_EXPORTER)
|
|
|
|
set(ASSIMP_EXPORTER_ENABLED FALSE)
|
|
|
|
ENDIF ()
|
|
|
|
ELSE ()
|
|
|
|
set(ASSIMP_EXPORTER_ENABLED ${ASSIMP_BUILD_${name}_EXPORTER})
|
2019-03-16 15:40:17 +00:00
|
|
|
ENDIF ()
|
2019-05-24 20:13:55 +00:00
|
|
|
|
2020-02-21 18:17:38 +00:00
|
|
|
IF (ASSIMP_EXPORTER_ENABLED)
|
|
|
|
SET(ASSIMP_EXPORTERS_ENABLED "${ASSIMP_EXPORTERS_ENABLED} ${name}")
|
|
|
|
LIST(APPEND ASSIMP_EXPORTER_SRCS ${ARGN})
|
2020-05-02 13:14:38 +00:00
|
|
|
SOURCE_GROUP(AssetLib\\${name} FILES ${ARGN})
|
2020-02-21 18:17:38 +00:00
|
|
|
ELSE()
|
|
|
|
SET(ASSIMP_EXPORTERS_DISABLED "${ASSIMP_EXPORTERS_DISABLED} ${name}")
|
|
|
|
add_definitions(-DASSIMP_BUILD_NO_${name}_EXPORTER)
|
|
|
|
ENDIF()
|
|
|
|
ENDMACRO()
|
|
|
|
|
|
|
|
endif()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
|
|
|
SET(ASSIMP_LOADER_SRCS "")
|
|
|
|
SET(ASSIMP_IMPORTERS_ENABLED "") # list of enabled importers
|
2019-03-16 15:40:17 +00:00
|
|
|
SET(ASSIMP_IMPORTERS_DISABLED "") # disabled importers list (used to print)
|
|
|
|
|
|
|
|
SET(ASSIMP_EXPORTER_SRCS "")
|
|
|
|
SET(ASSIMP_EXPORTERS_ENABLED "") # list of enabled exporters
|
|
|
|
SET(ASSIMP_EXPORTERS_DISABLED "") # disabled exporters list (used to print)
|
2015-05-19 03:44:54 +00:00
|
|
|
|
2016-09-26 09:57:44 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( AMF
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/AMF/AMFImporter.hpp
|
|
|
|
AssetLib/AMF/AMFImporter_Node.hpp
|
|
|
|
AssetLib/AMF/AMFImporter.cpp
|
|
|
|
AssetLib/AMF/AMFImporter_Geometry.cpp
|
|
|
|
AssetLib/AMF/AMFImporter_Material.cpp
|
|
|
|
AssetLib/AMF/AMFImporter_Postprocess.cpp
|
2016-09-26 09:57:44 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( 3DS
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/3DS/3DSConverter.cpp
|
|
|
|
AssetLib/3DS/3DSHelper.h
|
|
|
|
AssetLib/3DS/3DSLoader.cpp
|
|
|
|
AssetLib/3DS/3DSLoader.h
|
2019-03-16 15:40:17 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( AC
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/AC/ACLoader.cpp
|
|
|
|
AssetLib/AC/ACLoader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( ASE
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/ASE/ASELoader.cpp
|
|
|
|
AssetLib/ASE/ASELoader.h
|
|
|
|
AssetLib/ASE/ASEParser.cpp
|
|
|
|
AssetLib/ASE/ASEParser.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( ASSBIN
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Assbin/AssbinLoader.h
|
|
|
|
AssetLib/Assbin/AssbinLoader.cpp
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( B3D
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/B3D/B3DImporter.cpp
|
|
|
|
AssetLib/B3D/B3DImporter.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( BVH
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/BVH/BVHLoader.cpp
|
|
|
|
AssetLib/BVH/BVHLoader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( COLLADA
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Collada/ColladaHelper.cpp
|
|
|
|
AssetLib/Collada/ColladaHelper.h
|
|
|
|
AssetLib/Collada/ColladaLoader.cpp
|
|
|
|
AssetLib/Collada/ColladaLoader.h
|
|
|
|
AssetLib/Collada/ColladaParser.cpp
|
|
|
|
AssetLib/Collada/ColladaParser.h
|
2019-03-16 15:40:17 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( DXF
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/DXF/DXFLoader.cpp
|
|
|
|
AssetLib/DXF/DXFLoader.h
|
|
|
|
AssetLib/DXF/DXFHelper.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( CSM
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/CSM/CSMLoader.cpp
|
|
|
|
AssetLib/CSM/CSMLoader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( HMP
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/HMP/HMPFileData.h
|
|
|
|
AssetLib/HMP/HMPLoader.cpp
|
|
|
|
AssetLib/HMP/HMPLoader.h
|
|
|
|
AssetLib/HMP/HalfLifeFileData.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( IRRMESH
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Irr/IRRMeshLoader.cpp
|
|
|
|
AssetLib/Irr/IRRMeshLoader.h
|
|
|
|
AssetLib/Irr/IRRShared.cpp
|
|
|
|
AssetLib/Irr/IRRShared.h
|
2016-05-09 22:26:18 +00:00
|
|
|
)
|
|
|
|
|
2021-12-18 12:34:58 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( IQM
|
|
|
|
AssetLib/IQM/IQMImporter.cpp
|
|
|
|
AssetLib/IQM/iqm.h
|
|
|
|
AssetLib/IQM/IQMImporter.h
|
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( IRR
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Irr/IRRLoader.cpp
|
|
|
|
AssetLib/Irr/IRRLoader.h
|
|
|
|
AssetLib/Irr/IRRShared.cpp
|
|
|
|
AssetLib/Irr/IRRShared.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( LWO
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/LWO/LWOAnimation.cpp
|
|
|
|
AssetLib/LWO/LWOAnimation.h
|
|
|
|
AssetLib/LWO/LWOBLoader.cpp
|
|
|
|
AssetLib/LWO/LWOFileData.h
|
|
|
|
AssetLib/LWO/LWOLoader.cpp
|
|
|
|
AssetLib/LWO/LWOLoader.h
|
|
|
|
AssetLib/LWO/LWOMaterial.cpp
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( LWS
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/LWS/LWSLoader.cpp
|
|
|
|
AssetLib/LWS/LWSLoader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2019-10-29 13:14:00 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( M3D
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/M3D/M3DMaterials.h
|
|
|
|
AssetLib/M3D/M3DImporter.h
|
|
|
|
AssetLib/M3D/M3DImporter.cpp
|
|
|
|
AssetLib/M3D/M3DWrapper.h
|
|
|
|
AssetLib/M3D/M3DWrapper.cpp
|
|
|
|
AssetLib/M3D/m3d.h
|
2019-10-29 13:14:00 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( MD2
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/MD2/MD2FileData.h
|
|
|
|
AssetLib/MD2/MD2Loader.cpp
|
|
|
|
AssetLib/MD2/MD2Loader.h
|
|
|
|
AssetLib/MD2/MD2NormalTable.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( MD3
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/MD3/MD3FileData.h
|
|
|
|
AssetLib/MD3/MD3Loader.cpp
|
|
|
|
AssetLib/MD3/MD3Loader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( MD5
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/MD5/MD5Loader.cpp
|
|
|
|
AssetLib/MD5/MD5Loader.h
|
|
|
|
AssetLib/MD5/MD5Parser.cpp
|
|
|
|
AssetLib/MD5/MD5Parser.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( MDC
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/MDC/MDCFileData.h
|
|
|
|
AssetLib/MDC/MDCLoader.cpp
|
|
|
|
AssetLib/MDC/MDCLoader.h
|
|
|
|
AssetLib/MDC/MDCNormalTable.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( MDL
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/MDL/MDLDefaultColorMap.h
|
|
|
|
AssetLib/MDL/MDLFileData.h
|
|
|
|
AssetLib/MDL/MDLLoader.cpp
|
|
|
|
AssetLib/MDL/MDLLoader.h
|
|
|
|
AssetLib/MDL/MDLMaterialLoader.cpp
|
|
|
|
AssetLib/MDL/HalfLife/HalfLifeMDLBaseHeader.h
|
|
|
|
AssetLib/MDL/HalfLife/HL1FileData.h
|
|
|
|
AssetLib/MDL/HalfLife/HL1MDLLoader.cpp
|
|
|
|
AssetLib/MDL/HalfLife/HL1MDLLoader.h
|
|
|
|
AssetLib/MDL/HalfLife/HL1ImportDefinitions.h
|
|
|
|
AssetLib/MDL/HalfLife/HL1ImportSettings.h
|
|
|
|
AssetLib/MDL/HalfLife/HL1MeshTrivert.h
|
|
|
|
AssetLib/MDL/HalfLife/LogFunctions.h
|
|
|
|
AssetLib/MDL/HalfLife/UniqueNameGenerator.cpp
|
|
|
|
AssetLib/MDL/HalfLife/UniqueNameGenerator.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
SET( MaterialSystem_SRCS
|
2019-06-09 16:43:56 +00:00
|
|
|
Material/MaterialSystem.cpp
|
|
|
|
Material/MaterialSystem.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
SOURCE_GROUP( MaterialSystem FILES ${MaterialSystem_SRCS})
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( NFF
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/NFF/NFFLoader.cpp
|
|
|
|
AssetLib/NFF/NFFLoader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( NDO
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/NDO/NDOLoader.cpp
|
|
|
|
AssetLib/NDO/NDOLoader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( OFF
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/OFF/OFFLoader.cpp
|
|
|
|
AssetLib/OFF/OFFLoader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( OBJ
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Obj/ObjFileData.h
|
|
|
|
AssetLib/Obj/ObjFileImporter.cpp
|
|
|
|
AssetLib/Obj/ObjFileImporter.h
|
|
|
|
AssetLib/Obj/ObjFileMtlImporter.cpp
|
|
|
|
AssetLib/Obj/ObjFileMtlImporter.h
|
|
|
|
AssetLib/Obj/ObjFileParser.cpp
|
|
|
|
AssetLib/Obj/ObjFileParser.h
|
|
|
|
AssetLib/Obj/ObjTools.h
|
2019-03-16 15:40:17 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( OGRE
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Ogre/OgreImporter.h
|
|
|
|
AssetLib/Ogre/OgreStructs.h
|
|
|
|
AssetLib/Ogre/OgreParsingUtils.h
|
|
|
|
AssetLib/Ogre/OgreBinarySerializer.h
|
|
|
|
AssetLib/Ogre/OgreXmlSerializer.h
|
|
|
|
AssetLib/Ogre/OgreImporter.cpp
|
|
|
|
AssetLib/Ogre/OgreStructs.cpp
|
|
|
|
AssetLib/Ogre/OgreBinarySerializer.cpp
|
|
|
|
AssetLib/Ogre/OgreXmlSerializer.cpp
|
|
|
|
AssetLib/Ogre/OgreMaterial.cpp
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( OPENGEX
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/OpenGEX/OpenGEXImporter.cpp
|
|
|
|
AssetLib/OpenGEX/OpenGEXImporter.h
|
|
|
|
AssetLib/OpenGEX/OpenGEXStructs.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( PLY
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Ply/PlyLoader.cpp
|
|
|
|
AssetLib/Ply/PlyLoader.h
|
|
|
|
AssetLib/Ply/PlyParser.cpp
|
|
|
|
AssetLib/Ply/PlyParser.h
|
2019-03-16 15:40:17 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( MS3D
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/MS3D/MS3DLoader.cpp
|
|
|
|
AssetLib/MS3D/MS3DLoader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( COB
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/COB/COBLoader.cpp
|
|
|
|
AssetLib/COB/COBLoader.h
|
|
|
|
AssetLib/COB/COBScene.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( BLEND
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Blender/BlenderLoader.cpp
|
|
|
|
AssetLib/Blender/BlenderLoader.h
|
|
|
|
AssetLib/Blender/BlenderDNA.cpp
|
|
|
|
AssetLib/Blender/BlenderDNA.h
|
|
|
|
AssetLib/Blender/BlenderDNA.inl
|
|
|
|
AssetLib/Blender/BlenderScene.cpp
|
|
|
|
AssetLib/Blender/BlenderScene.h
|
|
|
|
AssetLib/Blender/BlenderSceneGen.h
|
|
|
|
AssetLib/Blender/BlenderIntermediate.h
|
|
|
|
AssetLib/Blender/BlenderModifier.h
|
|
|
|
AssetLib/Blender/BlenderModifier.cpp
|
|
|
|
AssetLib/Blender/BlenderBMesh.h
|
|
|
|
AssetLib/Blender/BlenderBMesh.cpp
|
|
|
|
AssetLib/Blender/BlenderTessellator.h
|
|
|
|
AssetLib/Blender/BlenderTessellator.cpp
|
|
|
|
AssetLib/Blender/BlenderCustomData.h
|
|
|
|
AssetLib/Blender/BlenderCustomData.cpp
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( IFC
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/IFC/IFCLoader.cpp
|
|
|
|
AssetLib/IFC/IFCLoader.h
|
|
|
|
AssetLib/IFC/IFCReaderGen1_2x3.cpp
|
|
|
|
AssetLib/IFC/IFCReaderGen2_2x3.cpp
|
|
|
|
AssetLib/IFC/IFCReaderGen_2x3.h
|
|
|
|
AssetLib/IFC/IFCUtil.h
|
|
|
|
AssetLib/IFC/IFCUtil.cpp
|
|
|
|
AssetLib/IFC/IFCGeometry.cpp
|
|
|
|
AssetLib/IFC/IFCMaterial.cpp
|
|
|
|
AssetLib/IFC/IFCProfile.cpp
|
|
|
|
AssetLib/IFC/IFCCurve.cpp
|
|
|
|
AssetLib/IFC/IFCBoolean.cpp
|
|
|
|
AssetLib/IFC/IFCOpenings.cpp
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
2018-11-25 11:00:51 +00:00
|
|
|
|
2016-12-05 10:57:05 +00:00
|
|
|
if (ASSIMP_BUILD_IFC_IMPORTER)
|
|
|
|
if (MSVC)
|
2018-03-22 08:54:12 +00:00
|
|
|
set_source_files_properties(Importer/IFC/IFCReaderGen1_2x3.cpp Importer/IFC/IFCReaderGen2_2x3.cpp PROPERTIES COMPILE_FLAGS "/bigobj")
|
2021-12-28 13:59:37 +00:00
|
|
|
elseif(MINGW)
|
2018-03-22 08:54:12 +00:00
|
|
|
set_source_files_properties(Importer/IFC/IFCReaderGen1_2x3.cpp Importer/IFC/IFCReaderGen2_2x3.cpp PROPERTIES COMPILE_FLAGS "-O2 -Wa,-mbig-obj")
|
2016-12-05 10:57:05 +00:00
|
|
|
endif()
|
2020-02-23 12:09:35 +00:00
|
|
|
endif ()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( XGL
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/XGL/XGLLoader.cpp
|
|
|
|
AssetLib/XGL/XGLLoader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( FBX
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/FBX/FBXImporter.cpp
|
|
|
|
AssetLib/FBX/FBXCompileConfig.h
|
|
|
|
AssetLib/FBX/FBXImporter.h
|
|
|
|
AssetLib/FBX/FBXParser.cpp
|
|
|
|
AssetLib/FBX/FBXParser.h
|
|
|
|
AssetLib/FBX/FBXTokenizer.cpp
|
|
|
|
AssetLib/FBX/FBXTokenizer.h
|
|
|
|
AssetLib/FBX/FBXImportSettings.h
|
|
|
|
AssetLib/FBX/FBXConverter.h
|
|
|
|
AssetLib/FBX/FBXConverter.cpp
|
|
|
|
AssetLib/FBX/FBXUtil.h
|
|
|
|
AssetLib/FBX/FBXUtil.cpp
|
|
|
|
AssetLib/FBX/FBXDocument.h
|
|
|
|
AssetLib/FBX/FBXDocument.cpp
|
|
|
|
AssetLib/FBX/FBXProperties.h
|
|
|
|
AssetLib/FBX/FBXProperties.cpp
|
|
|
|
AssetLib/FBX/FBXMeshGeometry.h
|
|
|
|
AssetLib/FBX/FBXMeshGeometry.cpp
|
|
|
|
AssetLib/FBX/FBXMaterial.cpp
|
|
|
|
AssetLib/FBX/FBXModel.cpp
|
|
|
|
AssetLib/FBX/FBXAnimation.cpp
|
|
|
|
AssetLib/FBX/FBXNodeAttribute.cpp
|
|
|
|
AssetLib/FBX/FBXDeformer.cpp
|
|
|
|
AssetLib/FBX/FBXBinaryTokenizer.cpp
|
|
|
|
AssetLib/FBX/FBXDocumentUtil.cpp
|
|
|
|
AssetLib/FBX/FBXCommon.h
|
2019-03-16 15:40:17 +00:00
|
|
|
)
|
|
|
|
|
2020-02-21 18:17:38 +00:00
|
|
|
if (NOT ASSIMP_NO_EXPORT)
|
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER( OBJ
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Obj/ObjExporter.h
|
|
|
|
AssetLib/Obj/ObjExporter.cpp)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER( OPENGEX
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/OpenGEX/OpenGEXExporter.cpp
|
|
|
|
AssetLib/OpenGEX/OpenGEXExporter.h)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER( PLY
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Ply/PlyExporter.cpp
|
|
|
|
AssetLib/Ply/PlyExporter.h)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER( 3DS
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/3DS/3DSExporter.h
|
|
|
|
AssetLib/3DS/3DSExporter.cpp)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER( ASSBIN
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Assbin/AssbinExporter.h
|
|
|
|
AssetLib/Assbin/AssbinExporter.cpp
|
|
|
|
AssetLib/Assbin/AssbinFileWriter.h
|
|
|
|
AssetLib/Assbin/AssbinFileWriter.cpp)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER( ASSXML
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Assxml/AssxmlExporter.h
|
|
|
|
AssetLib/Assxml/AssxmlExporter.cpp
|
|
|
|
AssetLib/Assxml/AssxmlFileWriter.h
|
|
|
|
AssetLib/Assxml/AssxmlFileWriter.cpp)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER(M3D
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/M3D/M3DExporter.h
|
|
|
|
AssetLib/M3D/M3DExporter.cpp)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER(COLLADA
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Collada/ColladaExporter.h
|
|
|
|
AssetLib/Collada/ColladaExporter.cpp)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER( FBX
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/FBX/FBXExporter.h
|
|
|
|
AssetLib/FBX/FBXExporter.cpp
|
|
|
|
AssetLib/FBX/FBXExportNode.h
|
|
|
|
AssetLib/FBX/FBXExportNode.cpp
|
|
|
|
AssetLib/FBX/FBXExportProperty.h
|
|
|
|
AssetLib/FBX/FBXExportProperty.cpp)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER( STL
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/STL/STLExporter.h
|
|
|
|
AssetLib/STL/STLExporter.cpp)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER( X
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/X/XFileExporter.h
|
|
|
|
AssetLib/X/XFileExporter.cpp)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER( X3D
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/X3D/X3DExporter.cpp
|
|
|
|
AssetLib/X3D/X3DExporter.hpp)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER( GLTF
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/glTF/glTFExporter.h
|
|
|
|
AssetLib/glTF/glTFExporter.cpp
|
|
|
|
AssetLib/glTF2/glTF2Exporter.h
|
|
|
|
AssetLib/glTF2/glTF2Exporter.cpp)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER( 3MF
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/3MF/D3MFExporter.h
|
|
|
|
AssetLib/3MF/D3MFExporter.cpp)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
2020-04-06 19:12:37 +00:00
|
|
|
ADD_ASSIMP_EXPORTER( PBRT
|
|
|
|
Pbrt/PbrtExporter.h
|
|
|
|
Pbrt/PbrtExporter.cpp)
|
|
|
|
|
2020-02-21 18:17:38 +00:00
|
|
|
ADD_ASSIMP_EXPORTER( ASSJSON
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Assjson/cencode.c
|
|
|
|
AssetLib/Assjson/cencode.h
|
|
|
|
AssetLib/Assjson/json_exporter.cpp
|
|
|
|
AssetLib/Assjson/mesh_splitter.cpp
|
|
|
|
AssetLib/Assjson/mesh_splitter.h)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
ADD_ASSIMP_EXPORTER( STEP
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Step/StepExporter.h
|
|
|
|
AssetLib/Step/StepExporter.cpp)
|
2020-02-21 18:17:38 +00:00
|
|
|
|
|
|
|
endif()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
|
|
|
SET( PostProcessing_SRCS
|
2019-06-09 16:43:56 +00:00
|
|
|
PostProcessing/CalcTangentsProcess.cpp
|
|
|
|
PostProcessing/CalcTangentsProcess.h
|
|
|
|
PostProcessing/ComputeUVMappingProcess.cpp
|
|
|
|
PostProcessing/ComputeUVMappingProcess.h
|
|
|
|
PostProcessing/ConvertToLHProcess.cpp
|
|
|
|
PostProcessing/ConvertToLHProcess.h
|
|
|
|
PostProcessing/EmbedTexturesProcess.cpp
|
|
|
|
PostProcessing/EmbedTexturesProcess.h
|
|
|
|
PostProcessing/FindDegenerates.cpp
|
|
|
|
PostProcessing/FindDegenerates.h
|
|
|
|
PostProcessing/FindInstancesProcess.cpp
|
|
|
|
PostProcessing/FindInstancesProcess.h
|
|
|
|
PostProcessing/FindInvalidDataProcess.cpp
|
|
|
|
PostProcessing/FindInvalidDataProcess.h
|
|
|
|
PostProcessing/FixNormalsStep.cpp
|
|
|
|
PostProcessing/FixNormalsStep.h
|
|
|
|
PostProcessing/DropFaceNormalsProcess.cpp
|
|
|
|
PostProcessing/DropFaceNormalsProcess.h
|
|
|
|
PostProcessing/GenFaceNormalsProcess.cpp
|
|
|
|
PostProcessing/GenFaceNormalsProcess.h
|
|
|
|
PostProcessing/GenVertexNormalsProcess.cpp
|
|
|
|
PostProcessing/GenVertexNormalsProcess.h
|
|
|
|
PostProcessing/PretransformVertices.cpp
|
|
|
|
PostProcessing/PretransformVertices.h
|
|
|
|
PostProcessing/ImproveCacheLocality.cpp
|
|
|
|
PostProcessing/ImproveCacheLocality.h
|
|
|
|
PostProcessing/JoinVerticesProcess.cpp
|
|
|
|
PostProcessing/JoinVerticesProcess.h
|
|
|
|
PostProcessing/LimitBoneWeightsProcess.cpp
|
|
|
|
PostProcessing/LimitBoneWeightsProcess.h
|
|
|
|
PostProcessing/RemoveRedundantMaterials.cpp
|
|
|
|
PostProcessing/RemoveRedundantMaterials.h
|
|
|
|
PostProcessing/RemoveVCProcess.cpp
|
|
|
|
PostProcessing/RemoveVCProcess.h
|
|
|
|
PostProcessing/SortByPTypeProcess.cpp
|
|
|
|
PostProcessing/SortByPTypeProcess.h
|
|
|
|
PostProcessing/SplitLargeMeshes.cpp
|
|
|
|
PostProcessing/SplitLargeMeshes.h
|
|
|
|
PostProcessing/TextureTransform.cpp
|
|
|
|
PostProcessing/TextureTransform.h
|
|
|
|
PostProcessing/TriangulateProcess.cpp
|
|
|
|
PostProcessing/TriangulateProcess.h
|
|
|
|
PostProcessing/ValidateDataStructure.cpp
|
|
|
|
PostProcessing/ValidateDataStructure.h
|
|
|
|
PostProcessing/OptimizeGraph.cpp
|
|
|
|
PostProcessing/OptimizeGraph.h
|
|
|
|
PostProcessing/OptimizeMeshes.cpp
|
|
|
|
PostProcessing/OptimizeMeshes.h
|
|
|
|
PostProcessing/DeboneProcess.cpp
|
|
|
|
PostProcessing/DeboneProcess.h
|
|
|
|
PostProcessing/ProcessHelper.h
|
|
|
|
PostProcessing/ProcessHelper.cpp
|
|
|
|
PostProcessing/MakeVerboseFormat.cpp
|
|
|
|
PostProcessing/MakeVerboseFormat.h
|
|
|
|
PostProcessing/ScaleProcess.cpp
|
|
|
|
PostProcessing/ScaleProcess.h
|
2019-10-26 17:47:48 +00:00
|
|
|
PostProcessing/ArmaturePopulate.cpp
|
|
|
|
PostProcessing/ArmaturePopulate.h
|
2019-06-24 19:37:53 +00:00
|
|
|
PostProcessing/GenBoundingBoxesProcess.cpp
|
|
|
|
PostProcessing/GenBoundingBoxesProcess.h
|
2020-03-09 09:55:32 +00:00
|
|
|
PostProcessing/SplitByBoneCountProcess.cpp
|
|
|
|
PostProcessing/SplitByBoneCountProcess.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
SOURCE_GROUP( PostProcessing FILES ${PostProcessing_SRCS})
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( Q3D
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Q3D/Q3DLoader.cpp
|
|
|
|
AssetLib/Q3D/Q3DLoader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( Q3BSP
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Q3BSP/Q3BSPFileData.h
|
|
|
|
AssetLib/Q3BSP/Q3BSPFileParser.h
|
|
|
|
AssetLib/Q3BSP/Q3BSPFileParser.cpp
|
|
|
|
AssetLib/Q3BSP/Q3BSPFileImporter.h
|
|
|
|
AssetLib/Q3BSP/Q3BSPFileImporter.cpp
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( RAW
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Raw/RawLoader.cpp
|
|
|
|
AssetLib/Raw/RawLoader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( SIB
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/SIB/SIBImporter.cpp
|
|
|
|
AssetLib/SIB/SIBImporter.h
|
2015-12-14 06:14:19 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( SMD
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/SMD/SMDLoader.cpp
|
|
|
|
AssetLib/SMD/SMDLoader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( STL
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/STL/STLLoader.cpp
|
|
|
|
AssetLib/STL/STLLoader.h
|
2019-03-16 15:40:17 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( TERRAGEN
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Terragen/TerragenLoader.cpp
|
|
|
|
AssetLib/Terragen/TerragenLoader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( 3D
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/Unreal/UnrealLoader.cpp
|
|
|
|
AssetLib/Unreal/UnrealLoader.h
|
2015-05-19 03:44:54 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( X
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/X/XFileHelper.h
|
|
|
|
AssetLib/X/XFileImporter.cpp
|
|
|
|
AssetLib/X/XFileImporter.h
|
|
|
|
AssetLib/X/XFileParser.cpp
|
|
|
|
AssetLib/X/XFileParser.h
|
2019-03-16 15:40:17 +00:00
|
|
|
)
|
|
|
|
|
2018-02-19 12:46:02 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( X3D
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/X3D/X3DImporter.cpp
|
2021-09-12 09:37:33 +00:00
|
|
|
AssetLib/X3D/X3DImporter_Geometry2D.cpp
|
|
|
|
AssetLib/X3D/X3DImporter_Geometry3D.cpp
|
|
|
|
AssetLib/X3D/X3DImporter_Group.cpp
|
|
|
|
AssetLib/X3D/X3DImporter_Light.cpp
|
|
|
|
AssetLib/X3D/X3DImporter_Metadata.cpp
|
|
|
|
AssetLib/X3D/X3DImporter_Networking.cpp
|
|
|
|
AssetLib/X3D/X3DImporter_Postprocess.cpp
|
|
|
|
AssetLib/X3D/X3DImporter_Rendering.cpp
|
|
|
|
AssetLib/X3D/X3DImporter_Shape.cpp
|
|
|
|
AssetLib/X3D/X3DImporter_Texturing.cpp
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/X3D/X3DImporter.hpp
|
2021-09-12 09:37:33 +00:00
|
|
|
AssetLib/X3D/X3DImporter_Macro.hpp
|
|
|
|
AssetLib/X3D/X3DImporter_Node.hpp
|
2021-05-06 19:07:38 +00:00
|
|
|
AssetLib/X3D/X3DGeoHelper.cpp
|
|
|
|
AssetLib/X3D/X3DGeoHelper.h
|
2021-09-12 09:37:33 +00:00
|
|
|
AssetLib/X3D/X3DXmlHelper.cpp
|
|
|
|
AssetLib/X3D/X3DXmlHelper.h
|
2016-09-29 15:50:24 +00:00
|
|
|
)
|
|
|
|
|
2016-06-14 18:27:40 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( GLTF
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/glTF/glTFCommon.h
|
|
|
|
AssetLib/glTF/glTFCommon.cpp
|
|
|
|
AssetLib/glTF/glTFAsset.h
|
|
|
|
AssetLib/glTF/glTFAsset.inl
|
|
|
|
AssetLib/glTF/glTFAssetWriter.h
|
|
|
|
AssetLib/glTF/glTFAssetWriter.inl
|
|
|
|
AssetLib/glTF/glTFImporter.cpp
|
|
|
|
AssetLib/glTF/glTFImporter.h
|
|
|
|
AssetLib/glTF2/glTF2Asset.h
|
|
|
|
AssetLib/glTF2/glTF2Asset.inl
|
|
|
|
AssetLib/glTF2/glTF2AssetWriter.h
|
|
|
|
AssetLib/glTF2/glTF2AssetWriter.inl
|
|
|
|
AssetLib/glTF2/glTF2Importer.cpp
|
|
|
|
AssetLib/glTF2/glTF2Importer.h
|
2019-03-16 15:40:17 +00:00
|
|
|
)
|
|
|
|
|
2021-09-07 13:04:08 +00:00
|
|
|
ADD_ASSIMP_IMPORTER(3MF
|
|
|
|
AssetLib/3MF/3MFTypes.h
|
|
|
|
AssetLib/3MF/XmlSerializer.h
|
|
|
|
AssetLib/3MF/XmlSerializer.cpp
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/3MF/D3MFImporter.h
|
|
|
|
AssetLib/3MF/D3MFImporter.cpp
|
|
|
|
AssetLib/3MF/D3MFOpcPackage.h
|
|
|
|
AssetLib/3MF/D3MFOpcPackage.cpp
|
|
|
|
AssetLib/3MF/3MFXmlTags.h
|
2019-03-16 15:40:17 +00:00
|
|
|
)
|
|
|
|
|
2017-02-24 00:35:15 +00:00
|
|
|
ADD_ASSIMP_IMPORTER( MMD
|
2020-05-02 13:14:38 +00:00
|
|
|
AssetLib/MMD/MMDCpp14.h
|
|
|
|
AssetLib/MMD/MMDImporter.cpp
|
|
|
|
AssetLib/MMD/MMDImporter.h
|
|
|
|
AssetLib/MMD/MMDPmdParser.h
|
|
|
|
AssetLib/MMD/MMDPmxParser.h
|
|
|
|
AssetLib/MMD/MMDPmxParser.cpp
|
|
|
|
AssetLib/MMD/MMDVmdParser.h
|
2017-02-24 00:35:15 +00:00
|
|
|
)
|
|
|
|
|
2019-04-10 13:45:31 +00:00
|
|
|
# Workaround for issue #2406 - force problematic large file to be optimized to prevent string table overflow error
|
|
|
|
# Used -Os instead of -O2 as previous issues had mentioned, since -Os is roughly speaking -O2, excluding any
|
|
|
|
# optimizations that take up extra space. Given that the issue is a string table overflowing, -Os seemed appropriate
|
|
|
|
# Also, I'm not positive if both link & compile flags are needed, but this hopefully ensures that the issue should not
|
|
|
|
# recur for edge cases such as static builds.
|
2021-12-28 13:59:37 +00:00
|
|
|
if ((MINGW) AND (CMAKE_BUILD_TYPE MATCHES Debug))
|
2019-04-10 13:45:31 +00:00
|
|
|
message("-- Applying MinGW StepFileGen1.cpp Debug Workaround")
|
|
|
|
SET_SOURCE_FILES_PROPERTIES(Importer/StepFile/StepFileGen1.cpp PROPERTIES COMPILE_FLAGS -Os )
|
|
|
|
SET_SOURCE_FILES_PROPERTIES(Importer/StepFile/StepFileGen1.cpp PROPERTIES LINK_FLAGS -Os )
|
|
|
|
SET_SOURCE_FILES_PROPERTIES(Importer/StepFile/StepFileGen1.cpp PROPERTIES STATIC_LIBRARY_FLAGS -Os )
|
|
|
|
endif()
|
|
|
|
|
2019-03-16 15:40:17 +00:00
|
|
|
if ((NOT ASSIMP_NO_EXPORT) OR (NOT ASSIMP_EXPORTERS_ENABLED STREQUAL ""))
|
|
|
|
SET( Exporter_SRCS
|
2019-06-09 16:43:56 +00:00
|
|
|
Common/Exporter.cpp
|
|
|
|
CApi/AssimpCExport.cpp
|
2019-03-16 15:40:17 +00:00
|
|
|
${HEADER_PATH}/BlobIOSystem.h
|
|
|
|
)
|
|
|
|
SOURCE_GROUP( Exporter FILES ${Exporter_SRCS})
|
|
|
|
endif()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
|
|
|
SET( Extra_SRCS
|
|
|
|
MD4FileData.h
|
|
|
|
)
|
|
|
|
SOURCE_GROUP( Extra FILES ${Extra_SRCS})
|
|
|
|
|
2020-10-01 08:29:52 +00:00
|
|
|
# pugixml
|
2020-03-23 16:35:32 +00:00
|
|
|
IF(ASSIMP_HUNTER_ENABLED)
|
2020-10-12 20:30:03 +00:00
|
|
|
hunter_add_package(pugixml)
|
|
|
|
find_package(pugixml CONFIG REQUIRED)
|
2020-02-23 12:09:35 +00:00
|
|
|
ELSE()
|
2020-10-12 20:30:03 +00:00
|
|
|
SET( Pugixml_SRCS
|
|
|
|
../contrib/pugixml/src/pugiconfig.hpp
|
|
|
|
../contrib/pugixml/src/pugixml.hpp
|
|
|
|
)
|
2021-09-07 13:04:08 +00:00
|
|
|
INCLUDE_DIRECTORIES("../contrib/pugixml/src")
|
2020-10-12 20:30:03 +00:00
|
|
|
SOURCE_GROUP( Contrib\\Pugixml FILES ${Pugixml_SRCS})
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF()
|
2019-05-24 20:13:55 +00:00
|
|
|
|
|
|
|
# utf8
|
2020-03-23 16:35:32 +00:00
|
|
|
IF(ASSIMP_HUNTER_ENABLED)
|
2019-05-24 20:13:55 +00:00
|
|
|
hunter_add_package(utf8)
|
2020-07-14 17:55:37 +00:00
|
|
|
find_package(utf8cpp CONFIG REQUIRED)
|
2020-02-23 12:09:35 +00:00
|
|
|
ELSE()
|
2019-05-24 20:13:55 +00:00
|
|
|
# utf8 is header-only, so Assimp doesn't need to do anything.
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF()
|
2019-05-24 20:13:55 +00:00
|
|
|
|
|
|
|
# polyclipping
|
2020-03-23 16:35:32 +00:00
|
|
|
IF(ASSIMP_HUNTER_ENABLED)
|
2019-05-24 20:13:55 +00:00
|
|
|
hunter_add_package(polyclipping)
|
|
|
|
find_package(polyclipping CONFIG REQUIRED)
|
2020-02-23 12:09:35 +00:00
|
|
|
ELSE()
|
2019-05-24 20:13:55 +00:00
|
|
|
SET( Clipper_SRCS
|
|
|
|
../contrib/clipper/clipper.hpp
|
|
|
|
../contrib/clipper/clipper.cpp
|
|
|
|
)
|
|
|
|
SOURCE_GROUP( Contrib\\Clipper FILES ${Clipper_SRCS})
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF()
|
2019-05-24 20:13:55 +00:00
|
|
|
|
|
|
|
# poly2tri
|
2020-03-23 16:35:32 +00:00
|
|
|
IF(ASSIMP_HUNTER_ENABLED)
|
2019-05-24 20:13:55 +00:00
|
|
|
hunter_add_package(poly2tri)
|
|
|
|
find_package(poly2tri CONFIG REQUIRED)
|
2020-02-23 12:09:35 +00:00
|
|
|
ELSE()
|
2019-05-24 20:13:55 +00:00
|
|
|
SET( Poly2Tri_SRCS
|
|
|
|
../contrib/poly2tri/poly2tri/common/shapes.cc
|
|
|
|
../contrib/poly2tri/poly2tri/common/shapes.h
|
|
|
|
../contrib/poly2tri/poly2tri/common/utils.h
|
|
|
|
../contrib/poly2tri/poly2tri/sweep/advancing_front.h
|
|
|
|
../contrib/poly2tri/poly2tri/sweep/advancing_front.cc
|
|
|
|
../contrib/poly2tri/poly2tri/sweep/cdt.cc
|
|
|
|
../contrib/poly2tri/poly2tri/sweep/cdt.h
|
|
|
|
../contrib/poly2tri/poly2tri/sweep/sweep.cc
|
|
|
|
../contrib/poly2tri/poly2tri/sweep/sweep.h
|
|
|
|
../contrib/poly2tri/poly2tri/sweep/sweep_context.cc
|
|
|
|
../contrib/poly2tri/poly2tri/sweep/sweep_context.h
|
|
|
|
)
|
|
|
|
SOURCE_GROUP( Contrib\\Poly2Tri FILES ${Poly2Tri_SRCS})
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF()
|
2019-05-24 20:13:55 +00:00
|
|
|
|
|
|
|
# minizip/unzip
|
2020-03-23 16:35:32 +00:00
|
|
|
IF(ASSIMP_HUNTER_ENABLED)
|
2019-05-24 20:13:55 +00:00
|
|
|
hunter_add_package(minizip)
|
|
|
|
find_package(minizip CONFIG REQUIRED)
|
2020-02-23 12:09:35 +00:00
|
|
|
ELSE()
|
2019-05-24 20:13:55 +00:00
|
|
|
SET( unzip_SRCS
|
|
|
|
../contrib/unzip/crypt.h
|
|
|
|
../contrib/unzip/ioapi.c
|
|
|
|
../contrib/unzip/ioapi.h
|
|
|
|
../contrib/unzip/unzip.c
|
|
|
|
../contrib/unzip/unzip.h
|
|
|
|
)
|
|
|
|
SOURCE_GROUP(Contrib\\unzip FILES ${unzip_SRCS})
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF()
|
2019-05-24 20:13:55 +00:00
|
|
|
|
|
|
|
# zip (https://github.com/kuba--/zip)
|
2021-11-13 16:56:52 +00:00
|
|
|
separate_arguments(ASSIMP_EXPORTERS_LIST UNIX_COMMAND ${ASSIMP_EXPORTERS_ENABLED})
|
|
|
|
IF(3MF IN_LIST ASSIMP_EXPORTERS_LIST)
|
2021-11-04 08:14:24 +00:00
|
|
|
IF(ASSIMP_HUNTER_ENABLED)
|
|
|
|
hunter_add_package(zip)
|
|
|
|
find_package(zip CONFIG REQUIRED)
|
|
|
|
ELSE()
|
|
|
|
SET( ziplib_SRCS
|
|
|
|
../contrib/zip/src/miniz.h
|
|
|
|
../contrib/zip/src/zip.c
|
|
|
|
../contrib/zip/src/zip.h
|
|
|
|
)
|
|
|
|
|
|
|
|
# TODO if cmake required version has been updated to >3.12.0, collapse this to the second case only
|
|
|
|
if(${CMAKE_VERSION} VERSION_LESS "3.12.0")
|
|
|
|
add_definitions(-DMINIZ_USE_UNALIGNED_LOADS_AND_STORES=0)
|
|
|
|
else()
|
|
|
|
add_compile_definitions(MINIZ_USE_UNALIGNED_LOADS_AND_STORES=0)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
SOURCE_GROUP( ziplib FILES ${ziplib_SRCS} )
|
|
|
|
ENDIF()
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF()
|
2019-05-24 20:13:55 +00:00
|
|
|
|
|
|
|
# openddlparser
|
2020-03-23 16:35:32 +00:00
|
|
|
IF(ASSIMP_HUNTER_ENABLED)
|
2019-05-24 20:13:55 +00:00
|
|
|
hunter_add_package(openddlparser)
|
|
|
|
find_package(openddlparser CONFIG REQUIRED)
|
2020-02-23 12:09:35 +00:00
|
|
|
ELSE()
|
2019-05-24 20:13:55 +00:00
|
|
|
SET ( openddl_parser_SRCS
|
|
|
|
../contrib/openddlparser/code/OpenDDLParser.cpp
|
|
|
|
../contrib/openddlparser/code/DDLNode.cpp
|
|
|
|
../contrib/openddlparser/code/OpenDDLCommon.cpp
|
|
|
|
../contrib/openddlparser/code/OpenDDLExport.cpp
|
|
|
|
../contrib/openddlparser/code/Value.cpp
|
|
|
|
../contrib/openddlparser/code/OpenDDLStream.cpp
|
|
|
|
../contrib/openddlparser/include/openddlparser/OpenDDLParser.h
|
|
|
|
../contrib/openddlparser/include/openddlparser/OpenDDLParserUtils.h
|
|
|
|
../contrib/openddlparser/include/openddlparser/OpenDDLCommon.h
|
|
|
|
../contrib/openddlparser/include/openddlparser/OpenDDLExport.h
|
|
|
|
../contrib/openddlparser/include/openddlparser/OpenDDLStream.h
|
|
|
|
../contrib/openddlparser/include/openddlparser/DDLNode.h
|
|
|
|
../contrib/openddlparser/include/openddlparser/Value.h
|
|
|
|
)
|
|
|
|
SOURCE_GROUP( Contrib\\openddl_parser FILES ${openddl_parser_SRCS})
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF()
|
2019-05-24 20:13:55 +00:00
|
|
|
|
|
|
|
# Open3DGC
|
2020-03-23 16:35:32 +00:00
|
|
|
IF(ASSIMP_HUNTER_ENABLED)
|
2019-05-24 20:13:55 +00:00
|
|
|
# Nothing to do, not available in Hunter yet.
|
2020-02-23 12:09:35 +00:00
|
|
|
ELSE()
|
2019-05-24 20:13:55 +00:00
|
|
|
SET ( open3dgc_SRCS
|
|
|
|
../contrib/Open3DGC/o3dgcAdjacencyInfo.h
|
|
|
|
../contrib/Open3DGC/o3dgcArithmeticCodec.cpp
|
|
|
|
../contrib/Open3DGC/o3dgcArithmeticCodec.h
|
|
|
|
../contrib/Open3DGC/o3dgcBinaryStream.h
|
|
|
|
../contrib/Open3DGC/o3dgcCommon.h
|
|
|
|
../contrib/Open3DGC/o3dgcDVEncodeParams.h
|
|
|
|
../contrib/Open3DGC/o3dgcDynamicVectorDecoder.cpp
|
|
|
|
../contrib/Open3DGC/o3dgcDynamicVectorDecoder.h
|
|
|
|
../contrib/Open3DGC/o3dgcDynamicVectorEncoder.cpp
|
|
|
|
../contrib/Open3DGC/o3dgcDynamicVectorEncoder.h
|
|
|
|
../contrib/Open3DGC/o3dgcDynamicVector.h
|
|
|
|
../contrib/Open3DGC/o3dgcFIFO.h
|
|
|
|
../contrib/Open3DGC/o3dgcIndexedFaceSet.h
|
|
|
|
../contrib/Open3DGC/o3dgcIndexedFaceSet.inl
|
|
|
|
../contrib/Open3DGC/o3dgcSC3DMCDecoder.h
|
|
|
|
../contrib/Open3DGC/o3dgcSC3DMCDecoder.inl
|
|
|
|
../contrib/Open3DGC/o3dgcSC3DMCEncodeParams.h
|
|
|
|
../contrib/Open3DGC/o3dgcSC3DMCEncoder.h
|
|
|
|
../contrib/Open3DGC/o3dgcSC3DMCEncoder.inl
|
|
|
|
../contrib/Open3DGC/o3dgcTimer.h
|
|
|
|
../contrib/Open3DGC/o3dgcTools.cpp
|
|
|
|
../contrib/Open3DGC/o3dgcTriangleFans.cpp
|
|
|
|
../contrib/Open3DGC/o3dgcTriangleFans.h
|
|
|
|
../contrib/Open3DGC/o3dgcTriangleListDecoder.h
|
|
|
|
../contrib/Open3DGC/o3dgcTriangleListDecoder.inl
|
|
|
|
../contrib/Open3DGC/o3dgcTriangleListEncoder.h
|
|
|
|
../contrib/Open3DGC/o3dgcTriangleListEncoder.inl
|
|
|
|
../contrib/Open3DGC/o3dgcVector.h
|
|
|
|
../contrib/Open3DGC/o3dgcVector.inl
|
|
|
|
)
|
|
|
|
SOURCE_GROUP( Contrib\\open3dgc FILES ${open3dgc_SRCS})
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF()
|
2016-08-03 00:40:53 +00:00
|
|
|
|
2016-08-14 13:27:16 +00:00
|
|
|
# Check dependencies for glTF importer with Open3DGC-compression.
|
|
|
|
# RT-extensions is used in "contrib/Open3DGC/o3dgcTimer.h" for collecting statistics. Pointed file
|
|
|
|
# has implementation for different platforms: WIN32, __MACH__ and other ("else" block).
|
2022-04-07 10:07:57 +00:00
|
|
|
IF (NOT WIN32)
|
|
|
|
FIND_PACKAGE(RT QUIET)
|
|
|
|
ENDIF ()
|
2020-12-11 16:13:09 +00:00
|
|
|
IF (NOT ASSIMP_HUNTER_ENABLED AND (RT_FOUND OR WIN32))
|
2016-09-13 10:29:12 +00:00
|
|
|
SET( ASSIMP_IMPORTER_GLTF_USE_OPEN3DGC 1 )
|
|
|
|
ADD_DEFINITIONS( -DASSIMP_IMPORTER_GLTF_USE_OPEN3DGC=1 )
|
2016-08-14 13:27:16 +00:00
|
|
|
ELSE ()
|
|
|
|
SET (open3dgc_SRCS "")
|
2019-05-24 20:13:55 +00:00
|
|
|
MESSAGE (INFO " Hunter enabled or RT-extension not found. glTF import/export will be built without Open3DGC-compression.")
|
2016-08-14 13:27:16 +00:00
|
|
|
#!TODO: off course is better to remove statistics timers from o3dgc codec. Or propose to choose what to use.
|
|
|
|
ENDIF ()
|
2016-08-03 00:40:53 +00:00
|
|
|
|
2019-05-24 20:13:55 +00:00
|
|
|
# RapidJSON
|
2020-03-23 16:35:32 +00:00
|
|
|
IF(ASSIMP_HUNTER_ENABLED)
|
2019-05-24 20:13:55 +00:00
|
|
|
hunter_add_package(RapidJSON)
|
|
|
|
find_package(RapidJSON CONFIG REQUIRED)
|
2020-02-23 12:09:35 +00:00
|
|
|
ELSE()
|
2021-09-07 13:04:08 +00:00
|
|
|
INCLUDE_DIRECTORIES("../contrib/rapidjson/include")
|
|
|
|
ADD_DEFINITIONS( -DRAPIDJSON_HAS_STDSTRING=1)
|
2020-12-09 11:21:43 +00:00
|
|
|
option( ASSIMP_RAPIDJSON_NO_MEMBER_ITERATOR "Suppress rapidjson warning on MSVC (NOTE: breaks android build)" ON )
|
|
|
|
if(ASSIMP_RAPIDJSON_NO_MEMBER_ITERATOR)
|
|
|
|
ADD_DEFINITIONS( -DRAPIDJSON_NOMEMBERITERATORCLASS )
|
|
|
|
endif()
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF()
|
2015-11-26 01:36:22 +00:00
|
|
|
|
2021-09-07 13:04:08 +00:00
|
|
|
# stb
|
|
|
|
IF(ASSIMP_HUNTER_ENABLED)
|
|
|
|
hunter_add_package(stb)
|
|
|
|
find_package(stb CONFIG REQUIRED)
|
|
|
|
ELSE()
|
|
|
|
SET( stb_SRCS
|
|
|
|
../contrib/stb/stb_image.h
|
|
|
|
)
|
|
|
|
INCLUDE_DIRECTORIES("../contrib")
|
|
|
|
SOURCE_GROUP( Contrib\\stb FILES ${stb_SRCS})
|
|
|
|
ENDIF()
|
|
|
|
|
2015-05-19 03:44:54 +00:00
|
|
|
# VC2010 fixes
|
|
|
|
if(MSVC10)
|
|
|
|
option( VC10_STDINT_FIX "Fix for VC10 Compiler regarding pstdint.h redefinition errors" OFF )
|
|
|
|
if( VC10_STDINT_FIX )
|
|
|
|
ADD_DEFINITIONS( -D_STDINT )
|
2020-02-23 12:09:35 +00:00
|
|
|
endif()
|
|
|
|
endif()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
2020-07-20 16:28:50 +00:00
|
|
|
IF( MSVC OR "${CMAKE_CXX_SIMULATE_ID}" MATCHES "MSVC") # clang with MSVC ABI
|
2015-05-19 03:44:54 +00:00
|
|
|
ADD_DEFINITIONS( -D_SCL_SECURE_NO_WARNINGS )
|
|
|
|
ADD_DEFINITIONS( -D_CRT_SECURE_NO_WARNINGS )
|
2020-02-23 12:09:35 +00:00
|
|
|
endif ()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
2020-03-23 16:35:32 +00:00
|
|
|
IF(NOT ASSIMP_HUNTER_ENABLED)
|
2019-05-24 20:13:55 +00:00
|
|
|
if (UNZIP_FOUND)
|
|
|
|
SET (unzip_compile_SRCS "")
|
2020-02-23 12:09:35 +00:00
|
|
|
else ()
|
2019-05-24 20:13:55 +00:00
|
|
|
SET (unzip_compile_SRCS ${unzip_SRCS})
|
|
|
|
INCLUDE_DIRECTORIES( "../contrib/unzip/" )
|
2020-02-23 12:09:35 +00:00
|
|
|
endif ()
|
|
|
|
ENDIF()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
2019-03-16 15:40:17 +00:00
|
|
|
MESSAGE(STATUS "Enabled importer formats:${ASSIMP_IMPORTERS_ENABLED}")
|
|
|
|
MESSAGE(STATUS "Disabled importer formats:${ASSIMP_IMPORTERS_DISABLED}")
|
|
|
|
|
2020-02-21 18:17:38 +00:00
|
|
|
if (NOT ASSIMP_NO_EXPORT)
|
|
|
|
MESSAGE(STATUS "Enabled exporter formats:${ASSIMP_EXPORTERS_ENABLED}")
|
|
|
|
MESSAGE(STATUS "Disabled exporter formats:${ASSIMP_EXPORTERS_DISABLED}")
|
|
|
|
endif()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
2019-10-11 11:41:13 +00:00
|
|
|
SOURCE_GROUP( include\\assimp FILES ${PUBLIC_HEADERS} )
|
|
|
|
|
2015-05-19 03:44:54 +00:00
|
|
|
SET( assimp_src
|
|
|
|
# Assimp Files
|
|
|
|
${Core_SRCS}
|
2019-06-11 18:17:50 +00:00
|
|
|
${CApi_SRCS}
|
2015-05-19 03:44:54 +00:00
|
|
|
${Common_SRCS}
|
2023-03-14 19:03:14 +00:00
|
|
|
${Geometry_SRCS}
|
2015-05-19 03:44:54 +00:00
|
|
|
${Logging_SRCS}
|
|
|
|
${Exporter_SRCS}
|
|
|
|
${PostProcessing_SRCS}
|
|
|
|
${MaterialSystem_SRCS}
|
2018-11-25 11:00:51 +00:00
|
|
|
${STEPParser_SRCS}
|
2019-01-20 19:29:23 +00:00
|
|
|
# ${Step_SRCS} check if we need a different approach
|
2015-05-19 03:44:54 +00:00
|
|
|
|
|
|
|
# Model Support
|
|
|
|
${ASSIMP_LOADER_SRCS}
|
2019-03-16 15:40:17 +00:00
|
|
|
${ASSIMP_EXPORTER_SRCS}
|
2015-05-19 03:44:54 +00:00
|
|
|
|
|
|
|
# Third-party libraries
|
|
|
|
${unzip_compile_SRCS}
|
|
|
|
${Poly2Tri_SRCS}
|
|
|
|
${Clipper_SRCS}
|
|
|
|
${openddl_parser_SRCS}
|
2016-08-03 00:40:53 +00:00
|
|
|
${open3dgc_SRCS}
|
2017-11-27 20:48:33 +00:00
|
|
|
${ziplib_SRCS}
|
2020-10-01 14:35:34 +00:00
|
|
|
${Pugixml_SRCS}
|
2021-09-07 13:04:08 +00:00
|
|
|
${stb_SRCS}
|
2015-05-19 03:44:54 +00:00
|
|
|
# Necessary to show the headers in the project when using the VC++ generator:
|
|
|
|
|
|
|
|
${PUBLIC_HEADERS}
|
|
|
|
${COMPILER_HEADERS}
|
|
|
|
)
|
2016-04-23 07:42:05 +00:00
|
|
|
ADD_DEFINITIONS( -DOPENDDLPARSER_BUILD )
|
2015-05-19 03:44:54 +00:00
|
|
|
|
2020-03-23 16:35:32 +00:00
|
|
|
IF(NOT ASSIMP_HUNTER_ENABLED)
|
2019-05-24 20:13:55 +00:00
|
|
|
INCLUDE_DIRECTORIES(
|
|
|
|
${IRRXML_INCLUDE_DIR}
|
|
|
|
../contrib/openddlparser/include
|
|
|
|
)
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
|
|
|
IF (ASSIMP_BUILD_NONFREE_C4D_IMPORTER)
|
|
|
|
SET( assimp_src ${assimp_src} ${C4D_SRCS})
|
|
|
|
INCLUDE_DIRECTORIES(${C4D_INCLUDES})
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF ()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
2021-01-22 16:31:59 +00:00
|
|
|
IF (ASSIMP_BUILD_DRACO)
|
|
|
|
INCLUDE_DIRECTORIES(${draco_INCLUDE_DIRS})
|
|
|
|
ADD_DEFINITIONS( -DASSIMP_ENABLE_DRACO )
|
|
|
|
ENDIF()
|
|
|
|
|
2015-05-19 03:44:54 +00:00
|
|
|
ADD_LIBRARY( assimp ${assimp_src} )
|
2018-12-03 20:22:34 +00:00
|
|
|
ADD_LIBRARY(assimp::assimp ALIAS assimp)
|
2015-05-19 03:44:54 +00:00
|
|
|
|
2022-06-01 10:45:40 +00:00
|
|
|
# Add or remove dllexport tags depending on the library type.
|
2022-06-01 10:26:04 +00:00
|
|
|
IF (BUILD_SHARED_LIBS)
|
|
|
|
TARGET_COMPILE_DEFINITIONS(assimp PRIVATE ASSIMP_BUILD_DLL_EXPORT)
|
|
|
|
ELSE ()
|
|
|
|
TARGET_COMPILE_DEFINITIONS(assimp PRIVATE OPENDDL_STATIC_LIBARY)
|
|
|
|
ENDIF ()
|
|
|
|
|
2020-08-07 20:04:39 +00:00
|
|
|
TARGET_USE_COMMON_OUTPUT_DIRECTORY(assimp)
|
|
|
|
|
2022-05-03 20:01:20 +00:00
|
|
|
IF (ASSIMP_WARNINGS_AS_ERRORS)
|
|
|
|
MESSAGE(STATUS "Treating all warnings as errors (for assimp library only)")
|
|
|
|
IF (MSVC)
|
2023-03-02 13:12:35 +00:00
|
|
|
|
|
|
|
IF(CMAKE_CXX_COMPILER_ID MATCHES "Clang" ) # clang-cl
|
|
|
|
TARGET_COMPILE_OPTIONS(assimp PRIVATE -Wall -Werror
|
|
|
|
-Wno-microsoft-enum-value
|
|
|
|
-Wno-switch-enum
|
|
|
|
-Wno-covered-switch-default
|
|
|
|
-Wno-reserved-identifier
|
|
|
|
-Wno-c++98-compat-pedantic
|
|
|
|
-Wno-c++98-compat
|
|
|
|
-Wno-documentation
|
|
|
|
-Wno-documentation-unknown-command
|
|
|
|
-Wno-deprecated-dynamic-exception-spec
|
|
|
|
-Wno-undef
|
|
|
|
-Wno-suggest-destructor-override
|
|
|
|
-Wno-suggest-override
|
|
|
|
-Wno-zero-as-null-pointer-constant
|
|
|
|
-Wno-global-constructors
|
|
|
|
-Wno-exit-time-destructors
|
|
|
|
-Wno-extra-semi-stmt
|
|
|
|
-Wno-missing-prototypes
|
|
|
|
-Wno-old-style-cast
|
|
|
|
-Wno-cast-align
|
|
|
|
-Wno-cast-qual
|
|
|
|
-Wno-float-equal
|
|
|
|
-Wno-implicit-int-float-conversion
|
|
|
|
-Wno-sign-conversion
|
|
|
|
-Wno-implicit-float-conversion
|
|
|
|
-Wno-implicit-int-conversion
|
|
|
|
-Wno-float-conversion
|
|
|
|
-Wno-double-promotion
|
|
|
|
-Wno-unused-macros
|
|
|
|
-Wno-disabled-macro-expansion
|
|
|
|
-Wno-shadow-field
|
|
|
|
-Wno-shadow
|
|
|
|
-Wno-language-extension-token
|
|
|
|
-Wno-header-hygiene
|
|
|
|
-Wno-tautological-value-range-compare
|
|
|
|
-Wno-tautological-type-limit-compare
|
|
|
|
-Wno-missing-variable-declarations
|
|
|
|
-Wno-extra-semi
|
|
|
|
-Wno-nonportable-system-include-path
|
|
|
|
-Wno-undefined-reinterpret-cast
|
|
|
|
-Wno-shift-sign-overflow
|
|
|
|
-Wno-deprecated
|
|
|
|
-Wno-format-nonliteral
|
|
|
|
-Wno-comma
|
|
|
|
-Wno-implicit-fallthrough
|
|
|
|
-Wno-unused-template
|
|
|
|
-Wno-undefined-func-template
|
|
|
|
-Wno-declaration-after-statement
|
|
|
|
)
|
|
|
|
ELSE()
|
|
|
|
TARGET_COMPILE_OPTIONS(assimp PRIVATE /W4 /WX)
|
|
|
|
ENDIF()
|
2022-05-03 20:01:20 +00:00
|
|
|
ELSE()
|
|
|
|
TARGET_COMPILE_OPTIONS(assimp PRIVATE -Wall -Werror)
|
|
|
|
ENDIF()
|
2020-04-28 05:39:13 +00:00
|
|
|
ENDIF()
|
|
|
|
|
2021-05-22 15:36:39 +00:00
|
|
|
# adds C_FLAGS required to compile zip.c on old GCC 4.x compiler
|
2021-12-14 20:54:36 +00:00
|
|
|
TARGET_COMPILE_FEATURES(assimp PRIVATE c_std_99)
|
2021-05-22 15:36:39 +00:00
|
|
|
|
2018-07-04 20:56:35 +00:00
|
|
|
TARGET_INCLUDE_DIRECTORIES ( assimp PUBLIC
|
|
|
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include>
|
|
|
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/../include>
|
2022-01-10 00:25:02 +00:00
|
|
|
$<INSTALL_INTERFACE:${ASSIMP_INCLUDE_INSTALL_DIR}>
|
2018-07-04 20:56:35 +00:00
|
|
|
)
|
|
|
|
|
2020-03-23 16:35:32 +00:00
|
|
|
IF(ASSIMP_HUNTER_ENABLED)
|
2019-05-24 20:13:55 +00:00
|
|
|
TARGET_LINK_LIBRARIES(assimp
|
|
|
|
PUBLIC
|
|
|
|
polyclipping::polyclipping
|
|
|
|
openddlparser::openddl_parser
|
|
|
|
poly2tri::poly2tri
|
|
|
|
minizip::minizip
|
|
|
|
ZLIB::zlib
|
|
|
|
RapidJSON::rapidjson
|
2020-07-14 17:55:37 +00:00
|
|
|
utf8cpp
|
2020-10-12 20:30:03 +00:00
|
|
|
pugixml
|
2021-09-07 13:04:08 +00:00
|
|
|
stb::stb
|
2019-05-24 20:13:55 +00:00
|
|
|
)
|
2021-11-04 08:14:24 +00:00
|
|
|
if(TARGET zip::zip)
|
|
|
|
target_link_libraries(assimp PUBLIC zip::zip)
|
|
|
|
endif()
|
|
|
|
|
2021-02-01 14:29:24 +00:00
|
|
|
if (ASSIMP_BUILD_DRACO)
|
|
|
|
target_link_libraries(assimp PUBLIC ${draco_LIBRARIES})
|
|
|
|
endif()
|
2020-02-23 12:09:35 +00:00
|
|
|
ELSE()
|
2021-01-22 16:31:59 +00:00
|
|
|
TARGET_LINK_LIBRARIES(assimp ${ZLIB_LIBRARIES} ${OPENDDL_PARSER_LIBRARIES})
|
2021-02-01 14:29:24 +00:00
|
|
|
if (ASSIMP_BUILD_DRACO)
|
|
|
|
target_link_libraries(assimp ${draco_LIBRARIES})
|
|
|
|
endif()
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
2019-02-18 13:10:32 +00:00
|
|
|
if(ASSIMP_ANDROID_JNIIOSYSTEM)
|
2015-05-19 03:44:54 +00:00
|
|
|
set(ASSIMP_ANDROID_JNIIOSYSTEM_PATH port/AndroidJNI)
|
|
|
|
add_subdirectory(../${ASSIMP_ANDROID_JNIIOSYSTEM_PATH}/ ../${ASSIMP_ANDROID_JNIIOSYSTEM_PATH}/)
|
|
|
|
target_link_libraries(assimp android_jniiosystem)
|
2020-02-23 12:09:35 +00:00
|
|
|
endif()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
|
|
|
IF (ASSIMP_BUILD_NONFREE_C4D_IMPORTER)
|
2016-07-01 14:57:45 +00:00
|
|
|
TARGET_LINK_LIBRARIES(assimp optimized ${C4D_RELEASE_LIBRARIES})
|
|
|
|
TARGET_LINK_LIBRARIES(assimp debug ${C4D_DEBUG_LIBRARIES})
|
2015-05-19 03:44:54 +00:00
|
|
|
TARGET_LINK_LIBRARIES(assimp ${C4D_EXTRA_LIBRARIES})
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF ()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
|
|
|
if( MSVC )
|
|
|
|
# in order to prevent DLL hell, each of the DLLs have to be suffixed with the major version and msvc prefix
|
2019-04-17 08:32:24 +00:00
|
|
|
# CMake 3.12 added a variable for this
|
|
|
|
if(MSVC_TOOLSET_VERSION)
|
|
|
|
set(MSVC_PREFIX "vc${MSVC_TOOLSET_VERSION}")
|
|
|
|
else()
|
2019-06-11 13:16:53 +00:00
|
|
|
if( MSVC70 OR MSVC71 )
|
|
|
|
set(MSVC_PREFIX "vc70")
|
|
|
|
elseif( MSVC80 )
|
|
|
|
set(MSVC_PREFIX "vc80")
|
|
|
|
elseif( MSVC90 )
|
|
|
|
set(MSVC_PREFIX "vc90")
|
|
|
|
elseif( MSVC10 )
|
|
|
|
set(MSVC_PREFIX "vc100")
|
|
|
|
elseif( MSVC11 )
|
|
|
|
set(MSVC_PREFIX "vc110")
|
|
|
|
elseif( MSVC12 )
|
|
|
|
set(MSVC_PREFIX "vc120")
|
|
|
|
elseif( MSVC_VERSION LESS 1910)
|
|
|
|
set(MSVC_PREFIX "vc140")
|
|
|
|
elseif( MSVC_VERSION LESS 1920)
|
|
|
|
set(MSVC_PREFIX "vc141")
|
|
|
|
elseif( MSVC_VERSION LESS 1930)
|
|
|
|
set(MSVC_PREFIX "vc142")
|
|
|
|
else()
|
|
|
|
MESSAGE(WARNING "unknown msvc version ${MSVC_VERSION}")
|
|
|
|
set(MSVC_PREFIX "vc150")
|
|
|
|
endif()
|
2019-04-17 08:32:24 +00:00
|
|
|
endif()
|
2015-05-19 03:44:54 +00:00
|
|
|
set(LIBRARY_SUFFIX "${ASSIMP_LIBRARY_SUFFIX}-${MSVC_PREFIX}-mt" CACHE STRING "the suffix for the assimp windows library")
|
|
|
|
endif()
|
|
|
|
|
2022-04-30 15:14:16 +00:00
|
|
|
if (MINGW)
|
|
|
|
set(LIBRARY_SUFFIX "-${ASSIMP_SOVERSION}" CACHE STRING "the suffix for the assimp MinGW shared library")
|
|
|
|
SET_TARGET_PROPERTIES( assimp PROPERTIES
|
|
|
|
ARCHIVE_OUTPUT_NAME assimp
|
|
|
|
)
|
|
|
|
if (NOT BUILD_SHARED_LIBS)
|
|
|
|
TARGET_LINK_LIBRARIES ( assimp -static-libgcc -static-libstdc++ -Wl,-Bstatic -lstdc++ -lwinpthread ) # winpthread is for libminizip.
|
|
|
|
endif ()
|
|
|
|
endif()
|
|
|
|
|
2019-01-06 18:37:30 +00:00
|
|
|
if (${CMAKE_SYSTEM_NAME} MATCHES "WindowsStore")
|
2019-05-13 19:49:50 +00:00
|
|
|
target_compile_definitions(assimp PUBLIC WindowsStore)
|
|
|
|
TARGET_LINK_LIBRARIES(assimp advapi32)
|
2019-01-06 18:37:30 +00:00
|
|
|
endif()
|
2020-05-02 13:14:38 +00:00
|
|
|
|
2015-05-19 03:44:54 +00:00
|
|
|
SET_TARGET_PROPERTIES( assimp PROPERTIES
|
|
|
|
VERSION ${ASSIMP_VERSION}
|
|
|
|
SOVERSION ${ASSIMP_SOVERSION} # use full version
|
|
|
|
OUTPUT_NAME assimp${LIBRARY_SUFFIX}
|
|
|
|
)
|
|
|
|
|
|
|
|
if (APPLE)
|
2020-03-23 16:35:32 +00:00
|
|
|
if (ASSIMP_BUILD_FRAMEWORK)
|
2017-11-19 22:10:05 +00:00
|
|
|
SET_TARGET_PROPERTIES( assimp PROPERTIES
|
|
|
|
FRAMEWORK TRUE
|
|
|
|
FRAMEWORK_VERSION C
|
|
|
|
MACOSX_FRAMEWORK_IDENTIFIER net.sf.assimp
|
|
|
|
PUBLIC_HEADER "${PUBLIC_HEADERS}"
|
|
|
|
)
|
|
|
|
|
|
|
|
# PUBLIC_HEADER option does not support directory structure creation
|
|
|
|
# add ./Compiler/*.h to assimp.framework via copy command
|
2018-01-06 00:18:33 +00:00
|
|
|
ADD_CUSTOM_COMMAND(TARGET assimp POST_BUILD
|
|
|
|
COMMAND "${CMAKE_COMMAND}" -E copy_directory
|
2020-05-06 13:15:23 +00:00
|
|
|
"${HEADER_PATH}/Compiler"
|
2017-11-19 22:10:05 +00:00
|
|
|
assimp.framework/Headers/Compiler
|
|
|
|
COMMENT "Copying public ./Compiler/ header files to framework bundle's Headers/Compiler/")
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF()
|
|
|
|
ENDIF()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
|
|
|
# Build against external unzip, or add ../contrib/unzip so
|
|
|
|
# assimp can #include "unzip.h"
|
2020-03-23 16:35:32 +00:00
|
|
|
IF(NOT ASSIMP_HUNTER_ENABLED)
|
2019-05-24 20:13:55 +00:00
|
|
|
if (UNZIP_FOUND)
|
|
|
|
INCLUDE_DIRECTORIES(${UNZIP_INCLUDE_DIRS})
|
|
|
|
TARGET_LINK_LIBRARIES(assimp ${UNZIP_LIBRARIES})
|
2020-02-23 12:09:35 +00:00
|
|
|
else ()
|
2019-05-24 20:13:55 +00:00
|
|
|
INCLUDE_DIRECTORIES("../")
|
2020-02-23 12:09:35 +00:00
|
|
|
endif ()
|
|
|
|
ENDIF()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
2016-08-14 13:27:16 +00:00
|
|
|
# Add RT-extension library for glTF importer with Open3DGC-compression.
|
|
|
|
IF (RT_FOUND AND ASSIMP_IMPORTER_GLTF_USE_OPEN3DGC)
|
2023-05-05 06:47:14 +00:00
|
|
|
TARGET_LINK_LIBRARIES(assimp rt)
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF ()
|
2016-08-14 13:27:16 +00:00
|
|
|
|
2020-10-13 17:30:58 +00:00
|
|
|
|
2015-05-19 03:44:54 +00:00
|
|
|
INSTALL( TARGETS assimp
|
2020-10-13 17:30:58 +00:00
|
|
|
EXPORT "${TARGETS_EXPORT_NAME}"
|
2022-02-17 10:47:34 +00:00
|
|
|
LIBRARY DESTINATION ${ASSIMP_LIB_INSTALL_DIR} COMPONENT ${LIBASSIMP_COMPONENT}
|
|
|
|
ARCHIVE DESTINATION ${ASSIMP_LIB_INSTALL_DIR} COMPONENT ${LIBASSIMP-DEV_COMPONENT}
|
|
|
|
RUNTIME DESTINATION ${ASSIMP_BIN_INSTALL_DIR} COMPONENT ${LIBASSIMP_COMPONENT}
|
|
|
|
FRAMEWORK DESTINATION ${ASSIMP_LIB_INSTALL_DIR} COMPONENT ${LIBASSIMP_COMPONENT}
|
2022-01-10 00:25:02 +00:00
|
|
|
INCLUDES DESTINATION ${ASSIMP_INCLUDE_INSTALL_DIR}
|
2020-10-13 17:30:58 +00:00
|
|
|
)
|
2015-05-19 03:44:54 +00:00
|
|
|
INSTALL( FILES ${PUBLIC_HEADERS} DESTINATION ${ASSIMP_INCLUDE_INSTALL_DIR}/assimp COMPONENT assimp-dev)
|
|
|
|
INSTALL( FILES ${COMPILER_HEADERS} DESTINATION ${ASSIMP_INCLUDE_INSTALL_DIR}/assimp/Compiler COMPONENT assimp-dev)
|
2017-11-19 22:10:05 +00:00
|
|
|
|
2015-05-19 03:44:54 +00:00
|
|
|
if (ASSIMP_ANDROID_JNIIOSYSTEM)
|
2015-11-16 06:48:17 +00:00
|
|
|
INSTALL(FILES ${HEADER_PATH}/${ASSIMP_ANDROID_JNIIOSYSTEM_PATH}/AndroidJNIIOSystem.h
|
2015-05-19 03:44:54 +00:00
|
|
|
DESTINATION ${ASSIMP_INCLUDE_INSTALL_DIR}
|
|
|
|
COMPONENT assimp-dev)
|
2020-02-23 12:09:35 +00:00
|
|
|
ENDIF()
|
2015-05-19 03:44:54 +00:00
|
|
|
|
|
|
|
if(MSVC AND ASSIMP_INSTALL_PDB)
|
2019-05-11 21:56:28 +00:00
|
|
|
# When only the static library is built, these properties must
|
|
|
|
# be set to ensure the static lib .pdb is staged for installation.
|
|
|
|
IF(NOT BUILD_SHARED_LIBS)
|
|
|
|
SET_TARGET_PROPERTIES( assimp PROPERTIES
|
|
|
|
COMPILE_PDB_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
|
|
|
COMPILE_PDB_NAME assimp${LIBRARY_SUFFIX}
|
|
|
|
COMPILE_PDB_NAME_DEBUG assimp${LIBRARY_SUFFIX}${CMAKE_DEBUG_POSTFIX}
|
|
|
|
)
|
|
|
|
ENDIF()
|
|
|
|
|
2017-07-29 11:45:25 +00:00
|
|
|
IF(CMAKE_GENERATOR MATCHES "^Visual Studio")
|
|
|
|
install(FILES ${Assimp_BINARY_DIR}/code/Debug/assimp${LIBRARY_SUFFIX}${CMAKE_DEBUG_POSTFIX}.pdb
|
|
|
|
DESTINATION ${ASSIMP_LIB_INSTALL_DIR}
|
|
|
|
CONFIGURATIONS Debug
|
|
|
|
)
|
|
|
|
install(FILES ${Assimp_BINARY_DIR}/code/RelWithDebInfo/assimp${LIBRARY_SUFFIX}.pdb
|
|
|
|
DESTINATION ${ASSIMP_LIB_INSTALL_DIR}
|
|
|
|
CONFIGURATIONS RelWithDebInfo
|
|
|
|
)
|
|
|
|
ELSE()
|
|
|
|
install(FILES ${Assimp_BINARY_DIR}/code/assimp${LIBRARY_SUFFIX}${CMAKE_DEBUG_POSTFIX}.pdb
|
|
|
|
DESTINATION ${ASSIMP_LIB_INSTALL_DIR}
|
|
|
|
CONFIGURATIONS Debug
|
|
|
|
)
|
|
|
|
install(FILES ${Assimp_BINARY_DIR}/code/assimp${LIBRARY_SUFFIX}.pdb
|
|
|
|
DESTINATION ${ASSIMP_LIB_INSTALL_DIR}
|
|
|
|
CONFIGURATIONS RelWithDebInfo
|
|
|
|
)
|
|
|
|
ENDIF()
|
2018-01-03 16:22:07 +00:00
|
|
|
ENDIF ()
|
2016-11-17 18:57:24 +00:00
|
|
|
|
|
|
|
if (ASSIMP_COVERALLS)
|
|
|
|
include(Coveralls)
|
|
|
|
|
|
|
|
set(COVERAGE_SRCS ${assimp_src} ${TEST_SRCS} )
|
|
|
|
|
|
|
|
# Create the coveralls target.
|
|
|
|
coveralls_setup(
|
|
|
|
"${COVERAGE_SRCS}" # The source files.
|
|
|
|
ON # If we should upload.
|
|
|
|
"${PROJECT_SOURCE_DIR}/cmake-modules/") # (Optional) Alternate project cmake module path.
|
2018-01-03 16:22:07 +00:00
|
|
|
ENDIF()
|