summaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorSebastien Braun2010-10-06 00:04:49 +0200
committerSebastien Braun2010-10-06 00:04:49 +0200
commitf07fc3b426815e28fde23313242fbbb998a08d45 (patch)
treeba9eda1a83135a1727d2d35661d6facabee53b95 /CMakeLists.txt
parentFix recognition of letters in keyboard handler (diff)
parentMerge remote branch 'openslx/master' into mcastft (diff)
downloadpvs-f07fc3b426815e28fde23313242fbbb998a08d45.tar.gz
pvs-f07fc3b426815e28fde23313242fbbb998a08d45.tar.xz
pvs-f07fc3b426815e28fde23313242fbbb998a08d45.zip
Merge remote branch 'openslx/mcastft' into input
Conflicts: CMakeLists.txt i18n/pvs_ar_JO.ts i18n/pvs_de_DE.ts i18n/pvs_es_MX.ts i18n/pvs_fr_FR.ts i18n/pvs_pl_PL.ts i18n/pvsmgr_ar_JO.ts i18n/pvsmgr_de_DE.ts i18n/pvsmgr_es_MX.ts i18n/pvsmgr_fr_FR.ts i18n/pvsmgr_pl_PL.ts icons/README pvsmgr.qrc src/gui/mainWindow.cpp src/pvs.cpp src/pvs.h src/pvsDaemon.cpp src/util/clientGUIUtils.h
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt179
1 files changed, 134 insertions, 45 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index dab8b1d..4214fd3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -10,16 +10,14 @@ CMAKE_MINIMUM_REQUIRED( VERSION 2.6.2 )
# set compiler optimizations for debug and release
SET(CMAKE_BUILD_TYPE Debug)
+SET(CMAKE_C_FLAGS_DEBUG "-O0 -g -Wall")
+SET(CMAKE_C_FLAGS_RELEASE "-O3 -march=native")
SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g -Wall")
-SET(CMAKE_CXX_FLAGS_RELEASE "-O3 -march=native")
-# -DQT_NO_DEBUG_OUTPUT")
+SET(CMAKE_CXX_FLAGS_RELEASE "-O2 -DQT_NO_DEBUG_OUTPUT" )
# local cmake modules
SET(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR})
-#Test
-SET(CMAKE_EDIT_COMMAND ${CMAKE_SOURCE_DIR})
-
# this command finds libraries and sets all required variables
FIND_PACKAGE( Qt4 4.5.0 REQUIRED )
FIND_PACKAGE( X11 REQUIRED )
@@ -43,6 +41,33 @@ ENDIF()
ADD_SUBDIRECTORY(src/input)
+IF(WIN32)
+ SET(sysdep_suffix _Win32)
+ INCLUDE_DIRECTORIES(
+ /c/KDE4/tmp/LibVNCServer-0.9.7/
+ )
+ELSEIF(UNIX)
+ SET(sysdep_suffix _X11)
+ENDIF(WIN32)
+
+################################################################################
+# Build third-party libraries
+################################################################################
+ADD_SUBDIRECTORY(3rdparty/qtsingleapplication)
+
+
+################################################################################
+# Build third-party libraries
+################################################################################
+
+ADD_SUBDIRECTORY(3rdparty)
+
+################################################################################
+# Common multicast transfer module
+################################################################################
+
+ADD_SUBDIRECTORY(src/net/mcast)
+
################################################################################
# Variables
################################################################################
@@ -71,13 +96,13 @@ SET( PVSMGR_SRCS
src/net/pvsClientConnection.cpp
src/net/pvsServiceBroadcast.cpp
src/util/consoleLogger.cpp
- src/util/pvsSettingsManager.cpp
src/util/util.cpp
src/net/SslServer.cpp
src/util/CertManager.cpp
src/util/TextFile.cpp
src/util/serviceDiscoveryUtil.cpp
src/gui/aboutDialog.cpp
+ src/gui/multicastConfigDialog.cpp
)
# pvs
@@ -90,17 +115,19 @@ SET( PVS_SRCS
src/net/pvsLocalhostCommunicator.cpp
src/util/util.cpp
src/util/consoleLogger.cpp
- src/util/clientGUIUtils.cpp
- src/util/pvsSettingsManager.cpp
+ src/util/clientGUIUtils${sysdep_suffix}.cpp
src/core/pvsChatClient.cpp
src/net/pvsServiceDiscovery.cpp
src/net/pvsDiscoveredServer.cpp
src/util/TextFile.cpp
src/util/serviceDiscoveryUtil.cpp
+ src/net/pvsOutgoingMulticastTransfer.cpp
+ src/net/pvsIncomingMulticastTransfer.cpp
)
# pvsgui
SET( PVSGUI_SRCS
+ ${QTSINGLEAPPLICATION_SRCS}
src/pvsgui.cpp
src/gui/clientConfigDialog.cpp
src/gui/clientFileSendDialog.cpp
@@ -111,6 +138,7 @@ SET( PVSGUI_SRCS
src/util/vncClientThread.cpp
src/util/TextFile.cpp
src/gui/aboutDialog.cpp
+ src/net/pvsNetworkInterfaceListModel.cpp
)
@@ -127,6 +155,7 @@ SET( PVSMGR_UIS
src/gui/ui/aboutDialog.ui
src/gui/ui/serverChatDialog.ui
src/gui/ui/clientFileSendDialog.ui
+ src/gui/ui/multicastConfigDialog.ui
)
SET( PVSMGRTOUCH_UIS
@@ -136,6 +165,7 @@ SET( PVSMGRTOUCH_UIS
src/gui/ui/projectionDialog.ui
src/gui/ui/aboutDialog.ui
src/gui/ui/serverChatDialog.ui
+ src/gui/ui/multicastConfigDialog.ui
)
SET( PVSGUI_UIS
@@ -182,6 +212,7 @@ SET( PVSMGR_MOC_HDRS
src/net/pvsServiceBroadcast.h
src/net/SslServer.h
src/gui/aboutDialog.h
+ src/gui/multicastConfigDialog.h
)
SET( PVS_MOC_HDRS
@@ -190,9 +221,12 @@ SET( PVS_MOC_HDRS
src/net/pvsServerConnection.h
src/net/pvsServiceDiscovery.h
src/net/pvsDiscoveredServer.h
+ src/net/pvsOutgoingMulticastTransfer.h
+ src/net/pvsIncomingMulticastTransfer.h
)
SET( PVSGUI_MOC_HDRS
+ ${QTSINGLEAPPLICATION_MOC_HDRS}
src/pvsgui.h
src/gui/clientConfigDialog.h
src/gui/clientFileSendDialog.h
@@ -202,6 +236,7 @@ SET( PVSGUI_MOC_HDRS
src/gui/clientInfoDialog.h
src/util/vncClientThread.h
src/gui/aboutDialog.h
+ src/net/pvsNetworkInterfaceListModel.h
)
# i18n (Qt)
@@ -265,15 +300,16 @@ QT4_ADD_DBUS_ADAPTOR( PVS_SRCS ${CMAKE_BINARY_DIR}/org.openslx.pvs.xml src/pvs.h
QT4_ADD_DBUS_INTERFACE( PVSGUI_SRCS ${CMAKE_BINARY_DIR}/org.openslx.pvs.xml pvsinterface )
# i18n, run lupdate and lrelease)
-QT4_CREATE_TRANSLATION( PVSMGR_QMS ${PVSMGR_SRCS} ${PVSMGR_UI_HDRS} ${PVSMGR_TSS} )
-QT4_CREATE_TRANSLATION( PVS_QMS ${PVS_SRCS} ${PVS_TSS} )
-QT4_CREATE_TRANSLATION( PVSGUI_QMS ${PVSGUI_SRCS} ${PVSGUI_UI_HDRS} ${PVSGUI_TSS} )
+#QT4_CREATE_TRANSLATION( PVSMGR_QMS ${PVSMGR_SRCS} ${PVSMGR_UI_HDRS} ${PVSMGR_TSS} )
+#QT4_CREATE_TRANSLATION( PVS_QMS ${PVS_SRCS} ${PVS_TSS} )
+#QT4_CREATE_TRANSLATION( PVSGUI_QMS ${PVSGUI_SRCS} ${PVSGUI_UI_HDRS} ${PVSGUI_TSS} )
################################################################################
# Build
################################################################################
## here we instruct CMake to build our executable from all of the source files
+if(UNIX)
ADD_EXECUTABLE( pvsmgr
${PVSMGR_SRCS}
${PVSMGR_MOC_SRCS}
@@ -289,8 +325,9 @@ ADD_EXECUTABLE( pvsmgrtouch
${PVSMGR_RC_SRCS}
${PVSMGR_QMS}
)
+ENDIF(UNIX)
-ADD_EXECUTABLE( pvs
+ADD_EXECUTABLE( pvs
${PVS_SRCS}
${PVS_MOC_SRCS}
${PVS_RC_SRCS}
@@ -307,50 +344,102 @@ ADD_EXECUTABLE( pvsgui
# last thing we have to do is to tell CMake what libraries our executable needs,
# luckily FIND_PACKAGE prepared variables for us:
-TARGET_LINK_LIBRARIES( pvsmgr
- ${QT_LIBRARIES}
- ${VNC_LIBRARIES}
- ${X11_LIBRARIES}
- pvsinput
-)
-
-TARGET_LINK_LIBRARIES( pvsmgrtouch
- ${QT_LIBRARIES}
- ${VNC_LIBRARIES}
- ${X11_LIBRARIES}
- pvsinput
-)
-
-TARGET_LINK_LIBRARIES( pvs
- ${QT_LIBRARIES}
- ${VNC_LIBRARIES}
- ${X11_LIBRARIES}
- ${X11_XTest_LIB}
- ${X11_Xinput_LIB}
- pvsinput
-)
-
-TARGET_LINK_LIBRARIES( pvsgui
- ${QT_LIBRARIES}
- ${VNC_LIBRARIES}
-)
+IF(WIN32)
+ TARGET_LINK_LIBRARIES( pvsmgr
+
+ )
+ELSEIF(UNIX)
+TARGET_LINK_LIBRARIES( pvsmgr
+ ${QT_LIBRARIES}
+ ${VNC_LIBRARIES}
+ ${X11_LIBRARIES}
+ pvsmcast
+ pvsinput
+ )
+ENDIF(WIN32)
+
+IF(WIN32)
+ TARGET_LINK_LIBRARIES( pvsmgrtouch
+
+ )
+ELSEIF(UNIX)
+ TARGET_LINK_LIBRARIES( pvsmgrtouch
+ ${QT_LIBRARIES}
+ ${VNC_LIBRARIES}
+ ${X11_LIBRARIES}
+ pvsmcast
+ pvsinput
+ )
+ENDIF(WIN32)
+
+IF(WIN32)
+ TARGET_LINK_LIBRARIES( pvs
+ ${QT_LIBRARIES}
+ ${VNC_LIBRARIES}
+ advapi32
+ ws2_32
+ )
+ELSEIF(UNIX)
+ TARGET_LINK_LIBRARIES( pvs
+ ${QT_LIBRARIES}
+ ${VNC_LIBRARIES}
+ ${X11_LIBRARIES}
+ ${X11_XTest_LIB}
+ ${X11_Xinput_LIB}
+ pvsmcast
+ pvsinput
+ )
+ENDIF(WIN32)
+
+IF(WIN32)
+ TARGET_LINK_LIBRARIES( pvsgui
+ ${QT_LIBRARIES}
+ ${VNC_LIBRARIES}
+ #advapi32
+ ws2_32
+ )
+ELSEIF(UNIX)
+ TARGET_LINK_LIBRARIES( pvsgui
+ ${QT_LIBRARIES}
+ ${VNC_LIBRARIES}
+ )
+ENDIF(WIN32)
+
+IF(UNIX)
SET_PROPERTY(TARGET pvsmgrtouch PROPERTY COMPILE_DEFINITIONS MAINWINDOW_USE_TOUCHGUI)
SET_PROPERTY(TARGET pvsmgr PROPERTY COMPILE_DEFINITIONS MAINWINDOW_USE_NORMALGUI)
+ENDIF(UNIX)
# add install target to our makefile
-CONFIGURE_FILE( org.openslx.pvs.service ${CMAKE_BINARY_DIR}/org.openslx.pvs.service )
-INSTALL( TARGETS pvsmgr pvs pvsgui pvsmgrtouch RUNTIME DESTINATION bin )
-INSTALL( PROGRAMS misc/pvs-vncsrv DESTINATION bin)
-INSTALL( FILES ${CMAKE_BINARY_DIR}/org.openslx.pvs.service DESTINATION share/dbus-1/services )
+IF(WIN32)
+ INSTALL( TARGETS pvs pvsgui RUNTIME DESTINATION bin )
+ELSEIF(UNIX)
+ CONFIGURE_FILE( org.openslx.pvs.service ${CMAKE_BINARY_DIR}/org.openslx.pvs.service )
+ INSTALL( TARGETS pvsmgr pvs pvsgui pvsmgrtouch RUNTIME DESTINATION bin )
+ INSTALL( PROGRAMS misc/pvs-vncsrv DESTINATION bin)
+ INSTALL( FILES ${CMAKE_BINARY_DIR}/org.openslx.pvs.service DESTINATION share/dbus-1/services )
+ INSTALL( FILES misc/pvs.conf misc/pvsgui.conf misc/pvsmgr.conf DESTINATION /etc/openslx )
+ INSTALL( FILES misc/pvsgui.desktop DESTINATION /etc/xdg/autostart )
+ENDIF(WIN32)
+
+# add uninstall target to our makefile
+CONFIGURE_FILE(
+ "${CMAKE_CURRENT_SOURCE_DIR}/Uninstall.cmake"
+ "${CMAKE_CURRENT_BINARY_DIR}/Uninstall.cmake"
+ IMMEDIATE @ONLY
+)
+ADD_CUSTOM_TARGET( uninstall
+ "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/Uninstall.cmake"
+)
# add package target to our makefile
-SET( CPACK_GENERATOR "DEB" )
+SET( CPACK_GENERATOR "DEB;RPM" )
SET( CPACK_SET_DESTDIR "ON" )
SET( CPACK_PACKAGE_NAME "pvs" )
SET( CPACK_PACKAGE_VERSION_MAJOR "2" )
SET( CPACK_PACKAGE_VERSION_MINOR "0" )
-SET( CPACK_PACKAGE_VERSION_PATCH "1" )
+SET( CPACK_PACKAGE_VERSION_PATCH "3" )
SET( CPACK_PACKAGE_DESCRIPTION_SUMMARY "Pool Video Switch" )
SET( CPACK_PACKAGE_DESCRIPTION "")
SET( CPACK_PACKAGE_CONTACT "Simon Wittenberg <wittenb@informatik.uni-freiburg.de>" )