Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions NvCloth/BuildProjectsIOS.sh
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,11 @@ cd compiler/ios-cmake/
$CMAKE --build . --target ALL_BUILD --clean-first --config debug -- -parallelizeTargets -jobs 5 || exit 1
cd ../../

cd compiler/ios-cmake/
$CMAKE --build . --target ALL_BUILD --clean-first --config profile -- -parallelizeTargets -jobs 5 || exit 1
cd ../../

cd compiler/ios-cmake/
$CMAKE --build . --target ALL_BUILD --clean-first --config checked -- -parallelizeTargets -jobs 5 || exit 1
cd ../../

8 changes: 8 additions & 0 deletions NvCloth/BuildProjectsOsx.sh
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,11 @@ cd compiler/osx64-cmake/
$CMAKE --build . --target ALL_BUILD --clean-first --config debug -- -parallelizeTargets -jobs 5 || exit 1
cd ../../

cd compiler/osx64-cmake/
$CMAKE --build . --target ALL_BUILD --clean-first --config profile -- -parallelizeTargets -jobs 5 || exit 1
cd ../../

cd compiler/osx64-cmake/
$CMAKE --build . --target ALL_BUILD --clean-first --config checked -- -parallelizeTargets -jobs 5 || exit 1
cd ../../

6 changes: 3 additions & 3 deletions NvCloth/CmakeGenerateAndroid.bat
Original file line number Diff line number Diff line change
Expand Up @@ -71,15 +71,15 @@ REM https://cmake.org/cmake/help/v3.7/manual/cmake-toolchains.7.html#cross-compi
REM https://developer.android.com/ndk/guides/cmake.html

REM REM Common cmd line params
set CMAKE_COMMON_PARAMS=-DANDROID_NDK=%NDK% -DANDROID_ABI=%ANDROID_ABI% -DGW_DEPS_ROOT=%GW_DEPS_ROOT% -DPX_OUTPUT_DLL_DIR=%PX_OUTPUT_ROOT%\Bin\%ANDROID_DIR_NAME% -DPX_OUTPUT_LIB_DIR=%PX_OUTPUT_ROOT%\Lib\%ANDROID_DIR_NAME% -DPX_OUTPUT_EXE_DIR=%PX_OUTPUT_ROOT%\Bin\%ANDROID_DIR_NAME%
set CMAKE_COMMON_PARAMS=-DANDROID_NDK=%NDK% -DANDROID_ABI=%ANDROID_ABI% -DGW_DEPS_ROOT=%GW_DEPS_ROOT% -DPX_OUTPUT_DLL_DIR=%PX_OUTPUT_ROOT%\Bin\%ANDROID_DIR_NAME% -DPX_OUTPUT_LIB_DIR=%PX_OUTPUT_ROOT%\Lib\%ANDROID_DIR_NAME% -DPX_OUTPUT_EXE_DIR=%PX_OUTPUT_ROOT%\Bin\%ANDROID_DIR_NAME% -DPX_STATIC_LIBRARIES=1

REM Compiler dependent cmd line params
set CMAKE_COMPILER_PARAMS=-G "MinGW Makefiles" -DCMAKE_MAKE_PROGRAM=%NDK_MAKE% -DCMAKE_BUILD_TYPE=%CONFIG_NAME% -DCMAKE_ANDROID_ARCH_ABI=%ANDROID_ABI%
REM set CMAKE_COMPILER_PARAMS=-G "Visual Studio 14 2015" -DCMAKE_ANDROID_ARCH=%ANDROID_ABI%

REM Toolchain dependent cmd line params
REM set CMAKE_TOOLCHAIN_PARAMS=-DCMAKE_TOOLCHAIN_FILE=C:\Users\lpanov\projects\nvidia\NvCloth\Externals\CMakeModules\Android\android.toolchain.cmake -DANDROID_NATIVE_API_LEVEL=android-%ANDROID_API% -DANDROID_ABI=%ANDROID_ABI% -DANDROID_STL="gnustl_static" -DTARGET_BUILD_PLATFORM=android
set CMAKE_TOOLCHAIN_PARAMS=-DCMAKE_SYSTEM_NAME=Android -DCMAKE_ANDROID_API_MIN=%ANDROID_API% -DCMAKE_ANDROID_API=%ANDROID_API%
set CMAKE_TOOLCHAIN_PARAMS=-DCMAKE_TOOLCHAIN_FILE=%GW_DEPS_ROOT%\NvCloth\Externals\CMakeModules\android\android.toolchain.cmake -DANDROID_NATIVE_API_LEVEL=android-%ANDROID_API% -DANDROID_ABI=%ANDROID_ABI% -DANDROID_STL="gnustl_static" -DTARGET_BUILD_PLATFORM=android
REM set CMAKE_TOOLCHAIN_PARAMS=-DCMAKE_SYSTEM_NAME=Android -DCMAKE_ANDROID_API_MIN=%ANDROID_API% -DCMAKE_ANDROID_API=%ANDROID_API%

%CMAKE% ..\cmake\android %CMAKE_COMPILER_PARAMS% %CMAKE_TOOLCHAIN_PARAMS% %CMAKE_COMMON_PARAMS%
IF %ERRORLEVEL% NEQ 0 (
Expand Down
8 changes: 7 additions & 1 deletion NvCloth/CmakeGenerateProjects.bat
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ IF %ERRORLEVEL% NEQ 0 (
set CMAKE=%PM_cmake_PATH%/bin/cmake.exe

REM Common for all generators
set CMAKE_COMMON_PARAMS=-DTARGET_BUILD_PLATFORM=windows -DNV_CLOTH_ENABLE_DX11=%USE_DX11% -DNV_CLOTH_ENABLE_CUDA=%USE_CUDA% -DPX_GENERATE_GPU_PROJECTS=1 -DCUDA_TOOLKIT_ROOT_DIR="%CUDA_PATH_%" -DWIN8SDK_PATH="%WIN8SDK_PATH%" -DSTATIC_WINCRT=1
set CMAKE_COMMON_PARAMS=-DTARGET_BUILD_PLATFORM=windows -DNV_CLOTH_ENABLE_DX11=%USE_DX11% -DNV_CLOTH_ENABLE_CUDA=%USE_CUDA% -DPX_GENERATE_GPU_PROJECTS=1 -DCUDA_TOOLKIT_ROOT_DIR="%CUDA_PATH_%" -DWIN8SDK_PATH="%WIN8SDK_PATH%" -DSTATIC_WINCRT=1 -DPX_STATIC_LIBRARIES=1

REM Generate projects here

Expand Down Expand Up @@ -73,6 +73,12 @@ pushd compiler\vc14win64-cmake\
%CMAKE% ..\cmake\windows -G "Visual Studio 14 2015" -Ax64 %CMAKE_COMMON_PARAMS% -DPX_OUTPUT_DLL_DIR=%PX_OUTPUT_ROOT%\bin\vc14win64-cmake -DPX_OUTPUT_LIB_DIR=%PX_OUTPUT_ROOT%\lib\vc14win64-cmake -DPX_OUTPUT_EXE_DIR=%PX_OUTPUT_ROOT%\bin\vc14win64-cmake
popd

rmdir /s /q compiler\vc141win64-cmake\
mkdir compiler\vc141win64-cmake\
pushd compiler\vc141win64-cmake\
%CMAKE% ..\cmake\windows -G "Visual Studio 15 2017" -Ax64 %CMAKE_COMMON_PARAMS% -DPX_OUTPUT_DLL_DIR=%PX_OUTPUT_ROOT%\bin\vc141win64-cmake -DPX_OUTPUT_LIB_DIR=%PX_OUTPUT_ROOT%\lib\vc141win64-cmake -DPX_OUTPUT_EXE_DIR=%PX_OUTPUT_ROOT%\bin\vc141win64-cmake
popd

goto End


Expand Down
2 changes: 1 addition & 1 deletion NvCloth/GenerateProjectsIOS.sh
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ export USE_CUDA=0
rm -r -f compiler/ios-cmake/
mkdir compiler/ios-cmake/
cd compiler/ios-cmake/
$CMAKE ../cmake/ios -G Xcode -DCMAKE_TOOLCHAIN_FILE=$GW_DEPS_ROOT/NvCloth/Externals/CMakeModules/ios/ios.toolchain.cmake -DTARGET_BUILD_PLATFORM=ios -DCMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET="8.0" -DNV_CLOTH_ENABLE_CUDA=$USE_CUDA -DUSE_CUDA=$USE_CUDA -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/ios-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/ios-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/ios-cmake || exit 1
$CMAKE ../cmake/ios -G Xcode -DCMAKE_TOOLCHAIN_FILE=$GW_DEPS_ROOT/NvCloth/Externals/CMakeModules/ios/ios.toolchain.cmake -DTARGET_BUILD_PLATFORM=ios -DCMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET="8.0" -DPX_STATIC_LIBRARIES=1 -DNV_CLOTH_ENABLE_CUDA=$USE_CUDA -DUSE_CUDA=$USE_CUDA -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/ios-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/ios-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/ios-cmake || exit 1
cd ../../


8 changes: 4 additions & 4 deletions NvCloth/GenerateProjectsLinux.sh
Original file line number Diff line number Diff line change
Expand Up @@ -43,23 +43,23 @@ export USE_CUDA=0
rm -r -f compiler/linux64-debug-cmake/
mkdir compiler/linux64-debug-cmake/
cd compiler/linux64-debug-cmake/
$CMAKE ../cmake/linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=debug -DNV_CLOTH_ENABLE_CUDA=$USE_CUDA -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake || exit 1
$CMAKE ../cmake/linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=debug -DPX_STATIC_LIBRARIES=1 -DNV_CLOTH_ENABLE_CUDA=$USE_CUDA -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake || exit 1
cd ../../

rm -r -f compiler/linux64-checked-cmake/
mkdir compiler/linux64-checked-cmake/
cd compiler/linux64-checked-cmake/
$CMAKE ../cmake/linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=checked -DNV_CLOTH_ENABLE_CUDA=$USE_CUDA -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake || exit 1
$CMAKE ../cmake/linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=checked -DPX_STATIC_LIBRARIES=1 -DNV_CLOTH_ENABLE_CUDA=$USE_CUDA -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake || exit 1
cd ../../

rm -r -f compiler/linux64-profile-cmake/
mkdir compiler/linux64-profile-cmake/
cd compiler/linux64-profile-cmake/
$CMAKE ../cmake/linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=profile -DNV_CLOTH_ENABLE_CUDA=$USE_CUDA -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake || exit 1
$CMAKE ../cmake/linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=profile -DPX_STATIC_LIBRARIES=1 -DNV_CLOTH_ENABLE_CUDA=$USE_CUDA -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake || exit 1
cd ../../

rm -r -f compiler/linux64-release-cmake/
mkdir compiler/linux64-release-cmake/
cd compiler/linux64-release-cmake/
$CMAKE ../cmake/linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=release -DNV_CLOTH_ENABLE_CUDA=$USE_CUDA -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake || exit 1
$CMAKE ../cmake/linux -G "Unix Makefiles" -DTARGET_BUILD_PLATFORM=linux -DCMAKE_BUILD_TYPE=release -DPX_STATIC_LIBRARIES=1 -DNV_CLOTH_ENABLE_CUDA=$USE_CUDA -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/linux64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/linux64-cmake || exit 1
cd ../../
2 changes: 1 addition & 1 deletion NvCloth/GenerateProjectsOsx.sh
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,6 @@ export USE_CUDA=0
rm -r -f compiler/osx64-cmake/
mkdir compiler/osx64-cmake/
cd compiler/osx64-cmake/
$CMAKE ../cmake/mac -G Xcode -DTARGET_BUILD_PLATFORM=mac -DNV_CLOTH_ENABLE_CUDA=$USE_CUDA -DUSE_CUDA=$USE_CUDA -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/osx64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/osx64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/osx64-cmake || exit 1
$CMAKE ../cmake/mac -G Xcode -DTARGET_BUILD_PLATFORM=mac -DPX_STATIC_LIBRARIES=1 -DNV_CLOTH_ENABLE_CUDA=$USE_CUDA -DUSE_CUDA=$USE_CUDA -DPX_GENERATE_GPU_PROJECTS=0 -DPX_OUTPUT_DLL_DIR=$PX_OUTPUT_ROOT/bin/osx64-cmake -DPX_OUTPUT_LIB_DIR=$PX_OUTPUT_ROOT/lib/osx64-cmake -DPX_OUTPUT_EXE_DIR=$PX_OUTPUT_ROOT/bin/osx64-cmake || exit 1
cd ../../

10 changes: 7 additions & 3 deletions NvCloth/compiler/cmake/android/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,19 @@ ENDIF()

if(${ANDROID_ABI} STREQUAL "armeabi-v7a")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fno-rtti -fno-exceptions -ffunction-sections -fdata-sections -funwind-tables -fomit-frame-pointer -funswitch-loops -finline-limit=300 -fno-strict-aliasing -fstack-protector -Wno-invalid-offsetof ")
SET(NVCLOTH_ANDROID_ABI_DEFS __arm__;PX_SIMD_DISABLED)
elseif(${ANDROID_ABI} STREQUAL "armeabi-v7a with NEON")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fno-rtti -ffast-math -fno-exceptions -ffunction-sections -funwind-tables -fomit-frame-pointer -funswitch-loops -finline-limit=300 -fno-strict-aliasing -fstack-protector -Wno-invalid-offsetof ")
SET(NVCLOTH_ANDROID_ABI_DEFS __arm__;__ARM_NEON__;NV_SIMD_SCALAR=1)
elseif(${ANDROID_ABI} STREQUAL "arm64-v8a")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fno-rtti -fno-exceptions -ffunction-sections -fdata-sections -Wno-invalid-offsetof ")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fno-rtti -ffast-math -fno-exceptions -ffunction-sections -fdata-sections -Wno-invalid-offsetof ")
SET(NVCLOTH_ANDROID_ABI_DEFS __arm64__;__ARM_NEON__)
elseif(${ANDROID_ABI} STREQUAL "x86")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fno-rtti -fno-exceptions -ffunction-sections -fdata-sections -Wno-invalid-offsetof -fpack-struct=8 -malign-double ")
SET(NVCLOTH_ANDROID_ABI_DEFS __i386__)
elseif(${ANDROID_ABI} STREQUAL "x86_64")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fno-rtti -fno-exceptions -ffunction-sections -fdata-sections -Wno-invalid-offsetof -mstackrealign -msse3 ")
SET(NVCLOTH_ANDROID_ABI_DEFS __x86_64__)
endif()

SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g")
Expand All @@ -33,8 +38,7 @@ SET(CMAKE_CXX_FLAGS_RELEASE "-O3")

# a version from pxshared
#SET(NVCLOTH_ANDROID_COMPILE_DEFS _LIB;__STDC_LIMIT_MACROS;)
# TODO: __ARM_NEON__;__arm64__ only on supporting archs
SET(NVCLOTH_ANDROID_COMPILE_DEFS _LIB;__STDC_LIMIT_MACROS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;PX_NVCLOTH_STATIC_LIB;__ARM_NEON__;__arm64__)
SET(NVCLOTH_ANDROID_COMPILE_DEFS _LIB;__STDC_LIMIT_MACROS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;${NVCLOTH_ANDROID_ABI_DEFS})
SET(NVCLOTH_ANDROID_DEBUG_COMPILE_DEFS _DEBUG;PX_DEBUG=1;PX_CHECKED=1)
SET(NVCLOTH_ANDROID_CHECKED_COMPILE_DEFS NDEBUG;PX_CHECKED=1)
SET(NVCLOTH_ANDROID_PROFILE_COMPILE_DEFS NDEBUG;PX_PROFILE=1)
Expand Down
33 changes: 26 additions & 7 deletions NvCloth/compiler/cmake/android/NvCloth.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -6,31 +6,44 @@ SET(GW_DEPS_ROOT $ENV{GW_DEPS_ROOT})

SET(NVCLOTH_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../../../)

if(${ANDROID_ABI} STREQUAL "armeabi-v7a with NEON" OR ${ANDROID_ABI} STREQUAL "arm64-v8a")
SET(NVCLOTH_PLATFORM_NEON_FILES
${PROJECT_ROOT_DIR}/src/neon/NeonCollision.cpp
${PROJECT_ROOT_DIR}/src/neon/NeonSelfCollision.cpp
${PROJECT_ROOT_DIR}/src/neon/NeonSolverKernel.cpp
${PROJECT_ROOT_DIR}/src/neon/SwCollisionHelpers.h
)
else()
SET(NVCLOTH_PLATFORM_NEON_FILES
)
endif()

SET(NVCLOTH_PLATFORM_SOURCE_FILES
${PROJECT_ROOT_DIR}/src/ps/unix/PsUnixAtomic.cpp
${PROJECT_ROOT_DIR}/src/ps/unix/PsUnixFPU.h
${PROJECT_ROOT_DIR}/src/ps/android/cpu-features.c
${PROJECT_ROOT_DIR}/src/ps/android/cpu-features.h

${PROJECT_ROOT_DIR}/src/neon/NeonCollision.cpp
${PROJECT_ROOT_DIR}/src/neon/NeonSelfCollision.cpp
${PROJECT_ROOT_DIR}/src/neon/NeonSolverKernel.cpp
${PROJECT_ROOT_DIR}/src/neon/SwCollisionHelpers.h
${NVCLOTH_PLATFORM_NEON_FILES}
)

SET(NVCLOTH_PLATFORM_INCLUDES
${LL_SOURCE_DIR}/include/linux
${ANDROID_NDK}/sources/android/cpufeatures
)

IF(PX_STATIC_LIBRARIES)
SET(NVCLOTH_API_COMPILE_DEFS NV_CLOTH_IMPORT=;PX_CALL_CONV=;)
ELSE()
SET(NVCLOTH_API_COMPILE_DEFS NV_CLOTH_IMPORT=PX_DLL_EXPORT;)
ENDIF()

# Use generator expressions to set config specific preprocessor definitions
SET(NVCLOTH_COMPILE_DEFS
${NVCLOTH_ANDROID_COMPILE_DEFS};
NvCloth_STATIC_LIB; # TODO: needed?
${NVCLOTH_API_COMPILE_DEFS}

NV_ANDROID
NV_SIMD_SCALAR=1 # always compile scalar paths on android, so we may use them as fallback
NV_CLOTH_IMPORT=PX_DLL_EXPORT
NV_CLOTH_ENABLE_DX11=0
NV_CLOTH_ENABLE_CUDA=0

Expand All @@ -40,5 +53,11 @@ SET(NVCLOTH_COMPILE_DEFS
$<$<CONFIG:release>:${NVCLOTH_ANDROID_RELEASE_COMPILE_DEFS};>
)

IF(PX_STATIC_LIBRARIES)
SET(NVCLOTH_LIBTYPE STATIC)
ELSE()
SET(NVCLOTH_LIBTYPE SHARED)
ENDIF()

# include common low level settings
INCLUDE(../common/NvCloth.cmake)
2 changes: 1 addition & 1 deletion NvCloth/compiler/cmake/ios/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ SET(CMAKE_CXX_FLAGS_RELEASE "-O3 -g")
SET(PHYSX_IOS_ENABLE_NVTX 0)

# Disable cuda and dx for all projects on ios
SET(PHYSX_IOS_COMPILE_DEFS DISABLE_COMPUTE_PHYSX)
SET(PHYSX_IOS_COMPILE_DEFS DISABLE_COMPUTE_PHYSX;__ARM_NEON__)
SET(PHYSX_IOS_DEBUG_COMPILE_DEFS _DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_NVTX=${PHYSX_IOS_ENABLE_NVTX};PX_SUPPORT_PVD=0)
SET(PHYSX_IOS_CHECKED_COMPILE_DEFS NDEBUG;PX_CHECKED=1;PX_NVTX=${PHYSX_IOS_ENABLE_NVTX};PX_SUPPORT_PVD=0)
SET(PHYSX_IOS_PROFILE_COMPILE_DEFS NDEBUG;PX_PROFILE=1;PX_NVTX=${PHYSX_IOS_ENABLE_NVTX};PX_SUPPORT_PVD=0)
Expand Down
25 changes: 19 additions & 6 deletions NvCloth/compiler/cmake/ios/NvCloth.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,24 @@ SET(NVCLOTH_PLATFORM_INCLUDES
)

SET(NVCLOTH_PLATFORM_SOURCE_FILES
#${PROJECT_ROOT_DIR}/src/neon/NeonCollision.cpp
#${PROJECT_ROOT_DIR}/src/neon/NeonSelfCollision.cpp
#${PROJECT_ROOT_DIR}/src/neon/NeonSolverKernel.cpp
#${PROJECT_ROOT_DIR}/src/neon/SwCollisionHelpers.h
${PROJECT_ROOT_DIR}/src/ps/unix/PsUnixAtomic.cpp
${PROJECT_ROOT_DIR}/src/ps/unix/PsUnixFPU.h

${PROJECT_ROOT_DIR}/src/neon/NeonCollision.cpp
${PROJECT_ROOT_DIR}/src/neon/NeonSelfCollision.cpp
${PROJECT_ROOT_DIR}/src/neon/NeonSolverKernel.cpp
${PROJECT_ROOT_DIR}/src/neon/SwCollisionHelpers.h
)

IF(PX_STATIC_LIBRARIES)
SET(NVCLOTH_API_COMPILE_DEFS NV_CLOTH_IMPORT=;PX_CALL_CONV=;)
ELSE()
SET(NVCLOTH_API_COMPILE_DEFS NV_CLOTH_IMPORT=PX_DLL_EXPORT;)
ENDIF()

# Use generator expressions to set config specific preprocessor definitions
SET(NVCLOTH_COMPILE_DEFS
NV_CLOTH_IMPORT=PX_DLL_EXPORT
${NVCLOTH_API_COMPILE_DEFS}
NV_CLOTH_ENABLE_DX11=0
NV_CLOTH_ENABLE_CUDA=0

Expand All @@ -36,7 +45,11 @@ SET(NVCLOTH_COMPILE_DEFS
$<$<CONFIG:release>:${PHYSX_IOS_RELEASE_COMPILE_DEFS};>
)

SET(NVCLOTH_LIBTYPE STATIC)
IF(PX_STATIC_LIBRARIES)
SET(NVCLOTH_LIBTYPE STATIC)
ELSE()
SET(NVCLOTH_LIBTYPE SHARED)
ENDIF()

# include common PhysX settings
INCLUDE(../common/NvCloth.cmake)
Expand Down
14 changes: 7 additions & 7 deletions NvCloth/compiler/cmake/linux/NvCloth.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,6 @@ SET(NVCLOTH_PLATFORM_INCLUDES
SET(NVCLOTH_PLATFORM_SOURCE_FILES
${PROJECT_ROOT_DIR}/src/ps/unix/PsUnixAtomic.cpp
${PROJECT_ROOT_DIR}/src/ps/unix/PsUnixFPU.h
#${PROJECT_ROOT_DIR}/src/neon/NeonCollision.cpp
#${PROJECT_ROOT_DIR}/src/neon/NeonSelfCollision.cpp
#${PROJECT_ROOT_DIR}/src/neon/NeonSolverKernel.cpp
#${PROJECT_ROOT_DIR}/src/neon/SwCollisionHelpers.h
)
IF(${NV_CLOTH_ENABLE_CUDA})
LIST(APPEND NVCLOTH_PLATFORM_SOURCE_FILES
Expand Down Expand Up @@ -96,11 +92,15 @@ DEPENDS ${CUDA_FATBIN}
)
ENDIF()


IF(PX_STATIC_LIBRARIES)
SET(NVCLOTH_API_COMPILE_DEFS NV_CLOTH_IMPORT=;PX_CALL_CONV=;)
ELSE()
SET(NVCLOTH_API_COMPILE_DEFS NV_CLOTH_IMPORT=PX_DLL_EXPORT;)
ENDIF()

# Use generator expressions to set config specific preprocessor definitions
SET(NVCLOTH_COMPILE_DEFS
NV_CLOTH_IMPORT=PX_DLL_EXPORT
${NVCLOTH_API_COMPILE_DEFS}
NV_CLOTH_ENABLE_DX11=0

# Common to all configurations
Expand All @@ -121,7 +121,7 @@ LIST(APPEND NVCLOTH_COMPILE_DEFS
)
ENDIF()

IF(DEFINED PX_STATIC_LIBRARIES)
IF(PX_STATIC_LIBRARIES)
SET(NVCLOTH_LIBTYPE STATIC)
ELSE()
SET(NVCLOTH_LIBTYPE SHARED)
Expand Down
18 changes: 12 additions & 6 deletions NvCloth/compiler/cmake/mac/NvCloth.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,17 @@ SET(NVCLOTH_PLATFORM_INCLUDES
SET(NVCLOTH_PLATFORM_SOURCE_FILES
${PROJECT_ROOT_DIR}/src/ps/unix/PsUnixAtomic.cpp
${PROJECT_ROOT_DIR}/src/ps/unix/PsUnixFPU.h
#${PROJECT_ROOT_DIR}/src/neon/NeonCollision.cpp
#${PROJECT_ROOT_DIR}/src/neon/NeonSelfCollision.cpp
#${PROJECT_ROOT_DIR}/src/neon/NeonSolverKernel.cpp
#${PROJECT_ROOT_DIR}/src/neon/SwCollisionHelpers.h
)

IF(PX_STATIC_LIBRARIES)
SET(NVCLOTH_API_COMPILE_DEFS NV_CLOTH_IMPORT=;PX_CALL_CONV=;)
ELSE()
SET(NVCLOTH_API_COMPILE_DEFS NV_CLOTH_IMPORT=PX_DLL_EXPORT;)
ENDIF()

# Use generator expressions to set config specific preprocessor definitions
SET(NVCLOTH_COMPILE_DEFS
NV_CLOTH_IMPORT=PX_DLL_EXPORT
${NVCLOTH_API_COMPILE_DEFS}
NV_CLOTH_ENABLE_DX11=0
NV_CLOTH_ENABLE_CUDA=0

Expand All @@ -38,7 +40,11 @@ SET(NVCLOTH_COMPILE_DEFS
$<$<CONFIG:release>:${PHYSX_MAC_RELEASE_COMPILE_DEFS};>
)

SET(NVCLOTH_LIBTYPE SHARED)
IF(PX_STATIC_LIBRARIES)
SET(NVCLOTH_LIBTYPE STATIC)
ELSE()
SET(NVCLOTH_LIBTYPE SHARED)
ENDIF()

# include common PhysX settings
INCLUDE(../common/NvCloth.cmake)
Expand Down
2 changes: 1 addition & 1 deletion NvCloth/compiler/cmake/windows/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ SET(CMAKE_SHARED_LINKER_FLAGS_RELEASE " /LTCG")
SET(CMAKE_SHARED_LINKER_FLAGS_PROFILE " /LTCG")
SET(CMAKE_SHARED_LINKER_FLAGS_CHECKED " /LTCG")

IF(DEFINED STATIC_WINCRT)
IF(STATIC_WINCRT)
SET(WINCRT_NDEBUG "/MT")
SET(WINCRT_DEBUG "/MTd")
ELSE()
Expand Down
18 changes: 12 additions & 6 deletions NvCloth/compiler/cmake/windows/NvCloth.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -78,10 +78,6 @@ LIST(APPEND NVCLOTH_PLATFORM_SOURCE_FILES

${PROJECT_ROOT_DIR}/src/dx/DxSolverKernelBlob.h
${PROJECT_ROOT_DIR}/src/dx/DxSortKernel.inc
#${PROJECT_ROOT_DIR}/src/neon/NeonCollision.cpp
#${PROJECT_ROOT_DIR}/src/neon/NeonSelfCollision.cpp
#${PROJECT_ROOT_DIR}/src/neon/NeonSolverKernel.cpp
#${PROJECT_ROOT_DIR}/src/neon/SwCollisionHelpers.h
)
ENDIF()

Expand Down Expand Up @@ -134,9 +130,15 @@ DEPENDS ${CUDA_FATBIN}
)
ENDIF()

IF(PX_STATIC_LIBRARIES)
SET(NVCLOTH_API_COMPILE_DEFS NV_CLOTH_IMPORT=;PX_CALL_CONV=;)
ELSE()
SET(NVCLOTH_API_COMPILE_DEFS NV_CLOTH_IMPORT=PX_DLL_EXPORT;)
ENDIF()

SET(NVCLOTH_COMPILE_DEFS

NV_CLOTH_IMPORT=PX_DLL_EXPORT
${NVCLOTH_API_COMPILE_DEFS}

$<$<CONFIG:debug>:${NVCLOTH_WINDOWS_DEBUG_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=DEBUG;>
$<$<CONFIG:checked>:${NVCLOTH_WINDOWS_CHECKED_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=CHECKED;>
Expand All @@ -162,7 +164,11 @@ LIST(APPEND NVCLOTH_COMPILE_DEFS
)
ENDIF()

SET(NVCLOTH_LIBTYPE SHARED)
IF(PX_STATIC_LIBRARIES)
SET(NVCLOTH_LIBTYPE STATIC)
ELSE()
SET(NVCLOTH_LIBTYPE SHARED)
ENDIF()

# include common NvCloth settings
INCLUDE(../common/NvCloth.cmake)
Expand Down
6 changes: 5 additions & 1 deletion NvCloth/include/NvCloth/ps/PsAllocator.h
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,11 @@

#if(PX_WINDOWS_FAMILY || PX_XBOXONE)
#include <exception>
#include <typeinfo.h>
#if PX_VC >= 16
#include <typeinfo>
#else
#include <typeinfo.h>
#endif
#endif
#if(PX_APPLE_FAMILY)
#include <typeinfo>
Expand Down
Loading