############################################################################### # Set minimum cmake version ############################################################################### cmake_minimum_required (VERSION 2.4) ############################################################################### # Set policy ############################################################################### if (COMMAND cmake_policy) cmake_policy(SET CMP0003 NEW) endif (COMMAND cmake_policy) ############################################################################### # Set project name ############################################################################### project (GOING_IMMERSIVE) ############################################################################### # Initialize boolean values for TrackD and VRPN support ############################################################################### if (NOT ENABLE_TRACKD_SUPPORT) set (ENABLE_TRACKD_SUPPORT OFF CACHE BOOL "Enable/disable support for trackd" FORCE) endif (NOT ENABLE_TRACKD_SUPPORT) if (NOT ENABLE_VRPN_SUPPORT) set (ENABLE_VRPN_SUPPORT OFF CACHE BOOL "Enable/disable support for VRPN" FORCE) endif (NOT ENABLE_VRPN_SUPPORT) ############################################################################### # include user-defined configuration ############################################################################### include (${GOING_IMMERSIVE_SOURCE_DIR}/user.cmake OPTIONAL) ############################################################################### # Set required inVRs Modules and Tools ############################################################################### set (inVRs_REQUIRED_MODULES Navigation) set (inVRs_REQUIRED_TOOLS AvataraWrapper OpenSGApplicationBase # includes ControllerManager and OpenSGSceneGraphInterface ) if (ENABLE_VRPN_SUPPORT) list (APPEND inVRs_REQUIRED_TOOLS VrpnDevice) endif (ENABLE_VRPN_SUPPORT) if (ENABLE_TRACKD_SUPPORT) list (APPEND inVRs_REQUIRED_TOOLS TrackdDevice) endif (ENABLE_TRACKD_SUPPORT) ############################################################################### # Include config.cmake ############################################################################### include (${GOING_IMMERSIVE_SOURCE_DIR}/cmake/config.cmake) ############################################################################## # Define sourcefiles ############################################################################## set (GOING_IMMERSIVE_SRCS src/GoingImmersive.cpp) set (GOING_IMMERSIVE_FINAL_SRCS final/src/GoingImmersive.cpp) ############################################################################## # Set definitions for pre-processor ############################################################################## if (ENABLE_VRPN_SUPPORT) add_definitions (-DWITH_VRPN_SUPPORT) endif (ENABLE_VRPN_SUPPORT) if (ENABLE_TRACKD_SUPPORT) add_definitions (-DWITH_TRACKD_SUPPORT) endif (ENABLE_TRACKD_SUPPORT) ############################################################################## # Build binary ############################################################################## add_executable (GoingImmersive ${GOING_IMMERSIVE_SRCS}) ############################################################################## # Define libraries which must be linked against ############################################################################## target_link_libraries (GoingImmersive ${inVRs_LIBRARIES}) if (WIN32) target_link_libraries(GoingImmersive debug OSGBaseD.lib debug OSGSystemD.lib debug OSGWindowGLUTD.lib optimized OSGBase.lib optimized OSGSystem.lib optimized OSGWindowGLUT.lib) endif (WIN32) if (ENABLE_VRPN_SUPPORT) target_link_libraries (GoingImmersive inVRsVrpnDevice) endif (ENABLE_VRPN_SUPPORT) if (ENABLE_TRACKD_SUPPORT) target_link_libraries (GoingImmersive inVRsTrackdDevice) endif (ENABLE_TRACKD_SUPPORT) ############################################################################## # Build binary ############################################################################## add_executable (GoingImmersiveFinal ${GOING_IMMERSIVE_FINAL_SRCS}) ############################################################################## # Define libraries which must be linked against ############################################################################## target_link_libraries (GoingImmersiveFinal ${inVRs_LIBRARIES}) if (WIN32) target_link_libraries(GoingImmersiveFinal debug OSGBaseD.lib debug OSGSystemD.lib debug OSGWindowGLUTD.lib optimized OSGBase.lib optimized OSGSystem.lib optimized OSGWindowGLUT.lib) endif (WIN32) if (ENABLE_VRPN_SUPPORT) target_link_libraries (GoingImmersiveFinal inVRsVrpnDevice) endif (ENABLE_VRPN_SUPPORT) if (ENABLE_TRACKD_SUPPORT) target_link_libraries (GoingImmersiveFinal inVRsTrackdDevice) endif (ENABLE_TRACKD_SUPPORT)