4
4
5
5
include (GenerateExportHeader )
6
6
7
- option (BUILD_SHARED "Build SHARED library" ON )
8
-
9
- include_directories (${CMAKE_CURRENT_SOURCE_DIR} /base )
10
- include_directories (${CMAKE_CURRENT_SOURCE_DIR} /client )
11
- include_directories (${CMAKE_CURRENT_SOURCE_DIR} /server )
12
-
13
7
set (INSTALL_HEADER_FILES
14
8
# Base
15
9
base/QXmppArchiveIq.h
@@ -269,31 +263,6 @@ set(SOURCE_FILES
269
263
server/QXmppServerPlugin.cpp
270
264
)
271
265
272
- if (BUILD_OMEMO )
273
- # required to be used in QXmppMessage
274
- set (SOURCE_FILES ${SOURCE_FILES} base/QXmppOmemoDataBase.cpp )
275
- endif ()
276
-
277
- if (WITH_GSTREAMER )
278
- find_package (GStreamer REQUIRED )
279
- find_package (GLIB2 REQUIRED )
280
- find_package (GObject REQUIRED )
281
-
282
- set (INSTALL_HEADER_FILES
283
- ${INSTALL_HEADER_FILES}
284
- client/QXmppCall.h
285
- client/QXmppCallManager.h
286
- client/QXmppCallStream.h
287
- )
288
-
289
- set (SOURCE_FILES
290
- ${SOURCE_FILES}
291
- client/QXmppCall.cpp
292
- client/QXmppCallManager.cpp
293
- client/QXmppCallStream.cpp
294
- )
295
- endif ()
296
-
297
266
if (BUILD_SHARED )
298
267
add_library (qxmpp SHARED ${SOURCE_FILES} )
299
268
else ()
@@ -306,33 +275,12 @@ set_target_properties(qxmpp PROPERTIES
306
275
EXPORT_NAME QXmpp
307
276
)
308
277
309
- if (BUILD_SHARED )
310
- set (QXMPP_BUILD_SHARED true )
311
- else ()
312
- set (QXMPP_BUILD_SHARED false )
313
- endif ()
314
-
315
- set (QXMPP_CUSTOM_EXPORT_CONTENT "
316
- #define QXMPP_BUILD_SHARED ${QXMPP_BUILD_SHARED}
317
- #define QXMPP_VERSION_MAJOR ${PROJECT_VERSION_MAJOR}
318
- #define QXMPP_VERSION_MINOR ${PROJECT_VERSION_MINOR}
319
- #define QXMPP_VERSION_PATCH ${PROJECT_VERSION_PATCH}
320
- " )
321
-
322
- generate_export_header (qxmpp
323
- CUSTOM_CONTENT_FROM_VARIABLE QXMPP_CUSTOM_EXPORT_CONTENT
324
- )
325
-
326
278
target_include_directories (qxmpp
327
279
PUBLIC
328
280
$< BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR} /base>
329
281
$< BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR} /client>
330
282
$< BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR} /server>
331
- $< BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR} /base>
332
283
$< INSTALL_INTERFACE:include/qxmpp>
333
- ${GLIB2_INCLUDE_DIR}
334
- ${GOBJECT_INCLUDE_DIR}
335
- ${GSTREAMER_INCLUDE_DIRS}
336
284
PRIVATE
337
285
${CMAKE_CURRENT_BINARY_DIR}
338
286
)
@@ -345,21 +293,68 @@ target_link_libraries(qxmpp
345
293
)
346
294
347
295
if (WITH_GSTREAMER )
296
+ find_package (GStreamer REQUIRED )
297
+ find_package (GLIB2 REQUIRED )
298
+ find_package (GObject REQUIRED )
299
+
300
+ set (INSTALL_HEADER_FILES
301
+ ${INSTALL_HEADER_FILES}
302
+ client/QXmppCall.h
303
+ client/QXmppCallManager.h
304
+ client/QXmppCallStream.h
305
+ )
306
+
307
+ target_sources (qxmpp
308
+ PRIVATE
309
+ client/QXmppCall.cpp
310
+ client/QXmppCallManager.cpp
311
+ client/QXmppCallStream.cpp
312
+ )
313
+
348
314
target_link_libraries (qxmpp
349
315
PRIVATE
350
316
${GLIB2_LIBRARIES}
351
317
${GOBJECT_LIBRARIES}
352
318
${GSTREAMER_LIBRARY}
353
319
)
320
+
321
+ target_include_directories (qxmpp
322
+ PRIVATE
323
+ ${GLIB2_INCLUDE_DIR}
324
+ ${GOBJECT_INCLUDE_DIR}
325
+ ${GSTREAMER_INCLUDE_DIRS}
326
+ )
327
+ endif ()
328
+
329
+ if (BUILD_OMEMO )
330
+ # required to be used in QXmppMessage
331
+ target_sources (qxmpp PRIVATE base/QXmppOmemoDataBase.cpp )
354
332
endif ()
355
333
356
334
if (WITH_QCA )
357
335
target_sources (qxmpp PRIVATE client/QXmppEncryptedFileSharingProvider.cpp client/QXmppFileEncryption.cpp client/QcaInitializer.cpp )
358
336
set (INSTALL_HEADER_FILES ${INSTALL_HEADER_FILES} client/QXmppEncryptedFileSharingProvider.h )
359
337
target_link_libraries (qxmpp PRIVATE qca-qt${QT_VERSION_MAJOR} )
360
- target_compile_definitions (qxmpp PRIVATE -DWITH_QCA )
361
338
endif ()
362
339
340
+ # qxmpp_export.h generation
341
+ if (BUILD_SHARED )
342
+ set (QXMPP_BUILD_SHARED true )
343
+ else ()
344
+ set (QXMPP_BUILD_SHARED false )
345
+ endif ()
346
+
347
+ set (QXMPP_CUSTOM_EXPORT_CONTENT "
348
+ #define QXMPP_BUILD_SHARED ${QXMPP_BUILD_SHARED}
349
+ #define QXMPP_VERSION_MAJOR ${PROJECT_VERSION_MAJOR}
350
+ #define QXMPP_VERSION_MINOR ${PROJECT_VERSION_MINOR}
351
+ #define QXMPP_VERSION_PATCH ${PROJECT_VERSION_PATCH}
352
+ " )
353
+
354
+ generate_export_header (qxmpp
355
+ CUSTOM_CONTENT_FROM_VARIABLE QXMPP_CUSTOM_EXPORT_CONTENT
356
+ )
357
+
363
358
install (
364
359
TARGETS qxmpp
365
360
DESTINATION "${CMAKE_INSTALL_LIBDIR} "
@@ -384,6 +379,7 @@ install(
384
379
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR} /qxmpp"
385
380
)
386
381
382
+ # submodules
387
383
if (BUILD_OMEMO )
388
384
add_subdirectory (omemo )
389
385
endif ()
0 commit comments