This repository has been archived by the owner on Feb 25, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 8
/
0002-fix-cmake-install.patch
186 lines (183 loc) · 8.6 KB
/
0002-fix-cmake-install.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index b46eaca..34bb590 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -68,39 +68,6 @@ ENDIF()
## common compilation for libpaho-mqtt3c and libpaho-mqtt3a
ADD_LIBRARY(common_obj OBJECT ${common_src})
-SET_PROPERTY(TARGET common_obj PROPERTY POSITION_INDEPENDENT_CODE ON)
-
-ADD_EXECUTABLE(MQTTVersion MQTTVersion.c)
-
-ADD_LIBRARY(paho-mqtt3c SHARED $<TARGET_OBJECTS:common_obj> MQTTClient.c)
-ADD_LIBRARY(paho-mqtt3a SHARED $<TARGET_OBJECTS:common_obj> MQTTAsync.c)
-
-TARGET_LINK_LIBRARIES(paho-mqtt3c ${LIBS_SYSTEM})
-TARGET_LINK_LIBRARIES(paho-mqtt3a ${LIBS_SYSTEM})
-
-TARGET_LINK_LIBRARIES(MQTTVersion paho-mqtt3a paho-mqtt3c ${LIBS_SYSTEM})
-SET_TARGET_PROPERTIES(
- paho-mqtt3c paho-mqtt3a PROPERTIES
- VERSION ${CLIENT_VERSION}
- SOVERSION ${PAHO_VERSION_MAJOR})
-
-INSTALL(TARGETS paho-mqtt3c paho-mqtt3a
- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
-INSTALL(TARGETS MQTTVersion
- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
-
-IF (PAHO_BUILD_STATIC)
- ADD_LIBRARY(paho-mqtt3c-static STATIC $<TARGET_OBJECTS:common_obj> MQTTClient.c)
- ADD_LIBRARY(paho-mqtt3a-static STATIC $<TARGET_OBJECTS:common_obj> MQTTAsync.c)
-
- TARGET_LINK_LIBRARIES(paho-mqtt3c-static ${LIBS_SYSTEM})
- TARGET_LINK_LIBRARIES(paho-mqtt3a-static ${LIBS_SYSTEM})
-
- INSTALL(TARGETS paho-mqtt3c-static paho-mqtt3a-static
- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
-ENDIF()
INSTALL(FILES MQTTAsync.h MQTTClient.h MQTTClientPersistence.h MQTTProperties.h MQTTReasonCodes.h MQTTSubscribeOpts.h
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
@@ -144,54 +111,94 @@ IF (PAHO_WITH_SSL)
## common compilation for libpaho-mqtt3cs and libpaho-mqtt3as
## Note: SSL libraries must be recompiled due ifdefs
ADD_LIBRARY(common_ssl_obj OBJECT ${common_src})
- SET_PROPERTY(TARGET common_ssl_obj PROPERTY POSITION_INDEPENDENT_CODE ON)
SET_PROPERTY(TARGET common_ssl_obj PROPERTY COMPILE_DEFINITIONS "OPENSSL=1")
- ADD_LIBRARY(paho-mqtt3cs SHARED $<TARGET_OBJECTS:common_ssl_obj> MQTTClient.c SSLSocket.c)
- ADD_LIBRARY(paho-mqtt3as SHARED $<TARGET_OBJECTS:common_ssl_obj> MQTTAsync.c SSLSocket.c)
-
- TARGET_LINK_LIBRARIES(paho-mqtt3cs ${OPENSSL_LIB} ${OPENSSLCRYPTO_LIB} ${LIBS_SYSTEM})
- TARGET_LINK_LIBRARIES(paho-mqtt3as ${OPENSSL_LIB} ${OPENSSLCRYPTO_LIB} ${LIBS_SYSTEM})
- SET_TARGET_PROPERTIES(
- paho-mqtt3cs paho-mqtt3as PROPERTIES
- VERSION ${CLIENT_VERSION}
- SOVERSION ${PAHO_VERSION_MAJOR}
- COMPILE_DEFINITIONS "OPENSSL=1")
- INSTALL(TARGETS paho-mqtt3cs paho-mqtt3as
- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
-
- IF (PAHO_BUILD_STATIC)
- ADD_LIBRARY(paho-mqtt3cs-static STATIC $<TARGET_OBJECTS:common_ssl_obj> MQTTClient.c SSLSocket.c)
- ADD_LIBRARY(paho-mqtt3as-static STATIC $<TARGET_OBJECTS:common_ssl_obj> MQTTAsync.c SSLSocket.c)
-
- TARGET_LINK_LIBRARIES(paho-mqtt3cs-static ${OPENSSL_LIBRARIES} ${LIBS_SYSTEM})
- TARGET_LINK_LIBRARIES(paho-mqtt3as-static ${OPENSSL_LIBRARIES} ${LIBS_SYSTEM})
- SET_TARGET_PROPERTIES(
- paho-mqtt3cs-static paho-mqtt3as-static PROPERTIES
- VERSION ${CLIENT_VERSION}
- SOVERSION ${PAHO_VERSION_MAJOR}
- COMPILE_DEFINITIONS "OPENSSL=1")
-
- INSTALL(TARGETS paho-mqtt3cs-static paho-mqtt3as-static
- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ IF (NOT PAHO_BUILD_STATIC)
+ IF (PAHO_BUILD_ASYNC)
+ ADD_LIBRARY(paho-mqtt3as SHARED $<TARGET_OBJECTS:common_ssl_obj> MQTTAsync.c SSLSocket.c)
+ TARGET_LINK_LIBRARIES(paho-mqtt3as ${OPENSSL_LIB} ${OPENSSLCRYPTO_LIB} ${LIBS_SYSTEM})
+ SET_TARGET_PROPERTIES(
+ paho-mqtt3as PROPERTIES
+ VERSION ${CLIENT_VERSION}
+ SOVERSION ${PAHO_VERSION_MAJOR}
+ COMPILE_DEFINITIONS "OPENSSL=1")
+ INSTALL(TARGETS paho-mqtt3as
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ ELSE ()
+ ADD_LIBRARY(paho-mqtt3cs SHARED $<TARGET_OBJECTS:common_ssl_obj> MQTTClient.c SSLSocket.c)
+ TARGET_LINK_LIBRARIES(paho-mqtt3cs ${OPENSSL_LIB} ${OPENSSLCRYPTO_LIB} ${LIBS_SYSTEM})
+ SET_TARGET_PROPERTIES(
+ paho-mqtt3cs PROPERTIES
+ VERSION ${CLIENT_VERSION}
+ SOVERSION ${PAHO_VERSION_MAJOR}
+ COMPILE_DEFINITIONS "OPENSSL=1")
+ INSTALL(TARGETS paho-mqtt3cs
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ ENDIF ()
+
+ ELSE ()
+ IF (PAHO_BUILD_ASYNC)
+ ADD_LIBRARY(paho-mqtt3as-static STATIC $<TARGET_OBJECTS:common_ssl_obj> MQTTAsync.c SSLSocket.c)
+ TARGET_LINK_LIBRARIES(paho-mqtt3as-static ${OPENSSL_LIBRARIES} ${LIBS_SYSTEM})
+ SET_TARGET_PROPERTIES(
+ paho-mqtt3as-static PROPERTIES
+ VERSION ${CLIENT_VERSION}
+ SOVERSION ${PAHO_VERSION_MAJOR}
+ COMPILE_DEFINITIONS "OPENSSL=1")
+ INSTALL(TARGETS paho-mqtt3as-static
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ ELSE ()
+ ADD_LIBRARY(paho-mqtt3cs-static STATIC $<TARGET_OBJECTS:common_ssl_obj> MQTTClient.c SSLSocket.c)
+ TARGET_LINK_LIBRARIES(paho-mqtt3cs-static ${OPENSSL_LIBRARIES} ${LIBS_SYSTEM})
+ SET_TARGET_PROPERTIES(
+ paho-mqtt3cs-static PROPERTIES
+ VERSION ${CLIENT_VERSION}
+ SOVERSION ${PAHO_VERSION_MAJOR}
+ COMPILE_DEFINITIONS "OPENSSL=1")
+ INSTALL(TARGETS paho-mqtt3cs-static
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ ENDIF ()
ENDIF()
+ELSE()
+ IF (NOT PAHO_BUILD_STATIC)
+ IF (PAHO_BUILD_ASYNC)
+ ADD_LIBRARY(paho-mqtt3a SHARED $<TARGET_OBJECTS:common_obj> MQTTAsync.c)
+ TARGET_LINK_LIBRARIES(paho-mqtt3a ${LIBS_SYSTEM})
+ SET_TARGET_PROPERTIES(
+ paho-mqtt3a PROPERTIES
+ VERSION ${CLIENT_VERSION}
+ SOVERSION ${PAHO_VERSION_MAJOR})
+ INSTALL(TARGETS paho-mqtt3a
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ ELSE ()
+ ADD_LIBRARY(paho-mqtt3c SHARED $<TARGET_OBJECTS:common_obj> MQTTClient.c)
+ TARGET_LINK_LIBRARIES(paho-mqtt3c ${LIBS_SYSTEM})
+ SET_TARGET_PROPERTIES(
+ paho-mqtt3c PROPERTIES
+ VERSION ${CLIENT_VERSION}
+ SOVERSION ${PAHO_VERSION_MAJOR})
+ INSTALL(TARGETS paho-mqtt3c
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ ENDIF ()
+ ELSE ()
+ IF (PAHO_BUILD_ASYNC)
+ ADD_LIBRARY(paho-mqtt3a-static STATIC $<TARGET_OBJECTS:common_obj> MQTTAsync.c)
+ TARGET_LINK_LIBRARIES(paho-mqtt3a-static ${LIBS_SYSTEM})
+ INSTALL(TARGETS paho-mqtt3a-static
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ ELSE ()
+ ADD_LIBRARY(paho-mqtt3c-static STATIC $<TARGET_OBJECTS:common_obj> MQTTClient.c)
+ TARGET_LINK_LIBRARIES(paho-mqtt3c-static ${LIBS_SYSTEM})
+ INSTALL(TARGETS paho-mqtt3c-static
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ ENDIF ()
+ ENDIF ()
ENDIF()
-# Base64 test
-ADD_EXECUTABLE( Base64Test EXCLUDE_FROM_ALL Base64.c Base64.h )
-TARGET_COMPILE_DEFINITIONS( Base64Test PUBLIC "-DBASE64_TEST" )
-IF (PAHO_WITH_SSL)
- ADD_EXECUTABLE( Base64TestOpenSSL EXCLUDE_FROM_ALL Base64.c Base64.h )
- TARGET_LINK_LIBRARIES( Base64TestOpenSSL ${OPENSSL_LIB} ${OPENSSLCRYPTO_LIB} )
- TARGET_COMPILE_DEFINITIONS( Base64TestOpenSSL PUBLIC "-DBASE64_TEST -DOPENSSL=1" )
-ENDIF (PAHO_WITH_SSL)
-
-# SHA1 test
-ADD_EXECUTABLE( Sha1Test EXCLUDE_FROM_ALL SHA1.c SHA1.h )
-TARGET_COMPILE_DEFINITIONS( Sha1Test PUBLIC "-DSHA1_TEST" )
-IF (PAHO_WITH_SSL)
- ADD_EXECUTABLE( Sha1TestOpenSSL EXCLUDE_FROM_ALL SHA1.c SHA1.h )
- TARGET_LINK_LIBRARIES( Sha1TestOpenSSL ${OPENSSL_LIB} ${OPENSSLCRYPTO_LIB} )
- TARGET_COMPILE_DEFINITIONS( Sha1TestOpenSSL PUBLIC "-DSHA1_TEST -DOPENSSL=1" )
-ENDIF (PAHO_WITH_SSL)