From d61c455a4775f966b44cc47804b9e0f160d3d332 Mon Sep 17 00:00:00 2001 From: bgaldrikian Date: Tue, 10 Nov 2020 20:53:31 -0800 Subject: Merge request #17 PhysX4 compatibility Other changes for linux and UE4CrossCompileLinux, and all packaging to work --- test/compiler/cmake/BlastPerfTests.cmake | 25 ++++++++++++---- test/compiler/cmake/BlastUnitTests.cmake | 34 +++++++++++++++------- test/compiler/cmake/linux/CMakeLists.txt | 8 ++++- .../compiler/cmake/windows/BlastPerfTests-AT.cmake | 5 ---- .../compiler/cmake/windows/BlastUnitTests-AT.cmake | 1 - 5 files changed, 49 insertions(+), 24 deletions(-) (limited to 'test/compiler/cmake') diff --git a/test/compiler/cmake/BlastPerfTests.cmake b/test/compiler/cmake/BlastPerfTests.cmake index 2671ce1..660f47a 100755 --- a/test/compiler/cmake/BlastPerfTests.cmake +++ b/test/compiler/cmake/BlastPerfTests.cmake @@ -12,7 +12,8 @@ SET(COMMON_SOURCE_DIR ${BLAST_ROOT_DIR}/sdk/common) SET(SOLVER_SOURCE_DIR ${BLAST_ROOT_DIR}/sdk/lowlevel/source) -FIND_PACKAGE(PxSharedSDK $ENV{PM_PxSharedSDK_VERSION} REQUIRED) +FIND_PACKAGE(PxSharedSDK ${PM_physxsdk_VERSION} REQUIRED) +FIND_PACKAGE(PhysXSDK ${PM_pxshared_VERSION} REQUIRED) FIND_PACKAGE(GoogleTestNV $ENV{PM_GoogleTest-nv_VERSION} REQUIRED) @@ -83,11 +84,11 @@ ADD_EXECUTABLE(BlastPerfTests ${SDK_SOLVER_FILES} ) -set_target_properties(BlastPerfTests - PROPERTIES DEBUG_POSTFIX ${CMAKE_DEBUG_POSTFIX} - CHECKED_POSTFIX ${CMAKE_CHECKED_POSTFIX} -# RELEASE_POSTFIX ${CMAKE_RELEASE_POSTFIX} - PROFILE_POSTFIX ${CMAKE_PROFILE_POSTFIX} +set_target_properties(BlastPerfTests PROPERTIES + DEBUG_POSTFIX "_${LIBPATH_SUFFIX}" + CHECKED_POSTFIX "_${LIBPATH_SUFFIX}" + RELEASE_POSTFIX "_${LIBPATH_SUFFIX}" + PROFILE_POSTFIX "_${LIBPATH_SUFFIX}" ) @@ -125,6 +126,18 @@ SET_TARGET_PROPERTIES(BlastPerfTests PROPERTIES COMPILE_PDB_NAME_CHECKED "BlastPerfTests${CMAKE_CHECKED_POSTFIX}" COMPILE_PDB_NAME_PROFILE "BlastPerfTests${CMAKE_PROFILE_POSTFIX}" COMPILE_PDB_NAME_RELEASE "BlastPerfTests${CMAKE_RELEASE_POSTFIX}" + ARCHIVE_OUTPUT_DIRECTORY_DEBUG "${BL_LIB_OUTPUT_DIR}/debug" + LIBRARY_OUTPUT_DIRECTORY_DEBUG "${BL_DLL_OUTPUT_DIR}/debug" + RUNTIME_OUTPUT_DIRECTORY_DEBUG "${BL_EXE_OUTPUT_DIR}/debug" + ARCHIVE_OUTPUT_DIRECTORY_CHECKED "${BL_LIB_OUTPUT_DIR}/checked" + LIBRARY_OUTPUT_DIRECTORY_CHECKED "${BL_DLL_OUTPUT_DIR}/checked" + RUNTIME_OUTPUT_DIRECTORY_CHECKED "${BL_EXE_OUTPUT_DIR}/checked" + ARCHIVE_OUTPUT_DIRECTORY_PROFILE "${BL_LIB_OUTPUT_DIR}/profile" + LIBRARY_OUTPUT_DIRECTORY_PROFILE "${BL_DLL_OUTPUT_DIR}/profile" + RUNTIME_OUTPUT_DIRECTORY_PROFILE "${BL_EXE_OUTPUT_DIR}/profile" + ARCHIVE_OUTPUT_DIRECTORY_RELEASE "${BL_LIB_OUTPUT_DIR}/release" + LIBRARY_OUTPUT_DIRECTORY_RELEASE "${BL_DLL_OUTPUT_DIR}/release" + RUNTIME_OUTPUT_DIRECTORY_RELEASE "${BL_EXE_OUTPUT_DIR}/release" ) #TARGET_COMPILE_OPTIONS(BlastPerfTests PRIVATE /wd4005 /wd4244) diff --git a/test/compiler/cmake/BlastUnitTests.cmake b/test/compiler/cmake/BlastUnitTests.cmake index 82779e6..8ea87c3 100755 --- a/test/compiler/cmake/BlastUnitTests.cmake +++ b/test/compiler/cmake/BlastUnitTests.cmake @@ -13,8 +13,8 @@ SET(SOLVER_SOURCE_DIR ${BLAST_ROOT_DIR}/sdk/lowlevel/source) -FIND_PACKAGE(PxSharedSDK $ENV{PM_PxSharedSDK_VERSION} REQUIRED) -FIND_PACKAGE(PhysXSDK $ENV{PM_PhysXSDK_VERSION} REQUIRED) +FIND_PACKAGE(PxSharedSDK ${PM_physxsdk_VERSION} REQUIRED) +FIND_PACKAGE(PhysXSDK ${PM_pxshared_VERSION} REQUIRED) FIND_PACKAGE(GoogleTestNV $ENV{PM_googletest_VERSION} REQUIRED) @@ -95,11 +95,11 @@ ADD_EXECUTABLE(BlastUnitTests ${SDK_SOLVER_FILES} ) -set_target_properties(BlastUnitTests - PROPERTIES DEBUG_POSTFIX ${CMAKE_DEBUG_POSTFIX} - CHECKED_POSTFIX ${CMAKE_CHECKED_POSTFIX} -# RELEASE_POSTFIX ${CMAKE_RELEASE_POSTFIX} - PROFILE_POSTFIX ${CMAKE_PROFILE_POSTFIX} +set_target_properties(BlastUnitTests PROPERTIES + DEBUG_POSTFIX "_${LIBPATH_SUFFIX}" + CHECKED_POSTFIX "_${LIBPATH_SUFFIX}" + RELEASE_POSTFIX "_${LIBPATH_SUFFIX}" + PROFILE_POSTFIX "_${LIBPATH_SUFFIX}" ) @@ -141,6 +141,18 @@ SET_TARGET_PROPERTIES(BlastUnitTests PROPERTIES COMPILE_PDB_NAME_CHECKED "BlastUnitTests${CMAKE_CHECKED_POSTFIX}" COMPILE_PDB_NAME_PROFILE "BlastUnitTests${CMAKE_PROFILE_POSTFIX}" COMPILE_PDB_NAME_RELEASE "BlastUnitTests${CMAKE_RELEASE_POSTFIX}" + ARCHIVE_OUTPUT_DIRECTORY_DEBUG "${BL_LIB_OUTPUT_DIR}/debug" + LIBRARY_OUTPUT_DIRECTORY_DEBUG "${BL_DLL_OUTPUT_DIR}/debug" + RUNTIME_OUTPUT_DIRECTORY_DEBUG "${BL_EXE_OUTPUT_DIR}/debug" + ARCHIVE_OUTPUT_DIRECTORY_CHECKED "${BL_LIB_OUTPUT_DIR}/checked" + LIBRARY_OUTPUT_DIRECTORY_CHECKED "${BL_DLL_OUTPUT_DIR}/checked" + RUNTIME_OUTPUT_DIRECTORY_CHECKED "${BL_EXE_OUTPUT_DIR}/checked" + ARCHIVE_OUTPUT_DIRECTORY_PROFILE "${BL_LIB_OUTPUT_DIR}/profile" + LIBRARY_OUTPUT_DIRECTORY_PROFILE "${BL_DLL_OUTPUT_DIR}/profile" + RUNTIME_OUTPUT_DIRECTORY_PROFILE "${BL_EXE_OUTPUT_DIR}/profile" + ARCHIVE_OUTPUT_DIRECTORY_RELEASE "${BL_LIB_OUTPUT_DIR}/release" + LIBRARY_OUTPUT_DIRECTORY_RELEASE "${BL_DLL_OUTPUT_DIR}/release" + RUNTIME_OUTPUT_DIRECTORY_RELEASE "${BL_EXE_OUTPUT_DIR}/release" ) TARGET_COMPILE_OPTIONS(BlastUnitTests @@ -157,10 +169,10 @@ TARGET_LINK_LIBRARIES(BlastUnitTests PRIVATE NvBlastExtShaders NvBlastExtPhysX NvBlastTk NvBlastExtSerialization NvBlastExtAssetUtils ${GOOGLETEST_LIBRARIES} PRIVATE ${BLASTUNITTESTS_PLATFORM_LINKED_LIBS} - PUBLIC $<$:${PXFOUNDATION_LIB_DEBUG}> $<$:${PXTASK_LIB_DEBUG}> - PUBLIC $<$:${PXFOUNDATION_LIB_CHECKED}> $<$:${PXTASK_LIB_CHECKED}> - PUBLIC $<$:${PXFOUNDATION_LIB_PROFILE}> $<$:${PXTASK_LIB_PROFILE}> - PUBLIC $<$:${PXFOUNDATION_LIB}> $<$:${PXTASK_LIB}> + PUBLIC $<$:${PHYSXFOUNDATION_LIB_DEBUG}> $<$:${PHYSXTASK_STATIC_LIB_DEBUG}> + PUBLIC $<$:${PHYSXFOUNDATION_LIB_CHECKED}> $<$:${PHYSXTASK_STATIC_LIB_CHECKED}> + PUBLIC $<$:${PHYSXFOUNDATION_LIB_PROFILE}> $<$:${PHYSXTASK_STATIC_LIB_PROFILE}> + PUBLIC $<$:${PHYSXFOUNDATION_LIB}> $<$:${PHYSXTASK_STATIC_LIB}> ) diff --git a/test/compiler/cmake/linux/CMakeLists.txt b/test/compiler/cmake/linux/CMakeLists.txt index 63dae8d..9a11185 100755 --- a/test/compiler/cmake/linux/CMakeLists.txt +++ b/test/compiler/cmake/linux/CMakeLists.txt @@ -1,6 +1,6 @@ #Platform specific compile flags and project includes -SET(CMAKE_CXX_FLAGS "-Wextra -fdiagnostics-show-option -fno-rtti -fno-exceptions -m64 -msse2 -mfpmath=sse -fpic -ffast-math -fno-exceptions -fno-rtti -Wno-invalid-offsetof -Wno-unknown-pragmas -Wno-multichar -Wno-sign-compare -std=c++0x") +SET(CMAKE_CXX_FLAGS "-Wextra -fdiagnostics-show-option -fno-rtti -fno-exceptions -m64 -msse2 -mfpmath=sse -fpic -ffast-math -fno-exceptions -fno-rtti -Wno-invalid-offsetof -Wno-unknown-pragmas -Wno-multichar -Wno-uninitialized -Wno-sign-compare -std=c++14") if (CMAKE_COMPILER_IS_GNUCXX) #Starting with 6.0 -fPIE is the default and our gtest build can't link with this @@ -24,6 +24,12 @@ SET(BLASTTESTS_SLN_RELEASE_COMPILE_DEFS NDEBUG;) SET(CMAKE_EXECUTABLE_SUFFIX ".elf") +SET(LIBPATH_SUFFIX "x64") + +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}/BlastUnitTests.cmake) diff --git a/test/compiler/cmake/windows/BlastPerfTests-AT.cmake b/test/compiler/cmake/windows/BlastPerfTests-AT.cmake index b49ed0d..05f0163 100755 --- a/test/compiler/cmake/windows/BlastPerfTests-AT.cmake +++ b/test/compiler/cmake/windows/BlastPerfTests-AT.cmake @@ -1,7 +1,2 @@ # Copy the dlls from the deps -ADD_CUSTOM_COMMAND(TARGET BlastPerfTests POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy_if_different - ${PXSHAREDSDK_DLLS} - ${BL_EXE_OUTPUT_DIR} -) diff --git a/test/compiler/cmake/windows/BlastUnitTests-AT.cmake b/test/compiler/cmake/windows/BlastUnitTests-AT.cmake index b2e89a9..4f2e8b4 100755 --- a/test/compiler/cmake/windows/BlastUnitTests-AT.cmake +++ b/test/compiler/cmake/windows/BlastUnitTests-AT.cmake @@ -2,7 +2,6 @@ ADD_CUSTOM_COMMAND(TARGET BlastUnitTests POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different - ${PXSHAREDSDK_DLLS} ${PHYSXSDK_DLLS} ${NVTOOLSEXT_DLL} $ -- cgit v1.2.3