diff options
| author | Anton Novoselov <[email protected]> | 2017-08-01 12:53:38 +0300 |
|---|---|---|
| committer | Anton Novoselov <[email protected]> | 2017-08-01 12:53:38 +0300 |
| commit | 236f03c0b9a4982328ed1201978f7f69d192d9b2 (patch) | |
| tree | e486f2fa39dba203563895541e92c60ed3e25759 /sdk/compiler | |
| parent | Added screens to welcome page (diff) | |
| download | blast-236f03c0b9a4982328ed1201978f7f69d192d9b2.tar.xz blast-236f03c0b9a4982328ed1201978f7f69d192d9b2.zip | |
Blast 1.1 release (windows / linux)
see docs/release_notes.txt for details
Diffstat (limited to 'sdk/compiler')
25 files changed, 190 insertions, 464 deletions
diff --git a/sdk/compiler/cmake/NvBlast.cmake b/sdk/compiler/cmake/NvBlast.cmake index 5ac9ce9..576328d 100644 --- a/sdk/compiler/cmake/NvBlast.cmake +++ b/sdk/compiler/cmake/NvBlast.cmake @@ -37,6 +37,7 @@ 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 ) @@ -80,10 +81,13 @@ 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/NvBlastExtAuthoring.cmake b/sdk/compiler/cmake/NvBlastExtAuthoring.cmake index dda8056..9ba6173 100644 --- a/sdk/compiler/cmake/NvBlastExtAuthoring.cmake +++ b/sdk/compiler/cmake/NvBlastExtAuthoring.cmake @@ -11,6 +11,8 @@ 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) @@ -28,29 +30,40 @@ SET(PUBLIC_FILES ${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 ) SET(EXT_AUTHORING_FILES ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringAccelerator.cpp ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringAccelerator.h - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringBondGenerator.cpp + ${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}/NvBlastExtAuthoringCollisionBuilder.cpp - ${AUTHORING_EXT_SOURCE_DIR}/NvBlastExtAuthoringMesh.cpp + ${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}/NvBlastExtAuthoringFractureTool.cpp + ${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 ) -ADD_LIBRARY(NvBlastExtAuthoring STATIC +ADD_LIBRARY(NvBlastExtAuthoring ${BLAST_EXT_SHARED_LIB_TYPE} ${COMMON_FILES} ${PUBLIC_FILES} @@ -70,6 +83,9 @@ TARGET_INCLUDE_DIRECTORIES(NvBlastExtAuthoring 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} @@ -77,6 +93,8 @@ TARGET_INCLUDE_DIRECTORIES(NvBlastExtAuthoring PRIVATE ${PHYSXSDK_INCLUDE_DIRS} PRIVATE ${PXSHAREDSDK_INCLUDE_DIRS} + + PRIVATE ${BOOSTMULTIPRECISION_INCLUDE_DIRS} ) TARGET_COMPILE_DEFINITIONS(NvBlastExtAuthoring @@ -97,10 +115,6 @@ SET_TARGET_PROPERTIES(NvBlastExtAuthoring PROPERTIES # Do final direct sets after the target has been defined TARGET_LINK_LIBRARIES(NvBlastExtAuthoring - PRIVATE NvBlast + PUBLIC NvBlast NvBlastGlobals PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS} - PUBLIC $<$<CONFIG:debug>:${PHYSX3_LIB_DEBUG}> $<$<CONFIG:debug>:${PHYSX3EXTENSIONS_LIB_DEBUG}> $<$<CONFIG:debug>:${PXFOUNDATION_LIB_DEBUG}> - PUBLIC $<$<CONFIG:checked>:${PHYSX3_LIB_CHECKED}> $<$<CONFIG:checked>:${PHYSX3EXTENSIONS_LIB_CHECKED}> $<$<CONFIG:checked>:${PXFOUNDATION_LIB_CHECKED}> - PUBLIC $<$<CONFIG:profile>:${PHYSX3_LIB_PROFILE}> $<$<CONFIG:profile>:${PHYSX3EXTENSIONS_LIB_PROFILE}> $<$<CONFIG:profile>:${PXFOUNDATION_LIB_PROFILE}> - PUBLIC $<$<CONFIG:release>:${PHYSX3_LIB}> $<$<CONFIG:release>:${PHYSX3EXTENSIONS_LIB}> $<$<CONFIG:release>:${PXFOUNDATION_LIB}> ) diff --git a/sdk/compiler/cmake/NvBlastExtConverterLL.cmake b/sdk/compiler/cmake/NvBlastExtConverterLL.cmake deleted file mode 100644 index c84b60d..0000000 --- a/sdk/compiler/cmake/NvBlastExtConverterLL.cmake +++ /dev/null @@ -1,77 +0,0 @@ -# -# Build NvBlastExtConverterLL Common -# - - -SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) -SET(CONVERTERLL_EXT_SOURCE_DIR ${PROJECT_SOURCE_DIR}/extensions/converter/source) -SET(CONVERTERLL_EXT_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/extensions/converter/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}/NvBlastExtConverterLL.cmake) - -SET(COMMON_FILES - ${BLASTEXT_PLATFORM_COMMON_FILES} - - ${COMMON_SOURCE_DIR}/NvBlastAssert.cpp - ${COMMON_SOURCE_DIR}/NvBlastAssert.h -) - -SET(PUBLIC_FILES - ${CONVERTERLL_EXT_INCLUDE_DIR}/NvBlastExtDataConverter.h -) - -SET(EXT_CONVERSION_FILES - ${CONVERTERLL_EXT_SOURCE_DIR}/conversion/NvBlastExtAssetBlockVersionConverter_v0_v1.h - ${CONVERTERLL_EXT_SOURCE_DIR}/conversion/NvBlastExtBinaryBlockConverter.cpp - ${CONVERTERLL_EXT_SOURCE_DIR}/conversion/NvBlastExtBinaryBlockConverter.h - ${CONVERTERLL_EXT_SOURCE_DIR}/conversion/NvBlastExtDataConverter.cpp -) - -ADD_LIBRARY(NvBlastExtConverterLL STATIC - ${COMMON_FILES} - ${PUBLIC_FILES} - - ${EXT_CONVERSION_FILES} -) - -SOURCE_GROUP("common" FILES ${COMMON_FILES}) -SOURCE_GROUP("public" FILES ${PUBLIC_FILES}) -SOURCE_GROUP("src\\conversion" FILES ${EXT_CONVERSION_FILES}) - - -# Target specific compile options - -TARGET_INCLUDE_DIRECTORIES(NvBlastExtConverterLL - PRIVATE ${BLASTEXT_PLATFORM_INCLUDES} - - PUBLIC ${PROJECT_SOURCE_DIR}/converter/include - PUBLIC ${CONVERTERLL_EXT_INCLUDE_DIR} - - PRIVATE ${CONVERTERLL_EXT_SOURCE_DIR}/conversion - PRIVATE ${PROJECT_SOURCE_DIR}/common -) - -TARGET_COMPILE_DEFINITIONS(NvBlastExtConverterLL - PRIVATE ${BLASTEXT_COMPILE_DEFS} -) - -# Warning disables for Capn Proto -TARGET_COMPILE_OPTIONS(NvBlastExtConverterLL - PRIVATE ${BLASTEXT_PLATFORM_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlastExtConverterLL PROPERTIES - PDB_NAME_DEBUG "NvBlastExtConverterLL${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlastExtConverterLL${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlastExtConverterLL${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlastExtConverterLL${CMAKE_RELEASE_POSTFIX}" -) - -# Do final direct sets after the target has been defined -#TARGET_LINK_LIBRARIES(NvBlastExtConverterLL NvBlast ${PHYSXSDK_LIBRARIES} ${APEXSDK_LIBRARIES} ${PXSHAREDSDK_LIBRARIES}) -TARGET_LINK_LIBRARIES(NvBlastExtConverterLL - PUBLIC NvBlast - PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS} -) diff --git a/sdk/compiler/cmake/NvBlastExtPhysX.cmake b/sdk/compiler/cmake/NvBlastExtPhysX.cmake index d2d0f0a..ee8dcc5 100644 --- a/sdk/compiler/cmake/NvBlastExtPhysX.cmake +++ b/sdk/compiler/cmake/NvBlastExtPhysX.cmake @@ -21,6 +21,10 @@ SET(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 @@ -31,14 +35,15 @@ SET(PUBLIC_FILES ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxFamily.h ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxListener.h ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtPxManager.h - ${PHYSX_EXT_INCLUDE_DIR}/NvBlastExtStressSolver.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/NvBlastExtImpulseStressSolver.h ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtImpactDamageManager.cpp - ${PHYSX_EXT_SOURCE_DIR}/physics/NvBlastExtImpulseStressSolver.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 @@ -47,6 +52,13 @@ SET(EXT_PHYSICS_FILES ${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 @@ -59,12 +71,14 @@ ADD_LIBRARY(NvBlastExtPhysX ${BLASTEXT_PHYSX_LIBTYPE} ${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 @@ -81,6 +95,8 @@ TARGET_INCLUDE_DIRECTORIES(NvBlastExtPhysX 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} ) @@ -103,7 +119,7 @@ SET_TARGET_PROPERTIES(NvBlastExtPhysX PROPERTIES # Do final direct sets after the target has been defined TARGET_LINK_LIBRARIES(NvBlastExtPhysX - PUBLIC NvBlast NvBlastExtShaders NvBlastTk + 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}> diff --git a/sdk/compiler/cmake/NvBlastExtSerialization.cmake b/sdk/compiler/cmake/NvBlastExtSerialization.cmake index 440ad43..e6cd597 100644 --- a/sdk/compiler/cmake/NvBlastExtSerialization.cmake +++ b/sdk/compiler/cmake/NvBlastExtSerialization.cmake @@ -6,11 +6,6 @@ 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) @@ -18,7 +13,6 @@ 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) @@ -31,7 +25,7 @@ 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}/NvBlastExtSerializationLL.capn ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerialization.capn) +CAPNP_GENERATE_CPP(CAPNP_SRCS CAPNP_HDRS ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.capn) SET(COMMON_FILES ${BLASTEXTSERIALIZATION_PLATFORM_COMMON_FILES} @@ -46,7 +40,6 @@ SET(COMMON_FILES ${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 @@ -59,66 +52,37 @@ SET(COMMON_FILES SET(EXT_SERIALIZATION_FILES - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationLL.capn - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerialization.capn + ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.capn - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerialization.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationImpl.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationLLImpl.h + ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerialization.cpp + ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtLlSerialization.cpp - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationLLInterface.cpp - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationInterface.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 - - ${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}/NvBlastExtSerializationLLInterface.h - ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtSerializationInterface.h + ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtSerialization.h + ${SERIAL_EXT_INCLUDE_DIR}/NvBlastExtLlSerialization.h ) ADD_LIBRARY(NvBlastExtSerialization ${BLASTEXTSERIALIZATION_LIB_TYPE} @@ -133,6 +97,8 @@ ADD_LIBRARY(NvBlastExtSerialization ${BLASTEXTSERIALIZATION_LIB_TYPE} ${CAPNP_HDRS} ${MD5_FILES} + + ${CAPNPROTOSDK_SOURCE_FILES} ) SOURCE_GROUP("common" FILES ${COMMON_FILES}) @@ -141,7 +107,7 @@ 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 @@ -158,22 +124,15 @@ TARGET_INCLUDE_DIRECTORIES(NvBlastExtSerialization 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(NvBlastExtSerialization - PUBLIC CAPNP_LITE=1 + PUBLIC CAPNP_LITE=1;BLAST_LL_ALLOC=1 PRIVATE ${BLASTEXTSERIALIZATION_COMPILE_DEFS} ) @@ -191,10 +150,5 @@ SET_TARGET_PROPERTIES(NvBlastExtSerialization PROPERTIES # Do final direct sets after the target has been defined TARGET_LINK_LIBRARIES(NvBlastExtSerialization - PRIVATE NvBlast NvBlastExtPhysX NvBlastTk ${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}> - + PRIVATE NvBlast NvBlastGlobals ${CAPNPROTOSDK_LIBRARIES} ) diff --git a/sdk/compiler/cmake/NvBlastExtSerializationLL.cmake b/sdk/compiler/cmake/NvBlastExtSerializationLL.cmake deleted file mode 100644 index da1a9d2..0000000 --- a/sdk/compiler/cmake/NvBlastExtSerializationLL.cmake +++ /dev/null @@ -1,151 +0,0 @@ -# -# Build NvBlastExtSerializationLL 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(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}/NvBlastExtSerializationLL.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}/NvBlastExtSerializationLL.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}/NvBlastExtSerializationLL.capn - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerialization.h - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationLLImpl.h - - ${SERIAL_EXT_SOURCE_DIR}/NvBlastExtSerializationLLInterface.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}/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}/NvBlastExtSerializationLLInterface.h -) - -ADD_LIBRARY(NvBlastExtSerializationLL ${BLASTEXTSERIALIZATION_LIB_TYPE} - ${COMMON_FILES} - - ${DTO_SOURCE_FILES} - - ${EXT_SERIALIZATION_INCLUDES} - ${EXT_SERIALIZATION_FILES} - - ${CAPNP_SRCS} - ${CAPNP_HDRS} - - ${MD5_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}) - - -# Target specific compile options - -TARGET_INCLUDE_DIRECTORIES(NvBlastExtSerializationLL - 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} -) - -TARGET_COMPILE_DEFINITIONS(NvBlastExtSerializationLL - PUBLIC CAPNP_LITE=1;BLAST_LL_ALLOC=1 - PRIVATE ${BLASTEXTSERIALIZATION_COMPILE_DEFS} -) - -# Warning disables for Capn Proto -TARGET_COMPILE_OPTIONS(NvBlastExtSerializationLL - PRIVATE ${BLASTEXTSERIALIZATION_COMPILE_OPTIONS} -) - -SET_TARGET_PROPERTIES(NvBlastExtSerializationLL PROPERTIES - PDB_NAME_DEBUG "NvBlastExtSerializationLL${CMAKE_DEBUG_POSTFIX}" - PDB_NAME_CHECKED "NvBlastExtSerializationLL${CMAKE_CHECKED_POSTFIX}" - PDB_NAME_PROFILE "NvBlastExtSerializationLL${CMAKE_PROFILE_POSTFIX}" - PDB_NAME_RELEASE "NvBlastExtSerializationLL${CMAKE_RELEASE_POSTFIX}" -) - -# Do final direct sets after the target has been defined -TARGET_LINK_LIBRARIES(NvBlastExtSerializationLL - PRIVATE NvBlast ${CAPNPROTOSDK_LIBRARIES} -) diff --git a/sdk/compiler/cmake/NvBlastExtShaders.cmake b/sdk/compiler/cmake/NvBlastExtShaders.cmake index df4a3ad..f918326 100644 --- a/sdk/compiler/cmake/NvBlastExtShaders.cmake +++ b/sdk/compiler/cmake/NvBlastExtShaders.cmake @@ -22,8 +22,7 @@ SET(PUBLIC_FILES ) SET(EXT_SOURCE_FILES - ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtRadialShaders.cpp - ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtShearShaders.cpp + ${SHADERS_EXT_SOURCE_DIR}/NvBlastExtDamageShaders.cpp ) ADD_LIBRARY(NvBlastExtShaders ${BLAST_EXT_SHARED_LIB_TYPE} @@ -69,6 +68,6 @@ SET_TARGET_PROPERTIES(NvBlastExtShaders PROPERTIES # 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 + PUBLIC NvBlast PUBLIC ${BLASTEXT_PLATFORM_LINKED_LIBS} ) diff --git a/sdk/compiler/cmake/NvBlastTk.cmake b/sdk/compiler/cmake/NvBlastTk.cmake index be9e04a..294e303 100644 --- a/sdk/compiler/cmake/NvBlastTk.cmake +++ b/sdk/compiler/cmake/NvBlastTk.cmake @@ -3,7 +3,6 @@ # SET(TOOLKIT_DIR ${PROJECT_SOURCE_DIR}/toolkit) -SET(PROFILER_SOURCE_DIR ${PROJECT_SOURCE_DIR}/profiler) SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common) FIND_PACKAGE(PxSharedSDK $ENV{PM_PxShared_VERSION} REQUIRED) @@ -33,11 +32,9 @@ SET(COMMON_FILES ${COMMON_SOURCE_DIR}/NvBlastTime.cpp ${COMMON_SOURCE_DIR}/NvBlastTime.h ${COMMON_SOURCE_DIR}/NvBlastTimers.cpp -) - -SET(PROFILER_FILES - ${PROFILER_SOURCE_DIR}/NvBlastProfiler.cpp - ${PROFILER_SOURCE_DIR}/NvBlastProfilerInternal.h + ${COMMON_SOURCE_DIR}/NvBlastArray.h + ${COMMON_SOURCE_DIR}/NvBlastHashMap.h + ${COMMON_SOURCE_DIR}/NvBlastHashSet.h ) SET(PUBLIC_FILES @@ -51,16 +48,12 @@ SET(PUBLIC_FILES ${TOOLKIT_DIR}/include/NvBlastTkIdentifiable.h ${TOOLKIT_DIR}/include/NvBlastTkJoint.h ${TOOLKIT_DIR}/include/NvBlastTkObject.h - ${TOOLKIT_DIR}/include/NvBlastTkSerializable.h ${TOOLKIT_DIR}/include/NvBlastTkType.h ) SET(TOOLKIT_FILES ${TOOLKIT_DIR}/source/NvBlastTkActorImpl.cpp ${TOOLKIT_DIR}/source/NvBlastTkActorImpl.h - ${TOOLKIT_DIR}/source/NvBlastTkAllocator.cpp - ${TOOLKIT_DIR}/source/NvBlastTkAllocator.h - ${TOOLKIT_DIR}/source/NvBlastTkArray.h ${TOOLKIT_DIR}/source/NvBlastTkAssetImpl.cpp ${TOOLKIT_DIR}/source/NvBlastTkAssetImpl.h ${TOOLKIT_DIR}/source/NvBlastTkCommon.h @@ -72,8 +65,6 @@ SET(TOOLKIT_FILES ${TOOLKIT_DIR}/source/NvBlastTkGroupImpl.cpp ${TOOLKIT_DIR}/source/NvBlastTkGroupImpl.h ${TOOLKIT_DIR}/source/NvBlastTkGUID.h - ${TOOLKIT_DIR}/source/NvBlastTkHashMap.h - ${TOOLKIT_DIR}/source/NvBlastTkHashSet.h ${TOOLKIT_DIR}/source/NvBlastTkJointImpl.cpp ${TOOLKIT_DIR}/source/NvBlastTkJointImpl.h ${TOOLKIT_DIR}/source/NvBlastTkTaskImpl.cpp @@ -83,13 +74,11 @@ SET(TOOLKIT_FILES ADD_LIBRARY(NvBlastTk ${BLASTTK_LIBTYPE} ${COMMON_FILES} - ${PROFILER_FILES} ${PUBLIC_FILES} ${TOOLKIT_FILES} ) SOURCE_GROUP("common" FILES ${COMMON_FILES}) -SOURCE_GROUP("profiler" FILES ${PROFILER_FILES}) SOURCE_GROUP("public" FILES ${PUBLIC_FILES}) SOURCE_GROUP("toolkit" FILES ${TOOLKIT_FILES}) @@ -99,7 +88,6 @@ TARGET_INCLUDE_DIRECTORIES(NvBlastTk PRIVATE ${BLASTTK_PLATFORM_INCLUDES} PRIVATE ${PROJECT_SOURCE_DIR}/common - PRIVATE ${PROJECT_SOURCE_DIR}/profiler PUBLIC ${PROJECT_SOURCE_DIR}/lowlevel/include PUBLIC ${PROJECT_SOURCE_DIR}/toolkit/include @@ -110,6 +98,10 @@ 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}" @@ -119,7 +111,7 @@ SET_TARGET_PROPERTIES(NvBlastTk PROPERTIES # Do final direct sets after the target has been defined TARGET_LINK_LIBRARIES(NvBlastTk - PRIVATE NvBlast + 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 440351e..d0cf60a 100644 --- a/sdk/compiler/cmake/linux/CMakeLists.txt +++ b/sdk/compiler/cmake/linux/CMakeLists.txt @@ -1,6 +1,6 @@ #Platform specific compile flags and project includes -SET(CMAKE_CXX_FLAGS "-Wextra -Werror -pedantic -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") +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") SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g3 -gdwarf-2") SET(CMAKE_CXX_FLAGS_CHECKED "-O3 -g3 -gdwarf-2 -fno-strict-aliasing") @@ -16,12 +16,31 @@ 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}/NvBlastExtConverterLL.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}/NvBlastExtSerialization.cmake) -#INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerializationLL.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 63ebeea..c1b0363 100644 --- a/sdk/compiler/cmake/linux/NvBlast.cmake +++ b/sdk/compiler/cmake/linux/NvBlast.cmake @@ -18,4 +18,6 @@ SET(BLAST_COMPILE_DEFS $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> ) -SET(BLAST_LIB_TYPE STATIC) +SET(BLAST_LIB_TYPE SHARED) + +SET(BLAST_PLATFORM_COMPILE_OPTIONS "-pedantic") diff --git a/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake b/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake index c99653b..3d7bb78 100644 --- a/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake +++ b/sdk/compiler/cmake/linux/NvBlastExtAuthoring.cmake @@ -18,6 +18,12 @@ SET(BLASTEXT_COMPILE_DEFS $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> ) -SET(BLAST_EXT_SHARED_LIB_TYPE STATIC) +SET(BLAST_EXT_SHARED_LIB_TYPE SHARED) -SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-maybe-uninitialized") +#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") +ELSE () + SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-return-type-c-linkage" "-pedantic" "-fexceptions" "-Wno-unused-parameter") +ENDIF()
\ No newline at end of file diff --git a/sdk/compiler/cmake/linux/NvBlastExtConverterLL.cmake b/sdk/compiler/cmake/linux/NvBlastExtConverterLL.cmake deleted file mode 100644 index d37a1dc..0000000 --- a/sdk/compiler/cmake/linux/NvBlastExtConverterLL.cmake +++ /dev/null @@ -1,23 +0,0 @@ -# -# 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 STATIC) - -SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas") diff --git a/sdk/compiler/cmake/linux/NvBlastExtImport.cmake b/sdk/compiler/cmake/linux/NvBlastExtImport.cmake index d37a1dc..543887d 100644 --- a/sdk/compiler/cmake/linux/NvBlastExtImport.cmake +++ b/sdk/compiler/cmake/linux/NvBlastExtImport.cmake @@ -18,6 +18,6 @@ SET(BLASTEXT_COMPILE_DEFS $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> ) -SET(BLAST_EXT_SHARED_LIB_TYPE STATIC) +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 22fd8ad..9edb58c 100644 --- a/sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake +++ b/sdk/compiler/cmake/linux/NvBlastExtPhysX.cmake @@ -18,6 +18,11 @@ SET(BLASTEXT_COMPILE_DEFS $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> ) -SET(BLASTEXT_PHYSX_LIBTYPE STATIC) +SET(BLASTEXT_PHYSX_LIBTYPE SHARED) -SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas" "-Wno-maybe-uninitialized") +#-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/NvBlastExtSerialization.cmake b/sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake index a8bc1cf..b6d4d84 100644 --- a/sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake +++ b/sdk/compiler/cmake/linux/NvBlastExtSerialization.cmake @@ -18,4 +18,10 @@ SET(BLASTEXTSERIALIZATION_COMPILE_DEFS $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> ) -SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "") +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/NvBlastExtSerializationLL.cmake b/sdk/compiler/cmake/linux/NvBlastExtSerializationLL.cmake deleted file mode 100644 index a8bc1cf..0000000 --- a/sdk/compiler/cmake/linux/NvBlastExtSerializationLL.cmake +++ /dev/null @@ -1,21 +0,0 @@ -# -# 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_COMPILE_OPTIONS "") diff --git a/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake b/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake index d37a1dc..a5c8c67 100644 --- a/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake +++ b/sdk/compiler/cmake/linux/NvBlastExtShaders.cmake @@ -18,6 +18,6 @@ SET(BLASTEXT_COMPILE_DEFS $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> ) -SET(BLAST_EXT_SHARED_LIB_TYPE STATIC) +SET(BLAST_EXT_SHARED_LIB_TYPE SHARED) -SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas") +SET(BLASTEXT_PLATFORM_COMPILE_OPTIONS "-Wno-unknown-pragmas" "-pedantic") diff --git a/sdk/compiler/cmake/linux/NvBlastTk.cmake b/sdk/compiler/cmake/linux/NvBlastTk.cmake index 4f70825..5ea3746 100644 --- a/sdk/compiler/cmake/linux/NvBlastTk.cmake +++ b/sdk/compiler/cmake/linux/NvBlastTk.cmake @@ -18,5 +18,11 @@ SET(BLASTTK_COMPILE_DEFS $<$<CONFIG:release>:${BLAST_SLN_RELEASE_COMPILE_DEFS}> ) -SET(BLASTTK_LIBTYPE "STATIC") +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 3579784..5d57cd0 100644 --- a/sdk/compiler/cmake/modules/CapnProtoGenerate.cmake +++ b/sdk/compiler/cmake/modules/CapnProtoGenerate.cmake @@ -46,10 +46,9 @@ function(CAPNP_GENERATE_CPP SOURCES HEADERS) endif() if(DEFINED CAPNPC_OUTPUT_DIR) - # Prepend a ':' to get the format for the '-o' flag right - set(output_dir ":${CAPNPC_OUTPUT_DIR}") + set(output_dir "${CAPNPC_OUTPUT_DIR}") else() - set(output_dir ":.") + set(output_dir ".") endif() if(NOT DEFINED CAPNPC_SRC_PREFIX) @@ -79,17 +78,18 @@ function(CAPNP_GENERATE_CPP SOURCES HEADERS) 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}) - + 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 + -o ${CAPNPC_CXX_EXECUTABLE}:${output_dir} + --verbose --src-prefix ${CAPNPC_SRC_PREFIX} ${include_path} ${CAPNPC_FLAGS} diff --git a/sdk/compiler/cmake/modules/FindCapnProtoSDK.cmake b/sdk/compiler/cmake/modules/FindCapnProtoSDK.cmake index dcf5190..9e2cd60 100644 --- a/sdk/compiler/cmake/modules/FindCapnProtoSDK.cmake +++ b/sdk/compiler/cmake/modules/FindCapnProtoSDK.cmake @@ -1,5 +1,6 @@ # - Try to find CapnProto SDK # - Sets CAPNPROTOSDK_LIBRARIES - list of the libraries found +# - Sets CAPNPROTOSDK_SOURCE_FILES # - Sets CAPNPROTOSDK_INCLUDE_DIRS include(FindPackageHandleStandardArgs) @@ -43,7 +44,11 @@ elseif(TARGET_BUILD_PLATFORM STREQUAL "XboxOne") SET(CMAKE_FIND_LIBRARY_PREFIXES "lib") elseif(TARGET_BUILD_PLATFORM STREQUAL "linux") SET(LIB_PATH ${CAPNPROTOSDK_PATH}/bin/ubuntu64) - SET(EXE_PATH ${CAPNPROTOSDK_PATH}/tools/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() @@ -85,11 +90,11 @@ FIND_PACKAGE_HANDLE_STANDARD_ARGS(CAPNPROTOSDK CAPNP_EXECUTABLE CAPNPC_CXX_EXECUTABLE - CAPNPROTO_LIB - KJ_LIB + #CAPNPROTO_LIB + #KJ_LIB - CAPNPROTO_LIB_DEBUG - KJ_LIB_DEBUG + #CAPNPROTO_LIB_DEBUG + #KJ_LIB_DEBUG ) if (CAPNPROTOSDK_FOUND) @@ -103,9 +108,30 @@ if (CAPNPROTOSDK_FOUND) ) SET(CAPNPROTOSDK_LIBRARIES "" CACHE STRING "") + SET(CAPNPROTOSDK_SOURCE_FILES "") - LIST(APPEND CAPNPROTOSDK_LIBRARIES - optimized ${CAPNPROTO_LIB} debug ${CAPNPROTO_LIB_DEBUG} - optimized ${KJ_LIB} debug ${KJ_LIB_DEBUG} - ) + 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/FindPhysXSDK.cmake b/sdk/compiler/cmake/modules/FindPhysXSDK.cmake index 830e6c5..4b9176f 100644 --- a/sdk/compiler/cmake/modules/FindPhysXSDK.cmake +++ b/sdk/compiler/cmake/modules/FindPhysXSDK.cmake @@ -16,9 +16,9 @@ find_path(PHYSXSDK_PATH Include/PxActor.h 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") + SET(PHYSX_CRT_SUFFIX "-staticcrt") else() - SET(PXSHARED_CRT_SUFFIX "") + SET(PHYSX_CRT_SUFFIX "") endif() if (CMAKE_CL_64) diff --git a/sdk/compiler/cmake/windows/CMakeLists.txt b/sdk/compiler/cmake/windows/CMakeLists.txt index ac8b186..4c31d6a 100644 --- a/sdk/compiler/cmake/windows/CMakeLists.txt +++ b/sdk/compiler/cmake/windows/CMakeLists.txt @@ -50,18 +50,17 @@ 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}/NvBlastExtConverterLL.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) -#Sadly, CapnProto won't compile on anything less than VS2015. -if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 19.0.0.0) - SET(SERIALIZATION_INCLUDED 1 PARENT_SCOPE) - INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerialization.cmake) - INCLUDE(${PROJECT_CMAKE_FILES_DIR}/NvBlastExtSerializationLL.cmake) -else() - SET(SERIALIZATION_INCLUDED 0) -endif() +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/NvBlastExtConverterLL.cmake b/sdk/compiler/cmake/windows/NvBlastExtConverterLL.cmake deleted file mode 100644 index 7406d74..0000000 --- a/sdk/compiler/cmake/windows/NvBlastExtConverterLL.cmake +++ /dev/null @@ -1,24 +0,0 @@ -# -# 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/NvBlastExtSerialization.cmake b/sdk/compiler/cmake/windows/NvBlastExtSerialization.cmake index 20910be..8b26799 100644 --- a/sdk/compiler/cmake/windows/NvBlastExtSerialization.cmake +++ b/sdk/compiler/cmake/windows/NvBlastExtSerialization.cmake @@ -22,5 +22,5 @@ SET(BLASTEXTSERIALIZATION_COMPILE_DEFS SET(BLASTEXTSERIALIZATION_LIB_TYPE SHARED) -SET(BLASTEXTSERIALIZATION_COMPILE_OPTIONS "/wd4100;/wd4239;/wd4244;/wd4245;/wd4267;/EHsc") +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/NvBlastExtSerializationLL.cmake b/sdk/compiler/cmake/windows/NvBlastExtSerializationLL.cmake deleted file mode 100644 index 20910be..0000000 --- a/sdk/compiler/cmake/windows/NvBlastExtSerializationLL.cmake +++ /dev/null @@ -1,26 +0,0 @@ -# -# 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;/EHsc") - |