|
@@ -34,6 +34,8 @@
|
|
|
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
|
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
#----------------------------------------------------------------------
|
|
|
+SET(CMAKE_POLICY_DEFAULT_CMP0074 NEW)
|
|
|
+
|
|
|
CMAKE_MINIMUM_REQUIRED( VERSION 3.0 )
|
|
|
|
|
|
# Toggles the use of the hunter package manager
|
|
@@ -49,7 +51,7 @@ IF(HUNTER_ENABLED)
|
|
|
add_definitions(-DASSIMP_USE_HUNTER)
|
|
|
ENDIF(HUNTER_ENABLED)
|
|
|
|
|
|
-PROJECT( Assimp )
|
|
|
+PROJECT( Assimp VERSION 5.0.0 )
|
|
|
|
|
|
# All supported options ###############################################
|
|
|
|
|
@@ -164,12 +166,11 @@ ELSE()
|
|
|
ENDIF(NOT BUILD_SHARED_LIBS)
|
|
|
|
|
|
# Define here the needed parameters
|
|
|
-SET (ASSIMP_VERSION_MAJOR 5)
|
|
|
-SET (ASSIMP_VERSION_MINOR 0)
|
|
|
-SET (ASSIMP_VERSION_PATCH 0)
|
|
|
+SET (ASSIMP_VERSION_MAJOR ${PROJECT_VERSION_MAJOR})
|
|
|
+SET (ASSIMP_VERSION_MINOR ${PROJECT_VERSION_MINOR})
|
|
|
+SET (ASSIMP_VERSION_PATCH ${PROJECT_VERSION_PATCH})
|
|
|
SET (ASSIMP_VERSION ${ASSIMP_VERSION_MAJOR}.${ASSIMP_VERSION_MINOR}.${ASSIMP_VERSION_PATCH})
|
|
|
-SET (ASSIMP_SOVERSION 4)
|
|
|
-SET (PROJECT_VERSION "${ASSIMP_VERSION}")
|
|
|
+SET (ASSIMP_SOVERSION 5)
|
|
|
|
|
|
SET( ASSIMP_PACKAGE_VERSION "0" CACHE STRING "the package-specific version used for uploading the sources" )
|
|
|
|
|
@@ -353,28 +354,67 @@ IF (NOT TARGET uninstall)
|
|
|
ADD_CUSTOM_TARGET(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
|
|
|
ENDIF()
|
|
|
|
|
|
-# cmake configuration files
|
|
|
-CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimp-config.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimp-config.cmake" @ONLY IMMEDIATE)
|
|
|
-CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets.cmake" @ONLY IMMEDIATE)
|
|
|
-IF (is_multi_config)
|
|
|
- CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-debug.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake" @ONLY IMMEDIATE)
|
|
|
- CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-release.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake" @ONLY IMMEDIATE)
|
|
|
- SET(PACKAGE_TARGETS_FILE "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake")
|
|
|
-ELSEIF (CMAKE_BUILD_TYPE STREQUAL Debug)
|
|
|
- CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-debug.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake" @ONLY IMMEDIATE)
|
|
|
- SET(PACKAGE_TARGETS_FILE "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake")
|
|
|
-ELSE()
|
|
|
- CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-release.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake" @ONLY IMMEDIATE)
|
|
|
- SET(PACKAGE_TARGETS_FILE "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake")
|
|
|
-ENDIF()
|
|
|
-CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimp-config-version.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimp-config-version.cmake" @ONLY IMMEDIATE)
|
|
|
-#we should generated these scripts after CMake VERSION 3.0.2 using export(EXPORT ...) and write_basic_package_version_file(...)
|
|
|
-INSTALL(FILES
|
|
|
- "${CMAKE_CURRENT_BINARY_DIR}/assimp-config.cmake"
|
|
|
- "${CMAKE_CURRENT_BINARY_DIR}/assimp-config-version.cmake"
|
|
|
- "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets.cmake"
|
|
|
- ${PACKAGE_TARGETS_FILE}
|
|
|
- DESTINATION "${ASSIMP_LIB_INSTALL_DIR}/cmake/assimp-${ASSIMP_VERSION_MAJOR}.${ASSIMP_VERSION_MINOR}" COMPONENT ${LIBASSIMP-DEV_COMPONENT})
|
|
|
+IF(HUNTER_ENABLED)
|
|
|
+ set(CONFIG_INSTALL_DIR "lib/cmake/${PROJECT_NAME}")
|
|
|
+ set(INCLUDE_INSTALL_DIR "include")
|
|
|
+
|
|
|
+ set(GENERATED_DIR "${CMAKE_CURRENT_BINARY_DIR}/generated")
|
|
|
+
|
|
|
+ # Configuration
|
|
|
+ set(VERSION_CONFIG "${GENERATED_DIR}/${PROJECT_NAME}ConfigVersion.cmake")
|
|
|
+ set(PROJECT_CONFIG "${GENERATED_DIR}/${PROJECT_NAME}Config.cmake")
|
|
|
+ set(TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets")
|
|
|
+ set(NAMESPACE "${PROJECT_NAME}::")
|
|
|
+
|
|
|
+ # Include module with fuction 'write_basic_package_version_file'
|
|
|
+ include(CMakePackageConfigHelpers)
|
|
|
+
|
|
|
+ # Note: PROJECT_VERSION is used as a VERSION
|
|
|
+ write_basic_package_version_file("${VERSION_CONFIG}" COMPATIBILITY SameMajorVersion)
|
|
|
+
|
|
|
+ # Use variables:
|
|
|
+ # * TARGETS_EXPORT_NAME
|
|
|
+ # * PROJECT_NAME
|
|
|
+ configure_package_config_file(
|
|
|
+ "cmake/assimp-hunter-config.cmake.in"
|
|
|
+ "${PROJECT_CONFIG}"
|
|
|
+ INSTALL_DESTINATION "${CONFIG_INSTALL_DIR}"
|
|
|
+ )
|
|
|
+
|
|
|
+ install(
|
|
|
+ FILES "${PROJECT_CONFIG}" "${VERSION_CONFIG}"
|
|
|
+ DESTINATION "${CONFIG_INSTALL_DIR}"
|
|
|
+ )
|
|
|
+
|
|
|
+ install(
|
|
|
+ EXPORT "${TARGETS_EXPORT_NAME}"
|
|
|
+ NAMESPACE "${NAMESPACE}"
|
|
|
+ DESTINATION "${CONFIG_INSTALL_DIR}"
|
|
|
+ )
|
|
|
+ELSE(HUNTER_ENABLED)
|
|
|
+ # cmake configuration files
|
|
|
+ CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimp-config.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimp-config.cmake" @ONLY IMMEDIATE)
|
|
|
+ CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets.cmake" @ONLY IMMEDIATE)
|
|
|
+ IF (is_multi_config)
|
|
|
+ CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-debug.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake" @ONLY IMMEDIATE)
|
|
|
+ CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-release.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake" @ONLY IMMEDIATE)
|
|
|
+ SET(PACKAGE_TARGETS_FILE "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake")
|
|
|
+ ELSEIF (CMAKE_BUILD_TYPE STREQUAL Debug)
|
|
|
+ CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-debug.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake" @ONLY IMMEDIATE)
|
|
|
+ SET(PACKAGE_TARGETS_FILE "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake")
|
|
|
+ ELSE()
|
|
|
+ CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-release.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake" @ONLY IMMEDIATE)
|
|
|
+ SET(PACKAGE_TARGETS_FILE "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake")
|
|
|
+ ENDIF()
|
|
|
+ CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimp-config-version.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimp-config-version.cmake" @ONLY IMMEDIATE)
|
|
|
+ #we should generated these scripts after CMake VERSION 3.0.2 using export(EXPORT ...) and write_basic_package_version_file(...)
|
|
|
+ INSTALL(FILES
|
|
|
+ "${CMAKE_CURRENT_BINARY_DIR}/assimp-config.cmake"
|
|
|
+ "${CMAKE_CURRENT_BINARY_DIR}/assimp-config-version.cmake"
|
|
|
+ "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets.cmake"
|
|
|
+ ${PACKAGE_TARGETS_FILE}
|
|
|
+ DESTINATION "${ASSIMP_LIB_INSTALL_DIR}/cmake/assimp-${ASSIMP_VERSION_MAJOR}.${ASSIMP_VERSION_MINOR}" COMPONENT ${LIBASSIMP-DEV_COMPONENT})
|
|
|
+ENDIF(HUNTER_ENABLED)
|
|
|
|
|
|
FIND_PACKAGE( DirectX )
|
|
|
|