Commit 16cfc0cc authored by Ian Craggs's avatar Ian Craggs Committed by GitHub

Merge pull request #141 from guilhermeferreira/build-cmake-fix-windows

CMake fixes on Microsoft Windows
parents d1538480 f0f8071b
...@@ -25,7 +25,11 @@ SET(PAHO_VERSION_MINOR 0) ...@@ -25,7 +25,11 @@ SET(PAHO_VERSION_MINOR 0)
SET(PAHO_VERSION_PATCH 3) SET(PAHO_VERSION_PATCH 3)
SET(CLIENT_VERSION ${PAHO_VERSION_MAJOR}.${PAHO_VERSION_MINOR}.${PAHO_VERSION_PATCH}) SET(CLIENT_VERSION ${PAHO_VERSION_MAJOR}.${PAHO_VERSION_MINOR}.${PAHO_VERSION_PATCH})
EXECUTE_PROCESS(COMMAND date -u OUTPUT_VARIABLE BUILD_TIMESTAMP) IF(WIN32)
EXECUTE_PROCESS(COMMAND "cmd" " /C date /T" OUTPUT_VARIABLE BUILD_TIMESTAMP)
ELSE()
EXECUTE_PROCESS(COMMAND date -u OUTPUT_VARIABLE BUILD_TIMESTAMP)
ENDIF()
STRING(STRIP ${BUILD_TIMESTAMP} BUILD_TIMESTAMP) STRING(STRIP ${BUILD_TIMESTAMP} BUILD_TIMESTAMP)
## build options ## build options
...@@ -43,9 +47,9 @@ IF(PAHO_BUILD_DOCUMENTATION) ...@@ -43,9 +47,9 @@ IF(PAHO_BUILD_DOCUMENTATION)
ENDIF() ENDIF()
### packaging settings ### packaging settings
IF (CMAKE_SYSTEM_NAME MATCHES "Windows") IF (WIN32)
SET(CPACK_GENERATOR "ZIP") SET(CPACK_GENERATOR "ZIP")
ELSE() ELSEIF(UNIX)
SET(CPACK_GENERATOR "TGZ") SET(CPACK_GENERATOR "TGZ")
ENDIF() ENDIF()
......
...@@ -47,25 +47,31 @@ SET(common_src ...@@ -47,25 +47,31 @@ SET(common_src
LinkedList.c LinkedList.c
) )
IF (CMAKE_SYSTEM_NAME MATCHES "Windows") IF (WIN32)
SET(LIBS_SYSTEM ws2_32) SET(LIBS_SYSTEM ws2_32)
ELSEIF (CMAKE_SYSTEM_NAME MATCHES "Linux") ELSEIF (UNIX)
SET(LIBS_SYSTEM dl) IF(CMAKE_SYSTEM_NAME MATCHES "Linux")
SET(LIBS_SYSTEM c dl pthread)
ELSE()
SET(LIBS_SYSTEM c pthread)
ENDIF()
ENDIF() ENDIF()
ADD_EXECUTABLE(MQTTVersion MQTTVersion.c) ADD_EXECUTABLE(MQTTVersion MQTTVersion.c)
ADD_LIBRARY(paho-mqtt3c SHARED ${common_src} MQTTClient.c) ADD_LIBRARY(paho-mqtt3c SHARED ${common_src} MQTTClient.c)
ADD_LIBRARY(paho-mqtt3a SHARED ${common_src} MQTTAsync.c) ADD_LIBRARY(paho-mqtt3a SHARED ${common_src} MQTTAsync.c)
TARGET_LINK_LIBRARIES(paho-mqtt3c pthread ${LIBS_SYSTEM}) TARGET_LINK_LIBRARIES(paho-mqtt3c ${LIBS_SYSTEM})
TARGET_LINK_LIBRARIES(paho-mqtt3a pthread ${LIBS_SYSTEM}) TARGET_LINK_LIBRARIES(paho-mqtt3a ${LIBS_SYSTEM})
TARGET_LINK_LIBRARIES(MQTTVersion paho-mqtt3a paho-mqtt3c ${LIBS_SYSTEM}) TARGET_LINK_LIBRARIES(MQTTVersion paho-mqtt3a paho-mqtt3c ${LIBS_SYSTEM})
SET_TARGET_PROPERTIES( SET_TARGET_PROPERTIES(
paho-mqtt3c paho-mqtt3a PROPERTIES paho-mqtt3c paho-mqtt3a PROPERTIES
VERSION ${CLIENT_VERSION} VERSION ${CLIENT_VERSION}
SOVERSION ${PAHO_VERSION_MAJOR}) SOVERSION ${PAHO_VERSION_MAJOR})
INSTALL(TARGETS paho-mqtt3c paho-mqtt3a MQTTVersion INSTALL(TARGETS paho-mqtt3c paho-mqtt3a
RUNTIME DESTINATION bin ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib) LIBRARY DESTINATION lib)
INSTALL(TARGETS MQTTVersion
RUNTIME DESTINATION bin)
INSTALL(FILES MQTTAsync.h MQTTClient.h MQTTClientPersistence.h INSTALL(FILES MQTTAsync.h MQTTClient.h MQTTClientPersistence.h
DESTINATION include) DESTINATION include)
...@@ -81,17 +87,17 @@ IF (PAHO_WITH_SSL) ...@@ -81,17 +87,17 @@ IF (PAHO_WITH_SSL)
) )
ADD_LIBRARY(paho-mqtt3cs SHARED ${common_src} MQTTClient.c SSLSocket.c) ADD_LIBRARY(paho-mqtt3cs SHARED ${common_src} MQTTClient.c SSLSocket.c)
ADD_LIBRARY(paho-mqtt3as SHARED ${common_src} MQTTAsync.c SSLSocket.c) ADD_LIBRARY(paho-mqtt3as SHARED ${common_src} MQTTAsync.c SSLSocket.c)
TARGET_LINK_LIBRARIES(paho-mqtt3cs pthread ${OPENSSL_LIBRARIES} ${LIBS_SYSTEM}) TARGET_LINK_LIBRARIES(paho-mqtt3cs ${OPENSSL_LIBRARIES} ${LIBS_SYSTEM})
TARGET_LINK_LIBRARIES(paho-mqtt3as pthread ${OPENSSL_LIBRARIES} ${LIBS_SYSTEM}) TARGET_LINK_LIBRARIES(paho-mqtt3as ${OPENSSL_LIBRARIES} ${LIBS_SYSTEM})
SET_TARGET_PROPERTIES( SET_TARGET_PROPERTIES(
paho-mqtt3cs paho-mqtt3as PROPERTIES paho-mqtt3cs paho-mqtt3as PROPERTIES
VERSION ${CLIENT_VERSION} VERSION ${CLIENT_VERSION}
SOVERSION ${PAHO_VERSION_MAJOR}) SOVERSION ${PAHO_VERSION_MAJOR})
INSTALL(TARGETS paho-mqtt3cs INSTALL(TARGETS paho-mqtt3cs
RUNTIME DESTINATION bin ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib) LIBRARY DESTINATION lib)
INSTALL(TARGETS paho-mqtt3as INSTALL(TARGETS paho-mqtt3as
RUNTIME DESTINATION bin ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib) LIBRARY DESTINATION lib)
ENDIF() ENDIF()
...@@ -56,6 +56,5 @@ INSTALL(TARGETS paho_c_sub ...@@ -56,6 +56,5 @@ INSTALL(TARGETS paho_c_sub
MQTTClient_subscribe MQTTClient_subscribe
MQTTClient_publish MQTTClient_publish
MQTTClient_publish_async MQTTClient_publish_async
RUNTIME DESTINATION bin RUNTIME DESTINATION bin)
LIBRARY DESTINATION lib)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment