set(MODULE_NAME "spshell") set(MODULE_PREFIX "SPSHELL") set(${MODULE_PREFIX}_SRCS app.cpp log.cpp spshell.cpp stdafx.cpp svc.cpp ) if(MSVC) list(APPEND ${MODULE_PREFIX}_SRCS IOCPSocketServer.cpp SpShellConsole.cpp TelnetServer.cpp ) endif(MSVC) if (WIN32) set (RC_VERSION_MAJOR ${RVC_VERSION_MAJOR}) set (RC_VERSION_MINOR ${RVC_VERSION_MINOR}) set (RC_VERSION_BUILD ${RVC_VERSION_REVISION}) configure_file( ${CMAKE_SOURCE_DIR}/Version.rc.in ${CMAKE_CURRENT_BINARY_DIR}/version.rc @ONLY) set ( ${MODULE_PREFIX}_SRCS ${${MODULE_PREFIX}_SRCS} ${CMAKE_CURRENT_BINARY_DIR}/version.rc) endif() include_directories(${PROJECT_SOURCE_DIR}/spbase) include_directories(${PROJECT_SOURCE_DIR}/libtoolkit) add_executable(${MODULE_NAME} WIN32 ${${MODULE_PREFIX}_SRCS}) list(APPEND ${MODULE_PREFIX}_LIBS libtoolkit spbase) if(MSVC) # 设置控制台不显示 # set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SUBSYSTEM:WINDOWS") list(APPEND ${MODULE_PREFIX}_LIBS ws2_32 DbgHelp ) else() list(APPEND ${MODULE_PREFIX}_LIBS winpr) endif() target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS}) # copy_output_on_build(${MODULE_NAME} bin) install(TARGETS ${MODULE_NAME} RUNTIME DESTINATION "${RVC_RUNTIME_PATH}" ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}" LIBRARY DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT libraries)