aboutsummaryrefslogtreecommitdiff
path: root/PxShared/src/compiler/cmake/html5
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/html5
downloadnvcloth-85305930aeeb1d513e23522bd91f29ba81aa6d14.tar.xz
nvcloth-85305930aeeb1d513e23522bd91f29ba81aa6d14.zip
NvCloth library v1.0.0
Diffstat (limited to 'PxShared/src/compiler/cmake/html5')
-rw-r--r--PxShared/src/compiler/cmake/html5/CMakeLists.txt36
-rw-r--r--PxShared/src/compiler/cmake/html5/PsFastXml.cmake26
-rw-r--r--PxShared/src/compiler/cmake/html5/PxFoundation.cmake41
-rw-r--r--PxShared/src/compiler/cmake/html5/PxPvdSDK.cmake31
-rw-r--r--PxShared/src/compiler/cmake/html5/PxTask.cmake22
5 files changed, 156 insertions, 0 deletions
diff --git a/PxShared/src/compiler/cmake/html5/CMakeLists.txt b/PxShared/src/compiler/cmake/html5/CMakeLists.txt
new file mode 100644
index 0000000..8b9587a
--- /dev/null
+++ b/PxShared/src/compiler/cmake/html5/CMakeLists.txt
@@ -0,0 +1,36 @@
+cmake_minimum_required(VERSION 3.3)
+#set(CMAKE_VERBOSE_MAKEFILE ON)
+include(../common/CMakeLists.txt)
+
+
+IF(NOT DEFINED TARGET_BUILD_PLATFORM) # Not defined, default to HTML5
+ SET(TARGET_BUILD_PLATFORM "HTML5")
+ENDIF()
+
+SET(PLATFORM_LIST HTML5)
+
+IF (NOT ${TARGET_BUILD_PLATFORM} IN_LIST PLATFORM_LIST)
+ MESSAGE(FATAL_ERROR "Invalid platform:" ${TARGET_BUILD_PLATFORM})
+ENDIF()
+
+SET(CMAKE_CXX_FLAGS "${EPIC_BUILD_FLAGS} -fdiagnostics-show-option -fno-rtti -fno-exceptions -ffast-math -ffunction-sections -fdata-sections -Werror -ferror-limit=0 -Wall -Wextra -fstrict-aliasing -Wstrict-aliasing=2 -pedantic -Weverything -Wno-c++11-long-long -Wno-padded -Wno-reserved-id-macro -Wno-float-equal -Wno-sign-conversion -Wno-covered-switch-default -Wno-documentation-unknown-command -Wno-weak-vtables -Wno-missing-prototypes -Wno-unused-local-typedef -Wno-float-conversion -Wno-global-constructors -Wno-missing-variable-declarations -Wno-exit-time-destructors -Wno-unused-macros -Wno-undef -Wno-c++11-extra-semi -Wno-c++11-extensions -Wno-non-virtual-dtor -Wno-unknown-pragmas -Wno-old-style-cast -Wno-extra-semi -Wno-cast-align -Wno-documentation -Wno-shadow -Wno-conversion -Wno-newline-eof -Wno-header-hygiene -Wno-switch-enum -Wno-undefined-reinterpret-cast -Wno-variadic-macros -Wno-gnu-zero-variadic-macro-arguments -Wno-overloaded-virtual -Wno-dynamic-class-memaccess -Wno-nested-anon-types -Wno-invalid-offsetof -Wno-reorder -Wno-local-type-template-args -Wno-unreachable-code -Wno-unreachable-code-return -Wno-format-pedantic -Wno-unused-private-field -Wno-unused-parameter -Wno-unused-member-function -Wno-used-but-marked-unused -Wno-unused-variable -Wno-format-nonliteral -Wno-shift-sign-overflow -Wno-comma -Wno-expansion-to-defined -Wno-undefined-func-template -Wno-weak-template-vtables -Wno-double-promotion -Wno-nonportable-include-path -Wno-disabled-macro-expansion -Wno-missing-noreturn")
+SET(CMAKE_STATIC_LIBRARY_PREFIX "")
+
+SET(PXSHARED_HTML5_COMPILE_DEFS _LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE)
+SET(PXSHARED_HTML5_DEBUG_COMPILE_DEFS _DEBUG;PX_DEBUG=1;PX_CHECKED=1)
+SET(PXSHARED_HTML5_CHECKED_COMPILE_DEFS NDEBUG;PX_CHECKED=1)
+SET(PXSHARED_HTML5_PROFILE_COMPILE_DEFS NDEBUG;PX_PROFILE=1)
+SET(PXSHARED_HTML5_RELEASE_COMPILE_DEFS NDEBUG)
+
+SET(CMAKE_DEBUG_POSTFIX $ENV{LIB_SUFFIX})
+SET(CMAKE_PROFILE_POSTFIX $ENV{LIB_SUFFIX})
+SET(CMAKE_CHECKED_POSTFIX $ENV{LIB_SUFFIX})
+SET(CMAKE_RELEASE_POSTFIX $ENV{LIB_SUFFIX})
+
+# Include project cmake files here
+INCLUDE(PxFoundation.cmake)
+INCLUDE(PsFastXml.cmake)
+INCLUDE(PxPvdSDK.cmake)
+INCLUDE(PxTask.cmake)
+# INCLUDE(PxCudaContextManager.cmake)
+
diff --git a/PxShared/src/compiler/cmake/html5/PsFastXml.cmake b/PxShared/src/compiler/cmake/html5/PsFastXml.cmake
new file mode 100644
index 0000000..3279134
--- /dev/null
+++ b/PxShared/src/compiler/cmake/html5/PsFastXml.cmake
@@ -0,0 +1,26 @@
+#
+# Build PsFastXml
+#
+
+SET(PXSHARED_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../../../../src)
+
+SET(LL_SOURCE_DIR ${PXSHARED_SOURCE_DIR}/fastxml)
+
+SET(PLATFORM_INCLUDES
+ $ENV{EMSCRIPTEN}/system/include
+)
+
+# Use generator expressions to set config specific preprocessor definitions
+SET(PSFASTXML_COMPILE_DEFS
+
+ # Common to all configurations
+ ${PXSHARED_HTML5_COMPILE_DEFS};PX_FOUNDATION_DLL=0;
+
+ $<$<CONFIG:debug>:${PXSHARED_HTML5_DEBUG_COMPILE_DEFS};>
+ $<$<CONFIG:checked>:${PXSHARED_HTML5_CHECKED_COMPILE_DEFS};>
+ $<$<CONFIG:profile>:${PXSHARED_HTML5_PROFILE_COMPILE_DEFS};>
+ $<$<CONFIG:release>:${PXSHARED_HTML5_RELEASE_COMPILE_DEFS};>
+)
+
+# include PsFastXml common
+INCLUDE(../common/PsFastXml.cmake) \ No newline at end of file
diff --git a/PxShared/src/compiler/cmake/html5/PxFoundation.cmake b/PxShared/src/compiler/cmake/html5/PxFoundation.cmake
new file mode 100644
index 0000000..a78e4e6
--- /dev/null
+++ b/PxShared/src/compiler/cmake/html5/PxFoundation.cmake
@@ -0,0 +1,41 @@
+#
+# Build PxFoundation
+#
+
+SET(PXSHARED_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../../../../src)
+
+SET(LL_SOURCE_DIR ${PXSHARED_SOURCE_DIR}/foundation)
+
+SET(PXFOUNDATION_LIBTYPE STATIC)
+
+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
+ $ENV{EMSCRIPTEN}/system/include
+ ${LL_SOURCE_DIR}/include/unix
+)
+
+SET(PXFOUNDATION_COMPILE_DEFS
+
+ # Common to all configurations
+ ${PXSHARED_HTML5_COMPILE_DEFS}
+
+ $<$<CONFIG:debug>:${PXSHARED_HTML5_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${PXSHARED_HTML5_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${PXSHARED_HTML5_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${PXSHARED_HTML5_RELEASE_COMPILE_DEFS}>
+)
+
+# include PxFoundation common
+INCLUDE(../common/PxFoundation.cmake) \ No newline at end of file
diff --git a/PxShared/src/compiler/cmake/html5/PxPvdSDK.cmake b/PxShared/src/compiler/cmake/html5/PxPvdSDK.cmake
new file mode 100644
index 0000000..36a465f
--- /dev/null
+++ b/PxShared/src/compiler/cmake/html5/PxPvdSDK.cmake
@@ -0,0 +1,31 @@
+#
+# Build PxPvdSDK
+#
+
+SET(PXSHARED_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../../../../src)
+
+SET(LL_SOURCE_DIR ${PXSHARED_SOURCE_DIR}/pvd)
+
+ SET(PXPVDSDK_LIBTYPE STATIC)
+
+ SET(PXPVDSDK_PLATFORM_INCLUDES
+ $ENV{EMSCRIPTEN}/system/include
+ )
+
+ # Use generator expressions to set config specific preprocessor definitions
+ SET(PXPVDSDK_COMPILE_DEFS
+ ${PXSHARED_HTML5_COMPILE_DEFS}
+
+ $<$<CONFIG:debug>:${PXSHARED_HTML5_DEBUG_COMPILE_DEFS}>
+ $<$<CONFIG:checked>:${PXSHARED_HTML5_CHECKED_COMPILE_DEFS}>
+ $<$<CONFIG:profile>:${PXSHARED_HTML5_PROFILE_COMPILE_DEFS}>
+ $<$<CONFIG:release>:${PXSHARED_HTML5_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/html5/PxTask.cmake b/PxShared/src/compiler/cmake/html5/PxTask.cmake
new file mode 100644
index 0000000..5c00c13
--- /dev/null
+++ b/PxShared/src/compiler/cmake/html5/PxTask.cmake
@@ -0,0 +1,22 @@
+#
+# Build PxTask
+#
+
+SET(PXSHARED_SOURCE_DIR ${PROJECT_SOURCE_DIR}/../../../../src)
+
+SET(LL_SOURCE_DIR ${PXSHARED_SOURCE_DIR}/task)
+
+SET(PXTASK_PLATFORM_INCLUDES
+ $ENV{EMSCRIPTEN}/system/include
+)
+
+SET(PXTASK_COMPILE_DEFS
+ ${PXSHARED_HTML5_COMPILE_DEFS};PX_FOUNDATION_DLL=0;
+ $<$<CONFIG:debug>:${PXSHARED_HTML5_DEBUG_COMPILE_DEFS};>
+ $<$<CONFIG:checked>:${PXSHARED_HTML5_CHECKED_COMPILE_DEFS};>
+ $<$<CONFIG:profile>:${PXSHARED_HTML5_PROFILE_COMPILE_DEFS};>
+ $<$<CONFIG:release>:${PXSHARED_HTML5_RELEASE_COMPILE_DEFS};>
+)
+
+# include PxTask common
+INCLUDE(../common/PxTask.cmake)