summaryrefslogtreecommitdiff
path: root/compiler/cmake/ServerApp.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/cmake/ServerApp.cmake')
-rw-r--r--compiler/cmake/ServerApp.cmake142
1 files changed, 142 insertions, 0 deletions
diff --git a/compiler/cmake/ServerApp.cmake b/compiler/cmake/ServerApp.cmake
new file mode 100644
index 0000000..175593a
--- /dev/null
+++ b/compiler/cmake/ServerApp.cmake
@@ -0,0 +1,142 @@
+#
+# Build serverapp
+#
+
+SET(GW_DEPS_ROOT $ENV{GW_DEPS_ROOT})
+
+SET(TEST_SOURCE_DIR ${PROJECT_SOURCE_DIR}/test/serverapp)
+SET(LIB_SOURCE_DIR ${PROJECT_SOURCE_DIR}/src)
+SET(COMMON_SOURCE_DIR ${PROJECT_SOURCE_DIR}/common)
+SET(SHARED_CS_DIR ${PROJECT_SOURCE_DIR}/test/client-server)
+SET(TL_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/include)
+
+IF(TARGET_BUILD_PLATFORM STREQUAL "Windows")
+
+ SET(WW_PLATFORM_INCLUDES
+ )
+
+ SET(WW_PLATFORM_SRC_FILES
+ )
+
+
+ # Use generator expressions to set config specific preprocessor definitions
+ SET(WW_COMPILE_DEFS
+ # Common to all configurations
+ WIN32;_WINDOWS;_CONSOLE;
+
+ $<$<CONFIG:debug>:PROFILE;>
+ $<$<CONFIG:release>:NDEBUG;>
+ )
+
+ SET(WW_LIBTYPE SHARED)
+
+ELSEIF(TARGET_BUILD_PLATFORM STREQUAL "PS4")
+
+ SET(WW_PLATFORM_INCLUDES
+ $ENV{SCE_ORBIS_SDK_DIR}/target/include
+ )
+
+ SET(WW_COMPILE_DEFS
+
+ # Common to all configurations
+ _LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;PX_PHYSX_STATIC_LIB;
+
+ $<$<CONFIG:debug>:_DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_SUPPORT_PVD=1;>
+ $<$<CONFIG:release>:NDEBUG;PX_SUPPORT_PVD=0;>
+ )
+
+ SET(WW_LIBTYPE STATIC)
+
+ELSEIF(TARGET_BUILD_PLATFORM STREQUAL "XBoxOne")
+ SET(WW_PLATFORM_INCLUDES
+ )
+
+ # Use generator expressions to set config specific preprocessor definitions
+ SET(WW_COMPILE_DEFS
+
+ # Common to all configurations
+ PX_PHYSX_CORE_EXPORTS;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WINAPI_FAMILY=WINAPI_FAMILY_TV_TITLE;PX_PHYSX_STATIC_LIB;
+
+ $<$<CONFIG:debug>:_DEBUG;PX_DEBUG=1;PX_CHECKED=1;PX_SUPPORT_PVD=1;>
+ $<$<CONFIG:release>:NDEBUG;PX_SUPPORT_PVD=0;>
+ )
+
+ SET(WW_LIBTYPE STATIC)
+
+
+ELSEIF(TARGET_BUILD_PLATFORM STREQUAL "Unix")
+ENDIF()
+
+SET(APP_FILES
+ ${TEST_SOURCE_DIR}/serverapp.cpp
+
+ ${TL_INCLUDE_DIR}/GFSDK_Logger.h
+ ${COMMON_SOURCE_DIR}/LoggerImpl.h
+ ${COMMON_SOURCE_DIR}/LoggerImpl.cpp
+)
+
+SET(SHARED_CS_FILES
+ ${SHARED_CS_DIR}/message_types.h
+ ${SHARED_CS_DIR}/socket_wrapper.h
+ ${SHARED_CS_DIR}/socket_wrapper.cpp
+)
+
+ADD_EXECUTABLE(ServerApp WIN32
+ ${WW_PLATFORM_SRC_FILES}
+
+ ${APP_FILES}
+ ${SHARED_CS_FILES}
+
+)
+
+SOURCE_GROUP("app" FILES ${APP_FILES})
+SOURCE_GROUP("shared-client-server-code" FILES ${SHARED_CS_FILES})
+
+
+# Target specific compile options
+
+
+TARGET_INCLUDE_DIRECTORIES(ServerApp
+ PRIVATE ${WW_PLATFORM_INCLUDES}
+
+ PRIVATE ${TL_INCLUDE_DIR}
+ PRIVATE ${SHARED_CS_DIR}
+ PRIVATE ${LIB_SOURCE_DIR}
+)
+
+TARGET_COMPILE_DEFINITIONS(ServerApp
+
+ # Common to all configurations
+ PRIVATE ${WW_COMPILE_DEFS}
+)
+
+
+
+#TODO: Link flags
+
+IF(TARGET_BUILD_PLATFORM STREQUAL "Windows")
+ # Add linked libraries
+ TARGET_LINK_LIBRARIES(ServerApp PUBLIC WaveWorks Ws2_32.lib comctl32.lib ${CUDA_LIBRARIES})
+
+ IF(CMAKE_CL_64)
+ SET(LIBPATH_SUFFIX "win64")
+ ELSE(CMAKE_CL_64)
+ SET(LIBPATH_SUFFIX "Win32")
+ ENDIF(CMAKE_CL_64)
+
+ SET_TARGET_PROPERTIES(ServerApp PROPERTIES
+ LINK_FLAGS_DEBUG "/MAP /DEBUG"
+ LINK_FLAGS_RELEASE "/MAP /INCREMENTAL:NO"
+ )
+
+ELSEIF(TARGET_BUILD_PLATFORM STREQUAL "PS4")
+# TARGET_LINK_LIBRARIES(ServerApp PUBLIC LowLevel LowLevelAABB LowLevelCloth LowLevelDynamics LowLevelParticles ServerAppCommon PxFoundation PxPvdSDK PxTask SceneQuery SimulationController)
+
+ELSEIF(TARGET_BUILD_PLATFORM STREQUAL "XBoxOne")
+
+# TARGET_LINK_LIBRARIES(ServerApp PUBLIC LowLevel LowLevelAABB LowLevelCloth LowLevelDynamics LowLevelParticles ServerAppCommon PxFoundation PxPvdSDK PxTask SceneQuery SimulationController)
+
+ELSEIF(TARGET_BUILD_PLATFORM STREQUAL "Unix")
+ENDIF()
+
+