From 95c45778e80cefbb600d5795dfef3403a54ad6a4 Mon Sep 17 00:00:00 2001 From: Marijn Tamis Date: Tue, 9 Jan 2018 17:11:34 +0100 Subject: Forced rename of platform folders in cmake dir. Git didn't pick this up before. --- NvCloth/compiler/cmake/Linux/CMakeLists.txt | 55 ----------- NvCloth/compiler/cmake/Linux/NvCloth.cmake | 143 ---------------------------- NvCloth/compiler/cmake/Mac/CMakeLists.txt | 57 ----------- NvCloth/compiler/cmake/Mac/NvCloth.cmake | 59 ------------ NvCloth/compiler/cmake/linux/CMakeLists.txt | 55 +++++++++++ NvCloth/compiler/cmake/linux/NvCloth.cmake | 143 ++++++++++++++++++++++++++++ NvCloth/compiler/cmake/mac/CMakeLists.txt | 57 +++++++++++ NvCloth/compiler/cmake/mac/NvCloth.cmake | 59 ++++++++++++ 8 files changed, 314 insertions(+), 314 deletions(-) delete mode 100644 NvCloth/compiler/cmake/Linux/CMakeLists.txt delete mode 100644 NvCloth/compiler/cmake/Linux/NvCloth.cmake delete mode 100644 NvCloth/compiler/cmake/Mac/CMakeLists.txt delete mode 100644 NvCloth/compiler/cmake/Mac/NvCloth.cmake create mode 100644 NvCloth/compiler/cmake/linux/CMakeLists.txt create mode 100644 NvCloth/compiler/cmake/linux/NvCloth.cmake create mode 100644 NvCloth/compiler/cmake/mac/CMakeLists.txt create mode 100644 NvCloth/compiler/cmake/mac/NvCloth.cmake diff --git a/NvCloth/compiler/cmake/Linux/CMakeLists.txt b/NvCloth/compiler/cmake/Linux/CMakeLists.txt deleted file mode 100644 index d6c8db6..0000000 --- a/NvCloth/compiler/cmake/Linux/CMakeLists.txt +++ /dev/null @@ -1,55 +0,0 @@ -cmake_minimum_required(VERSION 3.3) -MESSAGE("[NvCloth]cmake/linux/CMakeList.txt") -include(../common/CMakeLists.txt) - - -IF(NOT DEFINED TARGET_BUILD_PLATFORM) # Not defined, default to linux - SET(TARGET_BUILD_PLATFORM "linux") -ENDIF() - -SET(PLATFORM_LIST linux) - -IF (NOT ${TARGET_BUILD_PLATFORM} IN_LIST PLATFORM_LIST) - MESSAGE(FATAL_ERROR "Invalid platform:" ${TARGET_BUILD_PLATFORM}) -ENDIF() - -IF (DEFINED PX_32BIT) -SET(CMAKE_CXX_FLAGS "-arch i386 -msse2 -std=c++11 -fno-rtti -fno-exceptions -ffast-math -ffunction-sections -fdata-sections -Werror -ferror-limit=0 -Wall -Wextra -fstrict-aliasing -Wstrict-aliasing=2 -Weverything -Wno-documentation-deprecated-sync -Wno-documentation-unknown-command -Wno-float-equal -Wno-padded -Wno-weak-vtables -Wno-cast-align -Wno-conversion -Wno-missing-noreturn -Wno-missing-variable-declarations -Wno-shift-sign-overflow -Wno-covered-switch-default -Wno-exit-time-destructors -Wno-global-constructors -Wno-missing-prototypes -Wno-unreachable-code -Wno-unused-macros -Wno-unused-member-function -Wno-used-but-marked-unused -Wno-weak-template-vtables -Wno-deprecated -Wno-non-virtual-dtor -Wno-invalid-noreturn -Wno-return-type-c-linkage -Wno-reserved-id-macro -Wno-c++98-compat-pedantic -Wno-unused-local-typedef -Wno-old-style-cast -Wno-newline-eof -Wno-unused-private-field -Wno-undefined-reinterpret-cast -Wno-invalid-offsetof -gdwarf-2 -Wno-unused-value -Wno-format-nonliteral -Wno-undef") -ELSEIF() -SET(CMAKE_CXX_FLAGS "-arch x86_64 -msse2 -std=c++11 -fno-rtti -fno-exceptions -ffast-math -ffunction-sections -fdata-sections -Werror -ferror-limit=0 -Wall -Wextra -fstrict-aliasing -Wstrict-aliasing=2 -Weverything -Wno-documentation-deprecated-sync -Wno-documentation-unknown-command -Wno-float-equal -Wno-padded -Wno-weak-vtables -Wno-cast-align -Wno-conversion -Wno-missing-noreturn -Wno-missing-variable-declarations -Wno-shift-sign-overflow -Wno-covered-switch-default -Wno-exit-time-destructors -Wno-global-constructors -Wno-missing-prototypes -Wno-unreachable-code -Wno-unused-macros -Wno-unused-member-function -Wno-used-but-marked-unused -Wno-weak-template-vtables -Wno-deprecated -Wno-non-virtual-dtor -Wno-invalid-noreturn -Wno-return-type-c-linkage -Wno-reserved-id-macro -Wno-c++98-compat-pedantic -Wno-unused-local-typedef -Wno-old-style-cast -Wno-newline-eof -Wno-unused-private-field -Wno-undefined-reinterpret-cast -Wno-invalid-offsetof -gdwarf-2 -Wno-unused-value -Wno-format-nonliteral -Wno-undef") -ENDIF() - -SET(CMAKE_SHARED_LINKER_FLAGS "") - -# Build debug info for all configurations -SET(CMAKE_CXX_FLAGS_DEBUG "-std=c++11 -O0 -g3 -gdwarf-2") -SET(CMAKE_CXX_FLAGS_CHECKED "-std=c++11 -g3 -gdwarf-2 -O3") -SET(CMAKE_CXX_FLAGS_PROFILE "-std=c++11 -O3 -g") -SET(CMAKE_CXX_FLAGS_RELEASE "-std=c++11 -O3 -g") - - -#set(CMAKE_XCODE_ATTRIBUTE_DEBUG_INFORMATION_FORMAT "dwarf-with-dsym") - -# Controls PX_NVTX for all projects on linux -SET(PHYSX_LINUX_ENABLE_NVTX 0) - -# Disable cuda and dx for all projects on linux -SET(PHYSX_LINUX_COMPILE_DEFS DISABLE_COMPUTE_PHYSX) -SET(PHYSX_LINUX_DEBUG_COMPILE_DEFS _DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) -SET(PHYSX_LINUX_CHECKED_COMPILE_DEFS NDEBUG;PX_CHECKED=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) -SET(PHYSX_LINUX_PROFILE_COMPILE_DEFS NDEBUG;PX_PROFILE=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) -SET(PHYSX_LINUX_RELEASE_COMPILE_DEFS NDEBUG;PX_SUPPORT_PVD=0) - -SET(PX_SELECT_COMPONENTS PxFoundation) -FIND_PACKAGE(PxShared REQUIRED) - -# Include the PxShared-exports.cmake file that PxShared created. There's other ways to do this, but there's a bunch of issues with it in a CI environment -# such as - we don't want to be installing any built artifacts on this server, etc. So for now we hack it. - -# Add PxShared as a dependency so that we can use project references -ADD_SUBDIRECTORY(${PXSHARED_ROOT_DIR}/src/compiler/cmake/linux "${CMAKE_CURRENT_BINARY_DIR}/pxshared_bin") - -# Include all of the projects -INCLUDE(NvCloth.cmake) - - diff --git a/NvCloth/compiler/cmake/Linux/NvCloth.cmake b/NvCloth/compiler/cmake/Linux/NvCloth.cmake deleted file mode 100644 index 323efd5..0000000 --- a/NvCloth/compiler/cmake/Linux/NvCloth.cmake +++ /dev/null @@ -1,143 +0,0 @@ -# -# Build NvCloth (PROJECT not SOLUTION) -# - -MESSAGE("[NvCloth]cmake/linux/NvCloth.cmake") - -SET(GW_DEPS_ROOT $ENV{GW_DEPS_ROOT}) -FIND_PACKAGE(PxShared REQUIRED) - -IF(NOT DEFINED NV_CLOTH_ENABLE_CUDA) -MESSAGE("NV_CLOTH_ENABLE_CUDA is not defined, setting to 0") -SET(NV_CLOTH_ENABLE_CUDA 0) -ENDIF() -IF(NOT DEFINED NV_CLOTH_ENABLE_DX11) -SET(NV_CLOTH_ENABLE_DX11 0) -ENDIF() - -MESSAGE("NV_CLOTH_ENABLE_CUDA = " ${NV_CLOTH_ENABLE_CUDA}) - -IF(${NV_CLOTH_ENABLE_CUDA}) -FIND_PACKAGE(CUDA 8 REQUIRED) -MESSAGE("Found CUDA:" ${CUDA_INCLUDE_DIRS}) -ENDIF() - -#FIND_PACKAGE(nvToolsExt REQUIRED) - -SET(NVCLOTH_PLATFORM_INCLUDES - ${NVTOOLSEXT_INCLUDE_DIRS} - PRIVATE ${CUDA_INCLUDE_DIRS} -) - -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 -) -IF(${NV_CLOTH_ENABLE_CUDA}) -LIST(APPEND NVCLOTH_PLATFORM_SOURCE_FILES - ${PROJECT_ROOT_DIR}/src/cuda/CuCheckSuccess.h - ${PROJECT_ROOT_DIR}/src/cuda/CuCloth.cpp - ${PROJECT_ROOT_DIR}/src/cuda/CuCloth.h - ${PROJECT_ROOT_DIR}/src/cuda/CuClothClone.cpp - ${PROJECT_ROOT_DIR}/src/cuda/CuClothData.cpp - ${PROJECT_ROOT_DIR}/src/cuda/CuClothData.h - ${PROJECT_ROOT_DIR}/src/cuda/CuCollision.h - ${PROJECT_ROOT_DIR}/src/cuda/CuContextLock.cpp - ${PROJECT_ROOT_DIR}/src/cuda/CuContextLock.h - ${PROJECT_ROOT_DIR}/src/cuda/CuDevicePointer.h - ${PROJECT_ROOT_DIR}/src/cuda/CuDeviceVector.h - ${PROJECT_ROOT_DIR}/src/cuda/CuFabric.cpp - ${PROJECT_ROOT_DIR}/src/cuda/CuFabric.h - ${PROJECT_ROOT_DIR}/src/cuda/CuFactory.cpp - ${PROJECT_ROOT_DIR}/src/cuda/CuFactory.h - ${PROJECT_ROOT_DIR}/src/cuda/CuPhaseConfig.h - ${PROJECT_ROOT_DIR}/src/cuda/CuPinnedAllocator.h - ${PROJECT_ROOT_DIR}/src/cuda/CuSelfCollision.h - ${PROJECT_ROOT_DIR}/src/cuda/CuSolver.cpp - ${PROJECT_ROOT_DIR}/src/cuda/CuSolver.h - ${PROJECT_ROOT_DIR}/src/cuda/CuSolverKernel.h - ${PROJECT_ROOT_DIR}/src/cuda/CuSolverKernelBlob.h -) -ENDIF() - - -IF(${NV_CLOTH_ENABLE_CUDA}) -set( - CUDA_NVCC_FLAGS - ${CUDA_NVCC_FLAGS}; - - # Options are documented on http://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html#command-option-types-and-notation - # Important: to be able to debug CUDA kernel (correct stepping and workable warp watches), - # you should add the -G (short for --device-debug) option to the line below. - # Don't forget to remove it afterwards, since the code execution will be very slow with this flag. - -use_fast_math -ftz=true -prec-div=false -prec-sqrt=false -lineinfo -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_50,code=compute_50 -D_USE_MATH_DEFINES -DNDEBUG -DPX_PROFILE=1 -) -SET(NVCLOTH_CUDA_FILES - ${PROJECT_ROOT_DIR}/src/cuda/CuSolverKernel.cu -) -set(CUDA_BLOB "${PROJECT_ROOT_DIR}/src/cuda/CuSolverKernelBlob.h") -cuda_include_directories( - ${PXSHARED_ROOT_DIR}/include - ${PXSHARED_ROOT_DIR}/src/foundation/include - ${PROJECT_ROOT_DIR}/include/NvCloth -) -cuda_compile_fatbin(CUDA_FATBIN ${NVCLOTH_CUDA_FILES}) -SET(NVCLOTH_PLATFORM_SOURCE_FILES ${NVCLOTH_PLATFORM_SOURCE_FILES} ${CUDA_BLOB} ${NVCLOTH_CUDA_FILES}) -add_custom_command( - OUTPUT ${CUDA_BLOB} -COMMAND ${CUDA_TOOLKIT_ROOT_DIR}/bin/bin2c --name kCuSolverKernel ${CUDA_FATBIN} > ${CUDA_BLOB} - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} -DEPENDS ${CUDA_FATBIN} - VERBATIM -) -ENDIF() - - - -# Use generator expressions to set config specific preprocessor definitions -SET(NVCLOTH_COMPILE_DEFS - NV_CLOTH_IMPORT=PX_DLL_EXPORT - NV_CLOTH_ENABLE_DX11=0 - - # Common to all configurations - ${PHYSX_LINUX_COMPILE_DEFS};PX_PHYSX_CORE_EXPORTS - - $<$:${PHYSX_LINUX_DEBUG_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=DEBUG;> - $<$:${PHYSX_LINUX_CHECKED_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=CHECKED;> - $<$:${PHYSX_LINUX_PROFILE_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=PROFILE;> - $<$:${PHYSX_LINUX_RELEASE_COMPILE_DEFS};> -) -IF(${NV_CLOTH_ENABLE_CUDA}) -LIST(APPEND NVCLOTH_COMPILE_DEFS - NV_CLOTH_ENABLE_CUDA=1 -) -ELSE() -LIST(APPEND NVCLOTH_COMPILE_DEFS - NV_CLOTH_ENABLE_CUDA=0 -) -ENDIF() - -SET(NVCLOTH_LIBTYPE SHARED) - -# include common NvCloth settings -INCLUDE(../common/NvCloth.cmake) - - -# Add linked libraries -# TARGET_LINK_LIBRARIES(NvCloth PUBLIC ${NVTOOLSEXT_LIBRARIES} LowLevel LowLevelAABB LowLevelCloth LowLevelDynamics LowLevelParticles PhysXCommon PhysXGpu PxFoundation PxPvdSDK PxTask SceneQuery SimulationController) - -TARGET_LINK_LIBRARIES(NvCloth PUBLIC PxFoundation) -TARGET_LINK_LIBRARIES(NvCloth PUBLIC ${CUDA_CUDA_LIBRARY}) - -SET_TARGET_PROPERTIES(NvCloth PROPERTIES - LINK_FLAGS_DEBUG "" - LINK_FLAGS_CHECKED "" - LINK_FLAGS_PROFILE "" - LINK_FLAGS_RELEASE "" -) - -# enable -fPIC so we can link static libs with the editor -SET_TARGET_PROPERTIES(NvCloth PROPERTIES POSITION_INDEPENDENT_CODE TRUE) -MESSAGE("[NvCloth]cmake/linux/NvCloth.cmake END") \ No newline at end of file diff --git a/NvCloth/compiler/cmake/Mac/CMakeLists.txt b/NvCloth/compiler/cmake/Mac/CMakeLists.txt deleted file mode 100644 index b99d60e..0000000 --- a/NvCloth/compiler/cmake/Mac/CMakeLists.txt +++ /dev/null @@ -1,57 +0,0 @@ -cmake_minimum_required(VERSION 3.3) -MESSAGE("[NvCloth]cmake/mac/CMakeList.txt") -include(../common/CMakeLists.txt) - - -IF(NOT DEFINED TARGET_BUILD_PLATFORM) # Not defined, default to mac - SET(TARGET_BUILD_PLATFORM "mac") -ENDIF() - -SET(PLATFORM_LIST mac) - -IF (NOT ${TARGET_BUILD_PLATFORM} IN_LIST PLATFORM_LIST) - MESSAGE(FATAL_ERROR "Invalid platform:" ${TARGET_BUILD_PLATFORM}) -ENDIF() - -IF (DEFINED PX_32BIT) -SET(CMAKE_CXX_FLAGS "-arch i386 -msse2 -std=c++11 -fno-rtti -fno-exceptions -ffast-math -ffunction-sections -fdata-sections -Werror -ferror-limit=0 -Wall -Wextra -fstrict-aliasing -Wstrict-aliasing=2 -Weverything -Wno-documentation-deprecated-sync -Wno-documentation-unknown-command -Wno-float-equal -Wno-padded -Wno-weak-vtables -Wno-cast-align -Wno-conversion -Wno-missing-noreturn -Wno-missing-variable-declarations -Wno-shift-sign-overflow -Wno-covered-switch-default -Wno-exit-time-destructors -Wno-global-constructors -Wno-missing-prototypes -Wno-unreachable-code -Wno-unused-macros -Wno-unused-member-function -Wno-used-but-marked-unused -Wno-weak-template-vtables -Wno-deprecated -Wno-non-virtual-dtor -Wno-invalid-noreturn -Wno-return-type-c-linkage -Wno-reserved-id-macro -Wno-c++98-compat-pedantic -Wno-unused-local-typedef -Wno-old-style-cast -Wno-newline-eof -Wno-unused-private-field -Wno-undefined-reinterpret-cast -Wno-invalid-offsetof -gdwarf-2 -Wno-unused-value -Wno-format-nonliteral -Wno-undef") -ELSEIF() -SET(CMAKE_CXX_FLAGS "-arch x86_64 -msse2 -std=c++11 -fno-rtti -fno-exceptions -ffast-math -ffunction-sections -fdata-sections -Werror -ferror-limit=0 -Wall -Wextra -fstrict-aliasing -Wstrict-aliasing=2 -Weverything -Wno-documentation-deprecated-sync -Wno-documentation-unknown-command -Wno-float-equal -Wno-padded -Wno-weak-vtables -Wno-cast-align -Wno-conversion -Wno-missing-noreturn -Wno-missing-variable-declarations -Wno-shift-sign-overflow -Wno-covered-switch-default -Wno-exit-time-destructors -Wno-global-constructors -Wno-missing-prototypes -Wno-unreachable-code -Wno-unused-macros -Wno-unused-member-function -Wno-used-but-marked-unused -Wno-weak-template-vtables -Wno-deprecated -Wno-non-virtual-dtor -Wno-invalid-noreturn -Wno-return-type-c-linkage -Wno-reserved-id-macro -Wno-c++98-compat-pedantic -Wno-unused-local-typedef -Wno-old-style-cast -Wno-newline-eof -Wno-unused-private-field -Wno-undefined-reinterpret-cast -Wno-invalid-offsetof -gdwarf-2 -Wno-unused-value -Wno-format-nonliteral -Wno-undef") -ENDIF() - -SET(CMAKE_SHARED_LINKER_FLAGS "") - -# Build debug info for all configurations -SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g") -SET(CMAKE_CXX_FLAGS_CHECKED "-O3 -g") -SET(CMAKE_CXX_FLAGS_PROFILE "-O3 -g") -SET(CMAKE_CXX_FLAGS_RELEASE "-O3 -g") - -# Build libs compatible with OS X 10.9 -SET(CMAKE_OSX_DEPLOYMENT_TARGET "10.9") - -#set(CMAKE_XCODE_ATTRIBUTE_DEBUG_INFORMATION_FORMAT "dwarf-with-dsym") - -# Controls PX_NVTX for all projects on mac -SET(PHYSX_MAC_ENABLE_NVTX 0) - -# Disable cuda and dx for all projects on mac -SET(PHYSX_MAC_COMPILE_DEFS DISABLE_COMPUTE_PHYSX) -SET(PHYSX_MAC_DEBUG_COMPILE_DEFS _DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) -SET(PHYSX_MAC_CHECKED_COMPILE_DEFS NDEBUG;PX_CHECKED=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) -SET(PHYSX_MAC_PROFILE_COMPILE_DEFS NDEBUG;PX_PROFILE=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) -SET(PHYSX_MAC_RELEASE_COMPILE_DEFS NDEBUG;PX_SUPPORT_PVD=0) - -SET(PX_SELECT_COMPONENTS PxFoundation) -FIND_PACKAGE(PxShared REQUIRED) - -# Include the PxShared-exports.cmake file that PxShared created. There's other ways to do this, but there's a bunch of issues with it in a CI environment -# such as - we don't want to be installing any built artifacts on this server, etc. So for now we hack it. - -# Add PxShared as a dependency so that we can use project references -ADD_SUBDIRECTORY(${PXSHARED_ROOT_DIR}/src/compiler/cmake/mac "${CMAKE_CURRENT_BINARY_DIR}/pxshared_bin") - -# Include all of the projects -INCLUDE(NvCloth.cmake) - - diff --git a/NvCloth/compiler/cmake/Mac/NvCloth.cmake b/NvCloth/compiler/cmake/Mac/NvCloth.cmake deleted file mode 100644 index faea6fd..0000000 --- a/NvCloth/compiler/cmake/Mac/NvCloth.cmake +++ /dev/null @@ -1,59 +0,0 @@ -# -# Build NvCloth (PROJECT not SOLUTION) -# - -MESSAGE("[NvCloth]cmake/mac/NvCloth.cmake") - -SET(GW_DEPS_ROOT $ENV{GW_DEPS_ROOT}) -FIND_PACKAGE(PxShared REQUIRED) - - -#FIND_PACKAGE(nvToolsExt REQUIRED) - -SET(NVCLOTH_PLATFORM_INCLUDES - ${NVTOOLSEXT_INCLUDE_DIRS} -) - -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 -) - -# Use generator expressions to set config specific preprocessor definitions -SET(NVCLOTH_COMPILE_DEFS - NV_CLOTH_IMPORT=PX_DLL_EXPORT - NV_CLOTH_ENABLE_DX11=0 - NV_CLOTH_ENABLE_CUDA=0 - - # Common to all configurations - ${PHYSX_MAC_COMPILE_DEFS};PX_PHYSX_CORE_EXPORTS - - $<$:${PHYSX_MAC_DEBUG_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=DEBUG;> - $<$:${PHYSX_MAC_CHECKED_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=CHECKED;> - $<$:${PHYSX_MAC_PROFILE_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=PROFILE;> - $<$:${PHYSX_MAC_RELEASE_COMPILE_DEFS};> -) - -SET(NVCLOTH_LIBTYPE SHARED) - -# include common PhysX settings -INCLUDE(../common/NvCloth.cmake) - - -# Add linked libraries -# TARGET_LINK_LIBRARIES(NvCloth PUBLIC ${NVTOOLSEXT_LIBRARIES} LowLevel LowLevelAABB LowLevelCloth LowLevelDynamics LowLevelParticles PhysXCommon PhysXGpu PxFoundation PxPvdSDK PxTask SceneQuery SimulationController) - -TARGET_LINK_LIBRARIES(NvCloth PUBLIC PxFoundation) - -SET_TARGET_PROPERTIES(NvCloth PROPERTIES - LINK_FLAGS_DEBUG "" - LINK_FLAGS_CHECKED "" - LINK_FLAGS_PROFILE "" - LINK_FLAGS_RELEASE "" -) - -# enable -fPIC so we can link static libs with the editor -SET_TARGET_PROPERTIES(NvCloth PROPERTIES POSITION_INDEPENDENT_CODE TRUE) -MESSAGE("[NvCloth]cmake/mac/NvCloth.cmake END") \ No newline at end of file diff --git a/NvCloth/compiler/cmake/linux/CMakeLists.txt b/NvCloth/compiler/cmake/linux/CMakeLists.txt new file mode 100644 index 0000000..d6c8db6 --- /dev/null +++ b/NvCloth/compiler/cmake/linux/CMakeLists.txt @@ -0,0 +1,55 @@ +cmake_minimum_required(VERSION 3.3) +MESSAGE("[NvCloth]cmake/linux/CMakeList.txt") +include(../common/CMakeLists.txt) + + +IF(NOT DEFINED TARGET_BUILD_PLATFORM) # Not defined, default to linux + SET(TARGET_BUILD_PLATFORM "linux") +ENDIF() + +SET(PLATFORM_LIST linux) + +IF (NOT ${TARGET_BUILD_PLATFORM} IN_LIST PLATFORM_LIST) + MESSAGE(FATAL_ERROR "Invalid platform:" ${TARGET_BUILD_PLATFORM}) +ENDIF() + +IF (DEFINED PX_32BIT) +SET(CMAKE_CXX_FLAGS "-arch i386 -msse2 -std=c++11 -fno-rtti -fno-exceptions -ffast-math -ffunction-sections -fdata-sections -Werror -ferror-limit=0 -Wall -Wextra -fstrict-aliasing -Wstrict-aliasing=2 -Weverything -Wno-documentation-deprecated-sync -Wno-documentation-unknown-command -Wno-float-equal -Wno-padded -Wno-weak-vtables -Wno-cast-align -Wno-conversion -Wno-missing-noreturn -Wno-missing-variable-declarations -Wno-shift-sign-overflow -Wno-covered-switch-default -Wno-exit-time-destructors -Wno-global-constructors -Wno-missing-prototypes -Wno-unreachable-code -Wno-unused-macros -Wno-unused-member-function -Wno-used-but-marked-unused -Wno-weak-template-vtables -Wno-deprecated -Wno-non-virtual-dtor -Wno-invalid-noreturn -Wno-return-type-c-linkage -Wno-reserved-id-macro -Wno-c++98-compat-pedantic -Wno-unused-local-typedef -Wno-old-style-cast -Wno-newline-eof -Wno-unused-private-field -Wno-undefined-reinterpret-cast -Wno-invalid-offsetof -gdwarf-2 -Wno-unused-value -Wno-format-nonliteral -Wno-undef") +ELSEIF() +SET(CMAKE_CXX_FLAGS "-arch x86_64 -msse2 -std=c++11 -fno-rtti -fno-exceptions -ffast-math -ffunction-sections -fdata-sections -Werror -ferror-limit=0 -Wall -Wextra -fstrict-aliasing -Wstrict-aliasing=2 -Weverything -Wno-documentation-deprecated-sync -Wno-documentation-unknown-command -Wno-float-equal -Wno-padded -Wno-weak-vtables -Wno-cast-align -Wno-conversion -Wno-missing-noreturn -Wno-missing-variable-declarations -Wno-shift-sign-overflow -Wno-covered-switch-default -Wno-exit-time-destructors -Wno-global-constructors -Wno-missing-prototypes -Wno-unreachable-code -Wno-unused-macros -Wno-unused-member-function -Wno-used-but-marked-unused -Wno-weak-template-vtables -Wno-deprecated -Wno-non-virtual-dtor -Wno-invalid-noreturn -Wno-return-type-c-linkage -Wno-reserved-id-macro -Wno-c++98-compat-pedantic -Wno-unused-local-typedef -Wno-old-style-cast -Wno-newline-eof -Wno-unused-private-field -Wno-undefined-reinterpret-cast -Wno-invalid-offsetof -gdwarf-2 -Wno-unused-value -Wno-format-nonliteral -Wno-undef") +ENDIF() + +SET(CMAKE_SHARED_LINKER_FLAGS "") + +# Build debug info for all configurations +SET(CMAKE_CXX_FLAGS_DEBUG "-std=c++11 -O0 -g3 -gdwarf-2") +SET(CMAKE_CXX_FLAGS_CHECKED "-std=c++11 -g3 -gdwarf-2 -O3") +SET(CMAKE_CXX_FLAGS_PROFILE "-std=c++11 -O3 -g") +SET(CMAKE_CXX_FLAGS_RELEASE "-std=c++11 -O3 -g") + + +#set(CMAKE_XCODE_ATTRIBUTE_DEBUG_INFORMATION_FORMAT "dwarf-with-dsym") + +# Controls PX_NVTX for all projects on linux +SET(PHYSX_LINUX_ENABLE_NVTX 0) + +# Disable cuda and dx for all projects on linux +SET(PHYSX_LINUX_COMPILE_DEFS DISABLE_COMPUTE_PHYSX) +SET(PHYSX_LINUX_DEBUG_COMPILE_DEFS _DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) +SET(PHYSX_LINUX_CHECKED_COMPILE_DEFS NDEBUG;PX_CHECKED=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) +SET(PHYSX_LINUX_PROFILE_COMPILE_DEFS NDEBUG;PX_PROFILE=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) +SET(PHYSX_LINUX_RELEASE_COMPILE_DEFS NDEBUG;PX_SUPPORT_PVD=0) + +SET(PX_SELECT_COMPONENTS PxFoundation) +FIND_PACKAGE(PxShared REQUIRED) + +# Include the PxShared-exports.cmake file that PxShared created. There's other ways to do this, but there's a bunch of issues with it in a CI environment +# such as - we don't want to be installing any built artifacts on this server, etc. So for now we hack it. + +# Add PxShared as a dependency so that we can use project references +ADD_SUBDIRECTORY(${PXSHARED_ROOT_DIR}/src/compiler/cmake/linux "${CMAKE_CURRENT_BINARY_DIR}/pxshared_bin") + +# Include all of the projects +INCLUDE(NvCloth.cmake) + + diff --git a/NvCloth/compiler/cmake/linux/NvCloth.cmake b/NvCloth/compiler/cmake/linux/NvCloth.cmake new file mode 100644 index 0000000..323efd5 --- /dev/null +++ b/NvCloth/compiler/cmake/linux/NvCloth.cmake @@ -0,0 +1,143 @@ +# +# Build NvCloth (PROJECT not SOLUTION) +# + +MESSAGE("[NvCloth]cmake/linux/NvCloth.cmake") + +SET(GW_DEPS_ROOT $ENV{GW_DEPS_ROOT}) +FIND_PACKAGE(PxShared REQUIRED) + +IF(NOT DEFINED NV_CLOTH_ENABLE_CUDA) +MESSAGE("NV_CLOTH_ENABLE_CUDA is not defined, setting to 0") +SET(NV_CLOTH_ENABLE_CUDA 0) +ENDIF() +IF(NOT DEFINED NV_CLOTH_ENABLE_DX11) +SET(NV_CLOTH_ENABLE_DX11 0) +ENDIF() + +MESSAGE("NV_CLOTH_ENABLE_CUDA = " ${NV_CLOTH_ENABLE_CUDA}) + +IF(${NV_CLOTH_ENABLE_CUDA}) +FIND_PACKAGE(CUDA 8 REQUIRED) +MESSAGE("Found CUDA:" ${CUDA_INCLUDE_DIRS}) +ENDIF() + +#FIND_PACKAGE(nvToolsExt REQUIRED) + +SET(NVCLOTH_PLATFORM_INCLUDES + ${NVTOOLSEXT_INCLUDE_DIRS} + PRIVATE ${CUDA_INCLUDE_DIRS} +) + +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 +) +IF(${NV_CLOTH_ENABLE_CUDA}) +LIST(APPEND NVCLOTH_PLATFORM_SOURCE_FILES + ${PROJECT_ROOT_DIR}/src/cuda/CuCheckSuccess.h + ${PROJECT_ROOT_DIR}/src/cuda/CuCloth.cpp + ${PROJECT_ROOT_DIR}/src/cuda/CuCloth.h + ${PROJECT_ROOT_DIR}/src/cuda/CuClothClone.cpp + ${PROJECT_ROOT_DIR}/src/cuda/CuClothData.cpp + ${PROJECT_ROOT_DIR}/src/cuda/CuClothData.h + ${PROJECT_ROOT_DIR}/src/cuda/CuCollision.h + ${PROJECT_ROOT_DIR}/src/cuda/CuContextLock.cpp + ${PROJECT_ROOT_DIR}/src/cuda/CuContextLock.h + ${PROJECT_ROOT_DIR}/src/cuda/CuDevicePointer.h + ${PROJECT_ROOT_DIR}/src/cuda/CuDeviceVector.h + ${PROJECT_ROOT_DIR}/src/cuda/CuFabric.cpp + ${PROJECT_ROOT_DIR}/src/cuda/CuFabric.h + ${PROJECT_ROOT_DIR}/src/cuda/CuFactory.cpp + ${PROJECT_ROOT_DIR}/src/cuda/CuFactory.h + ${PROJECT_ROOT_DIR}/src/cuda/CuPhaseConfig.h + ${PROJECT_ROOT_DIR}/src/cuda/CuPinnedAllocator.h + ${PROJECT_ROOT_DIR}/src/cuda/CuSelfCollision.h + ${PROJECT_ROOT_DIR}/src/cuda/CuSolver.cpp + ${PROJECT_ROOT_DIR}/src/cuda/CuSolver.h + ${PROJECT_ROOT_DIR}/src/cuda/CuSolverKernel.h + ${PROJECT_ROOT_DIR}/src/cuda/CuSolverKernelBlob.h +) +ENDIF() + + +IF(${NV_CLOTH_ENABLE_CUDA}) +set( + CUDA_NVCC_FLAGS + ${CUDA_NVCC_FLAGS}; + + # Options are documented on http://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html#command-option-types-and-notation + # Important: to be able to debug CUDA kernel (correct stepping and workable warp watches), + # you should add the -G (short for --device-debug) option to the line below. + # Don't forget to remove it afterwards, since the code execution will be very slow with this flag. + -use_fast_math -ftz=true -prec-div=false -prec-sqrt=false -lineinfo -gencode arch=compute_20,code=sm_20 -gencode arch=compute_30,code=sm_30 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_50,code=compute_50 -D_USE_MATH_DEFINES -DNDEBUG -DPX_PROFILE=1 +) +SET(NVCLOTH_CUDA_FILES + ${PROJECT_ROOT_DIR}/src/cuda/CuSolverKernel.cu +) +set(CUDA_BLOB "${PROJECT_ROOT_DIR}/src/cuda/CuSolverKernelBlob.h") +cuda_include_directories( + ${PXSHARED_ROOT_DIR}/include + ${PXSHARED_ROOT_DIR}/src/foundation/include + ${PROJECT_ROOT_DIR}/include/NvCloth +) +cuda_compile_fatbin(CUDA_FATBIN ${NVCLOTH_CUDA_FILES}) +SET(NVCLOTH_PLATFORM_SOURCE_FILES ${NVCLOTH_PLATFORM_SOURCE_FILES} ${CUDA_BLOB} ${NVCLOTH_CUDA_FILES}) +add_custom_command( + OUTPUT ${CUDA_BLOB} +COMMAND ${CUDA_TOOLKIT_ROOT_DIR}/bin/bin2c --name kCuSolverKernel ${CUDA_FATBIN} > ${CUDA_BLOB} + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} +DEPENDS ${CUDA_FATBIN} + VERBATIM +) +ENDIF() + + + +# Use generator expressions to set config specific preprocessor definitions +SET(NVCLOTH_COMPILE_DEFS + NV_CLOTH_IMPORT=PX_DLL_EXPORT + NV_CLOTH_ENABLE_DX11=0 + + # Common to all configurations + ${PHYSX_LINUX_COMPILE_DEFS};PX_PHYSX_CORE_EXPORTS + + $<$:${PHYSX_LINUX_DEBUG_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=DEBUG;> + $<$:${PHYSX_LINUX_CHECKED_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=CHECKED;> + $<$:${PHYSX_LINUX_PROFILE_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=PROFILE;> + $<$:${PHYSX_LINUX_RELEASE_COMPILE_DEFS};> +) +IF(${NV_CLOTH_ENABLE_CUDA}) +LIST(APPEND NVCLOTH_COMPILE_DEFS + NV_CLOTH_ENABLE_CUDA=1 +) +ELSE() +LIST(APPEND NVCLOTH_COMPILE_DEFS + NV_CLOTH_ENABLE_CUDA=0 +) +ENDIF() + +SET(NVCLOTH_LIBTYPE SHARED) + +# include common NvCloth settings +INCLUDE(../common/NvCloth.cmake) + + +# Add linked libraries +# TARGET_LINK_LIBRARIES(NvCloth PUBLIC ${NVTOOLSEXT_LIBRARIES} LowLevel LowLevelAABB LowLevelCloth LowLevelDynamics LowLevelParticles PhysXCommon PhysXGpu PxFoundation PxPvdSDK PxTask SceneQuery SimulationController) + +TARGET_LINK_LIBRARIES(NvCloth PUBLIC PxFoundation) +TARGET_LINK_LIBRARIES(NvCloth PUBLIC ${CUDA_CUDA_LIBRARY}) + +SET_TARGET_PROPERTIES(NvCloth PROPERTIES + LINK_FLAGS_DEBUG "" + LINK_FLAGS_CHECKED "" + LINK_FLAGS_PROFILE "" + LINK_FLAGS_RELEASE "" +) + +# enable -fPIC so we can link static libs with the editor +SET_TARGET_PROPERTIES(NvCloth PROPERTIES POSITION_INDEPENDENT_CODE TRUE) +MESSAGE("[NvCloth]cmake/linux/NvCloth.cmake END") \ No newline at end of file diff --git a/NvCloth/compiler/cmake/mac/CMakeLists.txt b/NvCloth/compiler/cmake/mac/CMakeLists.txt new file mode 100644 index 0000000..b99d60e --- /dev/null +++ b/NvCloth/compiler/cmake/mac/CMakeLists.txt @@ -0,0 +1,57 @@ +cmake_minimum_required(VERSION 3.3) +MESSAGE("[NvCloth]cmake/mac/CMakeList.txt") +include(../common/CMakeLists.txt) + + +IF(NOT DEFINED TARGET_BUILD_PLATFORM) # Not defined, default to mac + SET(TARGET_BUILD_PLATFORM "mac") +ENDIF() + +SET(PLATFORM_LIST mac) + +IF (NOT ${TARGET_BUILD_PLATFORM} IN_LIST PLATFORM_LIST) + MESSAGE(FATAL_ERROR "Invalid platform:" ${TARGET_BUILD_PLATFORM}) +ENDIF() + +IF (DEFINED PX_32BIT) +SET(CMAKE_CXX_FLAGS "-arch i386 -msse2 -std=c++11 -fno-rtti -fno-exceptions -ffast-math -ffunction-sections -fdata-sections -Werror -ferror-limit=0 -Wall -Wextra -fstrict-aliasing -Wstrict-aliasing=2 -Weverything -Wno-documentation-deprecated-sync -Wno-documentation-unknown-command -Wno-float-equal -Wno-padded -Wno-weak-vtables -Wno-cast-align -Wno-conversion -Wno-missing-noreturn -Wno-missing-variable-declarations -Wno-shift-sign-overflow -Wno-covered-switch-default -Wno-exit-time-destructors -Wno-global-constructors -Wno-missing-prototypes -Wno-unreachable-code -Wno-unused-macros -Wno-unused-member-function -Wno-used-but-marked-unused -Wno-weak-template-vtables -Wno-deprecated -Wno-non-virtual-dtor -Wno-invalid-noreturn -Wno-return-type-c-linkage -Wno-reserved-id-macro -Wno-c++98-compat-pedantic -Wno-unused-local-typedef -Wno-old-style-cast -Wno-newline-eof -Wno-unused-private-field -Wno-undefined-reinterpret-cast -Wno-invalid-offsetof -gdwarf-2 -Wno-unused-value -Wno-format-nonliteral -Wno-undef") +ELSEIF() +SET(CMAKE_CXX_FLAGS "-arch x86_64 -msse2 -std=c++11 -fno-rtti -fno-exceptions -ffast-math -ffunction-sections -fdata-sections -Werror -ferror-limit=0 -Wall -Wextra -fstrict-aliasing -Wstrict-aliasing=2 -Weverything -Wno-documentation-deprecated-sync -Wno-documentation-unknown-command -Wno-float-equal -Wno-padded -Wno-weak-vtables -Wno-cast-align -Wno-conversion -Wno-missing-noreturn -Wno-missing-variable-declarations -Wno-shift-sign-overflow -Wno-covered-switch-default -Wno-exit-time-destructors -Wno-global-constructors -Wno-missing-prototypes -Wno-unreachable-code -Wno-unused-macros -Wno-unused-member-function -Wno-used-but-marked-unused -Wno-weak-template-vtables -Wno-deprecated -Wno-non-virtual-dtor -Wno-invalid-noreturn -Wno-return-type-c-linkage -Wno-reserved-id-macro -Wno-c++98-compat-pedantic -Wno-unused-local-typedef -Wno-old-style-cast -Wno-newline-eof -Wno-unused-private-field -Wno-undefined-reinterpret-cast -Wno-invalid-offsetof -gdwarf-2 -Wno-unused-value -Wno-format-nonliteral -Wno-undef") +ENDIF() + +SET(CMAKE_SHARED_LINKER_FLAGS "") + +# Build debug info for all configurations +SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g") +SET(CMAKE_CXX_FLAGS_CHECKED "-O3 -g") +SET(CMAKE_CXX_FLAGS_PROFILE "-O3 -g") +SET(CMAKE_CXX_FLAGS_RELEASE "-O3 -g") + +# Build libs compatible with OS X 10.9 +SET(CMAKE_OSX_DEPLOYMENT_TARGET "10.9") + +#set(CMAKE_XCODE_ATTRIBUTE_DEBUG_INFORMATION_FORMAT "dwarf-with-dsym") + +# Controls PX_NVTX for all projects on mac +SET(PHYSX_MAC_ENABLE_NVTX 0) + +# Disable cuda and dx for all projects on mac +SET(PHYSX_MAC_COMPILE_DEFS DISABLE_COMPUTE_PHYSX) +SET(PHYSX_MAC_DEBUG_COMPILE_DEFS _DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) +SET(PHYSX_MAC_CHECKED_COMPILE_DEFS NDEBUG;PX_CHECKED=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) +SET(PHYSX_MAC_PROFILE_COMPILE_DEFS NDEBUG;PX_PROFILE=1;PX_NVTX=${PHYSX_MAC_ENABLE_NVTX};PX_SUPPORT_PVD=0) +SET(PHYSX_MAC_RELEASE_COMPILE_DEFS NDEBUG;PX_SUPPORT_PVD=0) + +SET(PX_SELECT_COMPONENTS PxFoundation) +FIND_PACKAGE(PxShared REQUIRED) + +# Include the PxShared-exports.cmake file that PxShared created. There's other ways to do this, but there's a bunch of issues with it in a CI environment +# such as - we don't want to be installing any built artifacts on this server, etc. So for now we hack it. + +# Add PxShared as a dependency so that we can use project references +ADD_SUBDIRECTORY(${PXSHARED_ROOT_DIR}/src/compiler/cmake/mac "${CMAKE_CURRENT_BINARY_DIR}/pxshared_bin") + +# Include all of the projects +INCLUDE(NvCloth.cmake) + + diff --git a/NvCloth/compiler/cmake/mac/NvCloth.cmake b/NvCloth/compiler/cmake/mac/NvCloth.cmake new file mode 100644 index 0000000..faea6fd --- /dev/null +++ b/NvCloth/compiler/cmake/mac/NvCloth.cmake @@ -0,0 +1,59 @@ +# +# Build NvCloth (PROJECT not SOLUTION) +# + +MESSAGE("[NvCloth]cmake/mac/NvCloth.cmake") + +SET(GW_DEPS_ROOT $ENV{GW_DEPS_ROOT}) +FIND_PACKAGE(PxShared REQUIRED) + + +#FIND_PACKAGE(nvToolsExt REQUIRED) + +SET(NVCLOTH_PLATFORM_INCLUDES + ${NVTOOLSEXT_INCLUDE_DIRS} +) + +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 +) + +# Use generator expressions to set config specific preprocessor definitions +SET(NVCLOTH_COMPILE_DEFS + NV_CLOTH_IMPORT=PX_DLL_EXPORT + NV_CLOTH_ENABLE_DX11=0 + NV_CLOTH_ENABLE_CUDA=0 + + # Common to all configurations + ${PHYSX_MAC_COMPILE_DEFS};PX_PHYSX_CORE_EXPORTS + + $<$:${PHYSX_MAC_DEBUG_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=DEBUG;> + $<$:${PHYSX_MAC_CHECKED_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=CHECKED;> + $<$:${PHYSX_MAC_PROFILE_COMPILE_DEFS};PX_PHYSX_DLL_NAME_POSTFIX=PROFILE;> + $<$:${PHYSX_MAC_RELEASE_COMPILE_DEFS};> +) + +SET(NVCLOTH_LIBTYPE SHARED) + +# include common PhysX settings +INCLUDE(../common/NvCloth.cmake) + + +# Add linked libraries +# TARGET_LINK_LIBRARIES(NvCloth PUBLIC ${NVTOOLSEXT_LIBRARIES} LowLevel LowLevelAABB LowLevelCloth LowLevelDynamics LowLevelParticles PhysXCommon PhysXGpu PxFoundation PxPvdSDK PxTask SceneQuery SimulationController) + +TARGET_LINK_LIBRARIES(NvCloth PUBLIC PxFoundation) + +SET_TARGET_PROPERTIES(NvCloth PROPERTIES + LINK_FLAGS_DEBUG "" + LINK_FLAGS_CHECKED "" + LINK_FLAGS_PROFILE "" + LINK_FLAGS_RELEASE "" +) + +# enable -fPIC so we can link static libs with the editor +SET_TARGET_PROPERTIES(NvCloth PROPERTIES POSITION_INDEPENDENT_CODE TRUE) +MESSAGE("[NvCloth]cmake/mac/NvCloth.cmake END") \ No newline at end of file -- cgit v1.2.3