Made the service-code compile on Mac OS X. Only compile, no testing though

This commit is contained in:
Micke Prag 2009-12-13 20:52:38 +00:00
parent aad7d41f1f
commit 09d8d939d2
7 changed files with 116 additions and 77 deletions

View file

@ -1,19 +1,34 @@
SET( qtservice_MOC_HDRS
${CMAKE_HOME_DIRECTORY}/3rdparty/qtsingleapplication/src/qtsingleapplication.h
${CMAKE_HOME_DIRECTORY}/3rdparty/qtsingleapplication/src/qtlocalpeer.h
)
QT4_WRAP_CPP( qtservice_MOC_SRCS ${qtservice_MOC_HDRS} )
QT4_AUTOMOC ( ${qtservice_SRCS} )
QT4_GENERATE_MOC( ${CMAKE_HOME_DIRECTORY}/3rdparty/qtservice-2.6-opensource/src/qtservice.cpp ${CMAKE_CURRENT_BINARY_DIR}/qtservice.moc )
SET( qtservice_SRCS
${CMAKE_HOME_DIRECTORY}/3rdparty/qtsingleapplication/src/qtsingleapplication.cpp
${CMAKE_HOME_DIRECTORY}/3rdparty/qtsingleapplication/src/qtlocalpeer.cpp
# ${CMAKE_HOME_DIRECTORY}/3rdparty/qtsingleapplication/src/qtlocalserver.cpp
${qtsingleapplication_MOC_SRCS}
${CMAKE_HOME_DIRECTORY}/3rdparty/qtservice-2.6-opensource/src/qtservice.cpp
${CMAKE_CURRENT_BINARY_DIR}/qtservice.moc
)
IF (UNIX)
QT4_GENERATE_MOC( ${CMAKE_HOME_DIRECTORY}/3rdparty/qtservice-2.6-opensource/src/qtservice_unix.cpp ${CMAKE_CURRENT_BINARY_DIR}/qtservice_unix.moc )
SET( qtservice_MOC_HDRS
${CMAKE_HOME_DIRECTORY}/3rdparty/qtservice-2.6-opensource/src/qtunixsocket.h
${CMAKE_HOME_DIRECTORY}/3rdparty/qtservice-2.6-opensource/src/qtunixserversocket.h
)
QT4_WRAP_CPP( qtservice_MOC_SRCS ${qtservice_MOC_HDRS} )
SET( qtservice_SRCS
${qtservice_SRCS}
${CMAKE_HOME_DIRECTORY}/3rdparty/qtservice-2.6-opensource/src/qtservice_unix.cpp
${CMAKE_HOME_DIRECTORY}/3rdparty/qtservice-2.6-opensource/src/qtunixsocket.cpp
${CMAKE_HOME_DIRECTORY}/3rdparty/qtservice-2.6-opensource/src/qtunixserversocket.cpp
${CMAKE_CURRENT_BINARY_DIR}/qtservice_unix.moc
${qtservice_MOC_SRCS}
)
ENDIF (UNIX)
INCLUDE_DIRECTORIES(
${CMAKE_HOME_DIRECTORY}/3rdparty/qtsingleapplication/src/
${CMAKE_HOME_DIRECTORY}/3rdparty/qtservice-2.6-opensource/src/
${CMAKE_CURRENT_BINARY_DIR}
)

View file

@ -43,9 +43,9 @@ SET(GENERATE_MAN FALSE CACHE BOOL "Enable generation of man-files")
ADD_SUBDIRECTORY(driver)
IF(BUILD_LIBTELLDUS-CORE_AS_SERVICE AND WIN32)
IF(BUILD_LIBTELLDUS-CORE_AS_SERVICE)
ADD_SUBDIRECTORY(telldus-service)
ENDIF(BUILD_LIBTELLDUS-CORE_AS_SERVICE AND WIN32)
ENDIF(BUILD_LIBTELLDUS-CORE_AS_SERVICE)
if(BUILD_TDTOOL)
ADD_SUBDIRECTORY(tdtool)

View file

@ -112,7 +112,11 @@ ENDIF(USE_QT_SETTINGS_BACKEND)
IF (APPLE)
#### Mac OS X ####
IF(BUILD_LIBTELLDUS-CORE_AS_SERVICE)
SET( telldus-core_TARGET TelldusCoreLib )
ELSE(BUILD_LIBTELLDUS-CORE_AS_SERVICE)
SET( telldus-core_TARGET TelldusCore )
ENDIF(BUILD_LIBTELLDUS-CORE_AS_SERVICE)
SET( telldus-core_SRCS
${telldus-core_SRCS}
win/Device.cpp

View file

@ -2,13 +2,9 @@ PROJECT( telldus-service )
CMAKE_MINIMUM_REQUIRED( VERSION 2.6.0 )
SET(PACKAGE_VERSION 2.99.0)
SET(PACKAGE_SOVERSION 2)
SET(BUILD_SERVICE TRUE CACHE BOOL "Build the service")
SET(BUILD_CLIENT FALSE CACHE BOOL "Build the client")
if(BUILD_SERVICE)
ADD_SUBDIRECTORY(service)
endif(BUILD_SERVICE)

View file

@ -14,7 +14,7 @@ SET( telldus-client_SRCS
)
SET( telldus-client_HDRS
../common/Message.h
${CMAKE_SOURCE_DIR}/driver/libtelldus-core/telldus-core.h
)
SET( telldus-client_MOC_HDRS
@ -25,6 +25,11 @@ SET( telldus-client_LIBRARIES
${QT_LIBRARIES}
)
INCLUDE_DIRECTORIES(
${CMAKE_SOURCE_DIR}/driver
${CMAKE_CURRENT_SOURCE_DIR}/../common
)
QT4_WRAP_CPP( telldus-client_MOC_SRCS ${telldus-client_MOC_HDRS} )
QT4_AUTOMOC ( ${telldus-client_SRCS} )
@ -33,13 +38,12 @@ QT4_AUTOMOC ( ${telldus-client_SRCS} )
######## Platforms-specific, non configurable ########
SET( telldus-client_TARGET TelldusClient )
SET( telldus-client_TARGET TelldusCore )
IF (APPLE) #### Mac OS X ####
ELSEIF (WIN32) #### Windows ####
#### Windows ####
SET( telldus-client_TARGET TelldusCore )
SET( telldus-client_SRCS
${telldus-client_SRCS}
../../driver/libtelldus-core/libtelldus-core.def
@ -73,6 +77,21 @@ ADD_LIBRARY(${telldus-client_TARGET} SHARED
)
SET_SOURCE_FILES_PROPERTIES(${telldus-service_RESOURCES} PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
SET_PROPERTY(TARGET ${telldus-client_TARGET}
PROPERTY FRAMEWORK TRUE
)
SET_PROPERTY(TARGET ${telldus-client_TARGET}
PROPERTY PUBLIC_HEADER ${telldus-client_HDRS}
)
SET_PROPERTY(TARGET ${telldus-client_TARGET}
PROPERTY VERSION ${PACKAGE_VERSION}
)
SET_PROPERTY(TARGET ${telldus-client_TARGET}
PROPERTY SOVERSION ${PACKAGE_SOVERSION}
)
TARGET_LINK_LIBRARIES( ${telldus-client_TARGET} ${telldus-client_LIBRARIES} )
SET_TARGET_PROPERTIES(${telldus-service_TARGET} PROPERTIES

View file

@ -1,6 +1,6 @@
#include <QLocalSocket>
#include "Manager.h"
#include "Manager.H"
#include "Message.h"
#include <QFile>
@ -76,11 +76,11 @@ void Manager::dataReceived() {
logMessage("Data-received");
}
QVariant Manager::send(const Message &message, const QVariant &default) {
QVariant Manager::send(const Message &message, const QVariant &defaultValue) {
logMessage(QString("%1:").arg(QString(message)));
if (d->s.state() != QLocalSocket::ConnectedState) {
logMessage("[default]");
return default;
return defaultValue;
}
d->s.write(message);
if (d->s.waitForReadyRead(5000)) {
@ -90,7 +90,7 @@ QVariant Manager::send(const Message &message, const QVariant &default) {
return retval;
}
logMessage("[No return]");
return default;
return defaultValue;
}

View file

@ -12,7 +12,6 @@ SET( telldus-service_SRCS
TelldusCore.cpp
Manager.cpp
../common/Message.cpp
${QTSERVICE_PATH}/src/qtservice.cpp
)
SET( telldus-service_MOC_HDRS
@ -24,24 +23,25 @@ SET( telldus-service_LIBRARIES
${QT_LIBRARIES}
)
######## Configurable options for the platform ########
INCLUDE_DIRECTORIES(
${CMAKE_SOURCE_DIR}/driver
${CMAKE_CURRENT_SOURCE_DIR}/../common
)
SET(QTSERVICE_PATH CACHE PATH "Path to qtservice")
######## Configurable options for the platform ########
######## Platforms-specific, non configurable ########
SET( telldus-service_TARGET TelldusService )
IF (APPLE) #### Mac OS X ####
SET( telldus-service_LIBRARIES
${telldus-service_LIBRARIES}
TelldusCoreLib
)
ELSEIF (WIN32) #### Windows ####
ADD_DEFINITIONS( -DUNICODE )
INCLUDE_DIRECTORIES(
${CMAKE_SOURCE_DIR}/driver
${CMAKE_CURRENT_SOURCE_DIR}/../common
${QTSERVICE_PATH}/src
${CMAKE_CURRENT_BINARY_DIR}
)
SET(CMAKE_EXE_LINKER_FLAGS
"${CMAKE_EXE_LINKER_FLAGS} /SUBSYSTEM:CONSOLE"
)
@ -61,13 +61,18 @@ ELSE (APPLE) #### Linux ####
ENDIF (APPLE)
######## QtService ########
INCLUDE( ../../3rdparty/qtservice.cmake NO_POLICY_SCOPE )
SET( telldus-service_SRCS
${telldus-service_SRCS}
${qtservice_SRCS}
)
######## Configuring ########
QT4_GENERATE_MOC( ${QTSERVICE_PATH}/src/qtservice.cpp ${CMAKE_CURRENT_BINARY_DIR}/qtservice.moc )
QT4_WRAP_CPP( telldus-service_MOC_SRCS ${telldus-service_MOC_HDRS} )
ADD_EXECUTABLE(${telldus-service_TARGET}
${telldus-service_SRCS}
${telldus-service_MOC_SRCS}