diff options
| author | Bryan Galdrikian <[email protected]> | 2018-05-31 11:36:08 -0700 |
|---|---|---|
| committer | Bryan Galdrikian <[email protected]> | 2018-05-31 11:36:08 -0700 |
| commit | 7115f60b91b5717d90f643fd692010905c7004db (patch) | |
| tree | effd68c6978751c517d54c2f2bb5bb6e7dc93e18 /sdk/compiler/cmake | |
| parent | Updating BlastTool zip (diff) | |
| download | blast-1.1.3_rc1.tar.xz blast-1.1.3_rc1.zip | |
Blast 1.1.3. See docs/release_notes.txt.v1.1.3_rc1
Diffstat (limited to 'sdk/compiler/cmake')
48 files changed, 3864 insertions, 4259 deletions
diff --git a/sdk/compiler/cmake/NvBlast.cmake b/sdk/compiler/cmake/NvBlast.cmake index 576328d..db10d8f 100644..100755 --- a/sdk/compiler/cmake/NvBlast.cmake +++ b/sdk/compiler/cmake/NvBlast.cmake @@ -1,93 +1,93 @@ -# -# Build NvBlast common -# - -SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) -SET(SOLVER_SOURCE_DIR ${PROJECT_SOURCE_DIR}/lowlevel/source) -SET(PUBLIC_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/lowlevel/include) - -# Include here after the directories are defined so that the platform specific file can use the variables. -include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlast.cmake) - -SET(COMMON_FILES - ${BLAST_PLATFORM_COMMON_FILES} - - ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp - ${COMMON_SOURCE_DIR}/NvBlastAssert.h - ${COMMON_SOURCE_DIR}/NvBlastAtomic.cpp - ${COMMON_SOURCE_DIR}/NvBlastAtomic.h - ${COMMON_SOURCE_DIR}/NvBlastDLink.h - ${COMMON_SOURCE_DIR}/NvBlastFixedArray.h - ${COMMON_SOURCE_DIR}/NvBlastFixedBitmap.h - ${COMMON_SOURCE_DIR}/NvBlastFixedBoolArray.h - ${COMMON_SOURCE_DIR}/NvBlastFixedPriorityQueue.h - ${COMMON_SOURCE_DIR}/NvBlastGeometry.h -# ${COMMON_SOURCE_DIR}/NvBlastIndexFns.cpp - ${COMMON_SOURCE_DIR}/NvBlastIndexFns.h - ${COMMON_SOURCE_DIR}/NvBlastIteratorBase.h - ${COMMON_SOURCE_DIR}/NvBlastMath.h - ${COMMON_SOURCE_DIR}/NvBlastMemory.h - ${COMMON_SOURCE_DIR}/NvBlastPreprocessorInternal.h - ${COMMON_SOURCE_DIR}/NvBlastTime.cpp - ${COMMON_SOURCE_DIR}/NvBlastTime.h - ${COMMON_SOURCE_DIR}/NvBlastTimers.cpp -) - -SET(PUBLIC_FILES - ${PUBLIC_INCLUDE_DIR}/NvBlast.h - ${PUBLIC_INCLUDE_DIR}/NvBlastPreprocessor.h - ${PUBLIC_INCLUDE_DIR}/NvBlastTypes.h - ${PUBLIC_INCLUDE_DIR}/NvCTypes.h - ${PUBLIC_INCLUDE_DIR}/NvPreprocessor.h -) - -SET(SOLVER_FILES - ${SOLVER_SOURCE_DIR}/NvBlastActor.cpp - ${SOLVER_SOURCE_DIR}/NvBlastActor.h - ${SOLVER_SOURCE_DIR}/NvBlastFamilyGraph.cpp - ${SOLVER_SOURCE_DIR}/NvBlastFamilyGraph.h - ${SOLVER_SOURCE_DIR}/NvBlastActorSerializationBlock.cpp - ${SOLVER_SOURCE_DIR}/NvBlastActorSerializationBlock.h - ${SOLVER_SOURCE_DIR}/NvBlastAsset.cpp - ${SOLVER_SOURCE_DIR}/NvBlastAssetHelper.cpp - ${SOLVER_SOURCE_DIR}/NvBlastAsset.h - ${SOLVER_SOURCE_DIR}/NvBlastSupportGraph.h - ${SOLVER_SOURCE_DIR}/NvBlastChunkHierarchy.h - ${SOLVER_SOURCE_DIR}/NvBlastFamily.cpp - ${SOLVER_SOURCE_DIR}/NvBlastFamily.h -) - -ADD_LIBRARY(NvBlast ${BLAST_LIB_TYPE} - ${COMMON_FILES} - ${PUBLIC_FILES} - ${SOLVER_FILES} -) - -SOURCE_GROUP("common" FILES ${COMMON_FILES}) -SOURCE_GROUP("public" FILES ${PUBLIC_FILES}) -SOURCE_GROUP("solver" FILES ${SOLVER_FILES}) - -# Target specific compile options - - -TARGET_INCLUDE_DIRECTORIES(NvBlast - PRIVATE ${BLAST_PLATFORM_INCLUDES} - - PUBLIC ${PUBLIC_INCLUDE_DIR} - PRIVATE ${COMMON_SOURCE_DIR} -) - -TARGET_COMPILE_DEFINITIONS(NvBlast - PRIVATE ${BLAST_COMPILE_DEFS} -) - -TARGET_COMPILE_OPTIONS(NvBlast - PRIVATE ${BLAST_PLATFORM_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlast PROPERTIES - PDB_NAME_DEBUG "NvBlast${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlast${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlast${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlast${CMAKE_RELEASE_POSTFIX}" -) +#
+# Build NvBlast common
+#
+
+SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
+SET(SOLVER_SOURCE_DIR ${PROJECT_SOURCE_DIR}/lowlevel/source)
+SET(PUBLIC_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/lowlevel/include)
+
+# Include here after the directories are defined so that the platform specific file can use the variables.
+include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlast.cmake)
+
+SET(COMMON_FILES
+ ${BLAST_PLATFORM_COMMON_FILES}
+
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.h
+ ${COMMON_SOURCE_DIR}/NvBlastAtomic.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAtomic.h
+ ${COMMON_SOURCE_DIR}/NvBlastDLink.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedBitmap.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedBoolArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedPriorityQueue.h
+ ${COMMON_SOURCE_DIR}/NvBlastGeometry.h
+# ${COMMON_SOURCE_DIR}/NvBlastIndexFns.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastIndexFns.h
+ ${COMMON_SOURCE_DIR}/NvBlastIteratorBase.h
+ ${COMMON_SOURCE_DIR}/NvBlastMath.h
+ ${COMMON_SOURCE_DIR}/NvBlastMemory.h
+ ${COMMON_SOURCE_DIR}/NvBlastPreprocessorInternal.h
+ ${COMMON_SOURCE_DIR}/NvBlastTime.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastTime.h
+ ${COMMON_SOURCE_DIR}/NvBlastTimers.cpp
+)
+
+SET(PUBLIC_FILES
+ ${PUBLIC_INCLUDE_DIR}/NvBlast.h
+ ${PUBLIC_INCLUDE_DIR}/NvBlastPreprocessor.h
+ ${PUBLIC_INCLUDE_DIR}/NvBlastTypes.h
+ ${PUBLIC_INCLUDE_DIR}/NvCTypes.h
+ ${PUBLIC_INCLUDE_DIR}/NvPreprocessor.h
+)
+
+SET(SOLVER_FILES
+ ${SOLVER_SOURCE_DIR}/NvBlastActor.cpp
+ ${SOLVER_SOURCE_DIR}/NvBlastActor.h
+ ${SOLVER_SOURCE_DIR}/NvBlastFamilyGraph.cpp
+ ${SOLVER_SOURCE_DIR}/NvBlastFamilyGraph.h
+ ${SOLVER_SOURCE_DIR}/NvBlastActorSerializationBlock.cpp
+ ${SOLVER_SOURCE_DIR}/NvBlastActorSerializationBlock.h
+ ${SOLVER_SOURCE_DIR}/NvBlastAsset.cpp
+ ${SOLVER_SOURCE_DIR}/NvBlastAssetHelper.cpp
+ ${SOLVER_SOURCE_DIR}/NvBlastAsset.h
+ ${SOLVER_SOURCE_DIR}/NvBlastSupportGraph.h
+ ${SOLVER_SOURCE_DIR}/NvBlastChunkHierarchy.h
+ ${SOLVER_SOURCE_DIR}/NvBlastFamily.cpp
+ ${SOLVER_SOURCE_DIR}/NvBlastFamily.h
+)
+
+ADD_LIBRARY(NvBlast ${BLAST_LIB_TYPE}
+ ${COMMON_FILES}
+ ${PUBLIC_FILES}
+ ${SOLVER_FILES}
+)
+
+SOURCE_GROUP("common" FILES ${COMMON_FILES})
+SOURCE_GROUP("public" FILES ${PUBLIC_FILES})
+SOURCE_GROUP("solver" FILES ${SOLVER_FILES})
+
+# Target specific compile options
+
+
+TARGET_INCLUDE_DIRECTORIES(NvBlast
+ PRIVATE ${BLAST_PLATFORM_INCLUDES}
+
+ PUBLIC ${PUBLIC_INCLUDE_DIR}
+ PRIVATE ${COMMON_SOURCE_DIR}
+)
+
+TARGET_COMPILE_DEFINITIONS(NvBlast
+ PRIVATE ${BLAST_COMPILE_DEFS}
+)
+
+TARGET_COMPILE_OPTIONS(NvBlast
+ PRIVATE ${BLAST_PLATFORM_COMPILE_OPTIONS}
+)
+
+SET_TARGET_PROPERTIES(NvBlast PROPERTIES
+ PDB_NAME_DEBUG "NvBlast${CMAKE_DEBUG_POSTFIX}"
+ PDB_NAME_CHECKED "NvBlast${CMAKE_CHECKED_POSTFIX}"
+ PDB_NAME_PROFILE "NvBlast${CMAKE_PROFILE_POSTFIX}"
+ PDB_NAME_RELEASE "NvBlast${CMAKE_RELEASE_POSTFIX}"
+)
diff --git a/sdk/compiler/cmake/NvBlastExtAssetUtils.cmake b/sdk/compiler/cmake/NvBlastExtAssetUtils.cmake index 830196e..f69d40d 100644..100755 --- a/sdk/compiler/cmake/NvBlastExtAssetUtils.cmake +++ b/sdk/compiler/cmake/NvBlastExtAssetUtils.cmake @@ -1,93 +1,93 @@ -# -# Build NvBlastExtAssetUtils Common -# - -SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) - -SET(ASSETUTILS_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/assetutils/include) -SET(ASSETUTILS_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/assetutils/source) - -SET(EXT_COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source) -SET(EXT_COMMON_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/include) - -# Include here after the directories are defined so that the platform specific file can use the variables. -include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtAssetUtils.cmake) - - -SET(COMMON_FILES - ${BLASTEXTASSETUTILS_PLATFORM_COMMON_FILES} - - ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp - ${COMMON_SOURCE_DIR}/NvBlastAssert.h - ${COMMON_SOURCE_DIR}/NvBlastAtomic.cpp - ${COMMON_SOURCE_DIR}/NvBlastAtomic.h - ${COMMON_SOURCE_DIR}/NvBlastDLink.h - ${COMMON_SOURCE_DIR}/NvBlastFixedArray.h - ${COMMON_SOURCE_DIR}/NvBlastFixedBitmap.h - ${COMMON_SOURCE_DIR}/NvBlastFixedBoolArray.h - ${COMMON_SOURCE_DIR}/NvBlastFixedPriorityQueue.h - ${COMMON_SOURCE_DIR}/NvBlastGeometry.h - ${COMMON_SOURCE_DIR}/NvBlastIndexFns.h - ${COMMON_SOURCE_DIR}/NvBlastIteratorBase.h - ${COMMON_SOURCE_DIR}/NvBlastMath.h - ${COMMON_SOURCE_DIR}/NvBlastMemory.h - ${COMMON_SOURCE_DIR}/NvBlastPreprocessorInternal.h - ${COMMON_SOURCE_DIR}/NvBlastTime.cpp - ${COMMON_SOURCE_DIR}/NvBlastTime.h - ${COMMON_SOURCE_DIR}/NvBlastTimers.cpp -) - -SET(ASSETUTILS_SOURCE_FILES - ${ASSETUTILS_SOURCE_DIR}/NvBlastExtAssetUtils.cpp -) - -SET(ASSETUTILS_PUBLIC_FILES - ${ASSETUTILS_INCLUDE_DIR}/NvBlastExtAssetUtils.h -) - -ADD_LIBRARY(NvBlastExtAssetUtils ${BLASTEXTASSETUTILS_LIB_TYPE} - ${COMMON_FILES} - ${ASSETUTILS_SOURCE_FILES} - ${ASSETUTILS_PUBLIC_FILES} -) - -SOURCE_GROUP("common" FILES ${COMMON_FILES}) -SOURCE_GROUP("public" FILES ${ASSETUTILS_PUBLIC_FILES}) -SOURCE_GROUP("src" FILES ${ASSETUTILS_SOURCE_FILES}) - -# Target specific compile options - -TARGET_INCLUDE_DIRECTORIES(NvBlastExtAssetUtils - PUBLIC ${ASSETUTILS_INCLUDE_DIR} - - PRIVATE ${BLASTEXTASSETUTILS_PLATFORM_INCLUDES} - - PRIVATE ${PROJECT_SOURCE_DIR}/common - PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/include - PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/source - - PRIVATE ${COMMON_SOURCE_DIR} -) - -TARGET_COMPILE_DEFINITIONS(NvBlastExtAssetUtils - PUBLIC CAPNP_LITE=1 - PRIVATE ${BLASTEXTASSETUTILS_COMPILE_DEFS} -) - -# Warning disables for Capn Proto -TARGET_COMPILE_OPTIONS(NvBlastExtAssetUtils - PRIVATE ${BLASTEXTASSETUTILS_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlastExtAssetUtils PROPERTIES - PDB_NAME_DEBUG "NvBlastExtAssetUtils${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlastExtAssetUtils${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlastExtAssetUtils${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlastExtAssetUtils${CMAKE_RELEASE_POSTFIX}" -) - -# Do final direct sets after the target has been defined -TARGET_LINK_LIBRARIES(NvBlastExtAssetUtils - PRIVATE NvBlast - PUBLIC NvBlastGlobals -) +#
+# Build NvBlastExtAssetUtils Common
+#
+
+SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
+
+SET(ASSETUTILS_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/assetutils/include)
+SET(ASSETUTILS_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/assetutils/source)
+
+SET(EXT_COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source)
+SET(EXT_COMMON_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/include)
+
+# Include here after the directories are defined so that the platform specific file can use the variables.
+include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtAssetUtils.cmake)
+
+
+SET(COMMON_FILES
+ ${BLASTEXTASSETUTILS_PLATFORM_COMMON_FILES}
+
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.h
+ ${COMMON_SOURCE_DIR}/NvBlastAtomic.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAtomic.h
+ ${COMMON_SOURCE_DIR}/NvBlastDLink.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedBitmap.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedBoolArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedPriorityQueue.h
+ ${COMMON_SOURCE_DIR}/NvBlastGeometry.h
+ ${COMMON_SOURCE_DIR}/NvBlastIndexFns.h
+ ${COMMON_SOURCE_DIR}/NvBlastIteratorBase.h
+ ${COMMON_SOURCE_DIR}/NvBlastMath.h
+ ${COMMON_SOURCE_DIR}/NvBlastMemory.h
+ ${COMMON_SOURCE_DIR}/NvBlastPreprocessorInternal.h
+ ${COMMON_SOURCE_DIR}/NvBlastTime.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastTime.h
+ ${COMMON_SOURCE_DIR}/NvBlastTimers.cpp
+)
+
+SET(ASSETUTILS_SOURCE_FILES
+ ${ASSETUTILS_SOURCE_DIR}/NvBlastExtAssetUtils.cpp
+)
+
+SET(ASSETUTILS_PUBLIC_FILES
+ ${ASSETUTILS_INCLUDE_DIR}/NvBlastExtAssetUtils.h
+)
+
+ADD_LIBRARY(NvBlastExtAssetUtils ${BLASTEXTASSETUTILS_LIB_TYPE}
+ ${COMMON_FILES}
+ ${ASSETUTILS_SOURCE_FILES}
+ ${ASSETUTILS_PUBLIC_FILES}
+)
+
+SOURCE_GROUP("common" FILES ${COMMON_FILES})
+SOURCE_GROUP("public" FILES ${ASSETUTILS_PUBLIC_FILES})
+SOURCE_GROUP("src" FILES ${ASSETUTILS_SOURCE_FILES})
+
+# Target specific compile options
+
+TARGET_INCLUDE_DIRECTORIES(NvBlastExtAssetUtils
+ PUBLIC ${ASSETUTILS_INCLUDE_DIR}
+
+ PRIVATE ${BLASTEXTASSETUTILS_PLATFORM_INCLUDES}
+
+ PRIVATE ${PROJECT_SOURCE_DIR}/common
+ PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/include
+ PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/source
+
+ PRIVATE ${COMMON_SOURCE_DIR}
+)
+
+TARGET_COMPILE_DEFINITIONS(NvBlastExtAssetUtils
+ PUBLIC CAPNP_LITE=1
+ PRIVATE ${BLASTEXTASSETUTILS_COMPILE_DEFS}
+)
+
+# Warning disables for Capn Proto
+TARGET_COMPILE_OPTIONS(NvBlastExtAssetUtils
+ PRIVATE ${BLASTEXTASSETUTILS_COMPILE_OPTIONS}
+)
+
+SET_TARGET_PROPERTIES(NvBlastExtAssetUtils PROPERTIES
+ PDB_NAME_DEBUG "NvBlastExtAssetUtils${CMAKE_DEBUG_POSTFIX}"
+ PDB_NAME_CHECKED "NvBlastExtAssetUtils${CMAKE_CHECKED_POSTFIX}"
+ PDB_NAME_PROFILE "NvBlastExtAssetUtils${CMAKE_PROFILE_POSTFIX}"
+ PDB_NAME_RELEASE "NvBlastExtAssetUtils${CMAKE_RELEASE_POSTFIX}"
+)
+
+# Do final direct sets after the target has been defined
+TARGET_LINK_LIBRARIES(NvBlastExtAssetUtils
+ PRIVATE NvBlast
+ PUBLIC NvBlastGlobals
+)
diff --git a/sdk/compiler/cmake/NvBlastExtAuthoring.cmake b/sdk/compiler/cmake/NvBlastExtAuthoring.cmake index c0818c2..9f39e01 100644..100755 --- a/sdk/compiler/cmake/NvBlastExtAuthoring.cmake +++ b/sdk/compiler/cmake/NvBlastExtAuthoring.cmake @@ -1,146 +1,146 @@ -# -# Build NvBlastExt Common -# - - -SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) - -SET(AUTHORING_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/authoring/source) -SET(COMMON_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source) -SET(AUTHORING_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/authoring/include) - -FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED) -FIND_PACKAGE(PhysXSDK $ENV{PM_PhysX_VERSION} REQUIRED) -FIND_PACKAGE(BoostMultiprecision $ENV{PM_BoostMultiprecision_VERSION} REQUIRED) - -# Include here after the directories are defined so that the platform specific file can use the variables. -include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtAuthoring.cmake) - -SET(COMMON_FILES - ${BLASTEXT_PLATFORM_COMMON_FILES} - - #${COMMON_SOURCE_DIR}/NvBlastAssert.cpp - #${COMMON_SOURCE_DIR}/NvBlastAssert.h -) - -SET(PUBLIC_FILES - ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringBondGenerator.h - ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringCollisionBuilder.h - ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringFractureTool.h - ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringMesh.h - ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringTypes.h - ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoring.h - ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringMeshCleaner.h - ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringCutout.h -) - -SET(EXT_AUTHORING_FILES - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringAccelerator.cpp - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringAccelerator.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringBondGeneratorImpl.cpp - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringBondGeneratorImpl.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringBooleanTool.cpp - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringBooleanTool.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringCollisionBuilderImpl.cpp - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringCollisionBuilderImpl.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshImpl.cpp - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshImpl.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringPerlinNoise.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringTriangulator.cpp - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringTriangulator.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringVSA.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringFractureToolImpl.cpp - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringFractureToolImpl.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtTriangleProcessor.cpp - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshNoiser.cpp - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshNoiser.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtTriangleProcessor.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtApexSharedParts.cpp - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtApexSharedParts.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringInternalCommon.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoring.cpp - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshCleanerImpl.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshCleanerImpl.cpp - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringCutoutImpl.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringCutoutImpl.cpp -) - -SET(VHACD_SOURCE_FILES - ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/btAlignedAllocator.cpp - ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/btConvexHullComputer.cpp - ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/FloatMath.cpp - ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/FloatMath.inl - ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/VHACD.cpp - ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/VHACD-ASYNC.cpp - ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/vhacdICHull.cpp - ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/vhacdManifoldMesh.cpp - ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/vhacdMesh.cpp - ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/vhacdRaycastMesh.cpp - ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/vhacdVolume.cpp -) - -SET_SOURCE_FILES_PROPERTIES(${VHACD_SOURCE_FILES} PROPERTIES COMPILE_FLAGS "${VHACD_COMPILE_FLAGS}") - - -ADD_LIBRARY(NvBlastExtAuthoring ${BLAST_EXT_SHARED_LIB_TYPE} - ${COMMON_FILES} - ${PUBLIC_FILES} - - ${EXT_AUTHORING_FILES} - ${VHACD_SOURCE_FILES} -) - -SOURCE_GROUP("common" FILES ${COMMON_FILES}) -SOURCE_GROUP("public" FILES ${PUBLIC_FILES}) -SOURCE_GROUP("src" FILES ${EXT_AUTHORING_FILES}) -SOURCE_GROUP("VHACD/src" FILES ${VHACD_SOURCE_FILES}) - - -# Target specific compile options - -TARGET_INCLUDE_DIRECTORIES(NvBlastExtAuthoring - PRIVATE ${BLASTEXT_PLATFORM_INCLUDES} - - PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include - PUBLIC ${AUTHORING_EXT_INCLUDE_DIR} - - PRIVATE ${PROJECT_SOURCE_DIR}/toolkit/include - PRIVATE ${PHYSX_EXT_INCLUDE_DIR} - - PRIVATE ${PROJECT_SOURCE_DIR}/common - PRIVATE ${COMMON_EXT_SOURCE_DIR} - - PRIVATE ${AUTHORING_EXT_SOURCE_DIR} - - PRIVATE ${PROJECT_SOURCE_DIR}/extensions/assetutils/include - - PRIVATE ${PHYSXSDK_INCLUDE_DIRS} - PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS} - - PRIVATE ${BOOSTMULTIPRECISION_INCLUDE_DIRS} - - PRIVATE ${AUTHORING_EXT_SOURCE_DIR}/VHACD/inc - PRIVATE ${AUTHORING_EXT_SOURCE_DIR}/VHACD/public -) - -TARGET_COMPILE_DEFINITIONS(NvBlastExtAuthoring - PRIVATE ${BLASTEXT_COMPILE_DEFS} -) - -# Warning disables for Capn Proto -TARGET_COMPILE_OPTIONS(NvBlastExtAuthoring - PRIVATE ${BLASTEXT_PLATFORM_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlastExtAuthoring PROPERTIES - PDB_NAME_DEBUG "NvBlastExtAuthoring${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlastExtAuthoring${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlastExtAuthoring${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlastExtAuthoring${CMAKE_RELEASE_POSTFIX}" -) - -# Do final direct sets after the target has been defined -TARGET_LINK_LIBRARIES(NvBlastExtAuthoring - PUBLIC NvBlast NvBlastGlobals - PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS} -) +#
+# Build NvBlastExt Common
+#
+
+
+SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
+
+SET(AUTHORING_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/authoring/source)
+SET(COMMON_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source)
+SET(AUTHORING_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/authoring/include)
+
+FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED)
+FIND_PACKAGE(PhysXSDK $ENV{PM_PhysX_VERSION} REQUIRED)
+FIND_PACKAGE(BoostMultiprecision $ENV{PM_BoostMultiprecision_VERSION} REQUIRED)
+
+# Include here after the directories are defined so that the platform specific file can use the variables.
+include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtAuthoring.cmake)
+
+SET(COMMON_FILES
+ ${BLASTEXT_PLATFORM_COMMON_FILES}
+
+ #${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
+ #${COMMON_SOURCE_DIR}/NvBlastAssert.h
+)
+
+SET(PUBLIC_FILES
+ ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringBondGenerator.h
+ ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringCollisionBuilder.h
+ ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringFractureTool.h
+ ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringMesh.h
+ ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringTypes.h
+ ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoring.h
+ ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringMeshCleaner.h
+ ${AUTHORING_EXT_INCLUDE_DIR}/NvBlastExtAuthoringCutout.h
+)
+
+SET(EXT_AUTHORING_FILES
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringAccelerator.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringAccelerator.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringBondGeneratorImpl.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringBondGeneratorImpl.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringBooleanTool.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringBooleanTool.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringCollisionBuilderImpl.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringCollisionBuilderImpl.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshImpl.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshImpl.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringPerlinNoise.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringTriangulator.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringTriangulator.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringVSA.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringFractureToolImpl.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringFractureToolImpl.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtTriangleProcessor.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshNoiser.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshNoiser.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtTriangleProcessor.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtApexSharedParts.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtApexSharedParts.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringInternalCommon.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoring.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshCleanerImpl.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMeshCleanerImpl.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringCutoutImpl.h
+ ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringCutoutImpl.cpp
+)
+
+SET(VHACD_SOURCE_FILES
+ ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/btAlignedAllocator.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/btConvexHullComputer.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/FloatMath.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/FloatMath.inl
+ ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/VHACD.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/VHACD-ASYNC.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/vhacdICHull.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/vhacdManifoldMesh.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/vhacdMesh.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/vhacdRaycastMesh.cpp
+ ${AUTHORING_EXT_SOURCE_DIR}/VHACD/src/vhacdVolume.cpp
+)
+
+SET_SOURCE_FILES_PROPERTIES(${VHACD_SOURCE_FILES} PROPERTIES COMPILE_FLAGS "${VHACD_COMPILE_FLAGS}")
+
+
+ADD_LIBRARY(NvBlastExtAuthoring ${BLAST_EXT_SHARED_LIB_TYPE}
+ ${COMMON_FILES}
+ ${PUBLIC_FILES}
+
+ ${EXT_AUTHORING_FILES}
+ ${VHACD_SOURCE_FILES}
+)
+
+SOURCE_GROUP("common" FILES ${COMMON_FILES})
+SOURCE_GROUP("public" FILES ${PUBLIC_FILES})
+SOURCE_GROUP("src" FILES ${EXT_AUTHORING_FILES})
+SOURCE_GROUP("VHACD/src" FILES ${VHACD_SOURCE_FILES})
+
+
+# Target specific compile options
+
+TARGET_INCLUDE_DIRECTORIES(NvBlastExtAuthoring
+ PRIVATE ${BLASTEXT_PLATFORM_INCLUDES}
+
+ PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include
+ PUBLIC ${AUTHORING_EXT_INCLUDE_DIR}
+
+ PRIVATE ${PROJECT_SOURCE_DIR}/toolkit/include
+ PRIVATE ${PHYSX_EXT_INCLUDE_DIR}
+
+ PRIVATE ${PROJECT_SOURCE_DIR}/common
+ PRIVATE ${COMMON_EXT_SOURCE_DIR}
+
+ PRIVATE ${AUTHORING_EXT_SOURCE_DIR}
+
+ PRIVATE ${PROJECT_SOURCE_DIR}/extensions/assetutils/include
+
+ PRIVATE ${PHYSXSDK_INCLUDE_DIRS}
+ PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS}
+
+ PRIVATE ${BOOSTMULTIPRECISION_INCLUDE_DIRS}
+
+ PRIVATE ${AUTHORING_EXT_SOURCE_DIR}/VHACD/inc
+ PRIVATE ${AUTHORING_EXT_SOURCE_DIR}/VHACD/public
+)
+
+TARGET_COMPILE_DEFINITIONS(NvBlastExtAuthoring
+ PRIVATE ${BLASTEXT_COMPILE_DEFS}
+)
+
+# Warning disables for Capn Proto
+TARGET_COMPILE_OPTIONS(NvBlastExtAuthoring
+ PRIVATE ${BLASTEXT_PLATFORM_COMPILE_OPTIONS}
+)
+
+SET_TARGET_PROPERTIES(NvBlastExtAuthoring PROPERTIES
+ PDB_NAME_DEBUG "NvBlastExtAuthoring${CMAKE_DEBUG_POSTFIX}"
+ PDB_NAME_CHECKED "NvBlastExtAuthoring${CMAKE_CHECKED_POSTFIX}"
+ PDB_NAME_PROFILE "NvBlastExtAuthoring${CMAKE_PROFILE_POSTFIX}"
+ PDB_NAME_RELEASE "NvBlastExtAuthoring${CMAKE_RELEASE_POSTFIX}"
+)
+
+# Do final direct sets after the target has been defined
+TARGET_LINK_LIBRARIES(NvBlastExtAuthoring
+ PUBLIC NvBlast NvBlastGlobals
+ PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS}
+)
diff --git a/sdk/compiler/cmake/NvBlastExtExporter.cmake b/sdk/compiler/cmake/NvBlastExtExporter.cmake index aaf2b8c..b23c1fd 100644..100755 --- a/sdk/compiler/cmake/NvBlastExtExporter.cmake +++ b/sdk/compiler/cmake/NvBlastExtExporter.cmake @@ -1,102 +1,102 @@ -# -# Build NvBlastExt Common -# - - -SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) - -SET(EXPORTER_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/exporter/source) -SET(COMMON_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source) -SET(EXPORTER_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/exporter/include) -SET(EXT_AUTHORING_INCLUDE_DIR ${BLAST_ROOT_DIR}/sdk/extensions/authoring/include) -SET(TK_INCLUDE_DIR ${BLAST_ROOT_DIR}/sdk/toolkit/include) - -FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED) -FIND_PACKAGE(PhysXSDK $ENV{PM_PhysX_VERSION} REQUIRED) -FIND_PACKAGE(tinyObjLoader $ENV{PM_tinyObjLoader_VERSION} REQUIRED) -FIND_PACKAGE(FBXSDK $ENV{PM_FBXSDK_VERSION} REQUIRED) - -# Include here after the directories are defined so that the platform specific file can use the variables. -include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtExporter.cmake) - -SET(COMMON_FILES - ${BLASTEXT_PLATFORM_COMMON_FILES} - - #${COMMON_SOURCE_DIR}/NvBlastAssert.cpp - #${COMMON_SOURCE_DIR}/NvBlastAssert.h -) - -SET(PUBLIC_FILES - ${EXPORTER_EXT_INCLUDE_DIR}/NvBlastExtExporter.h - ${EXPORTER_EXT_INCLUDE_DIR}/NvBlastExtExporterJsonCollision.h -) - -SET(EXT_EXPORTER_FILES - ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterFbxUtils.cpp - ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterFbxUtils.h - ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporter.cpp - ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterFbxReader.cpp - ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterFbxReader.h - ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterFbxWriter.cpp - ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterFbxWriter.h - ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterObjReader.cpp - ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterObjReader.h - ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterObjWriter.cpp - ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterObjWriter.h - ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterJsonCollision.cpp -) - -ADD_LIBRARY(NvBlastExtExporter SHARED - ${COMMON_FILES} - ${PUBLIC_FILES} - ${EXT_EXPORTER_FILES} -) - -SOURCE_GROUP("common" FILES ${COMMON_FILES}) -SOURCE_GROUP("public" FILES ${PUBLIC_FILES}) -SOURCE_GROUP("src" FILES ${EXT_EXPORTER_FILES}) - - -# Target specific compile options - -TARGET_INCLUDE_DIRECTORIES(NvBlastExtExporter - PRIVATE ${BLASTEXT_PLATFORM_INCLUDES} - PRIVATE ${TK_INCLUDE_DIR} - - PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include - PUBLIC ${EXPORTER_EXT_INCLUDE_DIR} - - PRIVATE ${PROJECT_SOURCE_DIR}/common - PRIVATE ${COMMON_EXT_SOURCE_DIR} - PUBLIC ${EXT_AUTHORING_INCLUDE_DIR} - - PRIVATE ${EXPORTER_EXT_SOURCE_DIR} - - PRIVATE ${PHYSXSDK_INCLUDE_DIRS} - PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS} - - PRIVATE ${TINYOBJLOADER_INCLUDE_DIRS} - PRIVATE ${FBXSDK_INCLUDE_DIRS} -) - -TARGET_COMPILE_DEFINITIONS(NvBlastExtExporter - PRIVATE ${BLASTEXT_COMPILE_DEFS} -) - -TARGET_COMPILE_OPTIONS(NvBlastExtExporter - PRIVATE ${BLASTEXT_PLATFORM_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlastExtExporter PROPERTIES - PDB_NAME_DEBUG "NvBlastExtExporter${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlastExtExporter${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlastExtExporter${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlastExtExporter${CMAKE_RELEASE_POSTFIX}" -) - -# Do final direct sets after the target has been defined -TARGET_LINK_LIBRARIES(NvBlastExtExporter - PUBLIC NvBlast NvBlastGlobals NvBlastTk NvBlastExtAuthoring - PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS} - PUBLIC ${FBXSDK_LIBRARIES} -) +#
+# Build NvBlastExt Common
+#
+
+
+SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
+
+SET(EXPORTER_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/exporter/source)
+SET(COMMON_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source)
+SET(EXPORTER_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/exporter/include)
+SET(EXT_AUTHORING_INCLUDE_DIR ${BLAST_ROOT_DIR}/sdk/extensions/authoring/include)
+SET(TK_INCLUDE_DIR ${BLAST_ROOT_DIR}/sdk/toolkit/include)
+
+FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED)
+FIND_PACKAGE(PhysXSDK $ENV{PM_PhysX_VERSION} REQUIRED)
+FIND_PACKAGE(tinyObjLoader $ENV{PM_tinyObjLoader_VERSION} REQUIRED)
+FIND_PACKAGE(FBXSDK $ENV{PM_FBXSDK_VERSION} REQUIRED)
+
+# Include here after the directories are defined so that the platform specific file can use the variables.
+include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtExporter.cmake)
+
+SET(COMMON_FILES
+ ${BLASTEXT_PLATFORM_COMMON_FILES}
+
+ #${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
+ #${COMMON_SOURCE_DIR}/NvBlastAssert.h
+)
+
+SET(PUBLIC_FILES
+ ${EXPORTER_EXT_INCLUDE_DIR}/NvBlastExtExporter.h
+ ${EXPORTER_EXT_INCLUDE_DIR}/NvBlastExtExporterJsonCollision.h
+)
+
+SET(EXT_EXPORTER_FILES
+ ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterFbxUtils.cpp
+ ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterFbxUtils.h
+ ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporter.cpp
+ ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterFbxReader.cpp
+ ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterFbxReader.h
+ ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterFbxWriter.cpp
+ ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterFbxWriter.h
+ ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterObjReader.cpp
+ ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterObjReader.h
+ ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterObjWriter.cpp
+ ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterObjWriter.h
+ ${EXPORTER_EXT_SOURCE_DIR}/NvBlastExtExporterJsonCollision.cpp
+)
+
+ADD_LIBRARY(NvBlastExtExporter SHARED
+ ${COMMON_FILES}
+ ${PUBLIC_FILES}
+ ${EXT_EXPORTER_FILES}
+)
+
+SOURCE_GROUP("common" FILES ${COMMON_FILES})
+SOURCE_GROUP("public" FILES ${PUBLIC_FILES})
+SOURCE_GROUP("src" FILES ${EXT_EXPORTER_FILES})
+
+
+# Target specific compile options
+
+TARGET_INCLUDE_DIRECTORIES(NvBlastExtExporter
+ PRIVATE ${BLASTEXT_PLATFORM_INCLUDES}
+ PRIVATE ${TK_INCLUDE_DIR}
+
+ PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include
+ PUBLIC ${EXPORTER_EXT_INCLUDE_DIR}
+
+ PRIVATE ${PROJECT_SOURCE_DIR}/common
+ PRIVATE ${COMMON_EXT_SOURCE_DIR}
+ PUBLIC ${EXT_AUTHORING_INCLUDE_DIR}
+
+ PRIVATE ${EXPORTER_EXT_SOURCE_DIR}
+
+ PRIVATE ${PHYSXSDK_INCLUDE_DIRS}
+ PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS}
+
+ PRIVATE ${TINYOBJLOADER_INCLUDE_DIRS}
+ PRIVATE ${FBXSDK_INCLUDE_DIRS}
+)
+
+TARGET_COMPILE_DEFINITIONS(NvBlastExtExporter
+ PRIVATE ${BLASTEXT_COMPILE_DEFS}
+)
+
+TARGET_COMPILE_OPTIONS(NvBlastExtExporter
+ PRIVATE ${BLASTEXT_PLATFORM_COMPILE_OPTIONS}
+)
+
+SET_TARGET_PROPERTIES(NvBlastExtExporter PROPERTIES
+ PDB_NAME_DEBUG "NvBlastExtExporter${CMAKE_DEBUG_POSTFIX}"
+ PDB_NAME_CHECKED "NvBlastExtExporter${CMAKE_CHECKED_POSTFIX}"
+ PDB_NAME_PROFILE "NvBlastExtExporter${CMAKE_PROFILE_POSTFIX}"
+ PDB_NAME_RELEASE "NvBlastExtExporter${CMAKE_RELEASE_POSTFIX}"
+)
+
+# Do final direct sets after the target has been defined
+TARGET_LINK_LIBRARIES(NvBlastExtExporter
+ PUBLIC NvBlast NvBlastGlobals NvBlastTk NvBlastExtAuthoring
+ PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS}
+ PUBLIC ${FBXSDK_LIBRARIES}
+)
diff --git a/sdk/compiler/cmake/NvBlastExtImport.cmake b/sdk/compiler/cmake/NvBlastExtImport.cmake index b226fcf..f694d98 100644..100755 --- a/sdk/compiler/cmake/NvBlastExtImport.cmake +++ b/sdk/compiler/cmake/NvBlastExtImport.cmake @@ -1,126 +1,126 @@ -# -# Build NvBlastExt Common -# - - -SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) - -SET(COMMON_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source) -SET(IMPORT_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/import/source) -SET(IMPORT_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/import/include) -SET(PHYSX_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/physx/include) - - -SET(APEX_MODULES_DIR ${PROJECT_SOURCE_DIR}/extensions/import/apexmodules) - -FIND_PACKAGE(PhysXSDK $ENV{PM_PhysX_VERSION} REQUIRED) -FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED) - -# Include here after the directories are defined so that the platform specific file can use the variables. -include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtImport.cmake) - -SET(COMMON_FILES - ${BLASTEXT_PLATFORM_COMMON_FILES} - - ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp - ${COMMON_SOURCE_DIR}/NvBlastAssert.h -) - -SET(PUBLIC_FILES - ${IMPORT_EXT_INCLUDE_DIR}/NvBlastExtApexImportTool.h -) - -SET(NV_PARAM_INCLUDE ${APEX_MODULES_DIR}/include) - - -SET(EXT_IMPORT_FILES - ${IMPORT_EXT_SOURCE_DIR}/NvBlastExtApexImportTool.cpp -) - -file(GLOB_RECURSE MODULES_SOURCES ${APEX_MODULES_DIR}/modules/*.cpp ${APEX_MODULES_DIR}/modules/*.h) -file(GLOB_RECURSE NV_PARAM_SOURCES ${APEX_MODULES_DIR}/NvParameterized/*.cpp ${APEX_MODULES_DIR}/NvParameterized/*.h ${APEX_MODULES_DIR}/NvParameterized/*.inl) - - - -ADD_LIBRARY(NvBlastExtImport STATIC - ${COMMON_FILES} - ${PUBLIC_FILES} - ${MODULES_SOURCES} - ${EXT_IMPORT_FILES} - ${NV_PARAM_SOURCES} -) - -SOURCE_GROUP("common" FILES ${COMMON_FILES}) -SOURCE_GROUP("public" FILES ${PUBLIC_FILES}) -SOURCE_GROUP("src" FILES ${EXT_IMPORT_FILES}) - -SOURCE_GROUP("modules" FILES ${MODULES_SOURCES}) -SOURCE_GROUP("NvParameterized" FILES ${NV_PARAM_SOURCES}) - - -# Target specific compile options - -TARGET_INCLUDE_DIRECTORIES(NvBlastExtImport - PRIVATE ${BLASTEXT_PLATFORM_INCLUDES} - - PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include - PUBLIC ${PROJECT_SOURCE_DIR}/toolkit/include - PUBLIC ${PROJECT_SOURCE_DIR}/extensions/exporter/include - - PUBLIC ${PHYSX_EXT_INCLUDE_DIR} - PUBLIC ${IMPORT_EXT_INCLUDE_DIR} - - PRIVATE ${PROJECT_SOURCE_DIR}/common - PRIVATE ${COMMON_EXT_SOURCE_DIR} - - PRIVATE ${IMPORT_EXT_SOURCE_DIR} - - PRIVATE ${PHYSXSDK_INCLUDE_DIRS} - PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS} - - PRIVATE ${APEX_MODULES_DIR}/modules/common/include/autogen - PRIVATE ${APEX_MODULES_DIR}/modules/common/include - PRIVATE ${APEX_MODULES_DIR}/modules/common_legacy/include/autogen - PRIVATE ${APEX_MODULES_DIR}/modules/common_legacy/include - - PRIVATE ${APEX_MODULES_DIR}/modules/destructible/include/autogen - PRIVATE ${APEX_MODULES_DIR}/modules/destructible_legacy/include/autogen - PRIVATE ${APEX_MODULES_DIR}/modules/destructible_legacy/include - - PRIVATE ${APEX_MODULES_DIR}/modules/framework/include/autogen - PRIVATE ${APEX_MODULES_DIR}/modules/framework_legacy/include/autogen - PRIVATE ${APEX_MODULES_DIR}/modules/framework_legacy/include - - PRIVATE ${APEX_MODULES_DIR}/nvparutils - - PRIVATE ${APEX_MODULES_DIR}/NvParameterized/include - - -) - -TARGET_COMPILE_DEFINITIONS(NvBlastExtImport - PRIVATE ${BLASTEXT_COMPILE_DEFS} -) - -# Warning disables for Capn Proto -TARGET_COMPILE_OPTIONS(NvBlastExtImport - PRIVATE ${BLASTEXT_PLATFORM_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlastExtImport PROPERTIES - PDB_NAME_DEBUG "NvBlastExtImport${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlastExtImport${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlastExtImport${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlastExtImport${CMAKE_RELEASE_POSTFIX}" -) - -# Do final direct sets after the target has been defined -TARGET_LINK_LIBRARIES(NvBlastExtImport - PRIVATE NvBlast NvBlastTk NvBlastExtAuthoring - PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS} - PUBLIC $<$<CONFIG:debug>:${PSFASTXML_LIB_DEBUG}> - PUBLIC $<$<CONFIG:checked>:${PSFASTXML_LIB_CHECKED}> - PUBLIC $<$<CONFIG:profile>:${PSFASTXML_LIB_PROFILE}> - PUBLIC $<$<CONFIG:release>:${PSFASTXML_LIB}> - -) +#
+# Build NvBlastExt Common
+#
+
+
+SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
+
+SET(COMMON_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source)
+SET(IMPORT_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/import/source)
+SET(IMPORT_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/import/include)
+SET(PHYSX_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/physx/include)
+
+
+SET(APEX_MODULES_DIR ${PROJECT_SOURCE_DIR}/extensions/import/apexmodules)
+
+FIND_PACKAGE(PhysXSDK $ENV{PM_PhysX_VERSION} REQUIRED)
+FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED)
+
+# Include here after the directories are defined so that the platform specific file can use the variables.
+include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtImport.cmake)
+
+SET(COMMON_FILES
+ ${BLASTEXT_PLATFORM_COMMON_FILES}
+
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.h
+)
+
+SET(PUBLIC_FILES
+ ${IMPORT_EXT_INCLUDE_DIR}/NvBlastExtApexImportTool.h
+)
+
+SET(NV_PARAM_INCLUDE ${APEX_MODULES_DIR}/include)
+
+
+SET(EXT_IMPORT_FILES
+ ${IMPORT_EXT_SOURCE_DIR}/NvBlastExtApexImportTool.cpp
+)
+
+file(GLOB_RECURSE MODULES_SOURCES ${APEX_MODULES_DIR}/modules/*.cpp ${APEX_MODULES_DIR}/modules/*.h)
+file(GLOB_RECURSE NV_PARAM_SOURCES ${APEX_MODULES_DIR}/NvParameterized/*.cpp ${APEX_MODULES_DIR}/NvParameterized/*.h ${APEX_MODULES_DIR}/NvParameterized/*.inl)
+
+
+
+ADD_LIBRARY(NvBlastExtImport STATIC
+ ${COMMON_FILES}
+ ${PUBLIC_FILES}
+ ${MODULES_SOURCES}
+ ${EXT_IMPORT_FILES}
+ ${NV_PARAM_SOURCES}
+)
+
+SOURCE_GROUP("common" FILES ${COMMON_FILES})
+SOURCE_GROUP("public" FILES ${PUBLIC_FILES})
+SOURCE_GROUP("src" FILES ${EXT_IMPORT_FILES})
+
+SOURCE_GROUP("modules" FILES ${MODULES_SOURCES})
+SOURCE_GROUP("NvParameterized" FILES ${NV_PARAM_SOURCES})
+
+
+# Target specific compile options
+
+TARGET_INCLUDE_DIRECTORIES(NvBlastExtImport
+ PRIVATE ${BLASTEXT_PLATFORM_INCLUDES}
+
+ PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include
+ PUBLIC ${PROJECT_SOURCE_DIR}/toolkit/include
+ PUBLIC ${PROJECT_SOURCE_DIR}/extensions/exporter/include
+
+ PUBLIC ${PHYSX_EXT_INCLUDE_DIR}
+ PUBLIC ${IMPORT_EXT_INCLUDE_DIR}
+
+ PRIVATE ${PROJECT_SOURCE_DIR}/common
+ PRIVATE ${COMMON_EXT_SOURCE_DIR}
+
+ PRIVATE ${IMPORT_EXT_SOURCE_DIR}
+
+ PRIVATE ${PHYSXSDK_INCLUDE_DIRS}
+ PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS}
+
+ PRIVATE ${APEX_MODULES_DIR}/modules/common/include/autogen
+ PRIVATE ${APEX_MODULES_DIR}/modules/common/include
+ PRIVATE ${APEX_MODULES_DIR}/modules/common_legacy/include/autogen
+ PRIVATE ${APEX_MODULES_DIR}/modules/common_legacy/include
+
+ PRIVATE ${APEX_MODULES_DIR}/modules/destructible/include/autogen
+ PRIVATE ${APEX_MODULES_DIR}/modules/destructible_legacy/include/autogen
+ PRIVATE ${APEX_MODULES_DIR}/modules/destructible_legacy/include
+
+ PRIVATE ${APEX_MODULES_DIR}/modules/framework/include/autogen
+ PRIVATE ${APEX_MODULES_DIR}/modules/framework_legacy/include/autogen
+ PRIVATE ${APEX_MODULES_DIR}/modules/framework_legacy/include
+
+ PRIVATE ${APEX_MODULES_DIR}/nvparutils
+
+ PRIVATE ${APEX_MODULES_DIR}/NvParameterized/include
+
+
+)
+
+TARGET_COMPILE_DEFINITIONS(NvBlastExtImport
+ PRIVATE ${BLASTEXT_COMPILE_DEFS}
+)
+
+# Warning disables for Capn Proto
+TARGET_COMPILE_OPTIONS(NvBlastExtImport
+ PRIVATE ${BLASTEXT_PLATFORM_COMPILE_OPTIONS}
+)
+
+SET_TARGET_PROPERTIES(NvBlastExtImport PROPERTIES
+ PDB_NAME_DEBUG "NvBlastExtImport${CMAKE_DEBUG_POSTFIX}"
+ PDB_NAME_CHECKED "NvBlastExtImport${CMAKE_CHECKED_POSTFIX}"
+ PDB_NAME_PROFILE "NvBlastExtImport${CMAKE_PROFILE_POSTFIX}"
+ PDB_NAME_RELEASE "NvBlastExtImport${CMAKE_RELEASE_POSTFIX}"
+)
+
+# Do final direct sets after the target has been defined
+TARGET_LINK_LIBRARIES(NvBlastExtImport
+ PRIVATE NvBlast NvBlastTk NvBlastExtAuthoring
+ PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS}
+ PUBLIC $<$<CONFIG:debug>:${PSFASTXML_LIB_DEBUG}>
+ PUBLIC $<$<CONFIG:checked>:${PSFASTXML_LIB_CHECKED}>
+ PUBLIC $<$<CONFIG:profile>:${PSFASTXML_LIB_PROFILE}>
+ PUBLIC $<$<CONFIG:release>:${PSFASTXML_LIB}>
+
+)
diff --git a/sdk/compiler/cmake/NvBlastExtPhysX.cmake b/sdk/compiler/cmake/NvBlastExtPhysX.cmake index ee8dcc5..51f74d6 100644..100755 --- a/sdk/compiler/cmake/NvBlastExtPhysX.cmake +++ b/sdk/compiler/cmake/NvBlastExtPhysX.cmake @@ -1,129 +1,129 @@ -# -# Build NvBlastExtPhysX Common -# - - -SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) - -SET(COMMON_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source) -SET(PHYSX_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/physx/source) -SET(COMMON_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/include) -SET(PHYSX_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/physx/include) - -FIND_PACKAGE(PhysXSDK $ENV{PM_PhysX_VERSION} REQUIRED) -FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED) - -# Include here after the directories are defined so that the platform specific file can use the variables. -include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtPhysX.cmake) - -SET(COMMON_FILES - ${BLASTEXT_PLATFORM_COMMON_FILES} - - ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp - ${COMMON_SOURCE_DIR}/NvBlastAssert.h - - ${COMMON_SOURCE_DIR}/NvBlastArray.h - ${COMMON_SOURCE_DIR}/NvBlastHashMap.h - ${COMMON_SOURCE_DIR}/NvBlastHashSet.h -) - -SET(PUBLIC_FILES - ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtImpactDamageManager.h - ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPx.h - ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxActor.h - ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxAsset.h - ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxFamily.h - ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxListener.h - ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxManager.h - ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxStressSolver.h - ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxTask.h - ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtSync.h -) - -SET(EXT_PHYSICS_FILES - ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtImpactDamageManager.cpp - ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxStressSolverImpl.h - ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxStressSolverImpl.cpp - ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxActorImpl.h - ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxActorImpl.cpp - ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxAssetImpl.h - ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxAssetImpl.cpp - ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxFamilyImpl.h - ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxFamilyImpl.cpp - ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxManagerImpl.h - ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxManagerImpl.cpp - ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxTaskImpl.h - ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxTaskImpl.cpp -) - -SET(EXT_CALLBACKS_FILES - ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtCustomProfiler.h - ${PHYSX_EXT_INCLUDE_DIR}/NvBlastPxCallbacks.h -) - -SET(EXT_SYNC_FILES - ${PHYSX_EXT_SOURCE_DIR}/sync/NvBlastExtSync.cpp -) - -ADD_LIBRARY(NvBlastExtPhysX ${BLASTEXT_PHYSX_LIBTYPE} - ${COMMON_FILES} - ${PUBLIC_FILES} - - ${EXT_PHYSICS_FILES} - ${EXT_SYNC_FILES} - ${EXT_CALLBACKS_FILES} -) - -SOURCE_GROUP("common" FILES ${COMMON_FILES}) -SOURCE_GROUP("public" FILES ${PUBLIC_FILES}) -SOURCE_GROUP("src\\physics" FILES ${EXT_PHYSICS_FILES}) -SOURCE_GROUP("src\\sync" FILES ${EXT_SYNC_FILES}) -SOURCE_GROUP("src\\callbacks" FILES ${EXT_CALLBACKS_FILES}) - - -# Target specific compile options - -TARGET_INCLUDE_DIRECTORIES(NvBlastExtPhysX - PRIVATE ${BLASTEXT_PLATFORM_INCLUDES} - - PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include - PUBLIC ${PHYSX_EXT_INCLUDE_DIR} - - PRIVATE ${PROJECT_SOURCE_DIR}/common - PRIVATE ${COMMON_EXT_SOURCE_DIR} - - PRIVATE ${PHYSX_EXT_SOURCE_DIR}/physics - PRIVATE ${PHYSX_EXT_SOURCE_DIR}/sync - - PUBLIC ${PROJECT_SOURCE_DIR}/extensions/profiler/include - - PUBLIC ${PHYSXSDK_INCLUDE_DIRS} - PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS} -) - -TARGET_COMPILE_DEFINITIONS(NvBlastExtPhysX - PRIVATE ${BLASTEXT_COMPILE_DEFS} -) - -# Warning disables for Capn Proto -TARGET_COMPILE_OPTIONS(NvBlastExtPhysX - PRIVATE ${BLASTEXT_PLATFORM_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlastExtPhysX PROPERTIES - PDB_NAME_DEBUG "NvBlastExtPhysX${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlastExtPhysX${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlastExtPhysX${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlastExtPhysX${CMAKE_RELEASE_POSTFIX}" -) - -# Do final direct sets after the target has been defined -TARGET_LINK_LIBRARIES(NvBlastExtPhysX - PUBLIC NvBlastTk NvBlastExtShaders NvBlastExtStress - PUBLIC $<$<CONFIG:debug>:${PHYSX3_LIB_DEBUG}> $<$<CONFIG:debug>:${PHYSX3COOKING_LIB_DEBUG}> $<$<CONFIG:debug>:${PHYSX3EXTENSIONS_LIB_DEBUG}> $<$<CONFIG:debug>:${PXFOUNDATION_LIB_DEBUG}> - PUBLIC $<$<CONFIG:checked>:${PHYSX3_LIB_CHECKED}> $<$<CONFIG:checked>:${PHYSX3COOKING_LIB_CHECKED}> $<$<CONFIG:checked>:${PHYSX3EXTENSIONS_LIB_CHECKED}> $<$<CONFIG:checked>:${PXFOUNDATION_LIB_CHECKED}> - PUBLIC $<$<CONFIG:profile>:${PHYSX3_LIB_PROFILE}> $<$<CONFIG:profile>:${PHYSX3COOKING_LIB_PROFILE}> $<$<CONFIG:profile>:${PHYSX3EXTENSIONS_LIB_PROFILE}> $<$<CONFIG:profile>:${PXFOUNDATION_LIB_PROFILE}> - PUBLIC $<$<CONFIG:release>:${PHYSX3_LIB}> $<$<CONFIG:release>:${PHYSX3COOKING_LIB}> $<$<CONFIG:release>:${PHYSX3EXTENSIONS_LIB}> $<$<CONFIG:release>:${PXFOUNDATION_LIB}> - - PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS} -) +#
+# Build NvBlastExtPhysX Common
+#
+
+
+SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
+
+SET(COMMON_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source)
+SET(PHYSX_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/physx/source)
+SET(COMMON_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/include)
+SET(PHYSX_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/physx/include)
+
+FIND_PACKAGE(PhysXSDK $ENV{PM_PhysX_VERSION} REQUIRED)
+FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED)
+
+# Include here after the directories are defined so that the platform specific file can use the variables.
+include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtPhysX.cmake)
+
+SET(COMMON_FILES
+ ${BLASTEXT_PLATFORM_COMMON_FILES}
+
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.h
+
+ ${COMMON_SOURCE_DIR}/NvBlastArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastHashMap.h
+ ${COMMON_SOURCE_DIR}/NvBlastHashSet.h
+)
+
+SET(PUBLIC_FILES
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtImpactDamageManager.h
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPx.h
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxActor.h
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxAsset.h
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxFamily.h
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxListener.h
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxManager.h
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxStressSolver.h
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxTask.h
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtSync.h
+)
+
+SET(EXT_PHYSICS_FILES
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtImpactDamageManager.cpp
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxStressSolverImpl.h
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxStressSolverImpl.cpp
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxActorImpl.h
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxActorImpl.cpp
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxAssetImpl.h
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxAssetImpl.cpp
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxFamilyImpl.h
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxFamilyImpl.cpp
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxManagerImpl.h
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxManagerImpl.cpp
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxTaskImpl.h
+ ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtPxTaskImpl.cpp
+)
+
+SET(EXT_CALLBACKS_FILES
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtCustomProfiler.h
+ ${PHYSX_EXT_INCLUDE_DIR}/NvBlastPxCallbacks.h
+)
+
+SET(EXT_SYNC_FILES
+ ${PHYSX_EXT_SOURCE_DIR}/sync/NvBlastExtSync.cpp
+)
+
+ADD_LIBRARY(NvBlastExtPhysX ${BLASTEXT_PHYSX_LIBTYPE}
+ ${COMMON_FILES}
+ ${PUBLIC_FILES}
+
+ ${EXT_PHYSICS_FILES}
+ ${EXT_SYNC_FILES}
+ ${EXT_CALLBACKS_FILES}
+)
+
+SOURCE_GROUP("common" FILES ${COMMON_FILES})
+SOURCE_GROUP("public" FILES ${PUBLIC_FILES})
+SOURCE_GROUP("src\\physics" FILES ${EXT_PHYSICS_FILES})
+SOURCE_GROUP("src\\sync" FILES ${EXT_SYNC_FILES})
+SOURCE_GROUP("src\\callbacks" FILES ${EXT_CALLBACKS_FILES})
+
+
+# Target specific compile options
+
+TARGET_INCLUDE_DIRECTORIES(NvBlastExtPhysX
+ PRIVATE ${BLASTEXT_PLATFORM_INCLUDES}
+
+ PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include
+ PUBLIC ${PHYSX_EXT_INCLUDE_DIR}
+
+ PRIVATE ${PROJECT_SOURCE_DIR}/common
+ PRIVATE ${COMMON_EXT_SOURCE_DIR}
+
+ PRIVATE ${PHYSX_EXT_SOURCE_DIR}/physics
+ PRIVATE ${PHYSX_EXT_SOURCE_DIR}/sync
+
+ PUBLIC ${PROJECT_SOURCE_DIR}/extensions/profiler/include
+
+ PUBLIC ${PHYSXSDK_INCLUDE_DIRS}
+ PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS}
+)
+
+TARGET_COMPILE_DEFINITIONS(NvBlastExtPhysX
+ PRIVATE ${BLASTEXT_COMPILE_DEFS}
+)
+
+# Warning disables for Capn Proto
+TARGET_COMPILE_OPTIONS(NvBlastExtPhysX
+ PRIVATE ${BLASTEXT_PLATFORM_COMPILE_OPTIONS}
+)
+
+SET_TARGET_PROPERTIES(NvBlastExtPhysX PROPERTIES
+ PDB_NAME_DEBUG "NvBlastExtPhysX${CMAKE_DEBUG_POSTFIX}"
+ PDB_NAME_CHECKED "NvBlastExtPhysX${CMAKE_CHECKED_POSTFIX}"
+ PDB_NAME_PROFILE "NvBlastExtPhysX${CMAKE_PROFILE_POSTFIX}"
+ PDB_NAME_RELEASE "NvBlastExtPhysX${CMAKE_RELEASE_POSTFIX}"
+)
+
+# Do final direct sets after the target has been defined
+TARGET_LINK_LIBRARIES(NvBlastExtPhysX
+ PUBLIC NvBlastTk NvBlastExtShaders NvBlastExtStress
+ PUBLIC $<$<CONFIG:debug>:${PHYSX3_LIB_DEBUG}> $<$<CONFIG:debug>:${PHYSX3COOKING_LIB_DEBUG}> $<$<CONFIG:debug>:${PHYSX3EXTENSIONS_LIB_DEBUG}> $<$<CONFIG:debug>:${PXFOUNDATION_LIB_DEBUG}>
+ PUBLIC $<$<CONFIG:checked>:${PHYSX3_LIB_CHECKED}> $<$<CONFIG:checked>:${PHYSX3COOKING_LIB_CHECKED}> $<$<CONFIG:checked>:${PHYSX3EXTENSIONS_LIB_CHECKED}> $<$<CONFIG:checked>:${PXFOUNDATION_LIB_CHECKED}>
+ PUBLIC $<$<CONFIG:profile>:${PHYSX3_LIB_PROFILE}> $<$<CONFIG:profile>:${PHYSX3COOKING_LIB_PROFILE}> $<$<CONFIG:profile>:${PHYSX3EXTENSIONS_LIB_PROFILE}> $<$<CONFIG:profile>:${PXFOUNDATION_LIB_PROFILE}>
+ PUBLIC $<$<CONFIG:release>:${PHYSX3_LIB}> $<$<CONFIG:release>:${PHYSX3COOKING_LIB}> $<$<CONFIG:release>:${PHYSX3EXTENSIONS_LIB}> $<$<CONFIG:release>:${PXFOUNDATION_LIB}>
+
+ PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS}
+)
diff --git a/sdk/compiler/cmake/NvBlastExtPxSerialization.cmake b/sdk/compiler/cmake/NvBlastExtPxSerialization.cmake index 846ecf1..a781d87 100644..100755 --- a/sdk/compiler/cmake/NvBlastExtPxSerialization.cmake +++ b/sdk/compiler/cmake/NvBlastExtPxSerialization.cmake @@ -1,206 +1,206 @@ -# -# Build NvBlastExtPxSerialization Common -# - -SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) - -SET(SERIAL_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/source) -SET(SERIAL_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/include) -SET(TK_INCLUDE_DIR ${BLAST_ROOT_DIR}/sdk/toolkit/include) -SET(PHYSX_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/physx/include) -SET(PHYSX_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/physx/source) -SET(EXT_COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source) -SET(EXT_COMMON_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/include) - -SET(DTO_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/DTO) - -SET(SOLVER_SOURCE_DIR ${PROJECT_SOURCE_DIR}/lowlevel/source) - -SET(SERIAL_GENERATED_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/generated) - -FIND_PACKAGE(PhysXSDK $ENV{PM_PhysX_VERSION} REQUIRED) -FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED) -FIND_PACKAGE(CapnProtoSDK $ENV{PM_CapnProto_VERSION} REQUIRED) - -# Include here after the directories are defined so that the platform specific file can use the variables. -include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtPxSerialization.cmake) - -# Compile the generated files for serialization - -INCLUDE(CapnProtoGenerate) - -SET(CAPNPC_OUTPUT_DIR ${SERIAL_GENERATED_SOURCE_DIR}) -SET(CAPNPC_SRC_PREFIX ${SERIAL_EXT_SOURCE_DIR}) -CAPNP_GENERATE_CPP(CAPNP_SRCS CAPNP_HDRS ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.capn ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerialization.capn ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtPxSerialization.capn) - -SET(COMMON_FILES - ${BLASTEXTPXSERIALIZATION_PLATFORM_COMMON_FILES} - - ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp - ${COMMON_SOURCE_DIR}/NvBlastAssert.h - ${COMMON_SOURCE_DIR}/NvBlastAtomic.cpp - ${COMMON_SOURCE_DIR}/NvBlastAtomic.h - ${COMMON_SOURCE_DIR}/NvBlastDLink.h - ${COMMON_SOURCE_DIR}/NvBlastFixedArray.h - ${COMMON_SOURCE_DIR}/NvBlastFixedBitmap.h - ${COMMON_SOURCE_DIR}/NvBlastFixedBoolArray.h - ${COMMON_SOURCE_DIR}/NvBlastFixedPriorityQueue.h - ${COMMON_SOURCE_DIR}/NvBlastGeometry.h -# ${COMMON_SOURCE_DIR}/NvBlastIndexFns.cpp - ${COMMON_SOURCE_DIR}/NvBlastIndexFns.h - ${COMMON_SOURCE_DIR}/NvBlastIteratorBase.h - ${COMMON_SOURCE_DIR}/NvBlastMath.h - ${COMMON_SOURCE_DIR}/NvBlastMemory.h - ${COMMON_SOURCE_DIR}/NvBlastPreprocessorInternal.h - ${COMMON_SOURCE_DIR}/NvBlastTime.cpp - ${COMMON_SOURCE_DIR}/NvBlastTime.h - ${COMMON_SOURCE_DIR}/NvBlastTimers.cpp -) - - -SET(EXT_SERIALIZATION_FILES - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtPxSerialization.capn - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtPxSerialization.cpp - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationCAPN.h - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationInternal.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtPxSerializerCAPN.h - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtPxSerializerRAW.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtPxSerializerRAW.cpp - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerializerRAW.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerializerRAW.cpp - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.cpp - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.cpp - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxInputStream.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxInputStream.cpp - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxOutputStream.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxOutputStream.cpp -) - -SET(DTO_SOURCE_FILES - ${DTO_SOURCE_DIR}/DTOMacros.h - ${DTO_SOURCE_DIR}/AssetDTO.h - ${DTO_SOURCE_DIR}/AssetDTO.cpp - ${DTO_SOURCE_DIR}/TkAssetDTO.h - ${DTO_SOURCE_DIR}/TkAssetDTO.cpp - ${DTO_SOURCE_DIR}/ExtPxAssetDTO.h - ${DTO_SOURCE_DIR}/ExtPxAssetDTO.cpp - ${DTO_SOURCE_DIR}/PxVec3DTO.h - ${DTO_SOURCE_DIR}/PxVec3DTO.cpp - ${DTO_SOURCE_DIR}/NvBlastChunkDTO.h - ${DTO_SOURCE_DIR}/NvBlastChunkDTO.cpp - ${DTO_SOURCE_DIR}/NvBlastBondDTO.h - ${DTO_SOURCE_DIR}/NvBlastBondDTO.cpp - ${DTO_SOURCE_DIR}/NvBlastIDDTO.h - ${DTO_SOURCE_DIR}/NvBlastIDDTO.cpp - ${DTO_SOURCE_DIR}/TkAssetJointDescDTO.h - ${DTO_SOURCE_DIR}/TkAssetJointDescDTO.cpp - ${DTO_SOURCE_DIR}/ExtPxChunkDTO.h - ${DTO_SOURCE_DIR}/ExtPxChunkDTO.cpp - ${DTO_SOURCE_DIR}/ExtPxSubchunkDTO.h - ${DTO_SOURCE_DIR}/ExtPxSubchunkDTO.cpp - ${DTO_SOURCE_DIR}/PxQuatDTO.h - ${DTO_SOURCE_DIR}/PxQuatDTO.cpp - ${DTO_SOURCE_DIR}/PxTransformDTO.h - ${DTO_SOURCE_DIR}/PxTransformDTO.cpp - ${DTO_SOURCE_DIR}/PxMeshScaleDTO.h - ${DTO_SOURCE_DIR}/PxMeshScaleDTO.cpp - ${DTO_SOURCE_DIR}/PxConvexMeshGeometryDTO.h - ${DTO_SOURCE_DIR}/PxConvexMeshGeometryDTO.cpp -) - -SET(EXT_SERIALIZATION_INCLUDES - ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtPxSerialization.h -) - -ADD_LIBRARY(NvBlastExtPxSerialization ${BLASTEXTPXSERIALIZATION_LIB_TYPE} - ${COMMON_FILES} - - ${DTO_SOURCE_FILES} - - ${EXT_SERIALIZATION_INCLUDES} - ${EXT_SERIALIZATION_FILES} - - ${CAPNP_SRCS} - ${CAPNP_HDRS} - - ${MD5_FILES} - - ${CAPNPROTOSDK_SOURCE_FILES} -) - -SOURCE_GROUP("common" FILES ${COMMON_FILES}) - -SOURCE_GROUP("include" FILES ${EXT_SERIALIZATION_INCLUDES}) -SOURCE_GROUP("src\\serialization" FILES ${EXT_SERIALIZATION_FILES}) -SOURCE_GROUP("src\\serialization\\DTO" FILES ${DTO_SOURCE_FILES}) -SOURCE_GROUP("src\\serialization\\generated" FILES ${CAPNP_SRCS} ${CAPNP_HDRS}) -SOURCE_GROUP("src\\serialization\\CapnProtoSDK" FILES ${CAPNPROTOSDK_SOURCE_FILES}) - - -# Target specific compile options - -TARGET_INCLUDE_DIRECTORIES(NvBlastExtPxSerialization - PRIVATE ${BLASTEXTPXSERIALIZATION_PLATFORM_INCLUDES} - - PRIVATE ${PROJECT_SOURCE_DIR}/common - PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/include - PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/source - - PRIVATE ${PX_INCLUDE_DIR} - - PUBLIC ${SERIAL_EXT_INCLUDE_DIR} - PUBLIC ${SERIAL_EXT_SOURCE_DIR} - PUBLIC ${DTO_SOURCE_DIR} - - PRIVATE ${PHYSX_EXT_INCLUDE_DIR} - PRIVATE ${PHYSX_EXT_SOURCE_DIR} - - PRIVATE ${EXT_COMMON_SOURCE_DIR} - PRIVATE ${EXT_COMMON_INCLUDE_DIR} - - PUBLIC ${CAPNPROTOSDK_INCLUDE_DIRS} - - PRIVATE ${COMMON_SOURCE_DIR} - - PUBLIC ${PHYSXSDK_INCLUDE_DIRS} - PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS} -) - -TARGET_COMPILE_DEFINITIONS(NvBlastExtPxSerialization - PUBLIC CAPNP_LITE=1 - PRIVATE ${BLASTEXTPXSERIALIZATION_COMPILE_DEFS} -) - -# Warning disables for Capn Proto -TARGET_COMPILE_OPTIONS(NvBlastExtPxSerialization - PRIVATE ${BLASTEXTPXSERIALIZATION_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlastExtPxSerialization PROPERTIES - PDB_NAME_DEBUG "NvBlastExtPxSerialization${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlastExtPxSerialization${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlastExtPxSerialization${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlastExtPxSerialization${CMAKE_RELEASE_POSTFIX}" -) - -# Do final direct sets after the target has been defined -TARGET_LINK_LIBRARIES(NvBlastExtPxSerialization - PRIVATE NvBlast NvBlastGlobals NvBlastTk NvBlastExtPhysX ${CAPNPROTOSDK_LIBRARIES} - PUBLIC $<$<CONFIG:debug>:${PHYSX3_LIB_DEBUG}> $<$<CONFIG:debug>:${PHYSX3COOKING_LIB_DEBUG}> - PUBLIC $<$<CONFIG:checked>:${PHYSX3_LIB_CHECKED}> $<$<CONFIG:checked>:${PHYSX3COOKING_LIB_CHECKED}> - PUBLIC $<$<CONFIG:profile>:${PHYSX3_LIB_PROFILE}> $<$<CONFIG:profile>:${PHYSX3COOKING_LIB_PROFILE}> - PUBLIC $<$<CONFIG:release>:${PHYSX3_LIB}> $<$<CONFIG:release>:${PHYSX3COOKING_LIB}> -) - -#Hack for now to force these to build serialially to fix fighting over writing the generated code -ADD_DEPENDENCIES(NvBlastExtPxSerialization NvBlastExtTkSerialization NvBlastExtSerialization) +#
+# Build NvBlastExtPxSerialization Common
+#
+
+SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
+
+SET(SERIAL_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/source)
+SET(SERIAL_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/include)
+SET(TK_INCLUDE_DIR ${BLAST_ROOT_DIR}/sdk/toolkit/include)
+SET(PHYSX_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/physx/include)
+SET(PHYSX_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/physx/source)
+SET(EXT_COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source)
+SET(EXT_COMMON_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/include)
+
+SET(DTO_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/DTO)
+
+SET(SOLVER_SOURCE_DIR ${PROJECT_SOURCE_DIR}/lowlevel/source)
+
+SET(SERIAL_GENERATED_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/generated)
+
+FIND_PACKAGE(PhysXSDK $ENV{PM_PhysX_VERSION} REQUIRED)
+FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED)
+FIND_PACKAGE(CapnProtoSDK $ENV{PM_CapnProto_VERSION} REQUIRED)
+
+# Include here after the directories are defined so that the platform specific file can use the variables.
+include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtPxSerialization.cmake)
+
+# Compile the generated files for serialization
+
+INCLUDE(CapnProtoGenerate)
+
+SET(CAPNPC_OUTPUT_DIR ${SERIAL_GENERATED_SOURCE_DIR})
+SET(CAPNPC_SRC_PREFIX ${SERIAL_EXT_SOURCE_DIR})
+CAPNP_GENERATE_CPP(CAPNP_SRCS CAPNP_HDRS ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.capn ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerialization.capn ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtPxSerialization.capn)
+
+SET(COMMON_FILES
+ ${BLASTEXTPXSERIALIZATION_PLATFORM_COMMON_FILES}
+
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.h
+ ${COMMON_SOURCE_DIR}/NvBlastAtomic.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAtomic.h
+ ${COMMON_SOURCE_DIR}/NvBlastDLink.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedBitmap.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedBoolArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedPriorityQueue.h
+ ${COMMON_SOURCE_DIR}/NvBlastGeometry.h
+# ${COMMON_SOURCE_DIR}/NvBlastIndexFns.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastIndexFns.h
+ ${COMMON_SOURCE_DIR}/NvBlastIteratorBase.h
+ ${COMMON_SOURCE_DIR}/NvBlastMath.h
+ ${COMMON_SOURCE_DIR}/NvBlastMemory.h
+ ${COMMON_SOURCE_DIR}/NvBlastPreprocessorInternal.h
+ ${COMMON_SOURCE_DIR}/NvBlastTime.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastTime.h
+ ${COMMON_SOURCE_DIR}/NvBlastTimers.cpp
+)
+
+
+SET(EXT_SERIALIZATION_FILES
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtPxSerialization.capn
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtPxSerialization.cpp
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationCAPN.h
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationInternal.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtPxSerializerCAPN.h
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtPxSerializerRAW.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtPxSerializerRAW.cpp
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerializerRAW.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerializerRAW.cpp
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.cpp
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.cpp
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxInputStream.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxInputStream.cpp
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxOutputStream.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtKJPxOutputStream.cpp
+)
+
+SET(DTO_SOURCE_FILES
+ ${DTO_SOURCE_DIR}/DTOMacros.h
+ ${DTO_SOURCE_DIR}/AssetDTO.h
+ ${DTO_SOURCE_DIR}/AssetDTO.cpp
+ ${DTO_SOURCE_DIR}/TkAssetDTO.h
+ ${DTO_SOURCE_DIR}/TkAssetDTO.cpp
+ ${DTO_SOURCE_DIR}/ExtPxAssetDTO.h
+ ${DTO_SOURCE_DIR}/ExtPxAssetDTO.cpp
+ ${DTO_SOURCE_DIR}/PxVec3DTO.h
+ ${DTO_SOURCE_DIR}/PxVec3DTO.cpp
+ ${DTO_SOURCE_DIR}/NvBlastChunkDTO.h
+ ${DTO_SOURCE_DIR}/NvBlastChunkDTO.cpp
+ ${DTO_SOURCE_DIR}/NvBlastBondDTO.h
+ ${DTO_SOURCE_DIR}/NvBlastBondDTO.cpp
+ ${DTO_SOURCE_DIR}/NvBlastIDDTO.h
+ ${DTO_SOURCE_DIR}/NvBlastIDDTO.cpp
+ ${DTO_SOURCE_DIR}/TkAssetJointDescDTO.h
+ ${DTO_SOURCE_DIR}/TkAssetJointDescDTO.cpp
+ ${DTO_SOURCE_DIR}/ExtPxChunkDTO.h
+ ${DTO_SOURCE_DIR}/ExtPxChunkDTO.cpp
+ ${DTO_SOURCE_DIR}/ExtPxSubchunkDTO.h
+ ${DTO_SOURCE_DIR}/ExtPxSubchunkDTO.cpp
+ ${DTO_SOURCE_DIR}/PxQuatDTO.h
+ ${DTO_SOURCE_DIR}/PxQuatDTO.cpp
+ ${DTO_SOURCE_DIR}/PxTransformDTO.h
+ ${DTO_SOURCE_DIR}/PxTransformDTO.cpp
+ ${DTO_SOURCE_DIR}/PxMeshScaleDTO.h
+ ${DTO_SOURCE_DIR}/PxMeshScaleDTO.cpp
+ ${DTO_SOURCE_DIR}/PxConvexMeshGeometryDTO.h
+ ${DTO_SOURCE_DIR}/PxConvexMeshGeometryDTO.cpp
+)
+
+SET(EXT_SERIALIZATION_INCLUDES
+ ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtPxSerialization.h
+)
+
+ADD_LIBRARY(NvBlastExtPxSerialization ${BLASTEXTPXSERIALIZATION_LIB_TYPE}
+ ${COMMON_FILES}
+
+ ${DTO_SOURCE_FILES}
+
+ ${EXT_SERIALIZATION_INCLUDES}
+ ${EXT_SERIALIZATION_FILES}
+
+ ${CAPNP_SRCS}
+ ${CAPNP_HDRS}
+
+ ${MD5_FILES}
+
+ ${CAPNPROTOSDK_SOURCE_FILES}
+)
+
+SOURCE_GROUP("common" FILES ${COMMON_FILES})
+
+SOURCE_GROUP("include" FILES ${EXT_SERIALIZATION_INCLUDES})
+SOURCE_GROUP("src\\serialization" FILES ${EXT_SERIALIZATION_FILES})
+SOURCE_GROUP("src\\serialization\\DTO" FILES ${DTO_SOURCE_FILES})
+SOURCE_GROUP("src\\serialization\\generated" FILES ${CAPNP_SRCS} ${CAPNP_HDRS})
+SOURCE_GROUP("src\\serialization\\CapnProtoSDK" FILES ${CAPNPROTOSDK_SOURCE_FILES})
+
+
+# Target specific compile options
+
+TARGET_INCLUDE_DIRECTORIES(NvBlastExtPxSerialization
+ PRIVATE ${BLASTEXTPXSERIALIZATION_PLATFORM_INCLUDES}
+
+ PRIVATE ${PROJECT_SOURCE_DIR}/common
+ PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/include
+ PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/source
+
+ PRIVATE ${PX_INCLUDE_DIR}
+
+ PUBLIC ${SERIAL_EXT_INCLUDE_DIR}
+ PUBLIC ${SERIAL_EXT_SOURCE_DIR}
+ PUBLIC ${DTO_SOURCE_DIR}
+
+ PRIVATE ${PHYSX_EXT_INCLUDE_DIR}
+ PRIVATE ${PHYSX_EXT_SOURCE_DIR}
+
+ PRIVATE ${EXT_COMMON_SOURCE_DIR}
+ PRIVATE ${EXT_COMMON_INCLUDE_DIR}
+
+ PUBLIC ${CAPNPROTOSDK_INCLUDE_DIRS}
+
+ PRIVATE ${COMMON_SOURCE_DIR}
+
+ PUBLIC ${PHYSXSDK_INCLUDE_DIRS}
+ PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS}
+)
+
+TARGET_COMPILE_DEFINITIONS(NvBlastExtPxSerialization
+ PUBLIC CAPNP_LITE=1
+ PRIVATE ${BLASTEXTPXSERIALIZATION_COMPILE_DEFS}
+)
+
+# Warning disables for Capn Proto
+TARGET_COMPILE_OPTIONS(NvBlastExtPxSerialization
+ PRIVATE ${BLASTEXTPXSERIALIZATION_COMPILE_OPTIONS}
+)
+
+SET_TARGET_PROPERTIES(NvBlastExtPxSerialization PROPERTIES
+ PDB_NAME_DEBUG "NvBlastExtPxSerialization${CMAKE_DEBUG_POSTFIX}"
+ PDB_NAME_CHECKED "NvBlastExtPxSerialization${CMAKE_CHECKED_POSTFIX}"
+ PDB_NAME_PROFILE "NvBlastExtPxSerialization${CMAKE_PROFILE_POSTFIX}"
+ PDB_NAME_RELEASE "NvBlastExtPxSerialization${CMAKE_RELEASE_POSTFIX}"
+)
+
+# Do final direct sets after the target has been defined
+TARGET_LINK_LIBRARIES(NvBlastExtPxSerialization
+ PRIVATE NvBlast NvBlastGlobals NvBlastTk NvBlastExtPhysX ${CAPNPROTOSDK_LIBRARIES}
+ PUBLIC $<$<CONFIG:debug>:${PHYSX3_LIB_DEBUG}> $<$<CONFIG:debug>:${PHYSX3COOKING_LIB_DEBUG}>
+ PUBLIC $<$<CONFIG:checked>:${PHYSX3_LIB_CHECKED}> $<$<CONFIG:checked>:${PHYSX3COOKING_LIB_CHECKED}>
+ PUBLIC $<$<CONFIG:profile>:${PHYSX3_LIB_PROFILE}> $<$<CONFIG:profile>:${PHYSX3COOKING_LIB_PROFILE}>
+ PUBLIC $<$<CONFIG:release>:${PHYSX3_LIB}> $<$<CONFIG:release>:${PHYSX3COOKING_LIB}>
+)
+
+#Hack for now to force these to build serialially to fix fighting over writing the generated code
+ADD_DEPENDENCIES(NvBlastExtPxSerialization NvBlastExtTkSerialization NvBlastExtSerialization)
diff --git a/sdk/compiler/cmake/NvBlastExtSerialization.cmake b/sdk/compiler/cmake/NvBlastExtSerialization.cmake index e6cd597..a2679bc 100644..100755 --- a/sdk/compiler/cmake/NvBlastExtSerialization.cmake +++ b/sdk/compiler/cmake/NvBlastExtSerialization.cmake @@ -1,154 +1,154 @@ -# -# Build NvBlastExtSerialization Common -# - -SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) - -SET(SERIAL_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/source) -SET(SERIAL_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/include) - -SET(DTO_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/DTO) - -SET(SOLVER_SOURCE_DIR ${PROJECT_SOURCE_DIR}/lowlevel/source) - -SET(SERIAL_GENERATED_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/generated) - -FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED) -FIND_PACKAGE(CapnProtoSDK $ENV{PM_CapnProto_VERSION} REQUIRED) - -# Include here after the directories are defined so that the platform specific file can use the variables. -include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtSerialization.cmake) - -# Compile the generated files for serialization - -INCLUDE(CapnProtoGenerate) - -SET(CAPNPC_OUTPUT_DIR ${SERIAL_GENERATED_SOURCE_DIR}) -SET(CAPNPC_SRC_PREFIX ${SERIAL_EXT_SOURCE_DIR}) -CAPNP_GENERATE_CPP(CAPNP_SRCS CAPNP_HDRS ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.capn) - -SET(COMMON_FILES - ${BLASTEXTSERIALIZATION_PLATFORM_COMMON_FILES} - - ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp - ${COMMON_SOURCE_DIR}/NvBlastAssert.h - ${COMMON_SOURCE_DIR}/NvBlastAtomic.cpp - ${COMMON_SOURCE_DIR}/NvBlastAtomic.h - ${COMMON_SOURCE_DIR}/NvBlastDLink.h - ${COMMON_SOURCE_DIR}/NvBlastFixedArray.h - ${COMMON_SOURCE_DIR}/NvBlastFixedBitmap.h - ${COMMON_SOURCE_DIR}/NvBlastFixedBoolArray.h - ${COMMON_SOURCE_DIR}/NvBlastFixedPriorityQueue.h - ${COMMON_SOURCE_DIR}/NvBlastGeometry.h - ${COMMON_SOURCE_DIR}/NvBlastIndexFns.h - ${COMMON_SOURCE_DIR}/NvBlastIteratorBase.h - ${COMMON_SOURCE_DIR}/NvBlastMath.h - ${COMMON_SOURCE_DIR}/NvBlastMemory.h - ${COMMON_SOURCE_DIR}/NvBlastPreprocessorInternal.h - ${COMMON_SOURCE_DIR}/NvBlastTime.cpp - ${COMMON_SOURCE_DIR}/NvBlastTime.h - ${COMMON_SOURCE_DIR}/NvBlastTimers.cpp -) - - -SET(EXT_SERIALIZATION_FILES - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.capn - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerialization.cpp - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.cpp - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationCAPN.h - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationInternal.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerializerCAPN.h - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.cpp - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.cpp -) - -SET(DTO_SOURCE_FILES - ${DTO_SOURCE_DIR}/DTOMacros.h - ${DTO_SOURCE_DIR}/AssetDTO.h - ${DTO_SOURCE_DIR}/AssetDTO.cpp - ${DTO_SOURCE_DIR}/NvBlastChunkDTO.h - ${DTO_SOURCE_DIR}/NvBlastChunkDTO.cpp - ${DTO_SOURCE_DIR}/NvBlastBondDTO.h - ${DTO_SOURCE_DIR}/NvBlastBondDTO.cpp - ${DTO_SOURCE_DIR}/NvBlastIDDTO.h - ${DTO_SOURCE_DIR}/NvBlastIDDTO.cpp -) - -SET(EXT_SERIALIZATION_INCLUDES - ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtSerialization.h - ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtLlSerialization.h -) - -ADD_LIBRARY(NvBlastExtSerialization ${BLASTEXTSERIALIZATION_LIB_TYPE} - ${COMMON_FILES} - - ${DTO_SOURCE_FILES} - - ${EXT_SERIALIZATION_INCLUDES} - ${EXT_SERIALIZATION_FILES} - - ${CAPNP_SRCS} - ${CAPNP_HDRS} - - ${MD5_FILES} - - ${CAPNPROTOSDK_SOURCE_FILES} -) - -SOURCE_GROUP("common" FILES ${COMMON_FILES}) - -SOURCE_GROUP("include" FILES ${EXT_SERIALIZATION_INCLUDES}) -SOURCE_GROUP("src\\serialization" FILES ${EXT_SERIALIZATION_FILES}) -SOURCE_GROUP("src\\serialization\\DTO" FILES ${DTO_SOURCE_FILES}) -SOURCE_GROUP("src\\serialization\\generated" FILES ${CAPNP_SRCS} ${CAPNP_HDRS}) -SOURCE_GROUP("src\\serialization\\CapnProtoSDK" FILES ${CAPNPROTOSDK_SOURCE_FILES}) - -# Target specific compile options - -TARGET_INCLUDE_DIRECTORIES(NvBlastExtSerialization - PRIVATE ${BLASTEXTSERIALIZATION_PLATFORM_INCLUDES} - - PRIVATE ${PROJECT_SOURCE_DIR}/common - PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/include - PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/source - - PRIVATE ${TK_INCLUDE_DIR} - - PUBLIC ${SERIAL_EXT_INCLUDE_DIR} - PUBLIC ${SERIAL_EXT_SOURCE_DIR} - PUBLIC ${DTO_SOURCE_DIR} - - PUBLIC ${CAPNPROTOSDK_INCLUDE_DIRS} - - PRIVATE ${COMMON_SOURCE_DIR} - - PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS} -) - -TARGET_COMPILE_DEFINITIONS(NvBlastExtSerialization - PUBLIC CAPNP_LITE=1;BLAST_LL_ALLOC=1 - PRIVATE ${BLASTEXTSERIALIZATION_COMPILE_DEFS} -) - -# Warning disables for Capn Proto -TARGET_COMPILE_OPTIONS(NvBlastExtSerialization - PRIVATE ${BLASTEXTSERIALIZATION_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlastExtSerialization PROPERTIES - PDB_NAME_DEBUG "NvBlastExtSerialization${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlastExtSerialization${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlastExtSerialization${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlastExtSerialization${CMAKE_RELEASE_POSTFIX}" -) - -# Do final direct sets after the target has been defined -TARGET_LINK_LIBRARIES(NvBlastExtSerialization - PRIVATE NvBlast NvBlastGlobals ${CAPNPROTOSDK_LIBRARIES} -) +#
+# Build NvBlastExtSerialization Common
+#
+
+SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
+
+SET(SERIAL_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/source)
+SET(SERIAL_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/include)
+
+SET(DTO_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/DTO)
+
+SET(SOLVER_SOURCE_DIR ${PROJECT_SOURCE_DIR}/lowlevel/source)
+
+SET(SERIAL_GENERATED_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/generated)
+
+FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED)
+FIND_PACKAGE(CapnProtoSDK $ENV{PM_CapnProto_VERSION} REQUIRED)
+
+# Include here after the directories are defined so that the platform specific file can use the variables.
+include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtSerialization.cmake)
+
+# Compile the generated files for serialization
+
+INCLUDE(CapnProtoGenerate)
+
+SET(CAPNPC_OUTPUT_DIR ${SERIAL_GENERATED_SOURCE_DIR})
+SET(CAPNPC_SRC_PREFIX ${SERIAL_EXT_SOURCE_DIR})
+CAPNP_GENERATE_CPP(CAPNP_SRCS CAPNP_HDRS ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.capn)
+
+SET(COMMON_FILES
+ ${BLASTEXTSERIALIZATION_PLATFORM_COMMON_FILES}
+
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.h
+ ${COMMON_SOURCE_DIR}/NvBlastAtomic.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAtomic.h
+ ${COMMON_SOURCE_DIR}/NvBlastDLink.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedBitmap.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedBoolArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedPriorityQueue.h
+ ${COMMON_SOURCE_DIR}/NvBlastGeometry.h
+ ${COMMON_SOURCE_DIR}/NvBlastIndexFns.h
+ ${COMMON_SOURCE_DIR}/NvBlastIteratorBase.h
+ ${COMMON_SOURCE_DIR}/NvBlastMath.h
+ ${COMMON_SOURCE_DIR}/NvBlastMemory.h
+ ${COMMON_SOURCE_DIR}/NvBlastPreprocessorInternal.h
+ ${COMMON_SOURCE_DIR}/NvBlastTime.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastTime.h
+ ${COMMON_SOURCE_DIR}/NvBlastTimers.cpp
+)
+
+
+SET(EXT_SERIALIZATION_FILES
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.capn
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerialization.cpp
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.cpp
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationCAPN.h
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationInternal.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerializerCAPN.h
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.cpp
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.cpp
+)
+
+SET(DTO_SOURCE_FILES
+ ${DTO_SOURCE_DIR}/DTOMacros.h
+ ${DTO_SOURCE_DIR}/AssetDTO.h
+ ${DTO_SOURCE_DIR}/AssetDTO.cpp
+ ${DTO_SOURCE_DIR}/NvBlastChunkDTO.h
+ ${DTO_SOURCE_DIR}/NvBlastChunkDTO.cpp
+ ${DTO_SOURCE_DIR}/NvBlastBondDTO.h
+ ${DTO_SOURCE_DIR}/NvBlastBondDTO.cpp
+ ${DTO_SOURCE_DIR}/NvBlastIDDTO.h
+ ${DTO_SOURCE_DIR}/NvBlastIDDTO.cpp
+)
+
+SET(EXT_SERIALIZATION_INCLUDES
+ ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtSerialization.h
+ ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtLlSerialization.h
+)
+
+ADD_LIBRARY(NvBlastExtSerialization ${BLASTEXTSERIALIZATION_LIB_TYPE}
+ ${COMMON_FILES}
+
+ ${DTO_SOURCE_FILES}
+
+ ${EXT_SERIALIZATION_INCLUDES}
+ ${EXT_SERIALIZATION_FILES}
+
+ ${CAPNP_SRCS}
+ ${CAPNP_HDRS}
+
+ ${MD5_FILES}
+
+ ${CAPNPROTOSDK_SOURCE_FILES}
+)
+
+SOURCE_GROUP("common" FILES ${COMMON_FILES})
+
+SOURCE_GROUP("include" FILES ${EXT_SERIALIZATION_INCLUDES})
+SOURCE_GROUP("src\\serialization" FILES ${EXT_SERIALIZATION_FILES})
+SOURCE_GROUP("src\\serialization\\DTO" FILES ${DTO_SOURCE_FILES})
+SOURCE_GROUP("src\\serialization\\generated" FILES ${CAPNP_SRCS} ${CAPNP_HDRS})
+SOURCE_GROUP("src\\serialization\\CapnProtoSDK" FILES ${CAPNPROTOSDK_SOURCE_FILES})
+
+# Target specific compile options
+
+TARGET_INCLUDE_DIRECTORIES(NvBlastExtSerialization
+ PRIVATE ${BLASTEXTSERIALIZATION_PLATFORM_INCLUDES}
+
+ PRIVATE ${PROJECT_SOURCE_DIR}/common
+ PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/include
+ PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/source
+
+ PRIVATE ${TK_INCLUDE_DIR}
+
+ PUBLIC ${SERIAL_EXT_INCLUDE_DIR}
+ PUBLIC ${SERIAL_EXT_SOURCE_DIR}
+ PUBLIC ${DTO_SOURCE_DIR}
+
+ PUBLIC ${CAPNPROTOSDK_INCLUDE_DIRS}
+
+ PRIVATE ${COMMON_SOURCE_DIR}
+
+ PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS}
+)
+
+TARGET_COMPILE_DEFINITIONS(NvBlastExtSerialization
+ PUBLIC CAPNP_LITE=1;BLAST_LL_ALLOC=1
+ PRIVATE ${BLASTEXTSERIALIZATION_COMPILE_DEFS}
+)
+
+# Warning disables for Capn Proto
+TARGET_COMPILE_OPTIONS(NvBlastExtSerialization
+ PRIVATE ${BLASTEXTSERIALIZATION_COMPILE_OPTIONS}
+)
+
+SET_TARGET_PROPERTIES(NvBlastExtSerialization PROPERTIES
+ PDB_NAME_DEBUG "NvBlastExtSerialization${CMAKE_DEBUG_POSTFIX}"
+ PDB_NAME_CHECKED "NvBlastExtSerialization${CMAKE_CHECKED_POSTFIX}"
+ PDB_NAME_PROFILE "NvBlastExtSerialization${CMAKE_PROFILE_POSTFIX}"
+ PDB_NAME_RELEASE "NvBlastExtSerialization${CMAKE_RELEASE_POSTFIX}"
+)
+
+# Do final direct sets after the target has been defined
+TARGET_LINK_LIBRARIES(NvBlastExtSerialization
+ PRIVATE NvBlast NvBlastGlobals ${CAPNPROTOSDK_LIBRARIES}
+)
diff --git a/sdk/compiler/cmake/NvBlastExtShaders.cmake b/sdk/compiler/cmake/NvBlastExtShaders.cmake index cb7599e..91d2d9b 100644..100755 --- a/sdk/compiler/cmake/NvBlastExtShaders.cmake +++ b/sdk/compiler/cmake/NvBlastExtShaders.cmake @@ -1,79 +1,79 @@ -# -# Build NvBlastExtShaders Common -# - - -SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) -SET(SHADERS_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/shaders/source) -SET(SHADERS_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/shaders/include) - -# Include here after the directories are defined so that the platform specific file can use the variables. -include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtShaders.cmake) - -SET(COMMON_FILES - ${BLASTEXT_PLATFORM_COMMON_FILES} - - ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp - ${COMMON_SOURCE_DIR}/NvBlastAssert.h -) - -SET(PUBLIC_FILES - ${SHADERS_EXT_INCLUDE_DIR}/NvBlastExtDamageShaders.h -) - -SET(EXT_SOURCE_FILES - ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtDamageShaders.cpp - ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtDamageAcceleratorInternal.h - ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtDamageAcceleratorAABBTree.h - ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtDamageAcceleratorAABBTree.cpp - ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtDamageAccelerators.cpp -) - -ADD_LIBRARY(NvBlastExtShaders ${BLAST_EXT_SHARED_LIB_TYPE} - ${COMMON_FILES} - ${PUBLIC_FILES} - - ${EXT_SOURCE_FILES} -) - -SOURCE_GROUP("common" FILES ${COMMON_FILES}) -SOURCE_GROUP("public" FILES ${PUBLIC_FILES}) -SOURCE_GROUP("src" FILES ${EXT_SOURCE_FILES}) - - -# Target specific compile options - -TARGET_INCLUDE_DIRECTORIES(NvBlastExtShaders - PRIVATE ${BLASTEXT_PLATFORM_INCLUDES} - - PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include - PUBLIC ${SHADERS_EXT_INCLUDE_DIR} - - PRIVATE ${SHADERS_EXT_SOURCE_DIR} - PRIVATE ${PROJECT_SOURCE_DIR}/common - - PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS} -) - -TARGET_COMPILE_DEFINITIONS(NvBlastExtShaders - PRIVATE ${BLASTEXT_COMPILE_DEFS} -) - -# Warning disables for Capn Proto -TARGET_COMPILE_OPTIONS(NvBlastExtShaders - PRIVATE ${BLASTEXT_PLATFORM_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlastExtShaders PROPERTIES - PDB_NAME_DEBUG "NvBlastExtShaders${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlastExtShaders${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlastExtShaders${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlastExtShaders${CMAKE_RELEASE_POSTFIX}" -) - -# Do final direct sets after the target has been defined -#TARGET_LINK_LIBRARIES(NvBlastExtShaders NvBlast ${PHYSXSDK_LIBRARIES} ${APEXSDK_LIBRARIES} ${PXSHAREDSDK_LIBRARIES}) -TARGET_LINK_LIBRARIES(NvBlastExtShaders - PUBLIC NvBlast NvBlastGlobals - PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS} -) +#
+# Build NvBlastExtShaders Common
+#
+
+
+SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
+SET(SHADERS_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/shaders/source)
+SET(SHADERS_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/shaders/include)
+
+# Include here after the directories are defined so that the platform specific file can use the variables.
+include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtShaders.cmake)
+
+SET(COMMON_FILES
+ ${BLASTEXT_PLATFORM_COMMON_FILES}
+
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.h
+)
+
+SET(PUBLIC_FILES
+ ${SHADERS_EXT_INCLUDE_DIR}/NvBlastExtDamageShaders.h
+)
+
+SET(EXT_SOURCE_FILES
+ ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtDamageShaders.cpp
+ ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtDamageAcceleratorInternal.h
+ ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtDamageAcceleratorAABBTree.h
+ ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtDamageAcceleratorAABBTree.cpp
+ ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtDamageAccelerators.cpp
+)
+
+ADD_LIBRARY(NvBlastExtShaders ${BLAST_EXT_SHARED_LIB_TYPE}
+ ${COMMON_FILES}
+ ${PUBLIC_FILES}
+
+ ${EXT_SOURCE_FILES}
+)
+
+SOURCE_GROUP("common" FILES ${COMMON_FILES})
+SOURCE_GROUP("public" FILES ${PUBLIC_FILES})
+SOURCE_GROUP("src" FILES ${EXT_SOURCE_FILES})
+
+
+# Target specific compile options
+
+TARGET_INCLUDE_DIRECTORIES(NvBlastExtShaders
+ PRIVATE ${BLASTEXT_PLATFORM_INCLUDES}
+
+ PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include
+ PUBLIC ${SHADERS_EXT_INCLUDE_DIR}
+
+ PRIVATE ${SHADERS_EXT_SOURCE_DIR}
+ PRIVATE ${PROJECT_SOURCE_DIR}/common
+
+ PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS}
+)
+
+TARGET_COMPILE_DEFINITIONS(NvBlastExtShaders
+ PRIVATE ${BLASTEXT_COMPILE_DEFS}
+)
+
+# Warning disables for Capn Proto
+TARGET_COMPILE_OPTIONS(NvBlastExtShaders
+ PRIVATE ${BLASTEXT_PLATFORM_COMPILE_OPTIONS}
+)
+
+SET_TARGET_PROPERTIES(NvBlastExtShaders PROPERTIES
+ PDB_NAME_DEBUG "NvBlastExtShaders${CMAKE_DEBUG_POSTFIX}"
+ PDB_NAME_CHECKED "NvBlastExtShaders${CMAKE_CHECKED_POSTFIX}"
+ PDB_NAME_PROFILE "NvBlastExtShaders${CMAKE_PROFILE_POSTFIX}"
+ PDB_NAME_RELEASE "NvBlastExtShaders${CMAKE_RELEASE_POSTFIX}"
+)
+
+# Do final direct sets after the target has been defined
+#TARGET_LINK_LIBRARIES(NvBlastExtShaders NvBlast ${PHYSXSDK_LIBRARIES} ${APEXSDK_LIBRARIES} ${PXSHAREDSDK_LIBRARIES})
+TARGET_LINK_LIBRARIES(NvBlastExtShaders
+ PUBLIC NvBlast NvBlastGlobals
+ PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS}
+)
diff --git a/sdk/compiler/cmake/NvBlastExtStress.cmake b/sdk/compiler/cmake/NvBlastExtStress.cmake index d0b73a6..f5fcd99 100644..100755 --- a/sdk/compiler/cmake/NvBlastExtStress.cmake +++ b/sdk/compiler/cmake/NvBlastExtStress.cmake @@ -1,91 +1,91 @@ -# -# Build NvBlastExtStress Common -# - -SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) - -SET(STRESS_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/stress/include) -SET(STRESS_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/stress/source) - -SET(EXT_COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source) -SET(EXT_COMMON_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/include) - -FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED) - -# Include here after the directories are defined so that the platform specific file can use the variables. -include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtStress.cmake OPTIONAL) - - -SET(COMMON_FILES - ${BLASTEXTSTRESS_PLATFORM_COMMON_FILES} - - ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp - ${COMMON_SOURCE_DIR}/NvBlastAssert.h -) - -SET(STRESS_SOURCE_FILES - ${STRESS_SOURCE_DIR}/NvBlastExtStressSolver.cpp -) - -SET(STRESS_PUBLIC_FILES - ${STRESS_INCLUDE_DIR}/NvBlastExtStressSolver.h -) - -ADD_LIBRARY(NvBlastExtStress SHARED - ${COMMON_FILES} - ${STRESS_SOURCE_FILES} - ${STRESS_PUBLIC_FILES} -) - -SOURCE_GROUP("common" FILES ${COMMON_FILES}) -SOURCE_GROUP("public" FILES ${STRESS_PUBLIC_FILES}) -SOURCE_GROUP("src" FILES ${STRESS_SOURCE_FILES}) - -# Target specific compile options - -TARGET_INCLUDE_DIRECTORIES(NvBlastExtStress - PUBLIC ${STRESS_INCLUDE_DIR} - - PRIVATE ${BLASTEXTSTRESS_PLATFORM_INCLUDES} - - PRIVATE ${PROJECT_SOURCE_DIR}/common - PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/include - PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/source - - PRIVATE ${COMMON_SOURCE_DIR} - - PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS} -) - -SET(BLASTEXTSTRESS_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS};_CONSOLE; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -TARGET_COMPILE_DEFINITIONS(NvBlastExtStress - PUBLIC CAPNP_LITE=1 - PRIVATE ${BLASTEXTSTRESS_COMPILE_DEFS} -) - -# Warning disables for Capn Proto -TARGET_COMPILE_OPTIONS(NvBlastExtStress - PRIVATE ${BLASTEXTSTRESS_PLATFORM_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlastExtStress PROPERTIES - PDB_NAME_DEBUG "NvBlastExtStress${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlastExtStress${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlastExtStress${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlastExtStress${CMAKE_RELEASE_POSTFIX}" -) - -# Do final direct sets after the target has been defined -TARGET_LINK_LIBRARIES(NvBlastExtStress - PUBLIC NvBlast NvBlastGlobals - PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS} -) +#
+# Build NvBlastExtStress Common
+#
+
+SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
+
+SET(STRESS_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/stress/include)
+SET(STRESS_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/stress/source)
+
+SET(EXT_COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source)
+SET(EXT_COMMON_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/include)
+
+FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED)
+
+# Include here after the directories are defined so that the platform specific file can use the variables.
+include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtStress.cmake OPTIONAL)
+
+
+SET(COMMON_FILES
+ ${BLASTEXTSTRESS_PLATFORM_COMMON_FILES}
+
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.h
+)
+
+SET(STRESS_SOURCE_FILES
+ ${STRESS_SOURCE_DIR}/NvBlastExtStressSolver.cpp
+)
+
+SET(STRESS_PUBLIC_FILES
+ ${STRESS_INCLUDE_DIR}/NvBlastExtStressSolver.h
+)
+
+ADD_LIBRARY(NvBlastExtStress SHARED
+ ${COMMON_FILES}
+ ${STRESS_SOURCE_FILES}
+ ${STRESS_PUBLIC_FILES}
+)
+
+SOURCE_GROUP("common" FILES ${COMMON_FILES})
+SOURCE_GROUP("public" FILES ${STRESS_PUBLIC_FILES})
+SOURCE_GROUP("src" FILES ${STRESS_SOURCE_FILES})
+
+# Target specific compile options
+
+TARGET_INCLUDE_DIRECTORIES(NvBlastExtStress
+ PUBLIC ${STRESS_INCLUDE_DIR}
+
+ PRIVATE ${BLASTEXTSTRESS_PLATFORM_INCLUDES}
+
+ PRIVATE ${PROJECT_SOURCE_DIR}/common
+ PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/include
+ PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/source
+
+ PRIVATE ${COMMON_SOURCE_DIR}
+
+ PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS}
+)
+
+SET(BLASTEXTSTRESS_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};_CONSOLE;
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+TARGET_COMPILE_DEFINITIONS(NvBlastExtStress
+ PUBLIC CAPNP_LITE=1
+ PRIVATE ${BLASTEXTSTRESS_COMPILE_DEFS}
+)
+
+# Warning disables for Capn Proto
+TARGET_COMPILE_OPTIONS(NvBlastExtStress
+ PRIVATE ${BLASTEXTSTRESS_PLATFORM_COMPILE_OPTIONS}
+)
+
+SET_TARGET_PROPERTIES(NvBlastExtStress PROPERTIES
+ PDB_NAME_DEBUG "NvBlastExtStress${CMAKE_DEBUG_POSTFIX}"
+ PDB_NAME_CHECKED "NvBlastExtStress${CMAKE_CHECKED_POSTFIX}"
+ PDB_NAME_PROFILE "NvBlastExtStress${CMAKE_PROFILE_POSTFIX}"
+ PDB_NAME_RELEASE "NvBlastExtStress${CMAKE_RELEASE_POSTFIX}"
+)
+
+# Do final direct sets after the target has been defined
+TARGET_LINK_LIBRARIES(NvBlastExtStress
+ PUBLIC NvBlast NvBlastGlobals
+ PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS}
+)
diff --git a/sdk/compiler/cmake/NvBlastExtTkSerialization.cmake b/sdk/compiler/cmake/NvBlastExtTkSerialization.cmake index ddc5eb5..38acb6f 100644..100755 --- a/sdk/compiler/cmake/NvBlastExtTkSerialization.cmake +++ b/sdk/compiler/cmake/NvBlastExtTkSerialization.cmake @@ -1,172 +1,172 @@ -# -# Build NvBlastExtTkSerialization Common -# - -SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) - -SET(SERIAL_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/source) -SET(SERIAL_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/include) -SET(TK_INCLUDE_DIR ${BLAST_ROOT_DIR}/sdk/toolkit/include) -SET(EXT_COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source) -SET(EXT_COMMON_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/include) - -SET(DTO_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/DTO) - -SET(SOLVER_SOURCE_DIR ${PROJECT_SOURCE_DIR}/lowlevel/source) - -SET(SERIAL_GENERATED_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/generated) - -FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED) -FIND_PACKAGE(CapnProtoSDK $ENV{PM_CapnProto_VERSION} REQUIRED) - -# Include here after the directories are defined so that the platform specific file can use the variables. -include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtTkSerialization.cmake) - -# Compile the generated files for serialization - -INCLUDE(CapnProtoGenerate) - -SET(CAPNPC_OUTPUT_DIR ${SERIAL_GENERATED_SOURCE_DIR}) -SET(CAPNPC_SRC_PREFIX ${SERIAL_EXT_SOURCE_DIR}) -CAPNP_GENERATE_CPP(CAPNP_SRCS CAPNP_HDRS ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.capn ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerialization.capn) - -SET(COMMON_FILES - ${BLASTEXTTKSERIALIZATION_PLATFORM_COMMON_FILES} - - ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp - ${COMMON_SOURCE_DIR}/NvBlastAssert.h - ${COMMON_SOURCE_DIR}/NvBlastAtomic.cpp - ${COMMON_SOURCE_DIR}/NvBlastAtomic.h - ${COMMON_SOURCE_DIR}/NvBlastDLink.h - ${COMMON_SOURCE_DIR}/NvBlastFixedArray.h - ${COMMON_SOURCE_DIR}/NvBlastFixedBitmap.h - ${COMMON_SOURCE_DIR}/NvBlastFixedBoolArray.h - ${COMMON_SOURCE_DIR}/NvBlastFixedPriorityQueue.h - ${COMMON_SOURCE_DIR}/NvBlastGeometry.h -# ${COMMON_SOURCE_DIR}/NvBlastIndexFns.cpp - ${COMMON_SOURCE_DIR}/NvBlastIndexFns.h - ${COMMON_SOURCE_DIR}/NvBlastIteratorBase.h - ${COMMON_SOURCE_DIR}/NvBlastMath.h - ${COMMON_SOURCE_DIR}/NvBlastMemory.h - ${COMMON_SOURCE_DIR}/NvBlastPreprocessorInternal.h - ${COMMON_SOURCE_DIR}/NvBlastTime.cpp - ${COMMON_SOURCE_DIR}/NvBlastTime.h - ${COMMON_SOURCE_DIR}/NvBlastTimers.cpp -) - - -SET(EXT_SERIALIZATION_FILES - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerialization.capn - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerialization.cpp - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationCAPN.h - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationInternal.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerializerCAPN.h - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerializerRAW.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerializerRAW.cpp - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.cpp - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.cpp -) - -SET(DTO_SOURCE_FILES - ${DTO_SOURCE_DIR}/DTOMacros.h - ${DTO_SOURCE_DIR}/AssetDTO.h - ${DTO_SOURCE_DIR}/AssetDTO.cpp - ${DTO_SOURCE_DIR}/TkAssetDTO.h - ${DTO_SOURCE_DIR}/TkAssetDTO.cpp - ${DTO_SOURCE_DIR}/PxVec3DTO.h - ${DTO_SOURCE_DIR}/PxVec3DTO.cpp - ${DTO_SOURCE_DIR}/NvBlastChunkDTO.h - ${DTO_SOURCE_DIR}/NvBlastChunkDTO.cpp - ${DTO_SOURCE_DIR}/NvBlastBondDTO.h - ${DTO_SOURCE_DIR}/NvBlastBondDTO.cpp - ${DTO_SOURCE_DIR}/NvBlastIDDTO.h - ${DTO_SOURCE_DIR}/NvBlastIDDTO.cpp - ${DTO_SOURCE_DIR}/TkAssetJointDescDTO.h - ${DTO_SOURCE_DIR}/TkAssetJointDescDTO.cpp -) - -SET(EXT_SERIALIZATION_INCLUDES - ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtTkSerialization.h -) - -ADD_LIBRARY(NvBlastExtTkSerialization ${BLASTEXTTKSERIALIZATION_LIB_TYPE} - ${COMMON_FILES} - - ${DTO_SOURCE_FILES} - - ${EXT_SERIALIZATION_INCLUDES} - ${EXT_SERIALIZATION_FILES} - - ${CAPNP_SRCS} - ${CAPNP_HDRS} - - ${MD5_FILES} - - ${CAPNPROTOSDK_SOURCE_FILES} -) - -SOURCE_GROUP("common" FILES ${COMMON_FILES}) - -SOURCE_GROUP("include" FILES ${EXT_SERIALIZATION_INCLUDES}) -SOURCE_GROUP("src\\serialization" FILES ${EXT_SERIALIZATION_FILES}) -SOURCE_GROUP("src\\serialization\\DTO" FILES ${DTO_SOURCE_FILES}) -SOURCE_GROUP("src\\serialization\\generated" FILES ${CAPNP_SRCS} ${CAPNP_HDRS}) -SOURCE_GROUP("src\\serialization\\CapnProtoSDK" FILES ${CAPNPROTOSDK_SOURCE_FILES}) - - -# Target specific compile options - -TARGET_INCLUDE_DIRECTORIES(NvBlastExtTkSerialization - PRIVATE ${BLASTEXTTKSERIALIZATION_PLATFORM_INCLUDES} - - PRIVATE ${PROJECT_SOURCE_DIR}/common - PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/include - PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/source - - PRIVATE ${TK_INCLUDE_DIR} - - PUBLIC ${SERIAL_EXT_INCLUDE_DIR} - PUBLIC ${SERIAL_EXT_SOURCE_DIR} - PUBLIC ${DTO_SOURCE_DIR} - - PRIVATE ${EXT_COMMON_SOURCE_DIR} - PRIVATE ${EXT_COMMON_INCLUDE_DIR} - - PUBLIC ${CAPNPROTOSDK_INCLUDE_DIRS} - - PRIVATE ${COMMON_SOURCE_DIR} - - PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS} -) - -TARGET_COMPILE_DEFINITIONS(NvBlastExtTkSerialization - PUBLIC CAPNP_LITE=1 - PRIVATE ${BLASTEXTTKSERIALIZATION_COMPILE_DEFS} -) - -# Warning disables for Capn Proto -TARGET_COMPILE_OPTIONS(NvBlastExtTkSerialization - PRIVATE ${BLASTEXTTKSERIALIZATION_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlastExtTkSerialization PROPERTIES - PDB_NAME_DEBUG "NvBlastExtTkSerialization${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlastExtTkSerialization${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlastExtTkSerialization${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlastExtTkSerialization${CMAKE_RELEASE_POSTFIX}" -) - -# Do final direct sets after the target has been defined -TARGET_LINK_LIBRARIES(NvBlastExtTkSerialization - PRIVATE NvBlast NvBlastGlobals NvBlastTk ${CAPNPROTOSDK_LIBRARIES} -) - -#Hack for now to force these to build serialially to fix fighting over writing the generated code +#
+# Build NvBlastExtTkSerialization Common
+#
+
+SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
+
+SET(SERIAL_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/source)
+SET(SERIAL_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/serialization/include)
+SET(TK_INCLUDE_DIR ${BLAST_ROOT_DIR}/sdk/toolkit/include)
+SET(EXT_COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/source)
+SET(EXT_COMMON_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/common/include)
+
+SET(DTO_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/DTO)
+
+SET(SOLVER_SOURCE_DIR ${PROJECT_SOURCE_DIR}/lowlevel/source)
+
+SET(SERIAL_GENERATED_SOURCE_DIR ${SERIAL_EXT_SOURCE_DIR}/generated)
+
+FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED)
+FIND_PACKAGE(CapnProtoSDK $ENV{PM_CapnProto_VERSION} REQUIRED)
+
+# Include here after the directories are defined so that the platform specific file can use the variables.
+include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastExtTkSerialization.cmake)
+
+# Compile the generated files for serialization
+
+INCLUDE(CapnProtoGenerate)
+
+SET(CAPNPC_OUTPUT_DIR ${SERIAL_GENERATED_SOURCE_DIR})
+SET(CAPNPC_SRC_PREFIX ${SERIAL_EXT_SOURCE_DIR})
+CAPNP_GENERATE_CPP(CAPNP_SRCS CAPNP_HDRS ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.capn ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerialization.capn)
+
+SET(COMMON_FILES
+ ${BLASTEXTTKSERIALIZATION_PLATFORM_COMMON_FILES}
+
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.h
+ ${COMMON_SOURCE_DIR}/NvBlastAtomic.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAtomic.h
+ ${COMMON_SOURCE_DIR}/NvBlastDLink.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedBitmap.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedBoolArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedPriorityQueue.h
+ ${COMMON_SOURCE_DIR}/NvBlastGeometry.h
+# ${COMMON_SOURCE_DIR}/NvBlastIndexFns.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastIndexFns.h
+ ${COMMON_SOURCE_DIR}/NvBlastIteratorBase.h
+ ${COMMON_SOURCE_DIR}/NvBlastMath.h
+ ${COMMON_SOURCE_DIR}/NvBlastMemory.h
+ ${COMMON_SOURCE_DIR}/NvBlastPreprocessorInternal.h
+ ${COMMON_SOURCE_DIR}/NvBlastTime.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastTime.h
+ ${COMMON_SOURCE_DIR}/NvBlastTimers.cpp
+)
+
+
+SET(EXT_SERIALIZATION_FILES
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerialization.capn
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerialization.cpp
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationCAPN.h
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationInternal.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerializerCAPN.h
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerializerRAW.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtTkSerializerRAW.cpp
+
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtOutputStream.cpp
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.h
+ ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtInputStream.cpp
+)
+
+SET(DTO_SOURCE_FILES
+ ${DTO_SOURCE_DIR}/DTOMacros.h
+ ${DTO_SOURCE_DIR}/AssetDTO.h
+ ${DTO_SOURCE_DIR}/AssetDTO.cpp
+ ${DTO_SOURCE_DIR}/TkAssetDTO.h
+ ${DTO_SOURCE_DIR}/TkAssetDTO.cpp
+ ${DTO_SOURCE_DIR}/PxVec3DTO.h
+ ${DTO_SOURCE_DIR}/PxVec3DTO.cpp
+ ${DTO_SOURCE_DIR}/NvBlastChunkDTO.h
+ ${DTO_SOURCE_DIR}/NvBlastChunkDTO.cpp
+ ${DTO_SOURCE_DIR}/NvBlastBondDTO.h
+ ${DTO_SOURCE_DIR}/NvBlastBondDTO.cpp
+ ${DTO_SOURCE_DIR}/NvBlastIDDTO.h
+ ${DTO_SOURCE_DIR}/NvBlastIDDTO.cpp
+ ${DTO_SOURCE_DIR}/TkAssetJointDescDTO.h
+ ${DTO_SOURCE_DIR}/TkAssetJointDescDTO.cpp
+)
+
+SET(EXT_SERIALIZATION_INCLUDES
+ ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtTkSerialization.h
+)
+
+ADD_LIBRARY(NvBlastExtTkSerialization ${BLASTEXTTKSERIALIZATION_LIB_TYPE}
+ ${COMMON_FILES}
+
+ ${DTO_SOURCE_FILES}
+
+ ${EXT_SERIALIZATION_INCLUDES}
+ ${EXT_SERIALIZATION_FILES}
+
+ ${CAPNP_SRCS}
+ ${CAPNP_HDRS}
+
+ ${MD5_FILES}
+
+ ${CAPNPROTOSDK_SOURCE_FILES}
+)
+
+SOURCE_GROUP("common" FILES ${COMMON_FILES})
+
+SOURCE_GROUP("include" FILES ${EXT_SERIALIZATION_INCLUDES})
+SOURCE_GROUP("src\\serialization" FILES ${EXT_SERIALIZATION_FILES})
+SOURCE_GROUP("src\\serialization\\DTO" FILES ${DTO_SOURCE_FILES})
+SOURCE_GROUP("src\\serialization\\generated" FILES ${CAPNP_SRCS} ${CAPNP_HDRS})
+SOURCE_GROUP("src\\serialization\\CapnProtoSDK" FILES ${CAPNPROTOSDK_SOURCE_FILES})
+
+
+# Target specific compile options
+
+TARGET_INCLUDE_DIRECTORIES(NvBlastExtTkSerialization
+ PRIVATE ${BLASTEXTTKSERIALIZATION_PLATFORM_INCLUDES}
+
+ PRIVATE ${PROJECT_SOURCE_DIR}/common
+ PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/include
+ PRIVATE ${PROJECT_SOURCE_DIR}/lowlevel/source
+
+ PRIVATE ${TK_INCLUDE_DIR}
+
+ PUBLIC ${SERIAL_EXT_INCLUDE_DIR}
+ PUBLIC ${SERIAL_EXT_SOURCE_DIR}
+ PUBLIC ${DTO_SOURCE_DIR}
+
+ PRIVATE ${EXT_COMMON_SOURCE_DIR}
+ PRIVATE ${EXT_COMMON_INCLUDE_DIR}
+
+ PUBLIC ${CAPNPROTOSDK_INCLUDE_DIRS}
+
+ PRIVATE ${COMMON_SOURCE_DIR}
+
+ PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS}
+)
+
+TARGET_COMPILE_DEFINITIONS(NvBlastExtTkSerialization
+ PUBLIC CAPNP_LITE=1
+ PRIVATE ${BLASTEXTTKSERIALIZATION_COMPILE_DEFS}
+)
+
+# Warning disables for Capn Proto
+TARGET_COMPILE_OPTIONS(NvBlastExtTkSerialization
+ PRIVATE ${BLASTEXTTKSERIALIZATION_COMPILE_OPTIONS}
+)
+
+SET_TARGET_PROPERTIES(NvBlastExtTkSerialization PROPERTIES
+ PDB_NAME_DEBUG "NvBlastExtTkSerialization${CMAKE_DEBUG_POSTFIX}"
+ PDB_NAME_CHECKED "NvBlastExtTkSerialization${CMAKE_CHECKED_POSTFIX}"
+ PDB_NAME_PROFILE "NvBlastExtTkSerialization${CMAKE_PROFILE_POSTFIX}"
+ PDB_NAME_RELEASE "NvBlastExtTkSerialization${CMAKE_RELEASE_POSTFIX}"
+)
+
+# Do final direct sets after the target has been defined
+TARGET_LINK_LIBRARIES(NvBlastExtTkSerialization
+ PRIVATE NvBlast NvBlastGlobals NvBlastTk ${CAPNPROTOSDK_LIBRARIES}
+)
+
+#Hack for now to force these to build serialially to fix fighting over writing the generated code
ADD_DEPENDENCIES(NvBlastExtTkSerialization NvBlastExtSerialization)
\ No newline at end of file diff --git a/sdk/compiler/cmake/NvBlastGlobals.cmake b/sdk/compiler/cmake/NvBlastGlobals.cmake index f854ccc..92dfc27 100644..100755 --- a/sdk/compiler/cmake/NvBlastGlobals.cmake +++ b/sdk/compiler/cmake/NvBlastGlobals.cmake @@ -1,68 +1,68 @@ -# -# Build NvBlastGlobals common -# - -SET(GLOBALS_DIR ${PROJECT_SOURCE_DIR}/globals) -SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) - -# Include here after the directories are defined so that the platform specific file can use the variables. -include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastGlobals.cmake OPTIONAL) - -SET(COMMON_FILES - ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp - ${COMMON_SOURCE_DIR}/NvBlastAssert.h -) - -SET(SOURCE_FILES - ${GLOBALS_DIR}/source/NvBlastGlobals.cpp - ${GLOBALS_DIR}/source/NvBlastProfiler.cpp - ${GLOBALS_DIR}/source/NvBlastProfilerInternal.h -) - -SET(PUBLIC_FILES - ${GLOBALS_DIR}/include/NvBlastGlobals.h - ${GLOBALS_DIR}/include/NvBlastAllocator.h - ${GLOBALS_DIR}/include/NvBlastProfiler.h - ${GLOBALS_DIR}/include/NvBlastDebugRender.h -) - -ADD_LIBRARY(NvBlastGlobals SHARED - ${COMMON_FILES} - ${SOURCE_FILES} - ${PUBLIC_FILES} -) - -SOURCE_GROUP("common" FILES ${COMMON_FILES}) -SOURCE_GROUP("source" FILES ${SOURCE_FILES}) -SOURCE_GROUP("public" FILES ${PUBLIC_FILES}) - -# Target specific compile options - -TARGET_INCLUDE_DIRECTORIES(NvBlastGlobals - PUBLIC ${GLOBALS_DIR}/include - PUBLIC ${GLOBALS_DIR}/source - PRIVATE ${COMMON_SOURCE_DIR} -) - -TARGET_COMPILE_DEFINITIONS(NvBlastGlobals - PRIVATE ${BLASTGLOBALS_COMPILE_DEFS} -) - -TARGET_COMPILE_OPTIONS(NvBlastGlobals - PRIVATE ${BLASTGLOBALS_PLATFORM_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlastGlobals PROPERTIES - PDB_NAME_DEBUG "NvBlastGlobals${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlastGlobals${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlastGlobals${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlastGlobals${CMAKE_RELEASE_POSTFIX}" -) - -# Do final direct sets after the target has been defined -TARGET_LINK_LIBRARIES(NvBlastGlobals - PRIVATE NvBlast - - PUBLIC ${BLASTGLOBALS_PLATFORM_LINKED_LIBS} -) - +#
+# Build NvBlastGlobals common
+#
+
+SET(GLOBALS_DIR ${PROJECT_SOURCE_DIR}/globals)
+SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
+
+# Include here after the directories are defined so that the platform specific file can use the variables.
+include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastGlobals.cmake OPTIONAL)
+
+SET(COMMON_FILES
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.h
+)
+
+SET(SOURCE_FILES
+ ${GLOBALS_DIR}/source/NvBlastGlobals.cpp
+ ${GLOBALS_DIR}/source/NvBlastProfiler.cpp
+ ${GLOBALS_DIR}/source/NvBlastProfilerInternal.h
+)
+
+SET(PUBLIC_FILES
+ ${GLOBALS_DIR}/include/NvBlastGlobals.h
+ ${GLOBALS_DIR}/include/NvBlastAllocator.h
+ ${GLOBALS_DIR}/include/NvBlastProfiler.h
+ ${GLOBALS_DIR}/include/NvBlastDebugRender.h
+)
+
+ADD_LIBRARY(NvBlastGlobals SHARED
+ ${COMMON_FILES}
+ ${SOURCE_FILES}
+ ${PUBLIC_FILES}
+)
+
+SOURCE_GROUP("common" FILES ${COMMON_FILES})
+SOURCE_GROUP("source" FILES ${SOURCE_FILES})
+SOURCE_GROUP("public" FILES ${PUBLIC_FILES})
+
+# Target specific compile options
+
+TARGET_INCLUDE_DIRECTORIES(NvBlastGlobals
+ PUBLIC ${GLOBALS_DIR}/include
+ PUBLIC ${GLOBALS_DIR}/source
+ PRIVATE ${COMMON_SOURCE_DIR}
+)
+
+TARGET_COMPILE_DEFINITIONS(NvBlastGlobals
+ PRIVATE ${BLASTGLOBALS_COMPILE_DEFS}
+)
+
+TARGET_COMPILE_OPTIONS(NvBlastGlobals
+ PRIVATE ${BLASTGLOBALS_PLATFORM_COMPILE_OPTIONS}
+)
+
+SET_TARGET_PROPERTIES(NvBlastGlobals PROPERTIES
+ PDB_NAME_DEBUG "NvBlastGlobals${CMAKE_DEBUG_POSTFIX}"
+ PDB_NAME_CHECKED "NvBlastGlobals${CMAKE_CHECKED_POSTFIX}"
+ PDB_NAME_PROFILE "NvBlastGlobals${CMAKE_PROFILE_POSTFIX}"
+ PDB_NAME_RELEASE "NvBlastGlobals${CMAKE_RELEASE_POSTFIX}"
+)
+
+# Do final direct sets after the target has been defined
+TARGET_LINK_LIBRARIES(NvBlastGlobals
+ PRIVATE NvBlast
+
+ PUBLIC ${BLASTGLOBALS_PLATFORM_LINKED_LIBS}
+)
+
diff --git a/sdk/compiler/cmake/NvBlastTk.cmake b/sdk/compiler/cmake/NvBlastTk.cmake index 294e303..2eb6a32 100644..100755 --- a/sdk/compiler/cmake/NvBlastTk.cmake +++ b/sdk/compiler/cmake/NvBlastTk.cmake @@ -1,118 +1,118 @@ -# -# Build NvBlastTk common -# - -SET(TOOLKIT_DIR ${PROJECT_SOURCE_DIR}/toolkit) -SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) - -FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED) - -# Include here after the directories are defined so that the platform specific file can use the variables. -include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastTk.cmake) - -SET(COMMON_FILES - ${BLASTTK_PLATFORM_COMMON_FILES} - - ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp - ${COMMON_SOURCE_DIR}/NvBlastAssert.h - ${COMMON_SOURCE_DIR}/NvBlastAtomic.cpp - ${COMMON_SOURCE_DIR}/NvBlastAtomic.h - ${COMMON_SOURCE_DIR}/NvBlastDLink.h - ${COMMON_SOURCE_DIR}/NvBlastFixedArray.h - ${COMMON_SOURCE_DIR}/NvBlastFixedBitmap.h - ${COMMON_SOURCE_DIR}/NvBlastFixedBoolArray.h - ${COMMON_SOURCE_DIR}/NvBlastFixedPriorityQueue.h - ${COMMON_SOURCE_DIR}/NvBlastGeometry.h -# ${COMMON_SOURCE_DIR}/NvBlastIndexFns.cpp - ${COMMON_SOURCE_DIR}/NvBlastIndexFns.h - ${COMMON_SOURCE_DIR}/NvBlastIteratorBase.h - ${COMMON_SOURCE_DIR}/NvBlastMath.h - ${COMMON_SOURCE_DIR}/NvBlastMemory.h - ${COMMON_SOURCE_DIR}/NvBlastPreprocessorInternal.h - ${COMMON_SOURCE_DIR}/NvBlastTime.cpp - ${COMMON_SOURCE_DIR}/NvBlastTime.h - ${COMMON_SOURCE_DIR}/NvBlastTimers.cpp - ${COMMON_SOURCE_DIR}/NvBlastArray.h - ${COMMON_SOURCE_DIR}/NvBlastHashMap.h - ${COMMON_SOURCE_DIR}/NvBlastHashSet.h -) - -SET(PUBLIC_FILES - ${TOOLKIT_DIR}/include/NvBlastTk.h - ${TOOLKIT_DIR}/include/NvBlastTkActor.h - ${TOOLKIT_DIR}/include/NvBlastTkAsset.h - ${TOOLKIT_DIR}/include/NvBlastTkEvent.h - ${TOOLKIT_DIR}/include/NvBlastTkFamily.h - ${TOOLKIT_DIR}/include/NvBlastTkFramework.h - ${TOOLKIT_DIR}/include/NvBlastTkGroup.h - ${TOOLKIT_DIR}/include/NvBlastTkIdentifiable.h - ${TOOLKIT_DIR}/include/NvBlastTkJoint.h - ${TOOLKIT_DIR}/include/NvBlastTkObject.h - ${TOOLKIT_DIR}/include/NvBlastTkType.h -) - -SET(TOOLKIT_FILES - ${TOOLKIT_DIR}/source/NvBlastTkActorImpl.cpp - ${TOOLKIT_DIR}/source/NvBlastTkActorImpl.h - ${TOOLKIT_DIR}/source/NvBlastTkAssetImpl.cpp - ${TOOLKIT_DIR}/source/NvBlastTkAssetImpl.h - ${TOOLKIT_DIR}/source/NvBlastTkCommon.h - ${TOOLKIT_DIR}/source/NvBlastTkEventQueue.h - ${TOOLKIT_DIR}/source/NvBlastTkFamilyImpl.cpp - ${TOOLKIT_DIR}/source/NvBlastTkFamilyImpl.h - ${TOOLKIT_DIR}/source/NvBlastTkFrameworkImpl.cpp - ${TOOLKIT_DIR}/source/NvBlastTkFrameworkImpl.h - ${TOOLKIT_DIR}/source/NvBlastTkGroupImpl.cpp - ${TOOLKIT_DIR}/source/NvBlastTkGroupImpl.h - ${TOOLKIT_DIR}/source/NvBlastTkGUID.h - ${TOOLKIT_DIR}/source/NvBlastTkJointImpl.cpp - ${TOOLKIT_DIR}/source/NvBlastTkJointImpl.h - ${TOOLKIT_DIR}/source/NvBlastTkTaskImpl.cpp - ${TOOLKIT_DIR}/source/NvBlastTkTaskImpl.h - ${TOOLKIT_DIR}/source/NvBlastTkTypeImpl.h -) - -ADD_LIBRARY(NvBlastTk ${BLASTTK_LIBTYPE} - ${COMMON_FILES} - ${PUBLIC_FILES} - ${TOOLKIT_FILES} -) - -SOURCE_GROUP("common" FILES ${COMMON_FILES}) -SOURCE_GROUP("public" FILES ${PUBLIC_FILES}) -SOURCE_GROUP("toolkit" FILES ${TOOLKIT_FILES}) - -# Target specific compile options - -TARGET_INCLUDE_DIRECTORIES(NvBlastTk - PRIVATE ${BLASTTK_PLATFORM_INCLUDES} - - PRIVATE ${PROJECT_SOURCE_DIR}/common - PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include - PUBLIC ${PROJECT_SOURCE_DIR}/toolkit/include - - PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS} -) - -TARGET_COMPILE_DEFINITIONS(NvBlastTk - PRIVATE ${BLASTTK_COMPILE_DEFS} -) - -TARGET_COMPILE_OPTIONS(NvBlastTk - PRIVATE ${BLASTTK_PLATFORM_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlastTk PROPERTIES - PDB_NAME_DEBUG "NvBlastTk${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlastTk${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlastTk${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlastTk${CMAKE_RELEASE_POSTFIX}" -) - -# Do final direct sets after the target has been defined -TARGET_LINK_LIBRARIES(NvBlastTk - PUBLIC NvBlast NvBlastGlobals - - PUBLIC ${BLASTTK_PLATFORM_LINKED_LIBS} -) - +#
+# Build NvBlastTk common
+#
+
+SET(TOOLKIT_DIR ${PROJECT_SOURCE_DIR}/toolkit)
+SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
+
+FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED)
+
+# Include here after the directories are defined so that the platform specific file can use the variables.
+include(${PROJECT_CMAKE_FILES_DIR}/${TARGET_BUILD_PLATFORM}/NvBlastTk.cmake)
+
+SET(COMMON_FILES
+ ${BLASTTK_PLATFORM_COMMON_FILES}
+
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAssert.h
+ ${COMMON_SOURCE_DIR}/NvBlastAtomic.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastAtomic.h
+ ${COMMON_SOURCE_DIR}/NvBlastDLink.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedBitmap.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedBoolArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastFixedPriorityQueue.h
+ ${COMMON_SOURCE_DIR}/NvBlastGeometry.h
+# ${COMMON_SOURCE_DIR}/NvBlastIndexFns.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastIndexFns.h
+ ${COMMON_SOURCE_DIR}/NvBlastIteratorBase.h
+ ${COMMON_SOURCE_DIR}/NvBlastMath.h
+ ${COMMON_SOURCE_DIR}/NvBlastMemory.h
+ ${COMMON_SOURCE_DIR}/NvBlastPreprocessorInternal.h
+ ${COMMON_SOURCE_DIR}/NvBlastTime.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastTime.h
+ ${COMMON_SOURCE_DIR}/NvBlastTimers.cpp
+ ${COMMON_SOURCE_DIR}/NvBlastArray.h
+ ${COMMON_SOURCE_DIR}/NvBlastHashMap.h
+ ${COMMON_SOURCE_DIR}/NvBlastHashSet.h
+)
+
+SET(PUBLIC_FILES
+ ${TOOLKIT_DIR}/include/NvBlastTk.h
+ ${TOOLKIT_DIR}/include/NvBlastTkActor.h
+ ${TOOLKIT_DIR}/include/NvBlastTkAsset.h
+ ${TOOLKIT_DIR}/include/NvBlastTkEvent.h
+ ${TOOLKIT_DIR}/include/NvBlastTkFamily.h
+ ${TOOLKIT_DIR}/include/NvBlastTkFramework.h
+ ${TOOLKIT_DIR}/include/NvBlastTkGroup.h
+ ${TOOLKIT_DIR}/include/NvBlastTkIdentifiable.h
+ ${TOOLKIT_DIR}/include/NvBlastTkJoint.h
+ ${TOOLKIT_DIR}/include/NvBlastTkObject.h
+ ${TOOLKIT_DIR}/include/NvBlastTkType.h
+)
+
+SET(TOOLKIT_FILES
+ ${TOOLKIT_DIR}/source/NvBlastTkActorImpl.cpp
+ ${TOOLKIT_DIR}/source/NvBlastTkActorImpl.h
+ ${TOOLKIT_DIR}/source/NvBlastTkAssetImpl.cpp
+ ${TOOLKIT_DIR}/source/NvBlastTkAssetImpl.h
+ ${TOOLKIT_DIR}/source/NvBlastTkCommon.h
+ ${TOOLKIT_DIR}/source/NvBlastTkEventQueue.h
+ ${TOOLKIT_DIR}/source/NvBlastTkFamilyImpl.cpp
+ ${TOOLKIT_DIR}/source/NvBlastTkFamilyImpl.h
+ ${TOOLKIT_DIR}/source/NvBlastTkFrameworkImpl.cpp
+ ${TOOLKIT_DIR}/source/NvBlastTkFrameworkImpl.h
+ ${TOOLKIT_DIR}/source/NvBlastTkGroupImpl.cpp
+ ${TOOLKIT_DIR}/source/NvBlastTkGroupImpl.h
+ ${TOOLKIT_DIR}/source/NvBlastTkGUID.h
+ ${TOOLKIT_DIR}/source/NvBlastTkJointImpl.cpp
+ ${TOOLKIT_DIR}/source/NvBlastTkJointImpl.h
+ ${TOOLKIT_DIR}/source/NvBlastTkTaskImpl.cpp
+ ${TOOLKIT_DIR}/source/NvBlastTkTaskImpl.h
+ ${TOOLKIT_DIR}/source/NvBlastTkTypeImpl.h
+)
+
+ADD_LIBRARY(NvBlastTk ${BLASTTK_LIBTYPE}
+ ${COMMON_FILES}
+ ${PUBLIC_FILES}
+ ${TOOLKIT_FILES}
+)
+
+SOURCE_GROUP("common" FILES ${COMMON_FILES})
+SOURCE_GROUP("public" FILES ${PUBLIC_FILES})
+SOURCE_GROUP("toolkit" FILES ${TOOLKIT_FILES})
+
+# Target specific compile options
+
+TARGET_INCLUDE_DIRECTORIES(NvBlastTk
+ PRIVATE ${BLASTTK_PLATFORM_INCLUDES}
+
+ PRIVATE ${PROJECT_SOURCE_DIR}/common
+ PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include
+ PUBLIC ${PROJECT_SOURCE_DIR}/toolkit/include
+
+ PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS}
+)
+
+TARGET_COMPILE_DEFINITIONS(NvBlastTk
+ PRIVATE ${BLASTTK_COMPILE_DEFS}
+)
+
+TARGET_COMPILE_OPTIONS(NvBlastTk
+ PRIVATE ${BLASTTK_PLATFORM_COMPILE_OPTIONS}
+)
+
+SET_TARGET_PROPERTIES(NvBlastTk PROPERTIES
+ PDB_NAME_DEBUG "NvBlastTk${CMAKE_DEBUG_POSTFIX}"
+ PDB_NAME_CHECKED "NvBlastTk${CMAKE_CHECKED_POSTFIX}"
+ PDB_NAME_PROFILE "NvBlastTk${CMAKE_PROFILE_POSTFIX}"
+ PDB_NAME_RELEASE "NvBlastTk${CMAKE_RELEASE_POSTFIX}"
+)
+
+# Do final direct sets after the target has been defined
+TARGET_LINK_LIBRARIES(NvBlastTk
+ PUBLIC NvBlast NvBlastGlobals
+
+ PUBLIC ${BLASTTK_PLATFORM_LINKED_LIBS}
+)
+
diff --git a/sdk/compiler/cmake/linux/CMakeLists.txt b/sdk/compiler/cmake/linux/CMakeLists.txt index 1a6497d..b3560aa 100644..100755 --- a/sdk/compiler/cmake/linux/CMakeLists.txt +++ b/sdk/compiler/cmake/linux/CMakeLists.txt @@ -1,46 +1,46 @@ -#Platform specific compile flags and project includes - -SET(CMAKE_CXX_FLAGS "-Wextra -Werror -fdiagnostics-show-option -fno-rtti -fno-exceptions -m64 -msse2 -mfpmath=sse -fPIC -ffast-math -fno-exceptions -fno-rtti -Wno-invalid-offsetof -Wno-unknown-pragmas -std=c++0x -Wreorder") - -SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g3 -gdwarf-2") -SET(CMAKE_CXX_FLAGS_CHECKED "-O3 -g3 -gdwarf-2 -fno-strict-aliasing") -SET(CMAKE_CXX_FLAGS_PROFILE "-O3 -fno-strict-aliasing") -SET(CMAKE_CXX_FLAGS_RELEASE "-O3 -fno-strict-aliasing") - -SET(BLAST_SLN_COMPILE_DEFS ) - -SET(BLAST_SLN_DEBUG_COMPILE_DEFS _DEBUG;NV_DEBUG=1;) -SET(BLAST_SLN_CHECKED_COMPILE_DEFS NDEBUG;NV_CHECKED=1;) -SET(BLAST_SLN_PROFILE_COMPILE_DEFS NDEBUG;NV_PROFILE=1;) -SET(BLAST_SLN_RELEASE_COMPILE_DEFS NDEBUG;) - -# Include all of the projects -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlast.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastGlobals.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastTk.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtShaders.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtStress.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPhysX.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAuthoring.cmake) - -IF(${UE4_LINUX_CROSSCOMPILE}) - #This uses the Windows CapnProto exe so it works - INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAssetUtils.cmake) - INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerialization.cmake) - INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtTkSerialization.cmake) - INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPxSerialization.cmake) - - #The UE4 Linux cross tools don't include libc++, it's in the UE4 source, however UE4 uses libc++ - #and not libstdc++ so link this statically to avoid a dependency - SET(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++") - SET(CMAKE_SHARED_LINKER_FLAGS "-static-libgcc -static-libstdc++") -ELSE() - #TODO Update Linux CapnProto build to generate correct version code - - INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAssetUtils.cmake) - - #INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtImport.cmake) - INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerialization.cmake) - INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtTkSerialization.cmake) - INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPxSerialization.cmake) -ENDIF() +#Platform specific compile flags and project includes
+
+SET(CMAKE_CXX_FLAGS "-Wextra -Werror -fdiagnostics-show-option -fno-rtti -fno-exceptions -m64 -msse2 -mfpmath=sse -fPIC -ffast-math -fno-exceptions -fno-rtti -Wno-invalid-offsetof -Wno-unknown-pragmas -std=c++0x -Wreorder")
+
+SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g3 -gdwarf-2")
+SET(CMAKE_CXX_FLAGS_CHECKED "-O3 -g3 -gdwarf-2 -fno-strict-aliasing")
+SET(CMAKE_CXX_FLAGS_PROFILE "-O3 -fno-strict-aliasing")
+SET(CMAKE_CXX_FLAGS_RELEASE "-O3 -fno-strict-aliasing")
+
+SET(BLAST_SLN_COMPILE_DEFS )
+
+SET(BLAST_SLN_DEBUG_COMPILE_DEFS _DEBUG;NV_DEBUG=1;)
+SET(BLAST_SLN_CHECKED_COMPILE_DEFS NDEBUG;NV_CHECKED=1;)
+SET(BLAST_SLN_PROFILE_COMPILE_DEFS NDEBUG;NV_PROFILE=1;)
+SET(BLAST_SLN_RELEASE_COMPILE_DEFS NDEBUG;)
+
+# Include all of the projects
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlast.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastGlobals.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastTk.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtShaders.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtStress.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPhysX.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAuthoring.cmake)
+
+IF(${UE4_LINUX_CROSSCOMPILE})
+ #This uses the Windows CapnProto exe so it works
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAssetUtils.cmake)
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerialization.cmake)
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtTkSerialization.cmake)
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPxSerialization.cmake)
+
+ #The UE4 Linux cross tools don't include libc++, it's in the UE4 source, however UE4 uses libc++
+ #and not libstdc++ so link this statically to avoid a dependency
+ SET(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++")
+ SET(CMAKE_SHARED_LINKER_FLAGS "-static-libgcc -static-libstdc++")
+ELSE()
+ #TODO Update Linux CapnProto build to generate correct version code
+
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAssetUtils.cmake)
+
+ #INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtImport.cmake)
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerialization.cmake)
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtTkSerialization.cmake)
+ INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPxSerialization.cmake)
+ENDIF()
diff --git a/sdk/compiler/cmake/linux/NvBlast.cmake b/sdk/compiler/cmake/linux/NvBlast.cmake index c1b0363..079dc2d 100644..100755 --- a/sdk/compiler/cmake/linux/NvBlast.cmake +++ b/sdk/compiler/cmake/linux/NvBlast.cmake @@ -1,23 +1,23 @@ -# -# Build NvBlast Linux -# - -SET(BLAST_PLATFORM_COMMON_FILES -) - -SET(BLAST_PLATFORM_INCLUDES -) - -SET(BLAST_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS}; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLAST_LIB_TYPE SHARED) - -SET(BLAST_PLATFORM_COMPILE_OPTIONS "-pedantic") +#
+# Build NvBlast Linux
+#
+
+SET(BLAST_PLATFORM_COMMON_FILES
+)
+
+SET(BLAST_PLATFORM_INCLUDES
+)
+
+SET(BLAST_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLAST_LIB_TYPE SHARED)
+
+SET(BLAST_PLATFORM_COMPILE_OPTIONS "-pedantic")
diff --git a/sdk/compiler/cmake/linux/NvBlastExtAssetUtils.cmake b/sdk/compiler/cmake/linux/NvBlastExtAssetUtils.cmake index 71ff1aa..fb90ce2 100644..100755 --- a/sdk/compiler/cmake/linux/NvBlastExtAssetUtils.cmake +++ b/sdk/compiler/cmake/linux/NvBlastExtAssetUtils.cmake @@ -1,27 +1,27 @@ -# -# Build NvBlastExtAssetUtils Windows -# - -SET(BLASTEXTASSETUTILS_PLATFORM_COMMON_FILES -# No Linux counterpart -# ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h -) - -SET(BLASTEXTASSETUTILS_PLATFORM_INCLUDES -) - -SET(BLASTEXTASSETUTILS_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS};_CONSOLE; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLASTEXTASSETUTILS_LIB_TYPE SHARED) - - -SET(BLASTEXTASSETUTILS_COMPILE_OPTIONS "") - +#
+# Build NvBlastExtAssetUtils Windows
+#
+
+SET(BLASTEXTASSETUTILS_PLATFORM_COMMON_FILES
+# No Linux counterpart
+# ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h
+)
+
+SET(BLASTEXTASSETUTILS_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXTASSETUTILS_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};_CONSOLE;
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLASTEXTASSETUTILS_LIB_TYPE SHARED)
+
+
+SET(BLASTEXTASSETUTILS_COMPILE_OPTIONS "")
+
diff --git a/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake b/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake index b640582..2917574 100644..100755 --- a/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake +++ b/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake @@ -1,31 +1,31 @@ -# -# Build NvBlast Linux -# - -SET(BLASTEXT_PLATFORM_COMMON_FILES -) - -SET(BLASTEXT_PLATFORM_INCLUDES -) - -SET(BLASTEXT_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS}; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLAST_EXT_SHARED_LIB_TYPE SHARED) - -#Exceptions are needed by boost -#This option doesn't work on Clang -IF (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-maybe-uninitialized" "-fexceptions" "-Wno-unused-parameter") - SET(VHACD_COMPILE_FLAGS "-Wno-type-limits -Wno-ignored-qualifiers -Wno-unused-result") -ELSE () - SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-return-type-c-linkage" "-pedantic" "-fexceptions" "-Wno-unused-parameter") - SET(VHACD_COMPILE_FLAGS "-Wno-logical-op-parentheses -Wno-ignored-qualifiers") -ENDIF() +#
+# Build NvBlast Linux
+#
+
+SET(BLASTEXT_PLATFORM_COMMON_FILES
+)
+
+SET(BLASTEXT_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXT_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLAST_EXT_SHARED_LIB_TYPE SHARED)
+
+#Exceptions are needed by boost
+#This option doesn't work on Clang
+IF (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
+ SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-maybe-uninitialized" "-fexceptions" "-Wno-unused-parameter")
+ SET(VHACD_COMPILE_FLAGS "-Wno-type-limits -Wno-ignored-qualifiers -Wno-unused-result")
+ELSE ()
+ SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-return-type-c-linkage" "-pedantic" "-fexceptions" "-Wno-unused-parameter")
+ SET(VHACD_COMPILE_FLAGS "-Wno-logical-op-parentheses -Wno-ignored-qualifiers")
+ENDIF()
diff --git a/sdk/compiler/cmake/linux/NvBlastExtImport.cmake b/sdk/compiler/cmake/linux/NvBlastExtImport.cmake index 543887d..33ad364 100644..100755 --- a/sdk/compiler/cmake/linux/NvBlastExtImport.cmake +++ b/sdk/compiler/cmake/linux/NvBlastExtImport.cmake @@ -1,23 +1,23 @@ -# -# Build NvBlast Linux -# - -SET(BLASTEXT_PLATFORM_COMMON_FILES -) - -SET(BLASTEXT_PLATFORM_INCLUDES -) - -SET(BLASTEXT_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS}; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLAST_EXT_SHARED_LIB_TYPE SHARED) - -SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas") +#
+# Build NvBlast Linux
+#
+
+SET(BLASTEXT_PLATFORM_COMMON_FILES
+)
+
+SET(BLASTEXT_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXT_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLAST_EXT_SHARED_LIB_TYPE SHARED)
+
+SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas")
diff --git a/sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake b/sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake index 9edb58c..9029d26 100644..100755 --- a/sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake +++ b/sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake @@ -1,28 +1,28 @@ -# -# Build NvBlast Linux -# - -SET(BLASTEXT_PLATFORM_COMMON_FILES -) - -SET(BLASTEXT_PLATFORM_INCLUDES -) - -SET(BLASTEXT_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS}; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLASTEXT_PHYSX_LIBTYPE SHARED) - -#-Wno-maybe-uninitialized doesn't work on Clang -IF (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas" "-Wno-maybe-uninitialized") -ELSE() - SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas" "-Wno-return-type-c-linkage") -ENDIF() +#
+# Build NvBlast Linux
+#
+
+SET(BLASTEXT_PLATFORM_COMMON_FILES
+)
+
+SET(BLASTEXT_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXT_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLASTEXT_PHYSX_LIBTYPE SHARED)
+
+#-Wno-maybe-uninitialized doesn't work on Clang
+IF (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
+ SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas" "-Wno-maybe-uninitialized")
+ELSE()
+ SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas" "-Wno-return-type-c-linkage")
+ENDIF()
diff --git a/sdk/compiler/cmake/linux/NvBlastExtPxSerialization.cmake b/sdk/compiler/cmake/linux/NvBlastExtPxSerialization.cmake index 8507ea2..a5c5dd9 100644..100755 --- a/sdk/compiler/cmake/linux/NvBlastExtPxSerialization.cmake +++ b/sdk/compiler/cmake/linux/NvBlastExtPxSerialization.cmake @@ -1,29 +1,29 @@ -# -# Build NvBlastExtPxSerialization Linux -# - -SET(BLASTEXTPXSERIALIZATION_PLATFORM_COMMON_FILES -) - -SET(BLASTEXTPXSERIALIZATION_PLATFORM_INCLUDES -) - -SET(BLASTEXTPXSERIALIZATION_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS}; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLASTEXTPXSERIALIZATION_LIB_TYPE SHARED) - -IF (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - SET(BLASTEXTPXSERIALIZATION_COMPILE_OPTIONS "-Wno-sign-compare") -ELSE() - SET(BLASTEXTPXSERIALIZATION_COMPILE_OPTIONS "-Wno-sign-compare" "-Wno-return-type-c-linkage" "-Wno-unused-parameter") -ENDIF() - - +#
+# Build NvBlastExtPxSerialization Linux
+#
+
+SET(BLASTEXTPXSERIALIZATION_PLATFORM_COMMON_FILES
+)
+
+SET(BLASTEXTPXSERIALIZATION_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXTPXSERIALIZATION_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLASTEXTPXSERIALIZATION_LIB_TYPE SHARED)
+
+IF (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
+ SET(BLASTEXTPXSERIALIZATION_COMPILE_OPTIONS "-Wno-sign-compare")
+ELSE()
+ SET(BLASTEXTPXSERIALIZATION_COMPILE_OPTIONS "-Wno-sign-compare" "-Wno-return-type-c-linkage" "-Wno-unused-parameter")
+ENDIF()
+
+
diff --git a/sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake b/sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake index b6d4d84..4f000ef 100644..100755 --- a/sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake +++ b/sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake @@ -1,27 +1,27 @@ -# -# Build NvBlastExtSerialization Linux -# - -SET(BLASTEXTSERIALIZATION_PLATFORM_COMMON_FILES -) - -SET(BLASTEXTSERIALIZATION_PLATFORM_INCLUDES -) - -SET(BLASTEXTSERIALIZATION_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS}; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLASTEXTSERIALIZATION_LIB_TYPE SHARED) - -IF (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "-Wno-sign-compare") -ELSE() - SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "-Wno-sign-compare" "-Wno-unused-parameter" "-Wno-return-type-c-linkage") -ENDIF() +#
+# Build NvBlastExtSerialization Linux
+#
+
+SET(BLASTEXTSERIALIZATION_PLATFORM_COMMON_FILES
+)
+
+SET(BLASTEXTSERIALIZATION_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXTSERIALIZATION_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLASTEXTSERIALIZATION_LIB_TYPE SHARED)
+
+IF (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
+ SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "-Wno-sign-compare")
+ELSE()
+ SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "-Wno-sign-compare" "-Wno-unused-parameter" "-Wno-return-type-c-linkage")
+ENDIF()
diff --git a/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake b/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake index 28cc234..db71732 100644..100755 --- a/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake +++ b/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake @@ -1,23 +1,23 @@ -# -# Build NvBlast Linux -# - -SET(BLASTEXT_PLATFORM_COMMON_FILES -) - -SET(BLASTEXT_PLATFORM_INCLUDES -) - -SET(BLASTEXT_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS}; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLAST_EXT_SHARED_LIB_TYPE SHARED) - -SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas" "-Wno-return-type-c-linkage" "-pedantic") +#
+# Build NvBlast Linux
+#
+
+SET(BLASTEXT_PLATFORM_COMMON_FILES
+)
+
+SET(BLASTEXT_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXT_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLAST_EXT_SHARED_LIB_TYPE SHARED)
+
+SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas" "-Wno-return-type-c-linkage" "-pedantic")
diff --git a/sdk/compiler/cmake/linux/NvBlastExtStress.cmake b/sdk/compiler/cmake/linux/NvBlastExtStress.cmake index 96fe6a0..f07c509 100644..100755 --- a/sdk/compiler/cmake/linux/NvBlastExtStress.cmake +++ b/sdk/compiler/cmake/linux/NvBlastExtStress.cmake @@ -1,11 +1,11 @@ -# -# Build NvBlast Linux -# - -SET(BLASTTK_LIBTYPE SHARED) - -IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - SET(BLASTEXTSTRESS_PLATFORM_COMPILE_OPTIONS "-Wno-return-type-c-linkage" "-pedantic") -ELSE() - SET(BLASTEXTSTRESS_PLATFORM_COMPILE_OPTIONS "-pedantic") -ENDIF() +#
+# Build NvBlast Linux
+#
+
+SET(BLASTTK_LIBTYPE SHARED)
+
+IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
+ SET(BLASTEXTSTRESS_PLATFORM_COMPILE_OPTIONS "-Wno-return-type-c-linkage" "-pedantic")
+ELSE()
+ SET(BLASTEXTSTRESS_PLATFORM_COMPILE_OPTIONS "-pedantic")
+ENDIF()
diff --git a/sdk/compiler/cmake/linux/NvBlastExtTkSerialization.cmake b/sdk/compiler/cmake/linux/NvBlastExtTkSerialization.cmake index 12ade81..8ef4c19 100644..100755 --- a/sdk/compiler/cmake/linux/NvBlastExtTkSerialization.cmake +++ b/sdk/compiler/cmake/linux/NvBlastExtTkSerialization.cmake @@ -1,27 +1,27 @@ -# -# Build NvBlastExtTkSerialization Linux -# - -SET(BLASTEXTTKSERIALIZATION_PLATFORM_COMMON_FILES -) - -SET(BLASTEXTTKSERIALIZATION_PLATFORM_INCLUDES -) - -SET(BLASTEXTTKSERIALIZATION_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS}; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLASTEXTTKSERIALIZATION_LIB_TYPE SHARED) - -IF (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - SET(BLASTEXTTKSERIALIZATION_COMPILE_OPTIONS "-Wno-sign-compare") -ELSE() - SET(BLASTEXTTKSERIALIZATION_COMPILE_OPTIONS "-Wno-sign-compare" "-Wno-return-type-c-linkage" "-Wno-unused-parameter") -ENDIF() +#
+# Build NvBlastExtTkSerialization Linux
+#
+
+SET(BLASTEXTTKSERIALIZATION_PLATFORM_COMMON_FILES
+)
+
+SET(BLASTEXTTKSERIALIZATION_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXTTKSERIALIZATION_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLASTEXTTKSERIALIZATION_LIB_TYPE SHARED)
+
+IF (NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
+ SET(BLASTEXTTKSERIALIZATION_COMPILE_OPTIONS "-Wno-sign-compare")
+ELSE()
+ SET(BLASTEXTTKSERIALIZATION_COMPILE_OPTIONS "-Wno-sign-compare" "-Wno-return-type-c-linkage" "-Wno-unused-parameter")
+ENDIF()
diff --git a/sdk/compiler/cmake/linux/NvBlastGlobals.cmake b/sdk/compiler/cmake/linux/NvBlastGlobals.cmake index 163d4b9..dd000be 100644..100755 --- a/sdk/compiler/cmake/linux/NvBlastGlobals.cmake +++ b/sdk/compiler/cmake/linux/NvBlastGlobals.cmake @@ -1,15 +1,15 @@ -# -# Build NvBlastGlobals Linux -# - -SET(BLASTGLOBALS_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS}; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - +#
+# Build NvBlastGlobals Linux
+#
+
+SET(BLASTGLOBALS_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
SET(BLASTGLOBALS_PLATFORM_COMPILE_OPTIONS "-pedantic")
\ No newline at end of file diff --git a/sdk/compiler/cmake/linux/NvBlastTk.cmake b/sdk/compiler/cmake/linux/NvBlastTk.cmake index 5ea3746..6c79d4c 100644..100755 --- a/sdk/compiler/cmake/linux/NvBlastTk.cmake +++ b/sdk/compiler/cmake/linux/NvBlastTk.cmake @@ -1,28 +1,28 @@ -# -# Build NvBlastTk Linux -# - -SET(BLASTTK_PLATFORM_COMMON_FILES -) - -SET(BLASTTK_PLATFORM_INCLUDES -) - -SET(BLASTTK_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS} - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLASTTK_LIBTYPE SHARED) - -IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - SET(BLASTTK_PLATFORM_COMPILE_OPTIONS "-Wno-return-type-c-linkage" "-pedantic") -ELSE () - SET(BLASTTK_PLATFORM_COMPILE_OPTIONS "-pedantic") -ENDIF() - +#
+# Build NvBlastTk Linux
+#
+
+SET(BLASTTK_PLATFORM_COMMON_FILES
+)
+
+SET(BLASTTK_PLATFORM_INCLUDES
+)
+
+SET(BLASTTK_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS}
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLASTTK_LIBTYPE SHARED)
+
+IF ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
+ SET(BLASTTK_PLATFORM_COMPILE_OPTIONS "-Wno-return-type-c-linkage" "-pedantic")
+ELSE ()
+ SET(BLASTTK_PLATFORM_COMPILE_OPTIONS "-pedantic")
+ENDIF()
+
diff --git a/sdk/compiler/cmake/modules/CapnProtoGenerate.cmake b/sdk/compiler/cmake/modules/CapnProtoGenerate.cmake index 5d57cd0..8320faa 100644..100755 --- a/sdk/compiler/cmake/modules/CapnProtoGenerate.cmake +++ b/sdk/compiler/cmake/modules/CapnProtoGenerate.cmake @@ -1,108 +1,108 @@ -# Configuration variables (optional): -# CAPNPC_OUTPUT_DIR -# Directory to place compiled schema sources (default: the same directory as the schema file). -# CAPNPC_IMPORT_DIRS -# List of additional include directories for the schema compiler. -# (CMAKE_CURRENT_SOURCE_DIR and CAPNP_INCLUDE_DIRS are always included.) -# CAPNPC_SRC_PREFIX -# Schema file source prefix (default: CMAKE_CURRENT_SOURCE_DIR). -# CAPNPC_FLAGS -# Additional flags to pass to the schema compiler. -# Example usage: -# -# capnp_generate_cpp(CAPNP_SRCS CAPNP_HDRS schema.capnp) -# add_executable(a a.cc ${CAPNP_SRCS} ${CAPNP_HDRS}) -# target_link_library(a ${CAPNP_LIBRARIES}) -# -# For out-of-source builds: -# -# set(CAPNPC_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}) -# include_directories(${CAPNPC_OUTPUT_DIR}) -# capnp_generate_cpp(...) - -function(CAPNP_GENERATE_CPP SOURCES HEADERS) - if(NOT ARGN) - message(SEND_ERROR "CAPNP_GENERATE_CPP() called without any source files.") - endif() - if(NOT CAPNP_EXECUTABLE) - message(SEND_ERROR "Could not locate capnp executable (CAPNP_EXECUTABLE).") - endif() - if(NOT CAPNPC_CXX_EXECUTABLE) - message(SEND_ERROR "Could not locate capnpc-c++ executable (CAPNPC_CXX_EXECUTABLE).") - endif() - if(NOT CAPNP_INCLUDE_DIRS) - message(SEND_ERROR "Could not locate capnp header files (CAPNP_INCLUDE_DIRS).") - endif() - - # Default compiler includes - set(include_path -I ${CMAKE_CURRENT_SOURCE_DIR} -I ${CAPNP_INCLUDE_DIRS}) - - if(DEFINED CAPNPC_IMPORT_DIRS) - # Append each directory as a series of '-I' flags in ${include_path} - foreach(directory ${CAPNPC_IMPORT_DIRS}) - get_filename_component(absolute_path "${directory}" ABSOLUTE) - list(APPEND include_path -I ${absolute_path}) - endforeach() - endif() - - if(DEFINED CAPNPC_OUTPUT_DIR) - set(output_dir "${CAPNPC_OUTPUT_DIR}") - else() - set(output_dir ".") - endif() - - if(NOT DEFINED CAPNPC_SRC_PREFIX) - set(CAPNPC_SRC_PREFIX "${CMAKE_CURRENT_SOURCE_DIR}") - endif() - get_filename_component(CAPNPC_SRC_PREFIX "${CAPNPC_SRC_PREFIX}" ABSOLUTE) - - set(${SOURCES}) - set(${HEADERS}) - foreach(schema_file ${ARGN}) - get_filename_component(file_path "${schema_file}" ABSOLUTE) - get_filename_component(file_dir "${file_path}" PATH) - - # Figure out where the output files will go - if (NOT DEFINED CAPNPC_OUTPUT_DIR) - set(output_base "${file_path}") - else() - # Output files are placed in CAPNPC_OUTPUT_DIR, at a location as if they were - # relative to CAPNPC_SRC_PREFIX. - string(LENGTH "${CAPNPC_SRC_PREFIX}" prefix_len) - string(SUBSTRING "${file_path}" 0 ${prefix_len} output_prefix) - if(NOT "${CAPNPC_SRC_PREFIX}" STREQUAL "${output_prefix}") - message(SEND_ERROR "Could not determine output path for '${schema_file}' ('${file_path}') with source prefix '${CAPNPC_SRC_PREFIX}' into '${CAPNPC_OUTPUT_DIR}'.") - endif() - - string(SUBSTRING "${file_path}" ${prefix_len} -1 output_path) - set(output_base "${CAPNPC_OUTPUT_DIR}${output_path}") - endif() - - MESSAGE("Output base: " ${output_base}) - MESSAGE("Output path: " ${output_path}) - MESSAGE("Output dir: " ${output_dir}) - MESSAGE("Src prefix: " ${CAPNPC_SRC_PREFIX}) - - add_custom_command( - OUTPUT "${output_base}.c++" "${output_base}.h" - COMMAND ${CMAKE_COMMAND} -E make_directory ${output_dir} - COMMAND "${CAPNP_EXECUTABLE}" - ARGS compile - -o ${CAPNPC_CXX_EXECUTABLE}:${output_dir} - --verbose - --src-prefix ${CAPNPC_SRC_PREFIX} - ${include_path} - ${CAPNPC_FLAGS} - ${file_path} - DEPENDS "${schema_file}" - COMMENT "Compiling Cap'n Proto schema ${schema_file}" - VERBATIM - ) - list(APPEND ${SOURCES} "${output_base}.c++") - list(APPEND ${HEADERS} "${output_base}.h") - endforeach() - - set_source_files_properties(${${SOURCES}} ${${HEADERS}} PROPERTIES GENERATED TRUE) - set(${SOURCES} ${${SOURCES}} PARENT_SCOPE) - set(${HEADERS} ${${HEADERS}} PARENT_SCOPE) +# Configuration variables (optional):
+# CAPNPC_OUTPUT_DIR
+# Directory to place compiled schema sources (default: the same directory as the schema file).
+# CAPNPC_IMPORT_DIRS
+# List of additional include directories for the schema compiler.
+# (CMAKE_CURRENT_SOURCE_DIR and CAPNP_INCLUDE_DIRS are always included.)
+# CAPNPC_SRC_PREFIX
+# Schema file source prefix (default: CMAKE_CURRENT_SOURCE_DIR).
+# CAPNPC_FLAGS
+# Additional flags to pass to the schema compiler.
+# Example usage:
+#
+# capnp_generate_cpp(CAPNP_SRCS CAPNP_HDRS schema.capnp)
+# add_executable(a a.cc ${CAPNP_SRCS} ${CAPNP_HDRS})
+# target_link_library(a ${CAPNP_LIBRARIES})
+#
+# For out-of-source builds:
+#
+# set(CAPNPC_OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR})
+# include_directories(${CAPNPC_OUTPUT_DIR})
+# capnp_generate_cpp(...)
+
+function(CAPNP_GENERATE_CPP SOURCES HEADERS)
+ if(NOT ARGN)
+ message(SEND_ERROR "CAPNP_GENERATE_CPP() called without any source files.")
+ endif()
+ if(NOT CAPNP_EXECUTABLE)
+ message(SEND_ERROR "Could not locate capnp executable (CAPNP_EXECUTABLE).")
+ endif()
+ if(NOT CAPNPC_CXX_EXECUTABLE)
+ message(SEND_ERROR "Could not locate capnpc-c++ executable (CAPNPC_CXX_EXECUTABLE).")
+ endif()
+ if(NOT CAPNP_INCLUDE_DIRS)
+ message(SEND_ERROR "Could not locate capnp header files (CAPNP_INCLUDE_DIRS).")
+ endif()
+
+ # Default compiler includes
+ set(include_path -I ${CMAKE_CURRENT_SOURCE_DIR} -I ${CAPNP_INCLUDE_DIRS})
+
+ if(DEFINED CAPNPC_IMPORT_DIRS)
+ # Append each directory as a series of '-I' flags in ${include_path}
+ foreach(directory ${CAPNPC_IMPORT_DIRS})
+ get_filename_component(absolute_path "${directory}" ABSOLUTE)
+ list(APPEND include_path -I ${absolute_path})
+ endforeach()
+ endif()
+
+ if(DEFINED CAPNPC_OUTPUT_DIR)
+ set(output_dir "${CAPNPC_OUTPUT_DIR}")
+ else()
+ set(output_dir ".")
+ endif()
+
+ if(NOT DEFINED CAPNPC_SRC_PREFIX)
+ set(CAPNPC_SRC_PREFIX "${CMAKE_CURRENT_SOURCE_DIR}")
+ endif()
+ get_filename_component(CAPNPC_SRC_PREFIX "${CAPNPC_SRC_PREFIX}" ABSOLUTE)
+
+ set(${SOURCES})
+ set(${HEADERS})
+ foreach(schema_file ${ARGN})
+ get_filename_component(file_path "${schema_file}" ABSOLUTE)
+ get_filename_component(file_dir "${file_path}" PATH)
+
+ # Figure out where the output files will go
+ if (NOT DEFINED CAPNPC_OUTPUT_DIR)
+ set(output_base "${file_path}")
+ else()
+ # Output files are placed in CAPNPC_OUTPUT_DIR, at a location as if they were
+ # relative to CAPNPC_SRC_PREFIX.
+ string(LENGTH "${CAPNPC_SRC_PREFIX}" prefix_len)
+ string(SUBSTRING "${file_path}" 0 ${prefix_len} output_prefix)
+ if(NOT "${CAPNPC_SRC_PREFIX}" STREQUAL "${output_prefix}")
+ message(SEND_ERROR "Could not determine output path for '${schema_file}' ('${file_path}') with source prefix '${CAPNPC_SRC_PREFIX}' into '${CAPNPC_OUTPUT_DIR}'.")
+ endif()
+
+ string(SUBSTRING "${file_path}" ${prefix_len} -1 output_path)
+ set(output_base "${CAPNPC_OUTPUT_DIR}${output_path}")
+ endif()
+
+ MESSAGE("Output base: " ${output_base})
+ MESSAGE("Output path: " ${output_path})
+ MESSAGE("Output dir: " ${output_dir})
+ MESSAGE("Src prefix: " ${CAPNPC_SRC_PREFIX})
+
+ add_custom_command(
+ OUTPUT "${output_base}.c++" "${output_base}.h"
+ COMMAND ${CMAKE_COMMAND} -E make_directory ${output_dir}
+ COMMAND "${CAPNP_EXECUTABLE}"
+ ARGS compile
+ -o ${CAPNPC_CXX_EXECUTABLE}:${output_dir}
+ --verbose
+ --src-prefix ${CAPNPC_SRC_PREFIX}
+ ${include_path}
+ ${CAPNPC_FLAGS}
+ ${file_path}
+ DEPENDS "${schema_file}"
+ COMMENT "Compiling Cap'n Proto schema ${schema_file}"
+ VERBATIM
+ )
+ list(APPEND ${SOURCES} "${output_base}.c++")
+ list(APPEND ${HEADERS} "${output_base}.h")
+ endforeach()
+
+ set_source_files_properties(${${SOURCES}} ${${HEADERS}} PROPERTIES GENERATED TRUE)
+ set(${SOURCES} ${${SOURCES}} PARENT_SCOPE)
+ set(${HEADERS} ${${HEADERS}} PARENT_SCOPE)
endfunction()
\ No newline at end of file diff --git a/sdk/compiler/cmake/modules/FindApexSDK.cmake b/sdk/compiler/cmake/modules/FindApexSDK.cmake deleted file mode 100644 index cc45e53..0000000 --- a/sdk/compiler/cmake/modules/FindApexSDK.cmake +++ /dev/null @@ -1,400 +0,0 @@ -# - Try to find Apex binary SDK -# - Sets APEXSDK_LIBS_DEBUG and APEXSDK_LIBS_RELEASE - lists of the libraries found -# - Sets APEXSDK_INCLUDE_DIRS -# - Sets APEXSDK_DLLS - List of the DLLs to copy to the bin directory of projects that depend on this - -include(FindPackageHandleStandardArgs) - -# Find the includes - -find_path(APEXSDK_PATH include/Apex.h - PATHS - $ENV{PM_Apex_PATH} - $ENV{PM_PhysX_PATH}/APEX_1.4 # multipack - ${GW_DEPS_ROOT}/$ENV{PM_Apex_NAME}/${ApexSDK_FIND_VERSION} - ${GW_DEPS_ROOT}/Apex/${ApexSDK_FIND_VERSION} -) - -if (TARGET_BUILD_PLATFORM STREQUAL "Windows") - # If the project pulling in this dependency needs the static crt, then append that to the path. - if (STATIC_WINCRT) - SET(PXSHARED_CRT_SUFFIX "-staticcrt") - else() - SET(PXSHARED_CRT_SUFFIX "") - endif() - - if (CMAKE_CL_64) - SET(APEX_ARCH_FOLDER "win64") - SET(APEX_ARCH_FILE "_x64") - else() - SET(APEX_ARCH_FOLDER "win32") - SET(APEX_ARCH_FILE "_x86") - endif() - - # What compiler version do we want? - - if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 18.0.0.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0.0.0) - SET(VS_STR "VS2013") - elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.0.0.0) - SET(VS_STR "VS2015") - else() - MESSAGE(FATAL_ERROR "Failed to find compatible PxSharedSDK - Only supporting VS2013 and VS2015") - endif() - - SET(LIB_PATH ${APEXSDK_PATH}/lib/${VS_STR}${APEX_ARCH_FOLDER}-cmake${PHYSX_CRT_SUFFIX} ${APEXSDK_PATH}/lib/${VS_STR}${APEX_ARCH_FOLDER}-NoPhysX ${APEXSDK_PATH}/../Lib/${APEX_ARCH_FOLDER}/${VS_STR} ${APEXSDK_PATH}/../Lib) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib" ".dll") - -elseif(TARGET_BUILD_PLATFORM STREQUAL "PS4") - SET(LIB_PATH ${APEXSDK_PATH}/lib/vc14ps4-cmake) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib") -elseif(TARGET_BUILD_PLATFORM STREQUAL "XboxOne") - SET(LIB_PATH ${APEXSDK_PATH}/lib/vc14xboxone-cmake) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib") -elseif(TARGET_BUILD_PLATFORM STREQUAL "linux") - SET(LIB_PATH ${APEXSDK_PATH}/lib/linux64-cmake) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib") -endif() - -find_library(APEXCLOTHING_LIB - NAMES APEX_Clothing APEX_Clothing${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXDESTRUCTIBLE_LIB - NAMES APEX_Destructible APEX_Destructible${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXLEGACY_LIB - NAMES APEX_Legacy APEX_Legacy${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXLOADER_LIB - NAMES APEX_Loader APEX_Loader${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXCOMMON_LIB - NAMES APEXCommon APEXCommon${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXFRAMEWORK_LIB - NAMES APEXFramework APEXFramework${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXSHARED_LIB - NAMES APEXShared APEXShared${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) - -find_library(APEXCLOTHING_LIB_DEBUG - NAMES APEX_ClothingDEBUG APEX_ClothingDEBUG${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXDESTRUCTIBLE_LIB_DEBUG - NAMES APEX_DestructibleDEBUG APEX_DestructibleDEBUG${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXLEGACY_LIB_DEBUG - NAMES APEX_LegacyDEBUG APEX_LegacyDEBUG${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXLOADER_LIB_DEBUG - NAMES APEX_LoaderDEBUG APEX_LoaderDEBUG${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXCOMMON_LIB_DEBUG - NAMES APEXCommonDEBUG APEXCommonDEBUG${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXFRAMEWORK_LIB_DEBUG - NAMES APEXFrameworkDEBUG APEXFrameworkDEBUG${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXSHARED_LIB_DEBUG - NAMES APEXSharedDEBUG APEXSharedDEBUG${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) - -find_library(APEXCLOTHING_LIB_CHECKED - NAMES APEX_ClothingCHECKED APEX_ClothingCHECKED${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXDESTRUCTIBLE_LIB_CHECKED - NAMES APEX_DestructibleCHECKED APEX_DestructibleCHECKED${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXLEGACY_LIB_CHECKED - NAMES APEX_LegacyCHECKED APEX_LegacyCHECKED${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXLOADER_LIB_CHECKED - NAMES APEX_LoaderCHECKED APEX_LoaderCHECKED${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXCOMMON_LIB_CHECKED - NAMES APEXCommonCHECKED APEXCommonCHECKED${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXFRAMEWORK_LIB_CHECKED - NAMES APEXFrameworkCHECKED APEXFrameworkCHECKED${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXSHARED_LIB_CHECKED - NAMES APEXSharedCHECKED APEXSharedCHECKED${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) - -find_library(APEXCLOTHING_LIB_PROFILE - NAMES APEX_ClothingPROFILE APEX_ClothingPROFILE${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXDESTRUCTIBLE_LIB_PROFILE - NAMES APEX_DestructiblePROFILE APEX_DestructiblePROFILE${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXLEGACY_LIB_PROFILE - NAMES APEX_LegacyPROFILE APEX_LegacyPROFILE${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXLOADER_LIB_PROFILE - NAMES APEX_LoaderPROFILE APEX_LoaderPROFILE${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXCOMMON_LIB_PROFILE - NAMES APEXCommonPROFILE APEXCommonPROFILE${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXFRAMEWORK_LIB_PROFILE - NAMES APEXFrameworkPROFILE APEXFrameworkPROFILE${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(APEXSHARED_LIB_PROFILE - NAMES APEXSharedPROFILE APEXSharedPROFILE${APEX_ARCH_FILE} - PATHS ${LIB_PATH} -) - - -if (TARGET_BUILD_PLATFORM STREQUAL "Windows") - - SET(DLL_PATH ${APEXSDK_PATH}/bin/${VS_STR}${APEX_ARCH_FOLDER}-cmake${APEX_CRT_SUFFIX} ${APEXSDK_PATH}/bin/${VS_STR}${APEX_ARCH_FOLDER}-NoPhysX ${APEXSDK_PATH}/../Bin/${APEX_ARCH_FOLDER}/${VS_STR} ${APEXSDK_PATH}/../Bin) - -# find_library(APEXCLOTHING_DLL -# NAMES APEX_Clothing APEX_Clothing${APEX_ARCH_FILE} -# PATHS ${DLL_PATH} -# ) -# find_library(APEXDESTRUCTIBLE_DLL -# NAMES APEX_Destructible APEX_Destructible${APEX_ARCH_FILE} -# PATHS ${DLL_PATH} -# ) - find_library(APEXLEGACY_DLL - NAMES APEX_Legacy APEX_Legacy${APEX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(APEXLOADER_DLL - NAMES APEX_Loader APEX_Loader${APEX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(APEXFRAMEWORK_DLL - NAMES APEXFramework APEXFramework${APEX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - -# find_library(APEXCLOTHING_DLL_DEBUG -# NAMES APEX_ClothingDEBUG APEX_ClothingDEBUG${APEX_ARCH_FILE} -# PATHS ${DLL_PATH} -# ) -# find_library(APEXDESTRUCTIBLE_DLL_DEBUG -# NAMES APEX_DestructibleDEBUG APEX_DestructibleDEBUG${APEX_ARCH_FILE} -# PATHS ${DLL_PATH} -# ) - find_library(APEXLEGACY_DLL_DEBUG - NAMES APEX_LegacyDEBUG APEX_LegacyDEBUG${APEX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(APEXLOADER_DLL_DEBUG - NAMES APEX_LoaderDEBUG APEX_LoaderDEBUG${APEX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(APEXFRAMEWORK_DLL_DEBUG - NAMES APEXFrameworkDEBUG APEXFrameworkDEBUG${APEX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - -# find_library(APEXCLOTHING_DLL_CHECKED -# NAMES APEX_ClothingCHECKED APEX_ClothingCHECKED${APEX_ARCH_FILE} -# PATHS ${DLL_PATH} -# ) -# find_library(APEXDESTRUCTIBLE_DLL_CHECKED -# NAMES APEX_DestructibleCHECKED APEX_DestructibleCHECKED${APEX_ARCH_FILE} -# PATHS ${DLL_PATH} -# ) - find_library(APEXLEGACY_DLL_CHECKED - NAMES APEX_LegacyCHECKED APEX_LegacyCHECKED${APEX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(APEXLOADER_DLL_CHECKED - NAMES APEX_LoaderCHECKED APEX_LoaderCHECKED${APEX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(APEXFRAMEWORK_DLL_CHECKED - NAMES APEXFrameworkCHECKED APEXFrameworkCHECKED${APEX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - -# find_library(APEXCLOTHING_DLL_PROFILE -# NAMES APEX_ClothingPROFILE APEX_ClothingPROFILE${APEX_ARCH_FILE} -# PATHS ${DLL_PATH} -# ) -# find_library(APEXDESTRUCTIBLE_DLL_PROFILE -# NAMES APEX_DestructiblePROFILE APEX_DestructiblePROFILE${APEX_ARCH_FILE} -# PATHS ${DLL_PATH} -# ) - find_library(APEXLEGACY_DLL_PROFILE - NAMES APEX_LegacyPROFILE APEX_LegacyPROFILE${APEX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(APEXLOADER_DLL_PROFILE - NAMES APEX_LoaderPROFILE APEX_LoaderPROFILE${APEX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(APEXFRAMEWORK_DLL_PROFILE - NAMES APEXFrameworkPROFILE APEXFrameworkPROFILE${APEX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - - - SET(DLL_VAR_LIST - #APEXCLOTHING_DLL - #APEXDESTRUCTIBLE_DLL - APEXLEGACY_DLL - APEXLOADER_DLL - APEXFRAMEWORK_DLL - - #APEXCLOTHING_DLL_DEBUG - #APEXDESTRUCTIBLE_DLL_DEBUG - APEXLEGACY_DLL_DEBUG - APEXLOADER_DLL_DEBUG - APEXFRAMEWORK_DLL_DEBUG - - #APEXCLOTHING_DLL_CHECKED - #APEXDESTRUCTIBLE_DLL_CHECKED - APEXLEGACY_DLL_CHECKED - APEXLOADER_DLL_CHECKED - APEXFRAMEWORK_DLL_CHECKED - - #APEXCLOTHING_DLL_PROFILE - #APEXDESTRUCTIBLE_DLL_PROFILE - APEXLEGACY_DLL_PROFILE - APEXLOADER_DLL_PROFILE - APEXFRAMEWORK_DLL_PROFILE - - ) -endif() - -FIND_PACKAGE_HANDLE_STANDARD_ARGS(APEXSDK - DEFAULT_MSG - APEXSDK_PATH - - #APEXCLOTHING_LIB - #APEXDESTRUCTIBLE_LIB - APEXLEGACY_LIB - APEXLOADER_LIB - APEXCOMMON_LIB - APEXFRAMEWORK_LIB - APEXSHARED_LIB - - #APEXCLOTHING_LIB_DEBUG - #APEXDESTRUCTIBLE_LIB_DEBUG - APEXLEGACY_LIB_DEBUG - APEXLOADER_LIB_DEBUG - APEXCOMMON_LIB_DEBUG - APEXFRAMEWORK_LIB_DEBUG - APEXSHARED_LIB_DEBUG - - #APEXCLOTHING_LIB_CHECKED - #APEXDESTRUCTIBLE_LIB_CHECKED - APEXLEGACY_LIB_CHECKED - APEXLOADER_LIB_CHECKED - APEXCOMMON_LIB_CHECKED - APEXFRAMEWORK_LIB_CHECKED - APEXSHARED_LIB_CHECKED - - #APEXCLOTHING_LIB_PROFILE - #APEXDESTRUCTIBLE_LIB_PROFILE - APEXLEGACY_LIB_PROFILE - APEXLOADER_LIB_PROFILE - APEXCOMMON_LIB_PROFILE - APEXFRAMEWORK_LIB_PROFILE - APEXSHARED_LIB_PROFILE - - ${DLL_VAR_LIST} -) - -if (APEXSDK_FOUND) - # NOTE: This include list is way too long and reaches into too many internals. - # Also may not be good enough for all users. - SET(APEXSDK_INCLUDE_DIRS - ${APEXSDK_PATH}/public - ${APEXSDK_PATH}/include - ${APEXSDK_PATH}/common/include - ${APEXSDK_PATH}/common/include/autogen - ${APEXSDK_PATH}/NvParameterized/include - ${APEXSDK_PATH}/include/destructible - ${APEXSDK_PATH}/include/PhysX3 - ${APEXSDK_PATH}/shared/external/include - ${APEXSDK_PATH}/shared/internal/include - ${APEXSDK_PATH}/shared/general/shared - ${APEXSDK_PATH}/shared/general/RenderDebug/public - ) - - SET(APEXSDK_LIBS_RELEASE ${APEXLEGACY_LIB} ${APEXLOADER_LIB} ${APEXCOMMON_LIB} ${APEXFRAMEWORK_LIB} ${APEXSHARED_LIB} - CACHE STRING "" - ) - SET(APEXSDK_LIBS_DEBUG ${APEXLEGACY_LIB_DEBUG} ${APEXLOADER_LIB_DEBUG} ${APEXCOMMON_LIB_DEBUG} ${APEXFRAMEWORK_LIB_DEBUG} ${APEXSHARED_LIB_DEBUG} - CACHE STRING "" - ) - SET(APEXSDK_LIBS_CHECKED ${APEXLEGACY_LIB_CHECKED} ${APEXLOADER_LIB_CHECKED} ${APEXCOMMON_LIB_CHECKED} ${APEXFRAMEWORK_LIB_CHECKED} ${APEXSHARED_LIB_CHECKED} - CACHE STRING "" - ) - SET(APEXSDK_LIBS_PROFILE ${APEXLEGACY_LIB_PROFILE} ${APEXLOADER_LIB_PROFILE} ${APEXCOMMON_LIB_PROFILE} ${APEXFRAMEWORK_LIB_PROFILE} ${APEXSHARED_LIB_PROFILE} - CACHE STRING "" - ) - - - SET(APEXSDK_DLLS - #${APEXCLOTHING_DLL} - #${APEXDESTRUCTIBLE_DLL} - ${APEXLEGACY_DLL} - ${APEXLOADER_DLL} - ${APEXFRAMEWORK_DLL} - - #${APEXCLOTHING_DLL_DEBUG} - #${APEXDESTRUCTIBLE_DLL_DEBUG} - ${APEXLEGACY_DLL_DEBUG} - ${APEXLOADER_DLL_DEBUG} - ${APEXFRAMEWORK_DLL_DEBUG} - - #${APEXCLOTHING_DLL_CHECKED} - #${APEXDESTRUCTIBLE_DLL_CHECKED} - ${APEXLEGACY_DLL_CHECKED} - ${APEXLOADER_DLL_CHECKED} - ${APEXFRAMEWORK_DLL_CHECKED} - - #${APEXCLOTHING_DLL_PROFILE} - #${APEXDESTRUCTIBLE_DLL_PROFILE} - ${APEXLEGACY_DLL_PROFILE} - ${APEXLOADER_DLL_PROFILE} - ${APEXFRAMEWORK_DLL_PROFILE} - ) - - SET(APEXSDK_LIBRARIES "" CACHE STRING "") - - foreach(x ${APEXSDK_LIBS_RELEASE}) - list(APPEND APEXSDK_LIBRARIES optimized ${x}) - endforeach() - - foreach(x ${APEXSDK_LIBS_DEBUG}) - list(APPEND APEXSDK_LIBRARIES debug ${x}) - endforeach() -endif() diff --git a/sdk/compiler/cmake/modules/FindBoostMultiprecision.cmake b/sdk/compiler/cmake/modules/FindBoostMultiprecision.cmake index cea6142..57f8be3 100644..100755 --- a/sdk/compiler/cmake/modules/FindBoostMultiprecision.cmake +++ b/sdk/compiler/cmake/modules/FindBoostMultiprecision.cmake @@ -1,23 +1,24 @@ -# - Try to find tinyObjLoader -# Once done this will define -# BOOSTMULTIPRECISION_FOUND - System has tinyObjLoader -# BOOSTMULTIPRECISION_INCLUDE_DIRS - The tinyObjLoader include directories - -INCLUDE(FindPackageHandleStandardArgs) - -#TODO: Proper version support -FIND_PATH( BOOSTMULTIPRECISION_PATH boost/multiprecision - PATHS - $ENV{PM_BoostMultiprecision_PATH} - ${GW_DEPS_ROOT}/BoostMultiprecision/${BoostMultiprecision_FIND_VERSION} - ) - -MESSAGE("Boost Multiprecision Loader: " ${BOOSTMULTIPRECISION_PATH}) - -SET(BOOSTMULTIPRECISION_INCLUDE_DIRS - ${BOOSTMULTIPRECISION_PATH} -) - -FIND_PACKAGE_HANDLE_STANDARD_ARGS(BoostMultiprecision DEFAULT_MSG BOOSTMULTIPRECISION_INCLUDE_DIRS) - +# - Try to find tinyObjLoader
+# Once done this will define
+# BOOSTMULTIPRECISION_FOUND - System has tinyObjLoader
+# BOOSTMULTIPRECISION_INCLUDE_DIRS - The tinyObjLoader include directories
+
+INCLUDE(FindPackageHandleStandardArgs)
+
+#TODO: Proper version support
+FIND_PATH( BOOSTMULTIPRECISION_PATH boost/multiprecision
+ PATHS
+ $ENV{PM_BoostMultiprecision_PATH}
+ ${GW_DEPS_ROOT}/BoostMultiprecision/${BoostMultiprecision_FIND_VERSION}
+ NO_DEFAULT_PATH
+ )
+
+MESSAGE("Boost Multiprecision Loader: " ${BOOSTMULTIPRECISION_PATH})
+
+SET(BOOSTMULTIPRECISION_INCLUDE_DIRS
+ ${BOOSTMULTIPRECISION_PATH}
+)
+
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(BoostMultiprecision DEFAULT_MSG BOOSTMULTIPRECISION_INCLUDE_DIRS)
+
mark_as_advanced(BOOSTMULTIPRECISION_INCLUDE_DIRS)
\ No newline at end of file diff --git a/sdk/compiler/cmake/modules/FindCapnProtoSDK.cmake b/sdk/compiler/cmake/modules/FindCapnProtoSDK.cmake index 1813e87..19b9f9c 100644..100755 --- a/sdk/compiler/cmake/modules/FindCapnProtoSDK.cmake +++ b/sdk/compiler/cmake/modules/FindCapnProtoSDK.cmake @@ -1,139 +1,139 @@ -# - Try to find CapnProto SDK -# - Sets CAPNPROTOSDK_LIBRARIES - list of the libraries found -# - Sets CAPNPROTOSDK_SOURCE_FILES -# - Sets CAPNPROTOSDK_INCLUDE_DIRS - -include(FindPackageHandleStandardArgs) - -# Find the includes - -# TODO: Do the version stuff properly! -find_path(CAPNPROTOSDK_PATH src/capnp/message.h - PATHS - $ENV{PM_CapnProto_PATH} - ${GW_DEPS_ROOT}/$ENV{PM_CapnProto_NAME}/${CapnProtoSDK_FIND_VERSION} -) - -if (TARGET_BUILD_PLATFORM STREQUAL "Windows") - - if (STATIC_WINCRT) - SET(CAPNPROTOSDK_CRT_SUFFIX "-mt") - else() - SET(CAPNPROTOSDK_CRT_SUFFIX "-md") - endif() - - - # If the project pulling in this dependency needs the static crt, then append that to the path. - if (CMAKE_CL_64) - SET(CAPNPROTOSDK_ARCH_FOLDER "win64") - else() - SET(CAPNPROTOSDK_ARCH_FOLDER "win32") - endif() - - SET(LIB_PATH ${CAPNPROTOSDK_PATH}/bin/${CAPNPROTOSDK_ARCH_FOLDER}) - SET(EXE_PATH ${CAPNPROTOSDK_PATH}/tools/win32) - - -elseif(TARGET_BUILD_PLATFORM STREQUAL "PS4") - SET(LIB_PATH ${CAPNPROTOSDK_PATH}/bin/ps4) - SET(EXE_PATH ${CAPNPROTOSDK_PATH}/tools/win32) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib") -elseif(TARGET_BUILD_PLATFORM STREQUAL "XboxOne") - SET(LIB_PATH ${CAPNPROTOSDK_PATH}/bin/xboxone) - SET(EXE_PATH ${CAPNPROTOSDK_PATH}/tools/win32) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib") -elseif(TARGET_BUILD_PLATFORM STREQUAL "linux") - SET(LIB_PATH ${CAPNPROTOSDK_PATH}/bin/ubuntu64) - if (UE4_LINUX_CROSSCOMPILE) - SET(EXE_PATH ${CAPNPROTOSDK_PATH}/tools/win32) - else() - SET(EXE_PATH ${CAPNPROTOSDK_PATH}/tools/ubuntu64) - endif() - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib") -endif() - -find_library(CAPNPROTO_LIB - NAMES capnp${CAPNPROTOSDK_CRT_SUFFIX} - PATHS ${LIB_PATH}/Release -) -find_library(CAPNPROTO_LIB_DEBUG - NAMES capnp${CAPNPROTOSDK_CRT_SUFFIX} - PATHS ${LIB_PATH}/Debug -) - -find_library(KJ_LIB - NAMES kj${CAPNPROTOSDK_CRT_SUFFIX} - PATHS ${LIB_PATH}/Release -) -find_library(KJ_LIB_DEBUG - NAMES kj${CAPNPROTOSDK_CRT_SUFFIX} - PATHS ${LIB_PATH}/Debug -) - -find_program(CAPNP_EXECUTABLE - NAMES capnp - DOC "Cap'n Proto Command-line Tool" - PATHS ${EXE_PATH} -) - -find_program(CAPNPC_CXX_EXECUTABLE - NAMES capnpc-c++ - DOC "Capn'n Proto C++ Compiler" - PATHS ${EXE_PATH} -) - -FIND_PACKAGE_HANDLE_STANDARD_ARGS(CAPNPROTOSDK - DEFAULT_MSG - CAPNPROTOSDK_PATH - - CAPNP_EXECUTABLE - CAPNPC_CXX_EXECUTABLE - - #CAPNPROTO_LIB - #KJ_LIB - - #CAPNPROTO_LIB_DEBUG - #KJ_LIB_DEBUG -) - -if (CAPNPROTOSDK_FOUND) - - SET(CAPNPROTOSDK_INCLUDE_DIRS - ${CAPNPROTOSDK_PATH}/src/ - ) - - SET(CAPNP_INCLUDE_DIRS - ${CAPNPROTOSDK_INCLUDE_DIRS} - ) - - SET(CAPNPROTOSDK_LIBRARIES "" CACHE STRING "") - SET(CAPNPROTOSDK_SOURCE_FILES "") - - IF ((TARGET_BUILD_PLATFORM STREQUAL "PLATFROM_USING_PREBUILT_LIBS")) - LIST(APPEND CAPNPROTOSDK_LIBRARIES - optimized ${CAPNPROTO_LIB} debug ${CAPNPROTO_LIB_DEBUG} - optimized ${KJ_LIB} debug ${KJ_LIB_DEBUG} - ) - ELSE() - #Include source files for the "lite" version only, there aren't too many it avoids needing many permutations of static libs - LIST(APPEND CAPNPROTOSDK_SOURCE_FILES - ${CAPNPROTOSDK_PATH}/src/capnp/arena.c++ - ${CAPNPROTOSDK_PATH}/src/capnp/blob.c++ - ${CAPNPROTOSDK_PATH}/src/capnp/layout.c++ - ${CAPNPROTOSDK_PATH}/src/capnp/message.c++ - ${CAPNPROTOSDK_PATH}/src/capnp/serialize.c++ - - ${CAPNPROTOSDK_PATH}/src/kj/array.c++ - ${CAPNPROTOSDK_PATH}/src/kj/common.c++ - ${CAPNPROTOSDK_PATH}/src/kj/debug.c++ - ${CAPNPROTOSDK_PATH}/src/kj/exception.c++ - ${CAPNPROTOSDK_PATH}/src/kj/io.c++ - ${CAPNPROTOSDK_PATH}/src/kj/mutex.c++ - ${CAPNPROTOSDK_PATH}/src/kj/string.c++ - ${CAPNPROTOSDK_PATH}/src/kj/units.c++ - ) - ENDIF() -endif() +# - Try to find CapnProto SDK
+# - Sets CAPNPROTOSDK_LIBRARIES - list of the libraries found
+# - Sets CAPNPROTOSDK_SOURCE_FILES
+# - Sets CAPNPROTOSDK_INCLUDE_DIRS
+
+include(FindPackageHandleStandardArgs)
+
+# Find the includes
+
+# TODO: Do the version stuff properly!
+find_path(CAPNPROTOSDK_PATH src/capnp/message.h
+ PATHS
+ $ENV{PM_CapnProto_PATH}
+ ${GW_DEPS_ROOT}/$ENV{PM_CapnProto_NAME}/${CapnProtoSDK_FIND_VERSION}
+)
+
+if (TARGET_BUILD_PLATFORM STREQUAL "Windows")
+
+ if (STATIC_WINCRT)
+ SET(CAPNPROTOSDK_CRT_SUFFIX "-mt")
+ else()
+ SET(CAPNPROTOSDK_CRT_SUFFIX "-md")
+ endif()
+
+
+ # If the project pulling in this dependency needs the static crt, then append that to the path.
+ if (CMAKE_CL_64)
+ SET(CAPNPROTOSDK_ARCH_FOLDER "win64")
+ else()
+ SET(CAPNPROTOSDK_ARCH_FOLDER "win32")
+ endif()
+
+ SET(LIB_PATH ${CAPNPROTOSDK_PATH}/bin/${CAPNPROTOSDK_ARCH_FOLDER})
+ SET(EXE_PATH ${CAPNPROTOSDK_PATH}/tools/win32)
+
+
+elseif(TARGET_BUILD_PLATFORM STREQUAL "PS4")
+ SET(LIB_PATH ${CAPNPROTOSDK_PATH}/bin/ps4)
+ SET(EXE_PATH ${CAPNPROTOSDK_PATH}/tools/win32)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
+elseif(TARGET_BUILD_PLATFORM STREQUAL "XboxOne")
+ SET(LIB_PATH ${CAPNPROTOSDK_PATH}/bin/xboxone)
+ SET(EXE_PATH ${CAPNPROTOSDK_PATH}/tools/win32)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
+elseif(TARGET_BUILD_PLATFORM STREQUAL "linux")
+ SET(LIB_PATH ${CAPNPROTOSDK_PATH}/bin/ubuntu64)
+ if (UE4_LINUX_CROSSCOMPILE)
+ SET(EXE_PATH ${CAPNPROTOSDK_PATH}/tools/win32)
+ else()
+ SET(EXE_PATH ${CAPNPROTOSDK_PATH}/tools/ubuntu64)
+ endif()
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
+endif()
+
+find_library(CAPNPROTO_LIB
+ NAMES capnp${CAPNPROTOSDK_CRT_SUFFIX}
+ PATHS ${LIB_PATH}/Release
+)
+find_library(CAPNPROTO_LIB_DEBUG
+ NAMES capnp${CAPNPROTOSDK_CRT_SUFFIX}
+ PATHS ${LIB_PATH}/Debug
+)
+
+find_library(KJ_LIB
+ NAMES kj${CAPNPROTOSDK_CRT_SUFFIX}
+ PATHS ${LIB_PATH}/Release
+)
+find_library(KJ_LIB_DEBUG
+ NAMES kj${CAPNPROTOSDK_CRT_SUFFIX}
+ PATHS ${LIB_PATH}/Debug
+)
+
+find_program(CAPNP_EXECUTABLE
+ NAMES capnp
+ DOC "Cap'n Proto Command-line Tool"
+ PATHS ${EXE_PATH}
+)
+
+find_program(CAPNPC_CXX_EXECUTABLE
+ NAMES capnpc-c++
+ DOC "Capn'n Proto C++ Compiler"
+ PATHS ${EXE_PATH}
+)
+
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(CAPNPROTOSDK
+ DEFAULT_MSG
+ CAPNPROTOSDK_PATH
+
+ CAPNP_EXECUTABLE
+ CAPNPC_CXX_EXECUTABLE
+
+ #CAPNPROTO_LIB
+ #KJ_LIB
+
+ #CAPNPROTO_LIB_DEBUG
+ #KJ_LIB_DEBUG
+)
+
+if (CAPNPROTOSDK_FOUND)
+
+ SET(CAPNPROTOSDK_INCLUDE_DIRS
+ ${CAPNPROTOSDK_PATH}/src/
+ )
+
+ SET(CAPNP_INCLUDE_DIRS
+ ${CAPNPROTOSDK_INCLUDE_DIRS}
+ )
+
+ SET(CAPNPROTOSDK_LIBRARIES "" CACHE STRING "")
+ SET(CAPNPROTOSDK_SOURCE_FILES "")
+
+ IF ((TARGET_BUILD_PLATFORM STREQUAL "PLATFROM_USING_PREBUILT_LIBS"))
+ LIST(APPEND CAPNPROTOSDK_LIBRARIES
+ optimized ${CAPNPROTO_LIB} debug ${CAPNPROTO_LIB_DEBUG}
+ optimized ${KJ_LIB} debug ${KJ_LIB_DEBUG}
+ )
+ ELSE()
+ #Include source files for the "lite" version only, there aren't too many it avoids needing many permutations of static libs
+ LIST(APPEND CAPNPROTOSDK_SOURCE_FILES
+ ${CAPNPROTOSDK_PATH}/src/capnp/arena.c++
+ ${CAPNPROTOSDK_PATH}/src/capnp/blob.c++
+ ${CAPNPROTOSDK_PATH}/src/capnp/layout.c++
+ ${CAPNPROTOSDK_PATH}/src/capnp/message.c++
+ ${CAPNPROTOSDK_PATH}/src/capnp/serialize.c++
+
+ ${CAPNPROTOSDK_PATH}/src/kj/array.c++
+ ${CAPNPROTOSDK_PATH}/src/kj/common.c++
+ ${CAPNPROTOSDK_PATH}/src/kj/debug.c++
+ ${CAPNPROTOSDK_PATH}/src/kj/exception.c++
+ ${CAPNPROTOSDK_PATH}/src/kj/io.c++
+ ${CAPNPROTOSDK_PATH}/src/kj/mutex.c++
+ ${CAPNPROTOSDK_PATH}/src/kj/string.c++
+ ${CAPNPROTOSDK_PATH}/src/kj/units.c++
+ )
+ ENDIF()
+endif()
diff --git a/sdk/compiler/cmake/modules/FindFBXSDK.cmake b/sdk/compiler/cmake/modules/FindFBXSDK.cmake index 5b6b0a4..b333fbf 100644..100755 --- a/sdk/compiler/cmake/modules/FindFBXSDK.cmake +++ b/sdk/compiler/cmake/modules/FindFBXSDK.cmake @@ -1,73 +1,73 @@ -# - Try to find FBX SDK -# - Sets FBXSDK_LIBRARIES - list of the libraries found -# - Sets FBXSDK_INCLUDE_DIRS -# - Sets FBXSDK_DLLS - List of the DLLs to copy to the bin directory of projects that depend on this - - -include(FindPackageHandleStandardArgs) - -# Find the includes - -# TODO: Do the version stuff properly! -find_path(FBXSDK_PATH include/fbxsdk.h - PATHS - $ENV{PM_FBXSDK_PATH} - ${GW_DEPS_ROOT}/FBXSDK/${FBXSDK_FIND_VERSION} -) - -if (STATIC_WINCRT) - SET(FBXSDK_CRT_SUFFIX "mt") -else() - SET(FBXSDK_CRT_SUFFIX "md") -endif() - - -# If the project pulling in this dependency needs the static crt, then append that to the path. -if (CMAKE_CL_64) - SET(FBXSDK_ARCH_FOLDER "x64") -else() - SET(FBXSDK_ARCH_FOLDER "x86") -endif() - -# What compiler version do we want? - -if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 18.0.0.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0.0.0) - SET(VS_STR "vs2013") -elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.0.0.0) - SET(VS_STR "vs2015") -else() - MESSAGE(FATAL_ERROR "Failed to find compatible FBXSDK - Only supporting VS2013 and VS2015") -endif() - -# Now find all of the PhysX libs in the lib directory - -SET(LIB_PATH ${FBXSDK_PATH}/lib/${VS_STR}/${FBXSDK_ARCH_FOLDER}) - -find_library(FBX_LIB - NAMES libfbxsdk-${FBXSDK_CRT_SUFFIX} - PATHS ${LIB_PATH}/release -) -find_library(FBX_LIB_DEBUG - NAMES libfbxsdk-${FBXSDK_CRT_SUFFIX} - PATHS ${LIB_PATH}/debug -) - -FIND_PACKAGE_HANDLE_STANDARD_ARGS(FBXSDK - DEFAULT_MSG - FBXSDK_PATH - FBX_LIB - - FBX_LIB_DEBUG -) - -if (FBXSDK_FOUND) - - SET(FBXSDK_INCLUDE_DIRS - ${FBXSDK_PATH}/include - ${FBXSDK_PATH}/include/fbxsdk - ) - - SET(FBXSDK_LIBRARIES "" CACHE STRING "") - - LIST(APPEND FBXSDK_LIBRARIES optimized ${FBX_LIB} debug ${FBX_LIB_DEBUG}) -endif() +# - Try to find FBX SDK
+# - Sets FBXSDK_LIBRARIES - list of the libraries found
+# - Sets FBXSDK_INCLUDE_DIRS
+# - Sets FBXSDK_DLLS - List of the DLLs to copy to the bin directory of projects that depend on this
+
+
+include(FindPackageHandleStandardArgs)
+
+# Find the includes
+
+# TODO: Do the version stuff properly!
+find_path(FBXSDK_PATH include/fbxsdk.h
+ PATHS
+ $ENV{PM_FBXSDK_PATH}
+ ${GW_DEPS_ROOT}/FBXSDK/${FBXSDK_FIND_VERSION}
+)
+
+if (STATIC_WINCRT)
+ SET(FBXSDK_CRT_SUFFIX "mt")
+else()
+ SET(FBXSDK_CRT_SUFFIX "md")
+endif()
+
+
+# If the project pulling in this dependency needs the static crt, then append that to the path.
+if (CMAKE_CL_64)
+ SET(FBXSDK_ARCH_FOLDER "x64")
+else()
+ SET(FBXSDK_ARCH_FOLDER "x86")
+endif()
+
+# What compiler version do we want?
+
+if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 18.0.0.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0.0.0)
+ SET(VS_STR "vs2013")
+elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.0.0.0)
+ SET(VS_STR "vs2015")
+else()
+ MESSAGE(FATAL_ERROR "Failed to find compatible FBXSDK - Only supporting VS2013 and VS2015")
+endif()
+
+# Now find all of the PhysX libs in the lib directory
+
+SET(LIB_PATH ${FBXSDK_PATH}/lib/${VS_STR}/${FBXSDK_ARCH_FOLDER})
+
+find_library(FBX_LIB
+ NAMES libfbxsdk-${FBXSDK_CRT_SUFFIX}
+ PATHS ${LIB_PATH}/release
+)
+find_library(FBX_LIB_DEBUG
+ NAMES libfbxsdk-${FBXSDK_CRT_SUFFIX}
+ PATHS ${LIB_PATH}/debug
+)
+
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(FBXSDK
+ DEFAULT_MSG
+ FBXSDK_PATH
+ FBX_LIB
+
+ FBX_LIB_DEBUG
+)
+
+if (FBXSDK_FOUND)
+
+ SET(FBXSDK_INCLUDE_DIRS
+ ${FBXSDK_PATH}/include
+ ${FBXSDK_PATH}/include/fbxsdk
+ )
+
+ SET(FBXSDK_LIBRARIES "" CACHE STRING "")
+
+ LIST(APPEND FBXSDK_LIBRARIES optimized ${FBX_LIB} debug ${FBX_LIB_DEBUG})
+endif()
diff --git a/sdk/compiler/cmake/modules/FindGoogleTestNV.cmake b/sdk/compiler/cmake/modules/FindGoogleTestNV.cmake index 7f2dde4..2634f1a 100644..100755 --- a/sdk/compiler/cmake/modules/FindGoogleTestNV.cmake +++ b/sdk/compiler/cmake/modules/FindGoogleTestNV.cmake @@ -1,133 +1,133 @@ -# - Try to find GoogleTest SDK -# - Sets GOOGLETEST_LIBRARIES - lists of the libraries found -# - Sets GOOGLETEST_INCLUDE_DIRS - -include(FindPackageHandleStandardArgs) - -# Find the includes - -# TODO: Do the version stuff properly! -find_path(GOOGLETEST_PATH include/gtest/gtest.h - PATHS - $ENV{PM_googletest_PATH} - ${GW_DEPS_ROOT}/$ENV{PM_googletest_NAME}/${GoogleTestNV_FIND_VERSION} -) - -if (TARGET_BUILD_PLATFORM STREQUAL "Windows") - # If the project pulling in this dependency needs the static crt, then append that to the path. - - if (STATIC_WINCRT) - SET(GOOGLETEST_CRT_SUFFIX "-staticcrt") - else() - SET(GOOGLETEST_CRT_SUFFIX "") - endif() - - if (CMAKE_CL_64) - SET(GOOGLETEST_ARCH_FOLDER "win64") - else() - SET(GOOGLETEST_ARCH_FOLDER "win32") - endif() - - if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 18.0.0.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0.0.0) - SET(VS_STR "vc12") - elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.0.0.0) - SET(VS_STR "vc14") - else() - MESSAGE(FATAL_ERROR "Failed to find compatible FBXSDK - Only supporting VS2013 and VS2015") - endif() - - - # Now find all of the PhysX libs in the lib directory - - SET(LIB_PATH ${GOOGLETEST_PATH}/lib/${VS_STR}${GOOGLETEST_ARCH_FOLDER}-cmake${GOOGLETEST_CRT_SUFFIX}) - -elseif(TARGET_BUILD_PLATFORM STREQUAL "PS4") - SET(LIB_PATH ${GOOGLETEST_PATH}/lib/PS4) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib") -elseif(TARGET_BUILD_PLATFORM STREQUAL "XboxOne") - SET(LIB_PATH ${GOOGLETEST_PATH}/lib/xboxone-${XDK_VERSION}) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib") -elseif(TARGET_BUILD_PLATFORM STREQUAL "linux") - if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 5.0) - SET(LIB_PATH ${GOOGLETEST_PATH}/lib/gcc-5.4) - else() - SET(LIB_PATH ${GOOGLETEST_PATH}/lib/gcc-4.8) - endif() - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib") -endif() - -MESSAGE("GTEst libpath:" ${LIB_PATH}) - -if(TARGET_BUILD_PLATFORM STREQUAL "linux") - find_library(GTEST_LIB - NAMES gtest - PATHS ${LIB_PATH} - ) - - find_library(GTEST_MAIN_LIB - NAMES gtest_main - PATHS ${LIB_PATH} - ) - - SET(GTEST_LIB_DEBUG ${GTEST_LIB}) - SET(GTEST_MAIN_LIB_DEBUG ${GTEST_MAIN_LIB}) -else() - find_library(GTEST_LIB - NAMES gtest - PATHS ${LIB_PATH}/Release - ) - - find_library(GTEST_LIB_DEBUG - NAMES gtest - PATHS ${LIB_PATH}/Debug - ) - - find_library(GTEST_MAIN_LIB - NAMES gtest_main - PATHS ${LIB_PATH}/Release - ) - - find_library(GTEST_MAIN_LIB_DEBUG - NAMES gtest_main - PATHS ${LIB_PATH}/Debug - ) -endif() - -FIND_PACKAGE_HANDLE_STANDARD_ARGS(GOOGLETEST - DEFAULT_MSG - GOOGLETEST_PATH - - GTEST_LIB - GTEST_MAIN_LIB - GTEST_LIB_DEBUG - GTEST_MAIN_LIB_DEBUG -) - -if (GOOGLETEST_FOUND) - # NOTE: This include list is way too long and reaches into too many internals. - # Also may not be good enough for all users. - SET(GOOGLETEST_INCLUDE_DIRS - ${GOOGLETEST_PATH}/include - ${GOOGLETEST_PATH}/include/gtest - ) - - SET(GOOGLETEST_LIBS_RELEASE ${GTEST_LIB} ${GTEST_MAIN_LIB} - CACHE STRING "" - ) - SET(GOOGLETEST_LIBS_DEBUG ${GTEST_LIB_DEBUG} ${GTEST_MAIN_LIB_DEBUG} - CACHE STRING "" - ) - - SET(GOOGLETEST_LIBRARIES "" CACHE STRING "") - - foreach(x ${GOOGLETEST_LIBS_RELEASE}) - list(APPEND GOOGLETEST_LIBRARIES optimized ${x}) - endforeach() - - foreach(x ${GOOGLETEST_LIBS_DEBUG}) - list(APPEND GOOGLETEST_LIBRARIES debug ${x}) - endforeach() -endif() +# - Try to find GoogleTest SDK
+# - Sets GOOGLETEST_LIBRARIES - lists of the libraries found
+# - Sets GOOGLETEST_INCLUDE_DIRS
+
+include(FindPackageHandleStandardArgs)
+
+# Find the includes
+
+# TODO: Do the version stuff properly!
+find_path(GOOGLETEST_PATH include/gtest/gtest.h
+ PATHS
+ $ENV{PM_googletest_PATH}
+ ${GW_DEPS_ROOT}/$ENV{PM_googletest_NAME}/${GoogleTestNV_FIND_VERSION}
+)
+
+if (TARGET_BUILD_PLATFORM STREQUAL "Windows")
+ # If the project pulling in this dependency needs the static crt, then append that to the path.
+
+ if (STATIC_WINCRT)
+ SET(GOOGLETEST_CRT_SUFFIX "-staticcrt")
+ else()
+ SET(GOOGLETEST_CRT_SUFFIX "")
+ endif()
+
+ if (CMAKE_CL_64)
+ SET(GOOGLETEST_ARCH_FOLDER "win64")
+ else()
+ SET(GOOGLETEST_ARCH_FOLDER "win32")
+ endif()
+
+ if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 18.0.0.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0.0.0)
+ SET(VS_STR "vc12")
+ elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.0.0.0)
+ SET(VS_STR "vc14")
+ else()
+ MESSAGE(FATAL_ERROR "Failed to find compatible FBXSDK - Only supporting VS2013 and VS2015")
+ endif()
+
+
+ # Now find all of the PhysX libs in the lib directory
+
+ SET(LIB_PATH ${GOOGLETEST_PATH}/lib/${VS_STR}${GOOGLETEST_ARCH_FOLDER}-cmake${GOOGLETEST_CRT_SUFFIX})
+
+elseif(TARGET_BUILD_PLATFORM STREQUAL "PS4")
+ SET(LIB_PATH ${GOOGLETEST_PATH}/lib/PS4)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
+elseif(TARGET_BUILD_PLATFORM STREQUAL "XboxOne")
+ SET(LIB_PATH ${GOOGLETEST_PATH}/lib/xboxone-${XDK_VERSION})
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
+elseif(TARGET_BUILD_PLATFORM STREQUAL "linux")
+ if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 5.0)
+ SET(LIB_PATH ${GOOGLETEST_PATH}/lib/gcc-5.4)
+ else()
+ SET(LIB_PATH ${GOOGLETEST_PATH}/lib/gcc-4.8)
+ endif()
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
+endif()
+
+MESSAGE("GTEst libpath:" ${LIB_PATH})
+
+if(TARGET_BUILD_PLATFORM STREQUAL "linux")
+ find_library(GTEST_LIB
+ NAMES gtest
+ PATHS ${LIB_PATH}
+ )
+
+ find_library(GTEST_MAIN_LIB
+ NAMES gtest_main
+ PATHS ${LIB_PATH}
+ )
+
+ SET(GTEST_LIB_DEBUG ${GTEST_LIB})
+ SET(GTEST_MAIN_LIB_DEBUG ${GTEST_MAIN_LIB})
+else()
+ find_library(GTEST_LIB
+ NAMES gtest
+ PATHS ${LIB_PATH}/Release
+ )
+
+ find_library(GTEST_LIB_DEBUG
+ NAMES gtest
+ PATHS ${LIB_PATH}/Debug
+ )
+
+ find_library(GTEST_MAIN_LIB
+ NAMES gtest_main
+ PATHS ${LIB_PATH}/Release
+ )
+
+ find_library(GTEST_MAIN_LIB_DEBUG
+ NAMES gtest_main
+ PATHS ${LIB_PATH}/Debug
+ )
+endif()
+
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(GOOGLETEST
+ DEFAULT_MSG
+ GOOGLETEST_PATH
+
+ GTEST_LIB
+ GTEST_MAIN_LIB
+ GTEST_LIB_DEBUG
+ GTEST_MAIN_LIB_DEBUG
+)
+
+if (GOOGLETEST_FOUND)
+ # NOTE: This include list is way too long and reaches into too many internals.
+ # Also may not be good enough for all users.
+ SET(GOOGLETEST_INCLUDE_DIRS
+ ${GOOGLETEST_PATH}/include
+ ${GOOGLETEST_PATH}/include/gtest
+ )
+
+ SET(GOOGLETEST_LIBS_RELEASE ${GTEST_LIB} ${GTEST_MAIN_LIB}
+ CACHE STRING ""
+ )
+ SET(GOOGLETEST_LIBS_DEBUG ${GTEST_LIB_DEBUG} ${GTEST_MAIN_LIB_DEBUG}
+ CACHE STRING ""
+ )
+
+ SET(GOOGLETEST_LIBRARIES "" CACHE STRING "")
+
+ foreach(x ${GOOGLETEST_LIBS_RELEASE})
+ list(APPEND GOOGLETEST_LIBRARIES optimized ${x})
+ endforeach()
+
+ foreach(x ${GOOGLETEST_LIBS_DEBUG})
+ list(APPEND GOOGLETEST_LIBRARIES debug ${x})
+ endforeach()
+endif()
diff --git a/sdk/compiler/cmake/modules/FindPhysXSDK.cmake b/sdk/compiler/cmake/modules/FindPhysXSDK.cmake index fa3ddb1..7e1f0a9 100644..100755 --- a/sdk/compiler/cmake/modules/FindPhysXSDK.cmake +++ b/sdk/compiler/cmake/modules/FindPhysXSDK.cmake @@ -1,547 +1,549 @@ -# - Try to find PhysX binary SDK -# - Sets PHYSXSDK_LIBS_DEBUG, PHYSXSDK_LIBS_RELEASE, PHYSXSDK_LIBS_CHECKED, PHYSXSDK_LIBS_PROFILE - lists of the libraries found -# - Sets PHYSXSDK_INCLUDE_DIRS -# - Sets PHYSXSDK_DLLS - List of the DLLs to copy to the bin directory of projects that depend on this - -include(FindPackageHandleStandardArgs) - -MESSAGE("Looking for PhysXSDK ${PhysXSDK_FIND_VERSION} Cached path: ${PHYSXSDK_PATH}") -find_path(PHYSXSDK_PATH Include/PxActor.h - PATHS - $ENV{PM_PhysX_PATH} - $ENV{PM_PhysX_PATH}/PhysX_3.4 - ${GW_DEPS_ROOT}/$ENV{PM_PhysX_NAME}/${PhysXSDK_FIND_VERSION} - ${GW_DEPS_ROOT}/PhysX/${PhysXSDK_FIND_VERSION} -) - -if (TARGET_BUILD_PLATFORM STREQUAL "Windows") - # If the project pulling in this dependency needs the static crt, then append that to the path. - if (STATIC_WINCRT) - SET(PHYSX_CRT_SUFFIX "-staticcrt") - else() - SET(PHYSX_CRT_SUFFIX "") - endif() - - if (CMAKE_CL_64) - SET(PHYSX_ARCH_FOLDER "win64") - SET(PHYSX_ARCH_FILE "_x64") - else() - SET(PHYSX_ARCH_FOLDER "win32") - SET(PHYSX_ARCH_FILE "_x86") - endif() - - # What compiler version do we want? - - if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 18.0.0.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0.0.0) - SET(VS_STR "VS2013") - elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.0.0.0) - SET(VS_STR "VS2015") - else() - MESSAGE(FATAL_ERROR "Failed to find compatible PxSharedSDK - Only supporting VS2013 and VS2015") - endif() - - SET(LIB_PATH ${PHYSXSDK_PATH}/lib/${VS_STR}${PHYSX_ARCH_FOLDER}-cmake${PHYSX_CRT_SUFFIX} ${PHYSXSDK_PATH}/lib/${VS_STR}${PHYSX_ARCH_FOLDER} ${PHYSXSDK_PATH}/../Lib/${PHYSX_ARCH_FOLDER}/${VS_STR} ${PHYSXSDK_PATH}/../Lib) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib" ".dll") - -elseif(TARGET_BUILD_PLATFORM STREQUAL "PS4") - SET(LIB_PATH ${PHYSXSDK_PATH}/lib/vc14ps4-cmake ${PHYSXSDK_PATH}/../Lib) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib") -elseif(TARGET_BUILD_PLATFORM STREQUAL "XboxOne") - SET(LIB_PATH ${PHYSXSDK_PATH}/lib/vc14xboxone-cmake ${PHYSXSDK_PATH}/../lib) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a" ".lib") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib" "") -elseif(TARGET_BUILD_PLATFORM STREQUAL "linux") - SET(LIB_PATH ${PHYSXSDK_PATH}/lib/linux64-cmake ${PHYSXSDK_PATH}/../Lib) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib") - SET(PHYSX_ARCH_FILE "_x64") -endif() - -# Now find all of the PhysX libs in the lib directory - -find_library(PHYSX3_LIB - NAMES PhysX3 PhysX3${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3EXTENSIONS_LIB - NAMES PhysX3Extensions PhysX3Extensions${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3CHARACTERKINEMATIC_LIB - NAMES PhysX3CharacterKinematic${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3COMMON_LIB - NAMES PhysX3Common${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3COOKING_LIB - NAMES PhysX3Cooking${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVEL_LIB - NAMES LowLevel LowLevel${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELAABB_LIB - NAMES LowLevelAABB LowLevelAABB${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELCLOTH_LIB - NAMES LowLevelCloth LowLevelCloth${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELDYNAMICS_LIB - NAMES LowLevelDynamics LowLevelDynamics${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELPARTICLES_LIB - NAMES LowLevelParticles LowLevelParticles${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(SCENEQUERY_LIB - NAMES SceneQuery SceneQuery${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(SIMULATIONCONTROLLER_LIB - NAMES SimulationController SimulationController${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) - - -find_library(PHYSX3_LIB_DEBUG - NAMES PhysX3DEBUG PhysX3DEBUG${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3EXTENSIONS_LIB_DEBUG - NAMES PhysX3ExtensionsDEBUG PhysX3ExtensionsDEBUG${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3CHARACTERKINEMATIC_LIB_DEBUG - NAMES PhysX3CharacterKinematicDEBUG PhysX3CharacterKinematicDEBUG${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3COMMON_LIB_DEBUG - NAMES PhysX3CommonDEBUG PhysX3CommonDEBUG${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3COOKING_LIB_DEBUG - NAMES PhysX3CookingDEBUG PhysX3CookingDEBUG${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVEL_LIB_DEBUG - NAMES LowLevelDEBUG LowLevelDEBUG${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELAABB_LIB_DEBUG - NAMES LowLevelAABBDEBUG LowLevelAABBDEBUG${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELCLOTH_LIB_DEBUG - NAMES LowLevelClothDEBUG LowLevelClothDEBUG${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELDYNAMICS_LIB_DEBUG - NAMES LowLevelDynamicsDEBUG LowLevelDynamicsDEBUG${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELPARTICLES_LIB_DEBUG - NAMES LowLevelParticlesDEBUG LowLevelParticlesDEBUG${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(SCENEQUERY_LIB_DEBUG - NAMES SceneQueryDEBUG SceneQueryDEBUG${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(SIMULATIONCONTROLLER_LIB_DEBUG - NAMES SimulationControllerDEBUG SimulationControllerDEBUG${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) - -find_library(PHYSX3_LIB_CHECKED - NAMES PhysX3CHECKED PhysX3CHECKED${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3EXTENSIONS_LIB_CHECKED - NAMES PhysX3ExtensionsCHECKED PhysX3ExtensionsCHECKED${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3CHARACTERKINEMATIC_LIB_CHECKED - NAMES PhysX3CharacterKinematicCHECKED PhysX3CharacterKinematicCHECKED${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3COMMON_LIB_CHECKED - NAMES PhysX3CommonCHECKED PhysX3CommonCHECKED${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3COOKING_LIB_CHECKED - NAMES PhysX3CookingCHECKED PhysX3CookingCHECKED${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVEL_LIB_CHECKED - NAMES LowLevelCHECKED LowLevelCHECKED${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELAABB_LIB_CHECKED - NAMES LowLevelAABBCHECKED LowLevelAABBCHECKED${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELCLOTH_LIB_CHECKED - NAMES LowLevelClothCHECKED LowLevelClothCHECKED${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELDYNAMICS_LIB_CHECKED - NAMES LowLevelDynamicsCHECKED LowLevelDynamicsCHECKED${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELPARTICLES_LIB_CHECKED - NAMES LowLevelParticlesCHECKED LowLevelParticlesCHECKED${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(SCENEQUERY_LIB_CHECKED - NAMES SceneQueryCHECKED SceneQueryCHECKED${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(SIMULATIONCONTROLLER_LIB_CHECKED - NAMES SimulationControllerCHECKED SimulationControllerCHECKED${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) - -find_library(PHYSX3_LIB_PROFILE - NAMES PhysX3PROFILE PhysX3PROFILE${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3EXTENSIONS_LIB_PROFILE - NAMES PhysX3ExtensionsPROFILE PhysX3ExtensionsPROFILE${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3CHARACTERKINEMATIC_LIB_PROFILE - NAMES PhysX3CharacterKinematicPROFILE PhysX3CharacterKinematicPROFILE${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3COMMON_LIB_PROFILE - NAMES PhysX3CommonPROFILE PhysX3CommonPROFILE${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PHYSX3COOKING_LIB_PROFILE - NAMES PhysX3CookingPROFILE PhysX3CookingPROFILE${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVEL_LIB_PROFILE - NAMES LowLevelPROFILE LowLevelPROFILE${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELAABB_LIB_PROFILE - NAMES LowLevelAABBPROFILE LowLevelAABBPROFILE${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELCLOTH_LIB_PROFILE - NAMES LowLevelClothPROFILE LowLevelClothPROFILE${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELDYNAMICS_LIB_PROFILE - NAMES LowLevelDynamicsPROFILE LowLevelDynamicsPROFILE${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(LOWLEVELPARTICLES_LIB_PROFILE - NAMES LowLevelParticlesPROFILE LowLevelParticlesPROFILE${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(SCENEQUERY_LIB_PROFILE - NAMES SceneQueryPROFILE SceneQueryPROFILE${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(SIMULATIONCONTROLLER_LIB_PROFILE - NAMES SimulationControllerPROFILE SimulationControllerPROFILE${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} -) - -if (TARGET_BUILD_PLATFORM STREQUAL "Windows") - - find_library(PHYSX3GPU_LIB - NAMES PhysX3Gpu${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} - ) - find_library(PHYSX3GPU_LIB_DEBUG - NAMES PhysX3GpuDEBUG${PHYSX_ARCH_FILE} - PATHS ${LIB_PATH} - ) - - - SET(DLL_PATH ${PHYSXSDK_PATH}/bin/${VS_STR}${PHYSX_ARCH_FOLDER}-cmake${PHYSX_CRT_SUFFIX} ${PHYSXSDK_PATH}/bin/${VS_STR}${PHYSX_ARCH_FOLDER} ${PHYSXSDK_PATH}/../Bin/${PHYSX_ARCH_FOLDER}/${VS_STR} ${PHYSXSDK_PATH}/../Bin) - - find_library(PHYSX3_DLL - NAMES PhysX3${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(PHYSX3COMMON_DLL - NAMES PhysX3Common${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(PHYSX3COOKING_DLL - NAMES PhysX3Cooking${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(PHYSX3GPU_DLL - NAMES PhysX3Gpu${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - - - find_library(PHYSX3_DLL_DEBUG - NAMES PhysX3DEBUG${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(PHYSX3COMMON_DLL_DEBUG - NAMES PhysX3CommonDEBUG${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(PHYSX3COOKING_DLL_DEBUG - NAMES PhysX3CookingDEBUG${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - # NOTE - GPU dlls not included in required dlls or libs as they're optional. - find_library(PHYSX3GPU_DLL_DEBUG - NAMES PhysX3GpuDEBUG${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - - find_library(PHYSX3_DLL_PROFILE - NAMES PhysX3PROFILE${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(PHYSX3COMMON_DLL_PROFILE - NAMES PhysX3CommonPROFILE${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(PHYSX3COOKING_DLL_PROFILE - NAMES PhysX3CookingPROFILE${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - # NOTE - GPU dlls not included in required dlls or libs as they're optional. - find_library(PHYSX3GPU_DLL_PROFILE - NAMES PhysX3GpuPROFILE${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - - find_library(PHYSX3_DLL_CHECKED - NAMES PhysX3CHECKED${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(PHYSX3COMMON_DLL_CHECKED - NAMES PhysX3CommonCHECKED${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(PHYSX3COOKING_DLL_CHECKED - NAMES PhysX3CookingCHECKED${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - # NOTE - GPU dlls not included in required dlls or libs as they're optional. - find_library(PHYSX3GPU_DLL_CHECKED - NAMES PhysX3GpuCHECKED${PHYSX_ARCH_FILE} - PATHS ${DLL_PATH} - ) - - # Create this list to check for found dlls below - SET(DLL_VAR_LIST - PHYSX3_DLL - PHYSX3COMMON_DLL - PHYSX3COOKING_DLL - - PHYSX3_DLL_DEBUG - PHYSX3COMMON_DLL_DEBUG - PHYSX3COOKING_DLL_DEBUG - - PHYSX3_DLL_PROFILE - PHYSX3COMMON_DLL_PROFILE - PHYSX3COOKING_DLL_PROFILE - - PHYSX3_DLL_CHECKED - PHYSX3COMMON_DLL_CHECKED - PHYSX3COOKING_DLL_CHECKED - - ) -endif() - -if (TARGET_BUILD_PLATFORM STREQUAL "linux") - SET(BIN_PATH ${PHYSXSDK_PATH}/bin/linux64-cmake ${PHYSXSDK_PATH}/../Bin) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".so") - - find_library(PHYSX3_LIB - NAMES PhysX3${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PHYSX3COOKING_LIB - NAMES PhysX3Cooking${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PHYSX3CHARACTERKINEMATIC_LIB - NAMES PhysX3CharacterKinematic${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PHYSX3COMMON_LIB - NAMES PhysX3Common${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - - find_library(PHYSX3_LIB_DEBUG - NAMES PhysX3DEBUG${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PHYSX3COOKING_LIB_DEBUG - NAMES PhysX3CookingDEBUG${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PHYSX3CHARACTERKINEMATIC_LIB_DEBUG - NAMES PhysX3CharacterKinematicDEBUG${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PHYSX3COMMON_LIB_DEBUG - NAMES PhysX3CommonDEBUG${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - - find_library(PHYSX3_LIB_CHECKED - NAMES PhysX3CHECKED${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PHYSX3COOKING_LIB_CHECKED - NAMES PhysX3CookingCHECKED${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PHYSX3CHARACTERKINEMATIC_LIB_CHECKED - NAMES PhysX3CharacterKinematicCHECKED${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PHYSX3COMMON_LIB_CHECKED - NAMES PhysX3CommonCHECKED${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - - find_library(PHYSX3_LIB_PROFILE - NAMES PhysX3PROFILE${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PHYSX3COOKING_LIB_PROFILE - NAMES PhysX3CookingPROFILE${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PHYSX3CHARACTERKINEMATIC_LIB_PROFILE - NAMES PhysX3CharacterKinematicPROFILE${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PHYSX3COMMON_LIB_PROFILE - NAMES PhysX3CommonPROFILE${PHYSX_ARCH_FILE} - PATHS ${BIN_PATH} - ) - -endif() - - -FIND_PACKAGE_HANDLE_STANDARD_ARGS(PHYSXSDK - DEFAULT_MSG - PHYSXSDK_PATH - - PHYSX3_LIB - PHYSX3EXTENSIONS_LIB - PHYSX3CHARACTERKINEMATIC_LIB - PHYSX3COMMON_LIB - PHYSX3COOKING_LIB - LOWLEVEL_LIB - LOWLEVELAABB_LIB - LOWLEVELCLOTH_LIB - LOWLEVELDYNAMICS_LIB - LOWLEVELPARTICLES_LIB - SCENEQUERY_LIB - SIMULATIONCONTROLLER_LIB - - PHYSX3_LIB_DEBUG - PHYSX3EXTENSIONS_LIB_DEBUG - PHYSX3CHARACTERKINEMATIC_LIB_DEBUG - PHYSX3COMMON_LIB_DEBUG - PHYSX3COOKING_LIB_DEBUG - LOWLEVEL_LIB_DEBUG - LOWLEVELAABB_LIB_DEBUG - LOWLEVELCLOTH_LIB_DEBUG - LOWLEVELDYNAMICS_LIB_DEBUG - LOWLEVELPARTICLES_LIB_DEBUG - SCENEQUERY_LIB_DEBUG - SIMULATIONCONTROLLER_LIB_DEBUG - - PHYSX3_LIB_CHECKED - PHYSX3EXTENSIONS_LIB_CHECKED - PHYSX3CHARACTERKINEMATIC_LIB_CHECKED - PHYSX3COMMON_LIB_CHECKED - PHYSX3COOKING_LIB_CHECKED - LOWLEVEL_LIB_CHECKED - LOWLEVELAABB_LIB_CHECKED - LOWLEVELCLOTH_LIB_CHECKED - LOWLEVELDYNAMICS_LIB_CHECKED - LOWLEVELPARTICLES_LIB_CHECKED - SCENEQUERY_LIB_CHECKED - SIMULATIONCONTROLLER_LIB_CHECKED - - PHYSX3_LIB_PROFILE - PHYSX3EXTENSIONS_LIB_PROFILE - PHYSX3CHARACTERKINEMATIC_LIB_PROFILE - PHYSX3COMMON_LIB_PROFILE - PHYSX3COOKING_LIB_PROFILE - LOWLEVEL_LIB_PROFILE - LOWLEVELAABB_LIB_PROFILE - LOWLEVELCLOTH_LIB_PROFILE - LOWLEVELDYNAMICS_LIB_PROFILE - LOWLEVELPARTICLES_LIB_PROFILE - SCENEQUERY_LIB_PROFILE - SIMULATIONCONTROLLER_LIB_PROFILE - - ${DLL_VAR_LIST} -) - -if (PHYSXSDK_FOUND) - - SET(PHYSXSDK_INCLUDE_DIRS - ${PHYSXSDK_PATH}/Include - ${PHYSXSDK_PATH}/Include/common - ${PHYSXSDK_PATH}/Include/cooking - ${PHYSXSDK_PATH}/Include/extensions - ${PHYSXSDK_PATH}/Include/geometry - ${PHYSXSDK_PATH}/Include/gpu - ${PHYSXSDK_PATH}/Include/deformable - ${PHYSXSDK_PATH}/Include/particles - ${PHYSXSDK_PATH}/Include/characterkinematic - ${PHYSXSDK_PATH}/Include/characterdynamic - ${PHYSXSDK_PATH}/Include/vehicle - ) - - SET(PHYSXSDK_LIBS_RELEASE ${PHYSX3_LIB} ${PHYSX3EXTENSIONS_LIB} ${PHYSX3CHARACTERKINEMATIC_LIB} ${PHYSX3COMMON_LIB} ${PHYSX3COOKING_LIB} ${PHYSX3GPU_LIB} ${LOWLEVEL_LIB} ${LOWLEVELAABB_LIB} ${LOWLEVELCLOTH_LIB} ${LOWLEVELDYNAMICS_LIB} ${LOWLEVELPARTICLES_LIB} ${SCENEQUERY_LIB} ${SIMULATIONCONTROLLER_LIB} - CACHE STRING "" - ) - SET(PHYSXSDK_LIBS_DEBUG ${PHYSX3_LIB_DEBUG} ${PHYSX3EXTENSIONS_LIB_DEBUG} ${PHYSX3CHARACTERKINEMATIC_LIB_DEBUG} ${PHYSX3COMMON_LIB_DEBUG} ${PHYSX3COOKING_LIB_DEBUG} ${PHYSX3GPU_LIB_DEBUG} ${LOWLEVEL_LIB_DEBUG} ${LOWLEVELAABB_LIB_DEBUG} ${LOWLEVELCLOTH_LIB_DEBUG} ${LOWLEVELDYNAMICS_LIB_DEBUG} ${LOWLEVELPARTICLES_LIB_DEBUG} ${SCENEQUERY_LIB_DEBUG} ${SIMULATIONCONTROLLER_LIB_DEBUG} - CACHE STRING "" - ) - SET(PHYSXSDK_LIBS_CHECKED ${PHYSX3_LIB_CHECKED} ${PHYSX3EXTENSIONS_LIB_CHECKED} ${PHYSX3CHARACTERKINEMATIC_LIB_CHECKED} ${PHYSX3COMMON_LIB_CHECKED} ${PHYSX3COOKING_LIB_CHECKED} ${PHYSX3GPU_LIB_CHECKED} ${LOWLEVEL_LIB_CHECKED} ${LOWLEVELAABB_LIB_CHECKED} ${LOWLEVELCLOTH_LIB_CHECKED} ${LOWLEVELDYNAMICS_LIB_CHECKED} ${LOWLEVELPARTICLES_LIB_CHECKED} ${SCENEQUERY_LIB_CHECKED} ${SIMULATIONCONTROLLER_LIB_CHECKED} - CACHE STRING "" - ) - SET(PHYSXSDK_LIBS_PROFILE ${PHYSX3_LIB_PROFILE} ${PHYSX3EXTENSIONS_LIB_PROFILE} ${PHYSX3CHARACTERKINEMATIC_LIB_PROFILE} ${PHYSX3COMMON_LIB_PROFILE} ${PHYSX3COOKING_LIB_PROFILE} ${PHYSX3GPU_LIB_PROFILE} ${LOWLEVEL_LIB_PROFILE} ${LOWLEVELAABB_LIB_PROFILE} ${LOWLEVELCLOTH_LIB_PROFILE} ${LOWLEVELDYNAMICS_LIB_PROFILE} ${LOWLEVELPARTICLES_LIB_PROFILE} ${SCENEQUERY_LIB_PROFILE} ${SIMULATIONCONTROLLER_LIB_PROFILE} - CACHE STRING "" - ) - - #NOTE: This is all dll configs, might need to be split. - SET(PHYSXSDK_DLLS - ${PHYSX3_DLL} ${PHYSX3CHARACTERKINEMATIC_DLL} ${PHYSX3COMMON_DLL} ${PHYSX3COOKING_DLL} ${PHYSX3GPU_DLL} - ${PHYSX3_DLL_DEBUG} ${PHYSX3CHARACTERKINEMATIC_DLL_DEBUG} ${PHYSX3COMMON_DLL_DEBUG} ${PHYSX3COOKING_DLL_DEBUG} ${PHYSX3GPU_DLL_DEBUG} - ${PHYSX3_DLL_PROFILE} ${PHYSX3CHARACTERKINEMATIC_DLL_PROFILE} ${PHYSX3COMMON_DLL_PROFILE} ${PHYSX3COOKING_DLL_PROFILE} ${PHYSX3GPU_DLL_PROFILE} - ${PHYSX3_DLL_CHECKED} ${PHYSX3CHARACTERKINEMATIC_DLL_CHECKED} ${PHYSX3COMMON_DLL_CHECKED} ${PHYSX3COOKING_DLL_CHECKED} ${PHYSX3GPU_DLL_CHECKED} - ) - - SET(PHYSXSDK_LIBRARIES "" CACHE STRING "") - - foreach(x ${PHYSXSDK_LIBS_RELEASE}) - list(APPEND PHYSXSDK_LIBRARIES optimized ${x}) - endforeach() - - foreach(x ${PHYSXSDK_LIBS_DEBUG}) - list(APPEND PHYSXSDK_LIBRARIES debug ${x}) - endforeach() -endif() +# - Try to find PhysX binary SDK
+# - Sets PHYSXSDK_LIBS_DEBUG, PHYSXSDK_LIBS_RELEASE, PHYSXSDK_LIBS_CHECKED, PHYSXSDK_LIBS_PROFILE - lists of the libraries found
+# - Sets PHYSXSDK_INCLUDE_DIRS
+# - Sets PHYSXSDK_DLLS - List of the DLLs to copy to the bin directory of projects that depend on this
+
+include(FindPackageHandleStandardArgs)
+
+MESSAGE("Looking for PhysXSDK ${PhysXSDK_FIND_VERSION} Cached path: ${PHYSXSDK_PATH}")
+find_path(PHYSXSDK_PATH Include/PxActor.h
+ PATHS
+ $ENV{PM_PhysX_PATH}
+ $ENV{PM_PhysX_PATH}/PhysX_3.4
+ ${GW_DEPS_ROOT}/$ENV{PM_PhysX_NAME}/${PhysXSDK_FIND_VERSION}
+ ${GW_DEPS_ROOT}/PhysX/${PhysXSDK_FIND_VERSION}
+)
+
+if (TARGET_BUILD_PLATFORM STREQUAL "Windows")
+ # If the project pulling in this dependency needs the static crt, then append that to the path.
+ if (STATIC_WINCRT)
+ SET(PHYSX_CRT_SUFFIX "-staticcrt")
+ else()
+ SET(PHYSX_CRT_SUFFIX "")
+ endif()
+
+ if (CMAKE_CL_64)
+ SET(PHYSX_ARCH_FOLDER "win64")
+ SET(PHYSX_ARCH_FILE "_x64")
+ else()
+ SET(PHYSX_ARCH_FOLDER "win32")
+ SET(PHYSX_ARCH_FILE "_x86")
+ endif()
+
+ # What compiler version do we want?
+
+ if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 18.0.0.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0.0.0)
+ SET(VS_STR "VS2013")
+ elseif (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.0.0.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.10.0.0)
+ SET(VS_STR "VS2015")
+ elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.10.0.0)
+ SET(VS_STR "VS2017")
+ else()
+ MESSAGE(FATAL_ERROR "Failed to find compatible PxSharedSDK - Only supporting VS2013 and VS2015")
+ endif()
+
+ SET(LIB_PATH ${PHYSXSDK_PATH}/lib/${VS_STR}${PHYSX_ARCH_FOLDER}-cmake${PHYSX_CRT_SUFFIX} ${PHYSXSDK_PATH}/lib/${VS_STR}${PHYSX_ARCH_FOLDER} ${PHYSXSDK_PATH}/../Lib/${PHYSX_ARCH_FOLDER}/${VS_STR} ${PHYSXSDK_PATH}/../Lib)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib" ".dll")
+
+elseif(TARGET_BUILD_PLATFORM STREQUAL "PS4")
+ SET(LIB_PATH ${PHYSXSDK_PATH}/lib/vc14ps4-cmake ${PHYSXSDK_PATH}/../Lib)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
+elseif(TARGET_BUILD_PLATFORM STREQUAL "XboxOne")
+ SET(LIB_PATH ${PHYSXSDK_PATH}/lib/vc14xboxone-cmake ${PHYSXSDK_PATH}/../lib)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a" ".lib")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib" "")
+elseif(TARGET_BUILD_PLATFORM STREQUAL "linux")
+ SET(LIB_PATH ${PHYSXSDK_PATH}/lib/linux64-cmake ${PHYSXSDK_PATH}/../Lib)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
+ SET(PHYSX_ARCH_FILE "_x64")
+endif()
+
+# Now find all of the PhysX libs in the lib directory
+
+find_library(PHYSX3_LIB
+ NAMES PhysX3 PhysX3${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3EXTENSIONS_LIB
+ NAMES PhysX3Extensions PhysX3Extensions${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3CHARACTERKINEMATIC_LIB
+ NAMES PhysX3CharacterKinematic${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3COMMON_LIB
+ NAMES PhysX3Common${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3COOKING_LIB
+ NAMES PhysX3Cooking${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVEL_LIB
+ NAMES LowLevel LowLevel${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELAABB_LIB
+ NAMES LowLevelAABB LowLevelAABB${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELCLOTH_LIB
+ NAMES LowLevelCloth LowLevelCloth${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELDYNAMICS_LIB
+ NAMES LowLevelDynamics LowLevelDynamics${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELPARTICLES_LIB
+ NAMES LowLevelParticles LowLevelParticles${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(SCENEQUERY_LIB
+ NAMES SceneQuery SceneQuery${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(SIMULATIONCONTROLLER_LIB
+ NAMES SimulationController SimulationController${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+
+
+find_library(PHYSX3_LIB_DEBUG
+ NAMES PhysX3DEBUG PhysX3DEBUG${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3EXTENSIONS_LIB_DEBUG
+ NAMES PhysX3ExtensionsDEBUG PhysX3ExtensionsDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3CHARACTERKINEMATIC_LIB_DEBUG
+ NAMES PhysX3CharacterKinematicDEBUG PhysX3CharacterKinematicDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3COMMON_LIB_DEBUG
+ NAMES PhysX3CommonDEBUG PhysX3CommonDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3COOKING_LIB_DEBUG
+ NAMES PhysX3CookingDEBUG PhysX3CookingDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVEL_LIB_DEBUG
+ NAMES LowLevelDEBUG LowLevelDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELAABB_LIB_DEBUG
+ NAMES LowLevelAABBDEBUG LowLevelAABBDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELCLOTH_LIB_DEBUG
+ NAMES LowLevelClothDEBUG LowLevelClothDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELDYNAMICS_LIB_DEBUG
+ NAMES LowLevelDynamicsDEBUG LowLevelDynamicsDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELPARTICLES_LIB_DEBUG
+ NAMES LowLevelParticlesDEBUG LowLevelParticlesDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(SCENEQUERY_LIB_DEBUG
+ NAMES SceneQueryDEBUG SceneQueryDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(SIMULATIONCONTROLLER_LIB_DEBUG
+ NAMES SimulationControllerDEBUG SimulationControllerDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+
+find_library(PHYSX3_LIB_CHECKED
+ NAMES PhysX3CHECKED PhysX3CHECKED${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3EXTENSIONS_LIB_CHECKED
+ NAMES PhysX3ExtensionsCHECKED PhysX3ExtensionsCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3CHARACTERKINEMATIC_LIB_CHECKED
+ NAMES PhysX3CharacterKinematicCHECKED PhysX3CharacterKinematicCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3COMMON_LIB_CHECKED
+ NAMES PhysX3CommonCHECKED PhysX3CommonCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3COOKING_LIB_CHECKED
+ NAMES PhysX3CookingCHECKED PhysX3CookingCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVEL_LIB_CHECKED
+ NAMES LowLevelCHECKED LowLevelCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELAABB_LIB_CHECKED
+ NAMES LowLevelAABBCHECKED LowLevelAABBCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELCLOTH_LIB_CHECKED
+ NAMES LowLevelClothCHECKED LowLevelClothCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELDYNAMICS_LIB_CHECKED
+ NAMES LowLevelDynamicsCHECKED LowLevelDynamicsCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELPARTICLES_LIB_CHECKED
+ NAMES LowLevelParticlesCHECKED LowLevelParticlesCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(SCENEQUERY_LIB_CHECKED
+ NAMES SceneQueryCHECKED SceneQueryCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(SIMULATIONCONTROLLER_LIB_CHECKED
+ NAMES SimulationControllerCHECKED SimulationControllerCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+
+find_library(PHYSX3_LIB_PROFILE
+ NAMES PhysX3PROFILE PhysX3PROFILE${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3EXTENSIONS_LIB_PROFILE
+ NAMES PhysX3ExtensionsPROFILE PhysX3ExtensionsPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3CHARACTERKINEMATIC_LIB_PROFILE
+ NAMES PhysX3CharacterKinematicPROFILE PhysX3CharacterKinematicPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3COMMON_LIB_PROFILE
+ NAMES PhysX3CommonPROFILE PhysX3CommonPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PHYSX3COOKING_LIB_PROFILE
+ NAMES PhysX3CookingPROFILE PhysX3CookingPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVEL_LIB_PROFILE
+ NAMES LowLevelPROFILE LowLevelPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELAABB_LIB_PROFILE
+ NAMES LowLevelAABBPROFILE LowLevelAABBPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELCLOTH_LIB_PROFILE
+ NAMES LowLevelClothPROFILE LowLevelClothPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELDYNAMICS_LIB_PROFILE
+ NAMES LowLevelDynamicsPROFILE LowLevelDynamicsPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(LOWLEVELPARTICLES_LIB_PROFILE
+ NAMES LowLevelParticlesPROFILE LowLevelParticlesPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(SCENEQUERY_LIB_PROFILE
+ NAMES SceneQueryPROFILE SceneQueryPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(SIMULATIONCONTROLLER_LIB_PROFILE
+ NAMES SimulationControllerPROFILE SimulationControllerPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+
+if (TARGET_BUILD_PLATFORM STREQUAL "Windows")
+
+ find_library(PHYSX3GPU_LIB
+ NAMES PhysX3Gpu${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+ )
+ find_library(PHYSX3GPU_LIB_DEBUG
+ NAMES PhysX3GpuDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${LIB_PATH}
+ )
+
+
+ SET(DLL_PATH ${PHYSXSDK_PATH}/bin/${VS_STR}${PHYSX_ARCH_FOLDER}-cmake${PHYSX_CRT_SUFFIX} ${PHYSXSDK_PATH}/bin/${VS_STR}${PHYSX_ARCH_FOLDER} ${PHYSXSDK_PATH}/../Bin/${PHYSX_ARCH_FOLDER}/${VS_STR} ${PHYSXSDK_PATH}/../Bin)
+
+ find_library(PHYSX3_DLL
+ NAMES PhysX3${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PHYSX3COMMON_DLL
+ NAMES PhysX3Common${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PHYSX3COOKING_DLL
+ NAMES PhysX3Cooking${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PHYSX3GPU_DLL
+ NAMES PhysX3Gpu${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+
+
+ find_library(PHYSX3_DLL_DEBUG
+ NAMES PhysX3DEBUG${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PHYSX3COMMON_DLL_DEBUG
+ NAMES PhysX3CommonDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PHYSX3COOKING_DLL_DEBUG
+ NAMES PhysX3CookingDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ # NOTE - GPU dlls not included in required dlls or libs as they're optional.
+ find_library(PHYSX3GPU_DLL_DEBUG
+ NAMES PhysX3GpuDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+
+ find_library(PHYSX3_DLL_PROFILE
+ NAMES PhysX3PROFILE${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PHYSX3COMMON_DLL_PROFILE
+ NAMES PhysX3CommonPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PHYSX3COOKING_DLL_PROFILE
+ NAMES PhysX3CookingPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ # NOTE - GPU dlls not included in required dlls or libs as they're optional.
+ find_library(PHYSX3GPU_DLL_PROFILE
+ NAMES PhysX3GpuPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+
+ find_library(PHYSX3_DLL_CHECKED
+ NAMES PhysX3CHECKED${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PHYSX3COMMON_DLL_CHECKED
+ NAMES PhysX3CommonCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PHYSX3COOKING_DLL_CHECKED
+ NAMES PhysX3CookingCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ # NOTE - GPU dlls not included in required dlls or libs as they're optional.
+ find_library(PHYSX3GPU_DLL_CHECKED
+ NAMES PhysX3GpuCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+
+ # Create this list to check for found dlls below
+ SET(DLL_VAR_LIST
+ PHYSX3_DLL
+ PHYSX3COMMON_DLL
+ PHYSX3COOKING_DLL
+
+ PHYSX3_DLL_DEBUG
+ PHYSX3COMMON_DLL_DEBUG
+ PHYSX3COOKING_DLL_DEBUG
+
+ PHYSX3_DLL_PROFILE
+ PHYSX3COMMON_DLL_PROFILE
+ PHYSX3COOKING_DLL_PROFILE
+
+ PHYSX3_DLL_CHECKED
+ PHYSX3COMMON_DLL_CHECKED
+ PHYSX3COOKING_DLL_CHECKED
+
+ )
+endif()
+
+if (TARGET_BUILD_PLATFORM STREQUAL "linux")
+ SET(BIN_PATH ${PHYSXSDK_PATH}/bin/linux64-cmake ${PHYSXSDK_PATH}/../Bin)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".so")
+
+ find_library(PHYSX3_LIB
+ NAMES PhysX3${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PHYSX3COOKING_LIB
+ NAMES PhysX3Cooking${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PHYSX3CHARACTERKINEMATIC_LIB
+ NAMES PhysX3CharacterKinematic${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PHYSX3COMMON_LIB
+ NAMES PhysX3Common${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+
+ find_library(PHYSX3_LIB_DEBUG
+ NAMES PhysX3DEBUG${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PHYSX3COOKING_LIB_DEBUG
+ NAMES PhysX3CookingDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PHYSX3CHARACTERKINEMATIC_LIB_DEBUG
+ NAMES PhysX3CharacterKinematicDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PHYSX3COMMON_LIB_DEBUG
+ NAMES PhysX3CommonDEBUG${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+
+ find_library(PHYSX3_LIB_CHECKED
+ NAMES PhysX3CHECKED${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PHYSX3COOKING_LIB_CHECKED
+ NAMES PhysX3CookingCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PHYSX3CHARACTERKINEMATIC_LIB_CHECKED
+ NAMES PhysX3CharacterKinematicCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PHYSX3COMMON_LIB_CHECKED
+ NAMES PhysX3CommonCHECKED${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+
+ find_library(PHYSX3_LIB_PROFILE
+ NAMES PhysX3PROFILE${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PHYSX3COOKING_LIB_PROFILE
+ NAMES PhysX3CookingPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PHYSX3CHARACTERKINEMATIC_LIB_PROFILE
+ NAMES PhysX3CharacterKinematicPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PHYSX3COMMON_LIB_PROFILE
+ NAMES PhysX3CommonPROFILE${PHYSX_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+
+endif()
+
+
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(PHYSXSDK
+ DEFAULT_MSG
+ PHYSXSDK_PATH
+
+ PHYSX3_LIB
+ PHYSX3EXTENSIONS_LIB
+ PHYSX3CHARACTERKINEMATIC_LIB
+ PHYSX3COMMON_LIB
+ PHYSX3COOKING_LIB
+ LOWLEVEL_LIB
+ LOWLEVELAABB_LIB
+ LOWLEVELCLOTH_LIB
+ LOWLEVELDYNAMICS_LIB
+ LOWLEVELPARTICLES_LIB
+ SCENEQUERY_LIB
+ SIMULATIONCONTROLLER_LIB
+
+ PHYSX3_LIB_DEBUG
+ PHYSX3EXTENSIONS_LIB_DEBUG
+ PHYSX3CHARACTERKINEMATIC_LIB_DEBUG
+ PHYSX3COMMON_LIB_DEBUG
+ PHYSX3COOKING_LIB_DEBUG
+ LOWLEVEL_LIB_DEBUG
+ LOWLEVELAABB_LIB_DEBUG
+ LOWLEVELCLOTH_LIB_DEBUG
+ LOWLEVELDYNAMICS_LIB_DEBUG
+ LOWLEVELPARTICLES_LIB_DEBUG
+ SCENEQUERY_LIB_DEBUG
+ SIMULATIONCONTROLLER_LIB_DEBUG
+
+ PHYSX3_LIB_CHECKED
+ PHYSX3EXTENSIONS_LIB_CHECKED
+ PHYSX3CHARACTERKINEMATIC_LIB_CHECKED
+ PHYSX3COMMON_LIB_CHECKED
+ PHYSX3COOKING_LIB_CHECKED
+ LOWLEVEL_LIB_CHECKED
+ LOWLEVELAABB_LIB_CHECKED
+ LOWLEVELCLOTH_LIB_CHECKED
+ LOWLEVELDYNAMICS_LIB_CHECKED
+ LOWLEVELPARTICLES_LIB_CHECKED
+ SCENEQUERY_LIB_CHECKED
+ SIMULATIONCONTROLLER_LIB_CHECKED
+
+ PHYSX3_LIB_PROFILE
+ PHYSX3EXTENSIONS_LIB_PROFILE
+ PHYSX3CHARACTERKINEMATIC_LIB_PROFILE
+ PHYSX3COMMON_LIB_PROFILE
+ PHYSX3COOKING_LIB_PROFILE
+ LOWLEVEL_LIB_PROFILE
+ LOWLEVELAABB_LIB_PROFILE
+ LOWLEVELCLOTH_LIB_PROFILE
+ LOWLEVELDYNAMICS_LIB_PROFILE
+ LOWLEVELPARTICLES_LIB_PROFILE
+ SCENEQUERY_LIB_PROFILE
+ SIMULATIONCONTROLLER_LIB_PROFILE
+
+ ${DLL_VAR_LIST}
+)
+
+if (PHYSXSDK_FOUND)
+
+ SET(PHYSXSDK_INCLUDE_DIRS
+ ${PHYSXSDK_PATH}/Include
+ ${PHYSXSDK_PATH}/Include/common
+ ${PHYSXSDK_PATH}/Include/cooking
+ ${PHYSXSDK_PATH}/Include/extensions
+ ${PHYSXSDK_PATH}/Include/geometry
+ ${PHYSXSDK_PATH}/Include/gpu
+ ${PHYSXSDK_PATH}/Include/deformable
+ ${PHYSXSDK_PATH}/Include/particles
+ ${PHYSXSDK_PATH}/Include/characterkinematic
+ ${PHYSXSDK_PATH}/Include/characterdynamic
+ ${PHYSXSDK_PATH}/Include/vehicle
+ )
+
+ SET(PHYSXSDK_LIBS_RELEASE ${PHYSX3_LIB} ${PHYSX3EXTENSIONS_LIB} ${PHYSX3CHARACTERKINEMATIC_LIB} ${PHYSX3COMMON_LIB} ${PHYSX3COOKING_LIB} ${PHYSX3GPU_LIB} ${LOWLEVEL_LIB} ${LOWLEVELAABB_LIB} ${LOWLEVELCLOTH_LIB} ${LOWLEVELDYNAMICS_LIB} ${LOWLEVELPARTICLES_LIB} ${SCENEQUERY_LIB} ${SIMULATIONCONTROLLER_LIB}
+ CACHE STRING ""
+ )
+ SET(PHYSXSDK_LIBS_DEBUG ${PHYSX3_LIB_DEBUG} ${PHYSX3EXTENSIONS_LIB_DEBUG} ${PHYSX3CHARACTERKINEMATIC_LIB_DEBUG} ${PHYSX3COMMON_LIB_DEBUG} ${PHYSX3COOKING_LIB_DEBUG} ${PHYSX3GPU_LIB_DEBUG} ${LOWLEVEL_LIB_DEBUG} ${LOWLEVELAABB_LIB_DEBUG} ${LOWLEVELCLOTH_LIB_DEBUG} ${LOWLEVELDYNAMICS_LIB_DEBUG} ${LOWLEVELPARTICLES_LIB_DEBUG} ${SCENEQUERY_LIB_DEBUG} ${SIMULATIONCONTROLLER_LIB_DEBUG}
+ CACHE STRING ""
+ )
+ SET(PHYSXSDK_LIBS_CHECKED ${PHYSX3_LIB_CHECKED} ${PHYSX3EXTENSIONS_LIB_CHECKED} ${PHYSX3CHARACTERKINEMATIC_LIB_CHECKED} ${PHYSX3COMMON_LIB_CHECKED} ${PHYSX3COOKING_LIB_CHECKED} ${PHYSX3GPU_LIB_CHECKED} ${LOWLEVEL_LIB_CHECKED} ${LOWLEVELAABB_LIB_CHECKED} ${LOWLEVELCLOTH_LIB_CHECKED} ${LOWLEVELDYNAMICS_LIB_CHECKED} ${LOWLEVELPARTICLES_LIB_CHECKED} ${SCENEQUERY_LIB_CHECKED} ${SIMULATIONCONTROLLER_LIB_CHECKED}
+ CACHE STRING ""
+ )
+ SET(PHYSXSDK_LIBS_PROFILE ${PHYSX3_LIB_PROFILE} ${PHYSX3EXTENSIONS_LIB_PROFILE} ${PHYSX3CHARACTERKINEMATIC_LIB_PROFILE} ${PHYSX3COMMON_LIB_PROFILE} ${PHYSX3COOKING_LIB_PROFILE} ${PHYSX3GPU_LIB_PROFILE} ${LOWLEVEL_LIB_PROFILE} ${LOWLEVELAABB_LIB_PROFILE} ${LOWLEVELCLOTH_LIB_PROFILE} ${LOWLEVELDYNAMICS_LIB_PROFILE} ${LOWLEVELPARTICLES_LIB_PROFILE} ${SCENEQUERY_LIB_PROFILE} ${SIMULATIONCONTROLLER_LIB_PROFILE}
+ CACHE STRING ""
+ )
+
+ #NOTE: This is all dll configs, might need to be split.
+ SET(PHYSXSDK_DLLS
+ ${PHYSX3_DLL} ${PHYSX3CHARACTERKINEMATIC_DLL} ${PHYSX3COMMON_DLL} ${PHYSX3COOKING_DLL} ${PHYSX3GPU_DLL}
+ ${PHYSX3_DLL_DEBUG} ${PHYSX3CHARACTERKINEMATIC_DLL_DEBUG} ${PHYSX3COMMON_DLL_DEBUG} ${PHYSX3COOKING_DLL_DEBUG} ${PHYSX3GPU_DLL_DEBUG}
+ ${PHYSX3_DLL_PROFILE} ${PHYSX3CHARACTERKINEMATIC_DLL_PROFILE} ${PHYSX3COMMON_DLL_PROFILE} ${PHYSX3COOKING_DLL_PROFILE} ${PHYSX3GPU_DLL_PROFILE}
+ ${PHYSX3_DLL_CHECKED} ${PHYSX3CHARACTERKINEMATIC_DLL_CHECKED} ${PHYSX3COMMON_DLL_CHECKED} ${PHYSX3COOKING_DLL_CHECKED} ${PHYSX3GPU_DLL_CHECKED}
+ )
+
+ SET(PHYSXSDK_LIBRARIES "" CACHE STRING "")
+
+ foreach(x ${PHYSXSDK_LIBS_RELEASE})
+ list(APPEND PHYSXSDK_LIBRARIES optimized ${x})
+ endforeach()
+
+ foreach(x ${PHYSXSDK_LIBS_DEBUG})
+ list(APPEND PHYSXSDK_LIBRARIES debug ${x})
+ endforeach()
+endif()
diff --git a/sdk/compiler/cmake/modules/FindPxSharedSDK.cmake b/sdk/compiler/cmake/modules/FindPxSharedSDK.cmake index da540ec..c3a5da1 100644..100755 --- a/sdk/compiler/cmake/modules/FindPxSharedSDK.cmake +++ b/sdk/compiler/cmake/modules/FindPxSharedSDK.cmake @@ -1,313 +1,315 @@ -# - Try to find PxShared binary SDK -# - Sets PXSHAREDSDK_LIBS_DEBUG and PXSHAREDSDK_LIBS_RELEASE - lists of the libraries found -# - Sets PXSHAREDSDK_INCLUDE_DIRS -# - Sets PXSHAREDSDK_DLLS - List of the DLLs to copy to the bin directory of projects that depend on this - -include(FindPackageHandleStandardArgs) - -# Find the includes - -# Always try explicit PATH variable first -find_path(PXSHAREDSDK_PATH include/foundation/Px.h - PATHS - $ENV{PM_PxShared_PATH} - $ENV{PM_PhysX_PATH}/PxShared # multipack - ${GW_DEPS_ROOT}/$ENV{PM_PxShared_NAME}/${PxSharedSDK_FIND_VERSION} - ${GW_DEPS_ROOT}/PxShared/${PxSharedSDK_FIND_VERSION} -) - -if (TARGET_BUILD_PLATFORM STREQUAL "Windows") - # If the project pulling in this dependency needs the static crt, then append that to the path. - if (STATIC_WINCRT) - SET(PXSHARED_CRT_SUFFIX "-staticcrt") - else() - SET(PXSHARED_CRT_SUFFIX "") - endif() - - if (CMAKE_CL_64) - SET(PXSHARED_ARCH_FOLDER "win64") - SET(PXSHARED_ARCH_FILE "_x64") - else() - SET(PXSHARED_ARCH_FOLDER "win32") - SET(PXSHARED_ARCH_FILE "_x86") - endif() - - # What compiler version do we want? - - if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 18.0.0.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0.0.0) - SET(VS_STR "VS2013") - elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.0.0.0) - SET(VS_STR "VS2015") - else() - MESSAGE(FATAL_ERROR "Failed to find compatible PxSharedSDK - Only supporting VS2013 and VS2015") - endif() - - SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/${VS_STR}${PXSHARED_ARCH_FOLDER}-cmake${PXSHARED_CRT_SUFFIX} ${PXSHAREDSDK_PATH}/lib/${VS_STR}${PXSHARED_ARCH_FOLDER} ${PXSHAREDSDK_PATH}/../lib/${PXSHARED_ARCH_FOLDER}/${VS_STR} ${PXSHAREDSDK_PATH}/../lib) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib" ".dll") - -elseif(TARGET_BUILD_PLATFORM STREQUAL "PS4") - SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/vc14ps4-cmake ${PXSHAREDSDK_PATH}/../lib) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib") -elseif(TARGET_BUILD_PLATFORM STREQUAL "XboxOne") - SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/vc14xboxone-cmake ${PXSHAREDSDK_PATH}/../Lib) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a" ".lib") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib" "") -elseif(TARGET_BUILD_PLATFORM STREQUAL "linux") - SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/linux64-cmake ${PXSHAREDSDK_PATH}/../Lib) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a") - SET(CMAKE_FIND_LIBRARY_PREFIXES "lib") - SET(PXSHARED_ARCH_FILE "_x64") -endif() - - -# Now find all of the PxShared libs in the lib directory - - -find_library(PSFASTXML_LIB - NAMES PsFastXml PsFastXml${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PXFOUNDATION_LIB - NAMES PxFoundation${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PXPVDSDK_LIB - NAMES PxPvdSDK${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PXTASK_LIB - NAMES PxTask PxTask${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) - -find_library(PSFASTXML_LIB_DEBUG - NAMES PsFastXmlDEBUG PsFastXmlDEBUG${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PXFOUNDATION_LIB_DEBUG - NAMES PxFoundationDEBUG${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PXPVDSDK_LIB_DEBUG - NAMES PxPvdSDKDEBUG${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PXTASK_LIB_DEBUG - NAMES PxTaskDEBUG PxTaskDEBUG${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) - -find_library(PSFASTXML_LIB_CHECKED - NAMES PsFastXmlCHECKED PsFastXmlCHECKED${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PXFOUNDATION_LIB_CHECKED - NAMES PxFoundationCHECKED${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PXPVDSDK_LIB_CHECKED - NAMES PxPvdSDKCHECKED${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PXTASK_LIB_CHECKED - NAMES PxTaskCHECKED PxTaskCHECKED${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) - -find_library(PSFASTXML_LIB_PROFILE - NAMES PsFastXmlPROFILE PsFastXmlPROFILE${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PXFOUNDATION_LIB_PROFILE - NAMES PxFoundationPROFILE${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PXPVDSDK_LIB_PROFILE - NAMES PxPvdSDKPROFILE${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) -find_library(PXTASK_LIB_PROFILE - NAMES PxTaskPROFILE PxTaskPROFILE${PXSHARED_ARCH_FILE} - PATHS ${LIB_PATH} -) - -if (TARGET_BUILD_PLATFORM STREQUAL "Windows") - SET(DLL_PATH ${PXSHAREDSDK_PATH}/bin/${VS_STR}${PXSHARED_ARCH_FOLDER}-cmake${PXSHARED_CRT_SUFFIX} ${PXSHAREDSDK_PATH}/bin/${VS_STR}${PXSHARED_ARCH_FOLDER} ${PXSHAREDSDK_PATH}/../bin/${PXSHARED_ARCH_FOLDER}/${VS_STR} ${PXSHAREDSDK_PATH}/../bin) - - find_library(PXFOUNDATION_DLL - NAMES PxFoundation${PXSHARED_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(PXPVDSDK_DLL - NAMES PxPvdSDK${PXSHARED_ARCH_FILE} - PATHS ${DLL_PATH} - ) - - find_library(PXFOUNDATION_DLL_DEBUG - NAMES PxFoundationDEBUG${PXSHARED_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(PXPVDSDK_DLL_DEBUG - NAMES PxPvdSDKDEBUG${PXSHARED_ARCH_FILE} - PATHS ${DLL_PATH} - ) - - find_library(PXFOUNDATION_DLL_CHECKED - NAMES PxFoundationCHECKED${PXSHARED_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(PXPVDSDK_DLL_CHECKED - NAMES PxPvdSDKCHECKED${PXSHARED_ARCH_FILE} - PATHS ${DLL_PATH} - ) - - find_library(PXFOUNDATION_DLL_PROFILE - NAMES PxFoundationPROFILE${PXSHARED_ARCH_FILE} - PATHS ${DLL_PATH} - ) - find_library(PXPVDSDK_DLL_PROFILE - NAMES PxPvdSDKPROFILE${PXSHARED_ARCH_FILE} - PATHS ${DLL_PATH} - ) - - #Put the found dll variables in a list if we actually looked for them (windows) - SET(DLL_VAR_LIST - PXFOUNDATION_DLL - PXPVDSDK_DLL - - PXFOUNDATION_DLL_DEBUG - PXPVDSDK_DLL_DEBUG - - PXFOUNDATION_DLL_CHECKED - PXPVDSDK_DLL_CHECKED - - PXFOUNDATION_DLL_PROFILE - PXPVDSDK_DLL_PROFILE - - ) -endif() - -if (TARGET_BUILD_PLATFORM STREQUAL "linux") - SET(BIN_PATH ${PXSHAREDSDK_PATH}/bin/linux64-cmake ${PXSHAREDSDK_PATH}/../Bin) - SET(CMAKE_FIND_LIBRARY_SUFFIXES ".so") - - find_library(PXFOUNDATION_LIB - NAMES PxFoundation${PXSHARED_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PXPVDSDK_LIB - NAMES PxPvdSDK${PXSHARED_ARCH_FILE} - PATHS ${BIN_PATH} - ) - - find_library(PXFOUNDATION_LIB_CHECKED - NAMES PxFoundationCHECKED${PXSHARED_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PXPVDSDK_LIB_CHECKED - NAMES PxPvdSDKCHECKED${PXSHARED_ARCH_FILE} - PATHS ${BIN_PATH} - ) - - find_library(PXFOUNDATION_LIB_DEBUG - NAMES PxFoundationDEBUG${PXSHARED_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PXPVDSDK_LIB_DEBUG - NAMES PxPvdSDKDEBUG${PXSHARED_ARCH_FILE} - PATHS ${BIN_PATH} - ) - - find_library(PXFOUNDATION_LIB_PROFILE - NAMES PxFoundationPROFILE${PXSHARED_ARCH_FILE} - PATHS ${BIN_PATH} - ) - find_library(PXPVDSDK_LIB_PROFILE - NAMES PxPvdSDKPROFILE${PXSHARED_ARCH_FILE} - PATHS ${BIN_PATH} - ) -endif() - -FIND_PACKAGE_HANDLE_STANDARD_ARGS(PXSHAREDSDK - DEFAULT_MSG - PXSHAREDSDK_PATH - - PSFASTXML_LIB - PXFOUNDATION_LIB - PXPVDSDK_LIB - PXTASK_LIB - - PSFASTXML_LIB_DEBUG - PXFOUNDATION_LIB_DEBUG - PXPVDSDK_LIB_DEBUG - PXTASK_LIB_DEBUG - - PSFASTXML_LIB_CHECKED - PXFOUNDATION_LIB_CHECKED - PXPVDSDK_LIB_CHECKED - PXTASK_LIB_CHECKED - - PSFASTXML_LIB_PROFILE - PXFOUNDATION_LIB_PROFILE - PXPVDSDK_LIB_PROFILE - PXTASK_LIB_PROFILE - - - ${DLL_VAR_LIST} -) - -if (PXSHAREDSDK_FOUND) - - # NOTE: This include list is way too long and reaches into too many internals. - # Also may not be good enough for all users. - SET(PXSHAREDSDK_INCLUDE_DIRS - ${PXSHAREDSDK_PATH}/include - ${PXSHAREDSDK_PATH}/include/pvd - ${PXSHAREDSDK_PATH}/include/task - ${PXSHAREDSDK_PATH}/include/filebuf - ${PXSHAREDSDK_PATH}/include/foundation - ${PXSHAREDSDK_PATH}/src/foundation/include - ${PXSHAREDSDK_PATH}/src/filebuf/include - ${PXSHAREDSDK_PATH}/src/fastxml/include - ) - - SET(PXSHAREDSDK_LIBS_RELEASE ${PSFASTXML_LIB} ${PXFOUNDATION_LIB} ${PXPVDSDK_LIB} ${PXTASK_LIB} - CACHE STRING "" - ) - SET(PXSHAREDSDK_LIBS_DEBUG ${PSFASTXML_LIB_DEBUG} ${PXFOUNDATION_LIB_DEBUG} ${PXPVDSDK_LIB_DEBUG} ${PXTASK_LIB_DEBUG} - CACHE STRING "" - ) - - SET(PXSHAREDSDK_LIBS_CHECKED ${PSFASTXML_LIB_CHECKED} ${PXFOUNDATION_LIB_CHECKED} ${PXPVDSDK_LIB_CHECKED} ${PXTASK_LIB_CHECKED} - CACHE STRING "" - ) - - SET(PXSHAREDSDK_LIBS_PROFILE ${PSFASTXML_LIB_PROFILE} ${PXFOUNDATION_LIB_PROFILE} ${PXPVDSDK_LIB_PROFILE} ${PXTASK_LIB_PROFILE} - CACHE STRING "" - ) - - SET(PXSHAREDSDK_DLLS - ${PXFOUNDATION_DLL} - ${PXPVDSDK_DLL} - - ${PXFOUNDATION_DLL_DEBUG} - ${PXPVDSDK_DLL_DEBUG} - - ${PXFOUNDATION_DLL_CHECKED} - ${PXPVDSDK_DLL_CHECKED} - - ${PXFOUNDATION_DLL_PROFILE} - ${PXPVDSDK_DLL_PROFILE} - ) - - SET(PXSHAREDSDK_LIBRARIES "" CACHE STRING "") - - foreach(x ${PXSHAREDSDK_LIBS_RELEASE}) - list(APPEND PXSHAREDSDK_LIBRARIES optimized ${x}) - endforeach() - - foreach(x ${PXSHAREDSDK_LIBS_DEBUG}) - list(APPEND PXSHAREDSDK_LIBRARIES debug ${x}) - endforeach() -endif() +# - Try to find PxShared binary SDK
+# - Sets PXSHAREDSDK_LIBS_DEBUG and PXSHAREDSDK_LIBS_RELEASE - lists of the libraries found
+# - Sets PXSHAREDSDK_INCLUDE_DIRS
+# - Sets PXSHAREDSDK_DLLS - List of the DLLs to copy to the bin directory of projects that depend on this
+
+include(FindPackageHandleStandardArgs)
+
+# Find the includes
+
+# Always try explicit PATH variable first
+find_path(PXSHAREDSDK_PATH include/foundation/Px.h
+ PATHS
+ $ENV{PM_PxShared_PATH}
+ $ENV{PM_PhysX_PATH}/PxShared # multipack
+ ${GW_DEPS_ROOT}/$ENV{PM_PxShared_NAME}/${PxSharedSDK_FIND_VERSION}
+ ${GW_DEPS_ROOT}/PxShared/${PxSharedSDK_FIND_VERSION}
+)
+
+if (TARGET_BUILD_PLATFORM STREQUAL "Windows")
+ # If the project pulling in this dependency needs the static crt, then append that to the path.
+ if (STATIC_WINCRT)
+ SET(PXSHARED_CRT_SUFFIX "-staticcrt")
+ else()
+ SET(PXSHARED_CRT_SUFFIX "")
+ endif()
+
+ if (CMAKE_CL_64)
+ SET(PXSHARED_ARCH_FOLDER "win64")
+ SET(PXSHARED_ARCH_FILE "_x64")
+ else()
+ SET(PXSHARED_ARCH_FOLDER "win32")
+ SET(PXSHARED_ARCH_FILE "_x86")
+ endif()
+
+ # What compiler version do we want?
+
+ if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 18.0.0.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0.0.0)
+ SET(VS_STR "VS2013")
+ elseif (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.0.0.0 AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.10.0.0)
+ SET(VS_STR "VS2015")
+ elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.10.0.0)
+ SET(VS_STR "VS2017")
+ else()
+ MESSAGE(FATAL_ERROR "Failed to find compatible PxSharedSDK - Only supporting VS2013 and VS2015")
+ endif()
+
+ SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/${VS_STR}${PXSHARED_ARCH_FOLDER}-cmake${PXSHARED_CRT_SUFFIX} ${PXSHAREDSDK_PATH}/lib/${VS_STR}${PXSHARED_ARCH_FOLDER} ${PXSHAREDSDK_PATH}/../lib/${PXSHARED_ARCH_FOLDER}/${VS_STR} ${PXSHAREDSDK_PATH}/../lib)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib" ".dll")
+
+elseif(TARGET_BUILD_PLATFORM STREQUAL "PS4")
+ SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/vc14ps4-cmake ${PXSHAREDSDK_PATH}/../lib)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
+elseif(TARGET_BUILD_PLATFORM STREQUAL "XboxOne")
+ SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/vc14xboxone-cmake ${PXSHAREDSDK_PATH}/../Lib)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a" ".lib")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib" "")
+elseif(TARGET_BUILD_PLATFORM STREQUAL "linux")
+ SET(LIB_PATH ${PXSHAREDSDK_PATH}/lib/linux64-cmake ${PXSHAREDSDK_PATH}/../Lib)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
+ SET(CMAKE_FIND_LIBRARY_PREFIXES "lib")
+ SET(PXSHARED_ARCH_FILE "_x64")
+endif()
+
+
+# Now find all of the PxShared libs in the lib directory
+
+
+find_library(PSFASTXML_LIB
+ NAMES PsFastXml PsFastXml${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXFOUNDATION_LIB
+ NAMES PxFoundation${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXPVDSDK_LIB
+ NAMES PxPvdSDK${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXTASK_LIB
+ NAMES PxTask PxTask${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+
+find_library(PSFASTXML_LIB_DEBUG
+ NAMES PsFastXmlDEBUG PsFastXmlDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXFOUNDATION_LIB_DEBUG
+ NAMES PxFoundationDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXPVDSDK_LIB_DEBUG
+ NAMES PxPvdSDKDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXTASK_LIB_DEBUG
+ NAMES PxTaskDEBUG PxTaskDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+
+find_library(PSFASTXML_LIB_CHECKED
+ NAMES PsFastXmlCHECKED PsFastXmlCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXFOUNDATION_LIB_CHECKED
+ NAMES PxFoundationCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXPVDSDK_LIB_CHECKED
+ NAMES PxPvdSDKCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXTASK_LIB_CHECKED
+ NAMES PxTaskCHECKED PxTaskCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+
+find_library(PSFASTXML_LIB_PROFILE
+ NAMES PsFastXmlPROFILE PsFastXmlPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXFOUNDATION_LIB_PROFILE
+ NAMES PxFoundationPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXPVDSDK_LIB_PROFILE
+ NAMES PxPvdSDKPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+find_library(PXTASK_LIB_PROFILE
+ NAMES PxTaskPROFILE PxTaskPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${LIB_PATH}
+)
+
+if (TARGET_BUILD_PLATFORM STREQUAL "Windows")
+ SET(DLL_PATH ${PXSHAREDSDK_PATH}/bin/${VS_STR}${PXSHARED_ARCH_FOLDER}-cmake${PXSHARED_CRT_SUFFIX} ${PXSHAREDSDK_PATH}/bin/${VS_STR}${PXSHARED_ARCH_FOLDER} ${PXSHAREDSDK_PATH}/../bin/${PXSHARED_ARCH_FOLDER}/${VS_STR} ${PXSHAREDSDK_PATH}/../bin)
+
+ find_library(PXFOUNDATION_DLL
+ NAMES PxFoundation${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PXPVDSDK_DLL
+ NAMES PxPvdSDK${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+
+ find_library(PXFOUNDATION_DLL_DEBUG
+ NAMES PxFoundationDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PXPVDSDK_DLL_DEBUG
+ NAMES PxPvdSDKDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+
+ find_library(PXFOUNDATION_DLL_CHECKED
+ NAMES PxFoundationCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PXPVDSDK_DLL_CHECKED
+ NAMES PxPvdSDKCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+
+ find_library(PXFOUNDATION_DLL_PROFILE
+ NAMES PxFoundationPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+ find_library(PXPVDSDK_DLL_PROFILE
+ NAMES PxPvdSDKPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${DLL_PATH}
+ )
+
+ #Put the found dll variables in a list if we actually looked for them (windows)
+ SET(DLL_VAR_LIST
+ PXFOUNDATION_DLL
+ PXPVDSDK_DLL
+
+ PXFOUNDATION_DLL_DEBUG
+ PXPVDSDK_DLL_DEBUG
+
+ PXFOUNDATION_DLL_CHECKED
+ PXPVDSDK_DLL_CHECKED
+
+ PXFOUNDATION_DLL_PROFILE
+ PXPVDSDK_DLL_PROFILE
+
+ )
+endif()
+
+if (TARGET_BUILD_PLATFORM STREQUAL "linux")
+ SET(BIN_PATH ${PXSHAREDSDK_PATH}/bin/linux64-cmake ${PXSHAREDSDK_PATH}/../Bin)
+ SET(CMAKE_FIND_LIBRARY_SUFFIXES ".so")
+
+ find_library(PXFOUNDATION_LIB
+ NAMES PxFoundation${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PXPVDSDK_LIB
+ NAMES PxPvdSDK${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+
+ find_library(PXFOUNDATION_LIB_CHECKED
+ NAMES PxFoundationCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PXPVDSDK_LIB_CHECKED
+ NAMES PxPvdSDKCHECKED${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+
+ find_library(PXFOUNDATION_LIB_DEBUG
+ NAMES PxFoundationDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PXPVDSDK_LIB_DEBUG
+ NAMES PxPvdSDKDEBUG${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+
+ find_library(PXFOUNDATION_LIB_PROFILE
+ NAMES PxFoundationPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+ find_library(PXPVDSDK_LIB_PROFILE
+ NAMES PxPvdSDKPROFILE${PXSHARED_ARCH_FILE}
+ PATHS ${BIN_PATH}
+ )
+endif()
+
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(PXSHAREDSDK
+ DEFAULT_MSG
+ PXSHAREDSDK_PATH
+
+ PSFASTXML_LIB
+ PXFOUNDATION_LIB
+ PXPVDSDK_LIB
+ PXTASK_LIB
+
+ PSFASTXML_LIB_DEBUG
+ PXFOUNDATION_LIB_DEBUG
+ PXPVDSDK_LIB_DEBUG
+ PXTASK_LIB_DEBUG
+
+ PSFASTXML_LIB_CHECKED
+ PXFOUNDATION_LIB_CHECKED
+ PXPVDSDK_LIB_CHECKED
+ PXTASK_LIB_CHECKED
+
+ PSFASTXML_LIB_PROFILE
+ PXFOUNDATION_LIB_PROFILE
+ PXPVDSDK_LIB_PROFILE
+ PXTASK_LIB_PROFILE
+
+
+ ${DLL_VAR_LIST}
+)
+
+if (PXSHAREDSDK_FOUND)
+
+ # NOTE: This include list is way too long and reaches into too many internals.
+ # Also may not be good enough for all users.
+ SET(PXSHAREDSDK_INCLUDE_DIRS
+ ${PXSHAREDSDK_PATH}/include
+ ${PXSHAREDSDK_PATH}/include/pvd
+ ${PXSHAREDSDK_PATH}/include/task
+ ${PXSHAREDSDK_PATH}/include/filebuf
+ ${PXSHAREDSDK_PATH}/include/foundation
+ ${PXSHAREDSDK_PATH}/src/foundation/include
+ ${PXSHAREDSDK_PATH}/src/filebuf/include
+ ${PXSHAREDSDK_PATH}/src/fastxml/include
+ )
+
+ SET(PXSHAREDSDK_LIBS_RELEASE ${PSFASTXML_LIB} ${PXFOUNDATION_LIB} ${PXPVDSDK_LIB} ${PXTASK_LIB}
+ CACHE STRING ""
+ )
+ SET(PXSHAREDSDK_LIBS_DEBUG ${PSFASTXML_LIB_DEBUG} ${PXFOUNDATION_LIB_DEBUG} ${PXPVDSDK_LIB_DEBUG} ${PXTASK_LIB_DEBUG}
+ CACHE STRING ""
+ )
+
+ SET(PXSHAREDSDK_LIBS_CHECKED ${PSFASTXML_LIB_CHECKED} ${PXFOUNDATION_LIB_CHECKED} ${PXPVDSDK_LIB_CHECKED} ${PXTASK_LIB_CHECKED}
+ CACHE STRING ""
+ )
+
+ SET(PXSHAREDSDK_LIBS_PROFILE ${PSFASTXML_LIB_PROFILE} ${PXFOUNDATION_LIB_PROFILE} ${PXPVDSDK_LIB_PROFILE} ${PXTASK_LIB_PROFILE}
+ CACHE STRING ""
+ )
+
+ SET(PXSHAREDSDK_DLLS
+ ${PXFOUNDATION_DLL}
+ ${PXPVDSDK_DLL}
+
+ ${PXFOUNDATION_DLL_DEBUG}
+ ${PXPVDSDK_DLL_DEBUG}
+
+ ${PXFOUNDATION_DLL_CHECKED}
+ ${PXPVDSDK_DLL_CHECKED}
+
+ ${PXFOUNDATION_DLL_PROFILE}
+ ${PXPVDSDK_DLL_PROFILE}
+ )
+
+ SET(PXSHAREDSDK_LIBRARIES "" CACHE STRING "")
+
+ foreach(x ${PXSHAREDSDK_LIBS_RELEASE})
+ list(APPEND PXSHAREDSDK_LIBRARIES optimized ${x})
+ endforeach()
+
+ foreach(x ${PXSHAREDSDK_LIBS_DEBUG})
+ list(APPEND PXSHAREDSDK_LIBRARIES debug ${x})
+ endforeach()
+endif()
diff --git a/sdk/compiler/cmake/modules/FindXDK.cmake b/sdk/compiler/cmake/modules/FindXDK.cmake index 601dd8f..5945096 100644..100755 --- a/sdk/compiler/cmake/modules/FindXDK.cmake +++ b/sdk/compiler/cmake/modules/FindXDK.cmake @@ -1,257 +1,257 @@ -# - Try to find XDLK -# - Sets XDK_LIBRARIES - list of the libraries found -# - Sets XDK_INCLUDE_DIRS - -include(FindPackageHandleStandardArgs) - -# Find the includes - -# TODO: Do the version stuff properly! -# TODO: Handle a binary dep version of the XDK -find_path(XDK_PATH include/winrt/Windows.Xbox.UI.h - PATHS - $ENV{XboxOneXDKLatest}/xdk -) - -SET(LIB_PATH ${XDK_PATH}/Lib/amd64/) -SET(CMAKE_FIND_LIBRARY_PREFIXES "") -SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib") - -MESSAGE("XDK LIB PATH: ${LIB_PATH}") - -find_library(ACPHAL_LIB - NAMES acphal - PATHS ${LIB_PATH} -) - -find_library(APPMODEL_LIB - NAMES appmodel - PATHS ${LIB_PATH} -) - -find_library(BCRYPT_LIB - NAMES bcrypt - PATHS ${LIB_PATH} -) - -find_library(COMBASE_LIB - NAMES combase - PATHS ${LIB_PATH} -) - -find_library(CONSOLEID_LIB - NAMES consoleid - PATHS ${LIB_PATH} -) - -find_library(D3D11_X_LIB - NAMES d3d11_x - PATHS ${LIB_PATH} -) - -find_library(D3D12_X_LIB - NAMES d3d12_x - PATHS ${LIB_PATH} -) - -find_library(D3DCOMPILER_LIB - NAMES d3dcompiler - PATHS ${LIB_PATH} -) - -find_library(DXGUID_LIB - NAMES dxguid - PATHS ${LIB_PATH} -) - -find_library(ETWPLUS_LIB - NAMES etwplus - PATHS ${LIB_PATH} -) - -find_library(IXMLHTTPREQUEST2_LIB - NAMES ixmlhttprequest2 - PATHS ${LIB_PATH} -) - -find_library(KERNELX_LIB - NAMES kernelx - PATHS ${LIB_PATH} -) - -find_library(KSTUDIOCLIENT_LIB - NAMES kstudioclient - PATHS ${LIB_PATH} -) - -find_library(MFPLAT_LIB - NAMES mfplat - PATHS ${LIB_PATH} -) - -find_library(MFREADWRITE_LIB - NAMES mfreadwrite - PATHS ${LIB_PATH} -) - -find_library(MFUUID_LIB - NAMES mfuuid - PATHS ${LIB_PATH} -) - -find_library(MMDEVAPI_LIB - NAMES mmdevapi - PATHS ${LIB_PATH} -) - -find_library(PIXEVT_LIB - NAMES PIXEvt - PATHS ${LIB_PATH} -) - -find_library(RPCRT4_LIB - NAMES rpcrt4 - PATHS ${LIB_PATH} -) - -find_library(SMARTGLASSINTEROP_LIB - NAMES smartglassinterop - PATHS ${LIB_PATH} -) - -find_library(STRMIIDS_LIB - NAMES strmiids - PATHS ${LIB_PATH} -) - -find_library(TOOLHELPX_LIB - NAMES toolhelpx - PATHS ${LIB_PATH} -) - -find_library(UUID_LIB - NAMES uuid - PATHS ${LIB_PATH} -) - -find_library(WINDOWSCODECS_LIB - NAMES windowscodecs - PATHS ${LIB_PATH} -) - -find_library(WMCODECDSPUUID_LIB - NAMES wmcodecdspuuid - PATHS ${LIB_PATH} -) - -find_library(WS2_32_LIB - NAMES ws2_32 - PATHS ${LIB_PATH} -) - -find_library(XAPOBASE_LIB - NAMES xapobase - PATHS ${LIB_PATH} -) - -find_library(XAUDIO2_LIB - NAMES xaudio2 - PATHS ${LIB_PATH} -) - -find_library(XG_X_LIB - NAMES xg_x - PATHS ${LIB_PATH} -) - -find_library(XI_LIB - NAMES xi - PATHS ${LIB_PATH} -) - -find_library(XSTUDIOCLIENT_LIB - NAMES xstudioclient - PATHS ${LIB_PATH} -) - - - -FIND_PACKAGE_HANDLE_STANDARD_ARGS(XDK - DEFAULT_MSG - XDK_PATH - - ACPHAL_LIB - APPMODEL_LIB - BCRYPT_LIB - COMBASE_LIB - CONSOLEID_LIB - D3D11_X_LIB - D3D12_X_LIB - D3DCOMPILER_LIB - DXGUID_LIB - ETWPLUS_LIB - IXMLHTTPREQUEST2_LIB - KERNELX_LIB - KSTUDIOCLIENT_LIB - MFPLAT_LIB - MFREADWRITE_LIB - MFUUID_LIB - MMDEVAPI_LIB - PIXEVT_LIB - RPCRT4_LIB - SMARTGLASSINTEROP_LIB - STRMIIDS_LIB - TOOLHELPX_LIB - UUID_LIB - WINDOWSCODECS_LIB - WMCODECDSPUUID_LIB - WS2_32_LIB - XAPOBASE_LIB - XAUDIO2_LIB - XG_X_LIB - XI_LIB - XSTUDIOCLIENT_LIB -) - -if (XDK_FOUND) - SET(XDK_INCLUDE_DIRS - ${XDK_PATH}/Include - ${XDK_PATH}/Include/shared - ${XDK_PATH}/Include/um - ${XDK_PATH}/Include/winrt - ) - - SET(XDK_LIBRARIES - ${ACPHAL_LIB} - ${APPMODEL_LIB} - ${BCRYPT_LIB} - ${COMBASE_LIB} - ${CONSOLEID_LIB} - ${D3D11_X_LIB} - ${D3D12_X_LIB} - ${D3DCOMPILER_LIB} - ${DXGUID_LIB} - ${ETWPLUS_LIB} - ${IXMLHTTPREQUEST2_LIB} - ${KERNELX_LIB} - ${KSTUDIOCLIENT_LIB} - ${MFPLAT_LIB} - ${MFREADWRITE_LIB} - ${MFUUID_LIB} - ${MMDEVAPI_LIB} - ${PIXEVT_LIB} - ${RPCRT4_LIB} - ${SMARTGLASSINTEROP_LIB} - ${STRMIIDS_LIB} - ${TOOLHELPX_LIB} - ${UUID_LIB} - ${WINDOWSCODECS_LIB} - ${WMCODECDSPUUID_LIB} - ${WS2_32_LIB} - ${XAPOBASE_LIB} - ${XAUDIO2_LIB} - ${XG_X_LIB} - ${XI_LIB} - ${XSTUDIOCLIENT_LIB} - ) -endif() +# - Try to find XDLK
+# - Sets XDK_LIBRARIES - list of the libraries found
+# - Sets XDK_INCLUDE_DIRS
+
+include(FindPackageHandleStandardArgs)
+
+# Find the includes
+
+# TODO: Do the version stuff properly!
+# TODO: Handle a binary dep version of the XDK
+find_path(XDK_PATH include/winrt/Windows.Xbox.UI.h
+ PATHS
+ $ENV{XboxOneXDKLatest}/xdk
+)
+
+SET(LIB_PATH ${XDK_PATH}/Lib/amd64/)
+SET(CMAKE_FIND_LIBRARY_PREFIXES "")
+SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib")
+
+MESSAGE("XDK LIB PATH: ${LIB_PATH}")
+
+find_library(ACPHAL_LIB
+ NAMES acphal
+ PATHS ${LIB_PATH}
+)
+
+find_library(APPMODEL_LIB
+ NAMES appmodel
+ PATHS ${LIB_PATH}
+)
+
+find_library(BCRYPT_LIB
+ NAMES bcrypt
+ PATHS ${LIB_PATH}
+)
+
+find_library(COMBASE_LIB
+ NAMES combase
+ PATHS ${LIB_PATH}
+)
+
+find_library(CONSOLEID_LIB
+ NAMES consoleid
+ PATHS ${LIB_PATH}
+)
+
+find_library(D3D11_X_LIB
+ NAMES d3d11_x
+ PATHS ${LIB_PATH}
+)
+
+find_library(D3D12_X_LIB
+ NAMES d3d12_x
+ PATHS ${LIB_PATH}
+)
+
+find_library(D3DCOMPILER_LIB
+ NAMES d3dcompiler
+ PATHS ${LIB_PATH}
+)
+
+find_library(DXGUID_LIB
+ NAMES dxguid
+ PATHS ${LIB_PATH}
+)
+
+find_library(ETWPLUS_LIB
+ NAMES etwplus
+ PATHS ${LIB_PATH}
+)
+
+find_library(IXMLHTTPREQUEST2_LIB
+ NAMES ixmlhttprequest2
+ PATHS ${LIB_PATH}
+)
+
+find_library(KERNELX_LIB
+ NAMES kernelx
+ PATHS ${LIB_PATH}
+)
+
+find_library(KSTUDIOCLIENT_LIB
+ NAMES kstudioclient
+ PATHS ${LIB_PATH}
+)
+
+find_library(MFPLAT_LIB
+ NAMES mfplat
+ PATHS ${LIB_PATH}
+)
+
+find_library(MFREADWRITE_LIB
+ NAMES mfreadwrite
+ PATHS ${LIB_PATH}
+)
+
+find_library(MFUUID_LIB
+ NAMES mfuuid
+ PATHS ${LIB_PATH}
+)
+
+find_library(MMDEVAPI_LIB
+ NAMES mmdevapi
+ PATHS ${LIB_PATH}
+)
+
+find_library(PIXEVT_LIB
+ NAMES PIXEvt
+ PATHS ${LIB_PATH}
+)
+
+find_library(RPCRT4_LIB
+ NAMES rpcrt4
+ PATHS ${LIB_PATH}
+)
+
+find_library(SMARTGLASSINTEROP_LIB
+ NAMES smartglassinterop
+ PATHS ${LIB_PATH}
+)
+
+find_library(STRMIIDS_LIB
+ NAMES strmiids
+ PATHS ${LIB_PATH}
+)
+
+find_library(TOOLHELPX_LIB
+ NAMES toolhelpx
+ PATHS ${LIB_PATH}
+)
+
+find_library(UUID_LIB
+ NAMES uuid
+ PATHS ${LIB_PATH}
+)
+
+find_library(WINDOWSCODECS_LIB
+ NAMES windowscodecs
+ PATHS ${LIB_PATH}
+)
+
+find_library(WMCODECDSPUUID_LIB
+ NAMES wmcodecdspuuid
+ PATHS ${LIB_PATH}
+)
+
+find_library(WS2_32_LIB
+ NAMES ws2_32
+ PATHS ${LIB_PATH}
+)
+
+find_library(XAPOBASE_LIB
+ NAMES xapobase
+ PATHS ${LIB_PATH}
+)
+
+find_library(XAUDIO2_LIB
+ NAMES xaudio2
+ PATHS ${LIB_PATH}
+)
+
+find_library(XG_X_LIB
+ NAMES xg_x
+ PATHS ${LIB_PATH}
+)
+
+find_library(XI_LIB
+ NAMES xi
+ PATHS ${LIB_PATH}
+)
+
+find_library(XSTUDIOCLIENT_LIB
+ NAMES xstudioclient
+ PATHS ${LIB_PATH}
+)
+
+
+
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(XDK
+ DEFAULT_MSG
+ XDK_PATH
+
+ ACPHAL_LIB
+ APPMODEL_LIB
+ BCRYPT_LIB
+ COMBASE_LIB
+ CONSOLEID_LIB
+ D3D11_X_LIB
+ D3D12_X_LIB
+ D3DCOMPILER_LIB
+ DXGUID_LIB
+ ETWPLUS_LIB
+ IXMLHTTPREQUEST2_LIB
+ KERNELX_LIB
+ KSTUDIOCLIENT_LIB
+ MFPLAT_LIB
+ MFREADWRITE_LIB
+ MFUUID_LIB
+ MMDEVAPI_LIB
+ PIXEVT_LIB
+ RPCRT4_LIB
+ SMARTGLASSINTEROP_LIB
+ STRMIIDS_LIB
+ TOOLHELPX_LIB
+ UUID_LIB
+ WINDOWSCODECS_LIB
+ WMCODECDSPUUID_LIB
+ WS2_32_LIB
+ XAPOBASE_LIB
+ XAUDIO2_LIB
+ XG_X_LIB
+ XI_LIB
+ XSTUDIOCLIENT_LIB
+)
+
+if (XDK_FOUND)
+ SET(XDK_INCLUDE_DIRS
+ ${XDK_PATH}/Include
+ ${XDK_PATH}/Include/shared
+ ${XDK_PATH}/Include/um
+ ${XDK_PATH}/Include/winrt
+ )
+
+ SET(XDK_LIBRARIES
+ ${ACPHAL_LIB}
+ ${APPMODEL_LIB}
+ ${BCRYPT_LIB}
+ ${COMBASE_LIB}
+ ${CONSOLEID_LIB}
+ ${D3D11_X_LIB}
+ ${D3D12_X_LIB}
+ ${D3DCOMPILER_LIB}
+ ${DXGUID_LIB}
+ ${ETWPLUS_LIB}
+ ${IXMLHTTPREQUEST2_LIB}
+ ${KERNELX_LIB}
+ ${KSTUDIOCLIENT_LIB}
+ ${MFPLAT_LIB}
+ ${MFREADWRITE_LIB}
+ ${MFUUID_LIB}
+ ${MMDEVAPI_LIB}
+ ${PIXEVT_LIB}
+ ${RPCRT4_LIB}
+ ${SMARTGLASSINTEROP_LIB}
+ ${STRMIIDS_LIB}
+ ${TOOLHELPX_LIB}
+ ${UUID_LIB}
+ ${WINDOWSCODECS_LIB}
+ ${WMCODECDSPUUID_LIB}
+ ${WS2_32_LIB}
+ ${XAPOBASE_LIB}
+ ${XAUDIO2_LIB}
+ ${XG_X_LIB}
+ ${XI_LIB}
+ ${XSTUDIOCLIENT_LIB}
+ )
+endif()
diff --git a/sdk/compiler/cmake/windows/CMakeLists.txt b/sdk/compiler/cmake/windows/CMakeLists.txt index 4c31d6a..e3fbaed 100644..100755 --- a/sdk/compiler/cmake/windows/CMakeLists.txt +++ b/sdk/compiler/cmake/windows/CMakeLists.txt @@ -1,66 +1,66 @@ -#Platform specific compile flags and project includes - -SET(CMAKE_CXX_FLAGS "/GR- /GF /MP /Gy /d2Zi+ /errorReport:prompt /fp:fast /Gd /Gm- /GS- /nologo /W4 /WX /Zc:forScope /Zc:inline /Zc:wchar_t /Zi") - -OPTION(STATIC_WINCRT "Use static WinCRT" OFF) - -# Are we using the static or dynamic RT library? Whatever we use, it needs to be the same in any dependencies -# we pull in or we're potentially having mismatch issues. -IF(STATIC_WINCRT) - SET(WINCRT_NDEBUG "/MT") - SET(WINCRT_DEBUG "/MTd") -ELSE() - SET(WINCRT_NDEBUG "/MD") - SET(WINCRT_DEBUG "/MDd") -ENDIF() - -SET(CMAKE_CXX_FLAGS_DEBUG "/Od /RTCsu ${WINCRT_DEBUG}") -SET(CMAKE_CXX_FLAGS_CHECKED "/Ox ${WINCRT_NDEBUG}") -SET(CMAKE_CXX_FLAGS_PROFILE "/Ox ${WINCRT_NDEBUG}") -SET(CMAKE_CXX_FLAGS_RELEASE "/Ox ${WINCRT_NDEBUG}") - -MESSAGE("STATIC OR DYN: ${WINCRT_DEBUG}") - -# Build PDBs for all configurations -SET(CMAKE_SHARED_LINKER_FLAGS "/DEBUG") - -IF(CMAKE_CL_64) - ADD_DEFINITIONS(-DWIN64) -ENDIF(CMAKE_CL_64) - -SET(BLAST_SLN_COMPILE_DEFS _HAS_EXCEPTIONS=0;WIN32;WIN64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;) -#NvBlastExt doesn't have the _CONSOLE flag - -SET(BLAST_SLN_DEBUG_COMPILE_DEFS _DEBUG;NV_DEBUG=1;) -SET(BLAST_SLN_CHECKED_COMPILE_DEFS NDEBUG;NV_CHECKED=1;) -SET(BLAST_SLN_PROFILE_COMPILE_DEFS NDEBUG;NV_PROFILE=1;) -SET(BLAST_SLN_RELEASE_COMPILE_DEFS NDEBUG;) - -IF(CMAKE_CL_64) - SET(LIBPATH_SUFFIX "x64") -ELSE(CMAKE_CL_64) - SET(LIBPATH_SUFFIX "x86") -ENDIF(CMAKE_CL_64) - -SET(CMAKE_DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}_${LIBPATH_SUFFIX}") -SET(CMAKE_PROFILE_POSTFIX "${CMAKE_PROFILE_POSTFIX}_${LIBPATH_SUFFIX}") -SET(CMAKE_CHECKED_POSTFIX "${CMAKE_CHECKED_POSTFIX}_${LIBPATH_SUFFIX}") -SET(CMAKE_RELEASE_POSTFIX "${CMAKE_RELEASE_POSTFIX}_${LIBPATH_SUFFIX}") - - -# Include all of the projects -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlast.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastGlobals.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastTk.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtShaders.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtStress.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPhysX.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAuthoring.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtImport.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAssetUtils.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtExporter.cmake) - -SET(SERIALIZATION_INCLUDED 1 PARENT_SCOPE) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerialization.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtTkSerialization.cmake) -INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPxSerialization.cmake) +#Platform specific compile flags and project includes
+
+SET(CMAKE_CXX_FLAGS "/GR- /GF /MP /Gy /d2Zi+ /errorReport:prompt /fp:fast /Gd /Gm- /GS- /nologo /W4 /WX /Zc:forScope /Zc:inline /Zc:wchar_t /Zi")
+
+OPTION(STATIC_WINCRT "Use static WinCRT" OFF)
+
+# Are we using the static or dynamic RT library? Whatever we use, it needs to be the same in any dependencies
+# we pull in or we're potentially having mismatch issues.
+IF(STATIC_WINCRT)
+ SET(WINCRT_NDEBUG "/MT")
+ SET(WINCRT_DEBUG "/MTd")
+ELSE()
+ SET(WINCRT_NDEBUG "/MD")
+ SET(WINCRT_DEBUG "/MDd")
+ENDIF()
+
+SET(CMAKE_CXX_FLAGS_DEBUG "/Od /RTCsu ${WINCRT_DEBUG}")
+SET(CMAKE_CXX_FLAGS_CHECKED "/Ox ${WINCRT_NDEBUG}")
+SET(CMAKE_CXX_FLAGS_PROFILE "/Ox ${WINCRT_NDEBUG}")
+SET(CMAKE_CXX_FLAGS_RELEASE "/Ox ${WINCRT_NDEBUG}")
+
+MESSAGE("STATIC OR DYN: ${WINCRT_DEBUG}")
+
+# Build PDBs for all configurations
+SET(CMAKE_SHARED_LINKER_FLAGS "/DEBUG")
+
+IF(CMAKE_CL_64)
+ ADD_DEFINITIONS(-DWIN64)
+ENDIF(CMAKE_CL_64)
+
+SET(BLAST_SLN_COMPILE_DEFS _HAS_EXCEPTIONS=0;WIN32;WIN64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;)
+#NvBlastExt doesn't have the _CONSOLE flag
+
+SET(BLAST_SLN_DEBUG_COMPILE_DEFS _DEBUG;NV_DEBUG=1;)
+SET(BLAST_SLN_CHECKED_COMPILE_DEFS NDEBUG;NV_CHECKED=1;)
+SET(BLAST_SLN_PROFILE_COMPILE_DEFS NDEBUG;NV_PROFILE=1;)
+SET(BLAST_SLN_RELEASE_COMPILE_DEFS NDEBUG;)
+
+IF(CMAKE_CL_64)
+ SET(LIBPATH_SUFFIX "x64")
+ELSE(CMAKE_CL_64)
+ SET(LIBPATH_SUFFIX "x86")
+ENDIF(CMAKE_CL_64)
+
+SET(CMAKE_DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}_${LIBPATH_SUFFIX}")
+SET(CMAKE_PROFILE_POSTFIX "${CMAKE_PROFILE_POSTFIX}_${LIBPATH_SUFFIX}")
+SET(CMAKE_CHECKED_POSTFIX "${CMAKE_CHECKED_POSTFIX}_${LIBPATH_SUFFIX}")
+SET(CMAKE_RELEASE_POSTFIX "${CMAKE_RELEASE_POSTFIX}_${LIBPATH_SUFFIX}")
+
+
+# Include all of the projects
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlast.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastGlobals.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastTk.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtShaders.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtStress.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPhysX.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAuthoring.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtImport.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtAssetUtils.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtExporter.cmake)
+
+SET(SERIALIZATION_INCLUDED 1 PARENT_SCOPE)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerialization.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtTkSerialization.cmake)
+INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtPxSerialization.cmake)
diff --git a/sdk/compiler/cmake/windows/NvBlast.cmake b/sdk/compiler/cmake/windows/NvBlast.cmake index 64b6b02..8b57642 100644..100755 --- a/sdk/compiler/cmake/windows/NvBlast.cmake +++ b/sdk/compiler/cmake/windows/NvBlast.cmake @@ -1,22 +1,22 @@ -# -# Build NvBlast Windows -# - -SET(BLAST_PLATFORM_COMMON_FILES - ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h -) - -SET(BLAST_PLATFORM_INCLUDES -) - -SET(BLAST_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS};_CONSOLE - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLAST_LIB_TYPE SHARED) +#
+# Build NvBlast Windows
+#
+
+SET(BLAST_PLATFORM_COMMON_FILES
+ ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h
+)
+
+SET(BLAST_PLATFORM_INCLUDES
+)
+
+SET(BLAST_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};_CONSOLE
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLAST_LIB_TYPE SHARED)
diff --git a/sdk/compiler/cmake/windows/NvBlastExtAssetUtils.cmake b/sdk/compiler/cmake/windows/NvBlastExtAssetUtils.cmake index 77c51b4..601110f 100644..100755 --- a/sdk/compiler/cmake/windows/NvBlastExtAssetUtils.cmake +++ b/sdk/compiler/cmake/windows/NvBlastExtAssetUtils.cmake @@ -1,26 +1,26 @@ -# -# Build NvBlastExtAssetUtils Windows -# - -SET(BLASTEXTASSETUTILS_PLATFORM_COMMON_FILES - ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h -) - -SET(BLASTEXTASSETUTILS_PLATFORM_INCLUDES -) - -SET(BLASTEXTASSETUTILS_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS};_CONSOLE; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLASTEXTASSETUTILS_LIB_TYPE SHARED) - - -SET(BLASTEXTASSETUTILS_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc") - +#
+# Build NvBlastExtAssetUtils Windows
+#
+
+SET(BLASTEXTASSETUTILS_PLATFORM_COMMON_FILES
+ ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h
+)
+
+SET(BLASTEXTASSETUTILS_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXTASSETUTILS_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};_CONSOLE;
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLASTEXTASSETUTILS_LIB_TYPE SHARED)
+
+
+SET(BLASTEXTASSETUTILS_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc")
+
diff --git a/sdk/compiler/cmake/windows/NvBlastExtAuthoring.cmake b/sdk/compiler/cmake/windows/NvBlastExtAuthoring.cmake index 7406d74..6fb4410 100644..100755 --- a/sdk/compiler/cmake/windows/NvBlastExtAuthoring.cmake +++ b/sdk/compiler/cmake/windows/NvBlastExtAuthoring.cmake @@ -1,24 +1,24 @@ -# -# Build NvBlastExt Windows -# - -SET(BLASTEXT_PLATFORM_COMMON_FILES - ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h -) - -SET(BLASTEXT_PLATFORM_INCLUDES -) - -SET(BLASTEXT_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS};_CONSOLE; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLAST_EXT_SHARED_LIB_TYPE SHARED) - -SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc") +#
+# Build NvBlastExt Windows
+#
+
+SET(BLASTEXT_PLATFORM_COMMON_FILES
+ ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h
+)
+
+SET(BLASTEXT_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXT_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};_CONSOLE;
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLAST_EXT_SHARED_LIB_TYPE SHARED)
+
+SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc")
diff --git a/sdk/compiler/cmake/windows/NvBlastExtExporter.cmake b/sdk/compiler/cmake/windows/NvBlastExtExporter.cmake index 33f720d..b9487d8 100644..100755 --- a/sdk/compiler/cmake/windows/NvBlastExtExporter.cmake +++ b/sdk/compiler/cmake/windows/NvBlastExtExporter.cmake @@ -1,30 +1,30 @@ -# -# Build NvBlastExt Windows -# - -SET(BLASTEXT_PLATFORM_COMMON_FILES - ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h -) - -SET(BLASTEXT_PLATFORM_INCLUDES -) - -SET(BLASTEXT_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS};_CONSOLE; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLAST_EXT_SHARED_LIB_TYPE SHARED) - -SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc") - -#VS2013 has a unreacable code warning in the STL (xtree) -IF(MSVC_VERSION LESS 1900) - SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "${BLASTEXT_PLATFORM_COMPILE_OPTIONS};/wd4702") -ENDIF() - +#
+# Build NvBlastExt Windows
+#
+
+SET(BLASTEXT_PLATFORM_COMMON_FILES
+ ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h
+)
+
+SET(BLASTEXT_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXT_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};_CONSOLE;
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLAST_EXT_SHARED_LIB_TYPE SHARED)
+
+SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc")
+
+#VS2013 has a unreacable code warning in the STL (xtree)
+IF(MSVC_VERSION LESS 1900)
+ SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "${BLASTEXT_PLATFORM_COMPILE_OPTIONS};/wd4702")
+ENDIF()
+
diff --git a/sdk/compiler/cmake/windows/NvBlastExtImport.cmake b/sdk/compiler/cmake/windows/NvBlastExtImport.cmake index 7406d74..6fb4410 100644..100755 --- a/sdk/compiler/cmake/windows/NvBlastExtImport.cmake +++ b/sdk/compiler/cmake/windows/NvBlastExtImport.cmake @@ -1,24 +1,24 @@ -# -# Build NvBlastExt Windows -# - -SET(BLASTEXT_PLATFORM_COMMON_FILES - ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h -) - -SET(BLASTEXT_PLATFORM_INCLUDES -) - -SET(BLASTEXT_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS};_CONSOLE; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLAST_EXT_SHARED_LIB_TYPE SHARED) - -SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc") +#
+# Build NvBlastExt Windows
+#
+
+SET(BLASTEXT_PLATFORM_COMMON_FILES
+ ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h
+)
+
+SET(BLASTEXT_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXT_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};_CONSOLE;
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLAST_EXT_SHARED_LIB_TYPE SHARED)
+
+SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc")
diff --git a/sdk/compiler/cmake/windows/NvBlastExtPhysX.cmake b/sdk/compiler/cmake/windows/NvBlastExtPhysX.cmake index 9bf7614..aea6c23 100644..100755 --- a/sdk/compiler/cmake/windows/NvBlastExtPhysX.cmake +++ b/sdk/compiler/cmake/windows/NvBlastExtPhysX.cmake @@ -1,24 +1,24 @@ -# -# Build NvBlastExt Windows -# - -SET(BLASTEXT_PLATFORM_COMMON_FILES - ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h -) - -SET(BLASTEXT_PLATFORM_INCLUDES -) - -SET(BLASTEXT_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS};_CONSOLE; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLASTEXT_PHYSX_LIBTYPE SHARED) - -SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc") +#
+# Build NvBlastExt Windows
+#
+
+SET(BLASTEXT_PLATFORM_COMMON_FILES
+ ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h
+)
+
+SET(BLASTEXT_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXT_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};_CONSOLE;
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLASTEXT_PHYSX_LIBTYPE SHARED)
+
+SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc")
diff --git a/sdk/compiler/cmake/windows/NvBlastExtPxSerialization.cmake b/sdk/compiler/cmake/windows/NvBlastExtPxSerialization.cmake index 4ea6ea9..66b5211 100644..100755 --- a/sdk/compiler/cmake/windows/NvBlastExtPxSerialization.cmake +++ b/sdk/compiler/cmake/windows/NvBlastExtPxSerialization.cmake @@ -1,26 +1,26 @@ -# -# Build NvBlastPxExtSerialization Windows -# - -SET(BLASTEXTPXSERIALIZATION_PLATFORM_COMMON_FILES - ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h -) - -SET(BLASTEXTPXSERIALIZATION_PLATFORM_INCLUDES -) - -SET(BLASTEXTPXSERIALIZATION_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS};_CONSOLE; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLASTEXTPXSERIALIZATION_LIB_TYPE SHARED) - - -SET(BLASTEXTPXSERIALIZATION_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/wd4702;/wd4800;/wd4541;/wd4189;/wd4714;/wd4018;/wd4456;/wd4091;/wd4127;/EHsc") - +#
+# Build NvBlastPxExtSerialization Windows
+#
+
+SET(BLASTEXTPXSERIALIZATION_PLATFORM_COMMON_FILES
+ ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h
+)
+
+SET(BLASTEXTPXSERIALIZATION_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXTPXSERIALIZATION_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};_CONSOLE;
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLASTEXTPXSERIALIZATION_LIB_TYPE SHARED)
+
+
+SET(BLASTEXTPXSERIALIZATION_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/wd4702;/wd4800;/wd4541;/wd4189;/wd4714;/wd4018;/wd4456;/wd4091;/wd4127;/EHsc")
+
diff --git a/sdk/compiler/cmake/windows/NvBlastExtSerialization.cmake b/sdk/compiler/cmake/windows/NvBlastExtSerialization.cmake index 8b26799..7c5355e 100644..100755 --- a/sdk/compiler/cmake/windows/NvBlastExtSerialization.cmake +++ b/sdk/compiler/cmake/windows/NvBlastExtSerialization.cmake @@ -1,26 +1,26 @@ -# -# Build NvBlastExtSerialization Windows -# - -SET(BLASTEXTSERIALIZATION_PLATFORM_COMMON_FILES - ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h -) - -SET(BLASTEXTSERIALIZATION_PLATFORM_INCLUDES -) - -SET(BLASTEXTSERIALIZATION_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS};_CONSOLE; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLASTEXTSERIALIZATION_LIB_TYPE SHARED) - - -SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/wd4702;/wd4800;/wd4541;/wd4189;/wd4714;/wd4018;/wd4456;/wd4091;/wd4127;/EHsc") - +#
+# Build NvBlastExtSerialization Windows
+#
+
+SET(BLASTEXTSERIALIZATION_PLATFORM_COMMON_FILES
+ ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h
+)
+
+SET(BLASTEXTSERIALIZATION_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXTSERIALIZATION_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};_CONSOLE;
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLASTEXTSERIALIZATION_LIB_TYPE SHARED)
+
+
+SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/wd4702;/wd4800;/wd4541;/wd4189;/wd4714;/wd4018;/wd4456;/wd4091;/wd4127;/EHsc")
+
diff --git a/sdk/compiler/cmake/windows/NvBlastExtShaders.cmake b/sdk/compiler/cmake/windows/NvBlastExtShaders.cmake index 7406d74..6fb4410 100644..100755 --- a/sdk/compiler/cmake/windows/NvBlastExtShaders.cmake +++ b/sdk/compiler/cmake/windows/NvBlastExtShaders.cmake @@ -1,24 +1,24 @@ -# -# Build NvBlastExt Windows -# - -SET(BLASTEXT_PLATFORM_COMMON_FILES - ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h -) - -SET(BLASTEXT_PLATFORM_INCLUDES -) - -SET(BLASTEXT_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS};_CONSOLE; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLAST_EXT_SHARED_LIB_TYPE SHARED) - -SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc") +#
+# Build NvBlastExt Windows
+#
+
+SET(BLASTEXT_PLATFORM_COMMON_FILES
+ ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h
+)
+
+SET(BLASTEXT_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXT_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};_CONSOLE;
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLAST_EXT_SHARED_LIB_TYPE SHARED)
+
+SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc")
diff --git a/sdk/compiler/cmake/windows/NvBlastExtTkSerialization.cmake b/sdk/compiler/cmake/windows/NvBlastExtTkSerialization.cmake index bdd2ebe..b51eb8a 100644..100755 --- a/sdk/compiler/cmake/windows/NvBlastExtTkSerialization.cmake +++ b/sdk/compiler/cmake/windows/NvBlastExtTkSerialization.cmake @@ -1,26 +1,26 @@ -# -# Build NvBlastTkExtSerialization Windows -# - -SET(BLASTEXTTKSERIALIZATION_PLATFORM_COMMON_FILES - ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h -) - -SET(BLASTEXTTKSERIALIZATION_PLATFORM_INCLUDES -) - -SET(BLASTEXTTKSERIALIZATION_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS};_CONSOLE; - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLASTEXTTKSERIALIZATION_LIB_TYPE SHARED) - - -SET(BLASTEXTTKSERIALIZATION_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/wd4702;/wd4800;/wd4541;/wd4189;/wd4714;/wd4018;/wd4456;/wd4091;/wd4127;/EHsc") - +#
+# Build NvBlastTkExtSerialization Windows
+#
+
+SET(BLASTEXTTKSERIALIZATION_PLATFORM_COMMON_FILES
+ ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h
+)
+
+SET(BLASTEXTTKSERIALIZATION_PLATFORM_INCLUDES
+)
+
+SET(BLASTEXTTKSERIALIZATION_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};_CONSOLE;
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLASTEXTTKSERIALIZATION_LIB_TYPE SHARED)
+
+
+SET(BLASTEXTTKSERIALIZATION_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/wd4702;/wd4800;/wd4541;/wd4189;/wd4714;/wd4018;/wd4456;/wd4091;/wd4127;/EHsc")
+
diff --git a/sdk/compiler/cmake/windows/NvBlastGlobals.cmake b/sdk/compiler/cmake/windows/NvBlastGlobals.cmake index 106c9aa..7a7324b 100644..100755 --- a/sdk/compiler/cmake/windows/NvBlastGlobals.cmake +++ b/sdk/compiler/cmake/windows/NvBlastGlobals.cmake @@ -1,13 +1,13 @@ -# -# Build NvBlastGlobals Windows -# - -SET(BLASTGLOBALS_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS};_CONSOLE - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) +#
+# Build NvBlastGlobals Windows
+#
+
+SET(BLASTGLOBALS_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};_CONSOLE
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
diff --git a/sdk/compiler/cmake/windows/NvBlastTk.cmake b/sdk/compiler/cmake/windows/NvBlastTk.cmake index 03854b9..409eff7 100644..100755 --- a/sdk/compiler/cmake/windows/NvBlastTk.cmake +++ b/sdk/compiler/cmake/windows/NvBlastTk.cmake @@ -1,24 +1,24 @@ -# -# Build NvBlastTk Windows -# - -SET(BLASTTK_PLATFORM_COMMON_FILES - ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h -) - -SET(BLASTTK_PLATFORM_INCLUDES -) - -SET(BLASTTK_COMPILE_DEFS - # Common to all configurations - ${BLAST_SLN_COMPILE_DEFS};_CONSOLE - - $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}> - $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}> - $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}> - $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> -) - -SET(BLASTTK_LIBTYPE "SHARED") - -SET(BLASTTK_PLATFORM_LINKED_LIBS Rpcrt4) +#
+# Build NvBlastTk Windows
+#
+
+SET(BLASTTK_PLATFORM_COMMON_FILES
+ ${COMMON_SOURCE_DIR}/NvBlastIncludeWindows.h
+)
+
+SET(BLASTTK_PLATFORM_INCLUDES
+)
+
+SET(BLASTTK_COMPILE_DEFS
+ # Common to all configurations
+ ${BLAST_SLN_COMPILE_DEFS};_CONSOLE
+
+ $<$<CONFIG:debug>:${BLAST_SLN_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${BLAST_SLN_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${BLAST_SLN_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}>
+)
+
+SET(BLASTTK_LIBTYPE "SHARED")
+
+SET(BLASTTK_PLATFORM_LINKED_LIBS Rpcrt4)
|