############################################################################### # Check if built within inVRs folder structure (tools-folder) or separately ############################################################################### if ( NOT INVRS_SOURCE_DIR ) ####################################################################### # Set minimum cmake version ####################################################################### cmake_minimum_required (VERSION 2.4) ####################################################################### # Set project name ####################################################################### project (INVRS_TOOL_VRPNDEVICE) ####################################################################### # Include config.cmake ####################################################################### include (${CMAKE_CURRENT_SOURCE_DIR}/cmake/config_buildExternal.cmake) ####################################################################### # Set target include and library directories ####################################################################### set (INVRS_TARGET_INCLUDE_DIR ${inVRs_INCLUDE_DIR}) set (INVRS_TARGET_LIB_DIR ${inVRs_LIBRARY_DIR}) endif ( NOT INVRS_SOURCE_DIR ) ############################################################################### # Include config file which loads dependencies (like vrpn) ############################################################################### include (${CMAKE_CURRENT_SOURCE_DIR}/cmake/config.cmake) ############################################################################## # Define sourcefiles ############################################################################## aux_source_directory(. VRPNDEVICE_SRCS) set(ALL_SRCS ${VRPNDEVICE_SRCS}) ############################################################################## # Define target-directories for header and library files ############################################################################## set (TARGET_INCLUDE_DIR ${INVRS_TARGET_INCLUDE_DIR}/inVRs/tools/libraries/VrpnDevice) set (TARGET_LIB_DIR ${INVRS_TARGET_LIB_DIR}) ############################################################################## # Set definition for exporting DLL information ############################################################################## add_definitions (-DINVRSVRPNDEVICE_EXPORTS) ############################################################################## # Build library ############################################################################## add_library(inVRsVrpnDevice SHARED ${ALL_SRCS}) ############################################################################## # Define dependencies when built within inVRs ############################################################################## if (INVRS_SOURCE_DIR) add_dependencies (inVRsVrpnDevice inVRsSystemCore irrXML) endif (INVRS_SOURCE_DIR) ############################################################################## # Define libraries which must be linked against ############################################################################## target_link_libraries (inVRsVrpnDevice inVRsSystemCore irrXML ${vrpn_LIBRARIES}) if (WIN32) target_link_libraries(inVRsVrpnDevice debug OSGBaseD.lib debug OSGSystemD.lib debug OSGWindowGLUTD.lib optimized OSGBase.lib optimized OSGSystem.lib optimized OSGWindowGLUT.lib) endif (WIN32) ############################################################################## # Add library to required libraries (when using this package) ############################################################################## list (APPEND VrpnDevice_LIBRARIES inVRsVrpnDevice) ############################################################################## # Install library and header files ############################################################################## install (FILES VrpnDevice.h DESTINATION ${TARGET_INCLUDE_DIR}) install (TARGETS inVRsVrpnDevice DESTINATION ${TARGET_LIB_DIR}) ############################################################################## # Export all variables needed later for building ############################################################################## set ( INVRS_EXPORT_VrpnDevice_INCLUDE_DIRS ${VrpnDevice_INCLUDE_DIRS}) set ( INVRS_EXPORT_VrpnDevice_LIBRARY_DIRS ${VrpnDevice_LIBRARY_DIRS}) set ( INVRS_EXPORT_VrpnDevice_LIBRARIES ${VrpnDevice_LIBRARIES}) set ( INVRS_EXPORT_VrpnDevice_DEFINITIONS ${VrpnDevice_DEFINITIONS}) INVRS_ADD_EXPORTS( VrpnDevice )