aboutsummaryrefslogtreecommitdiff
path: root/PxShared/src/compiler/cmake/Mac
diff options
context:
space:
mode:
authormtamis <[email protected]>2017-02-15 16:06:25 +0100
committermtamis <[email protected]>2017-02-15 16:06:25 +0100
commit85305930aeeb1d513e23522bd91f29ba81aa6d14 (patch)
tree45f1bb20a45a300d1fef107e436cac95602a0e57 /PxShared/src/compiler/cmake/Mac
downloadnvcloth-85305930aeeb1d513e23522bd91f29ba81aa6d14.tar.xz
nvcloth-85305930aeeb1d513e23522bd91f29ba81aa6d14.zip
NvCloth library v1.0.0
Diffstat (limited to 'PxShared/src/compiler/cmake/Mac')
-rw-r--r--PxShared/src/compiler/cmake/Mac/CMakeLists.txt48
-rw-r--r--PxShared/src/compiler/cmake/Mac/PsFastXml.cmake22
-rw-r--r--PxShared/src/compiler/cmake/Mac/PxFoundation.cmake40
-rw-r--r--PxShared/src/compiler/cmake/Mac/PxPvdSDK.cmake28
-rw-r--r--PxShared/src/compiler/cmake/Mac/PxTask.cmake18
5 files changed, 156 insertions, 0 deletions
diff --git a/PxShared/src/compiler/cmake/Mac/CMakeLists.txt b/PxShared/src/compiler/cmake/Mac/CMakeLists.txt
new file mode 100644
index 0000000..beb06bc
--- /dev/null
+++ b/PxShared/src/compiler/cmake/Mac/CMakeLists.txt
@@ -0,0 +1,48 @@
+cmake_minimum_required(VERSION 3.3)
+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()
+
+SET(CMAKE_CXX_FLAGS "-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")
+
+IF (DEFINED PX_32BIT)
+SET(CMAKE_CXX_FLAGS "-arch i386 ${CMAKE_CXX_FLAGS}")
+ENDIF()
+IF (DEFINED PX_64BIT)
+SET(CMAKE_CXX_FLAGS "-arch x86_64 ${CMAKE_CXX_FLAGS}")
+ENDIF()
+
+SET(CMAKE_SHARED_LINKER_FLAGS "")
+
+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")
+
+SET(PXSHARED_MAC_COMPILE_DEFS _LIB;DISABLE_CUDA_PHYSX;DISABLE_COMPUTE_PHYSX)
+SET(PXSHARED_MAC_DEBUG_COMPILE_DEFS _DEBUG;PX_DEBUG=1;PX_CHECKED=1)
+SET(PXSHARED_MAC_CHECKED_COMPILE_DEFS NDEBUG;PX_CHECKED=1)
+SET(PXSHARED_MAC_PROFILE_COMPILE_DEFS NDEBUG;PX_PROFILE=1)
+SET(PXSHARED_MAC_RELEASE_COMPILE_DEFS NDEBUG)
+
+# NOTE: PxCudaContextManager excluded on this platform
+
+# Include project cmake files here
+INCLUDE(PxFoundation.cmake)
+INCLUDE(PsFastXml.cmake)
+INCLUDE(PxPvdSDK.cmake)
+INCLUDE(PxTask.cmake)
diff --git a/PxShared/src/compiler/cmake/Mac/PsFastXml.cmake b/PxShared/src/compiler/cmake/Mac/PsFastXml.cmake
new file mode 100644
index 0000000..7f140e0
--- /dev/null
+++ b/PxShared/src/compiler/cmake/Mac/PsFastXml.cmake
@@ -0,0 +1,22 @@
+#
+# Build PsFastXml
+#
+
+SET(PXSHARED_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../../../../src)
+
+SET(LL_SOURCE_DIR ${PXSHARED_SOURCE_DIR}/fastxml)
+
+# Use generator expressions to set config specific preprocessor definitions
+SET(PSFASTXML_COMPILE_DEFS
+
+ # Common to all configurations
+ ${PXSHARED_MAC_COMPILE_DEFS};PX_FOUNDATION_DLL=0;
+
+ $<$<CONFIG:debug>:${PXSHARED_MAC_DEBUG_COMPILE_DEFS};>
+ $<$<CONFIG:checked>:${PXSHARED_MAC_CHECKED_COMPILE_DEFS};>
+ $<$<CONFIG:profile>:${PXSHARED_MAC_PROFILE_COMPILE_DEFS};>
+ $<$<CONFIG:release>:${PXSHARED_MAC_RELEASE_COMPILE_DEFS};>
+)
+
+# include PsFastXml common
+INCLUDE(../common/PsFastXml.cmake) \ No newline at end of file
diff --git a/PxShared/src/compiler/cmake/Mac/PxFoundation.cmake b/PxShared/src/compiler/cmake/Mac/PxFoundation.cmake
new file mode 100644
index 0000000..2a21910
--- /dev/null
+++ b/PxShared/src/compiler/cmake/Mac/PxFoundation.cmake
@@ -0,0 +1,40 @@
+#
+# Build PxFoundation
+#
+
+SET(PXSHARED_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../../../../src)
+
+SET(LL_SOURCE_DIR ${PXSHARED_SOURCE_DIR}/foundation)
+
+SET(PXFOUNDATION_LIBTYPE SHARED)
+
+SET(PXFOUNDATION_PLATFORM_FILES
+ ${LL_SOURCE_DIR}/src/unix/PsUnixAtomic.cpp
+ ${LL_SOURCE_DIR}/src/unix/PsUnixCpu.cpp
+ ${LL_SOURCE_DIR}/src/unix/PsUnixFPU.cpp
+ ${LL_SOURCE_DIR}/src/unix/PsUnixMutex.cpp
+ ${LL_SOURCE_DIR}/src/unix/PsUnixPrintString.cpp
+ ${LL_SOURCE_DIR}/src/unix/PsUnixSList.cpp
+ ${LL_SOURCE_DIR}/src/unix/PsUnixSocket.cpp
+ ${LL_SOURCE_DIR}/src/unix/PsUnixSync.cpp
+ ${LL_SOURCE_DIR}/src/unix/PsUnixThread.cpp
+ ${LL_SOURCE_DIR}/src/unix/PsUnixTime.cpp
+)
+
+SET(PXFOUNDATION_PLATFORM_INCLUDES
+ ${LL_SOURCE_DIR}/include/mac
+)
+
+SET(PXFOUNDATION_COMPILE_DEFS
+
+ # Common to all configurations
+ ${PXSHARED_MAC_COMPILE_DEFS}
+
+ $<$<CONFIG:debug>:${PXSHARED_MAC_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${PXSHARED_MAC_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${PXSHARED_MAC_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${PXSHARED_MAC_RELEASE_COMPILE_DEFS}>
+)
+
+# include PxFoundation common
+INCLUDE(../common/PxFoundation.cmake) \ No newline at end of file
diff --git a/PxShared/src/compiler/cmake/Mac/PxPvdSDK.cmake b/PxShared/src/compiler/cmake/Mac/PxPvdSDK.cmake
new file mode 100644
index 0000000..c236882
--- /dev/null
+++ b/PxShared/src/compiler/cmake/Mac/PxPvdSDK.cmake
@@ -0,0 +1,28 @@
+#
+# Build PxPvdSDK
+#
+
+SET(PXSHARED_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../../../../src)
+
+SET(LL_SOURCE_DIR ${PXSHARED_SOURCE_DIR}/pvd)
+
+SET(PXPVDSDK_LIBTYPE SHARED)
+
+# Use generator expressions to set config specific preprocessor definitions
+SET(PXPVDSDK_COMPILE_DEFS
+
+ # Common to all configurations
+ ${PXSHARED_MAC_COMPILE_DEFS}
+
+ $<$<CONFIG:debug>:${PXSHARED_MAC_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${PXSHARED_MAC_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${PXSHARED_MAC_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${PXSHARED_MAC_RELEASE_COMPILE_DEFS}>
+)
+
+# include PxPvdSDK common
+INCLUDE(../common/PxPvdSDK.cmake)
+
+# Add linked libraries
+TARGET_LINK_LIBRARIES(PxPvdSDK PRIVATE PxFoundation)
+
diff --git a/PxShared/src/compiler/cmake/Mac/PxTask.cmake b/PxShared/src/compiler/cmake/Mac/PxTask.cmake
new file mode 100644
index 0000000..2326a1f
--- /dev/null
+++ b/PxShared/src/compiler/cmake/Mac/PxTask.cmake
@@ -0,0 +1,18 @@
+#
+# Build PxTask
+#
+
+SET(PXSHARED_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../../../../src)
+
+SET(LL_SOURCE_DIR ${PXSHARED_SOURCE_DIR}/task)
+
+SET(PXTASK_COMPILE_DEFS
+ ${PXSHARED_MAC_COMPILE_DEFS};PX_FOUNDATION_DLL=0;
+ $<$<CONFIG:debug>:${PXSHARED_MAC_DEBUG_COMPILE_DEFS};>
+ $<$<CONFIG:checked>:${PXSHARED_MAC_CHECKED_COMPILE_DEFS};>
+ $<$<CONFIG:profile>:${PXSHARED_MAC_PROFILE_COMPILE_DEFS};>
+ $<$<CONFIG:release>:${PXSHARED_MAC_RELEASE_COMPILE_DEFS};>
+)
+
+# include PxTask common
+INCLUDE(../common/PxTask.cmake) \ No newline at end of file