aboutsummaryrefslogtreecommitdiff
path: root/src/CMakeLists.txt
diff options
context:
space:
mode:
authorNiels Ole Salscheider <niels_ole@salscheider-online.de>2017-09-03 21:55:36 +0200
committerNiels Ole Salscheider <niels_ole@salscheider-online.de>2017-09-04 19:44:01 +0200
commit3241e63f07c5fa493788897ddfb87a201205f621 (patch)
tree70c4a8e38d0ceca7aac5af3bdb6178e865eb7db1 /src/CMakeLists.txt
parent5804795a35d27f8d10301d5f40567a34efca2643 (diff)
downloadqxmpp-3241e63f07c5fa493788897ddfb87a201205f621.tar.gz
Initial CMake build system
Diffstat (limited to 'src/CMakeLists.txt')
-rw-r--r--src/CMakeLists.txt191
1 files changed, 191 insertions, 0 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
new file mode 100644
index 00000000..b4f659cb
--- /dev/null
+++ b/src/CMakeLists.txt
@@ -0,0 +1,191 @@
+add_definitions(-DQXMPP_BUILD)
+
+include_directories(base)
+include_directories(client)
+include_directories(server)
+
+set(INSTALL_HEADER_FILES
+ # Base
+ base/QXmppArchiveIq.h
+ base/QXmppBindIq.h
+ base/QXmppBookmarkSet.h
+ base/QXmppByteStreamIq.h
+ base/QXmppDataForm.h
+ base/QXmppDiscoveryIq.h
+ base/QXmppElement.h
+ base/QXmppEntityTimeIq.h
+ base/QXmppGlobal.h
+ base/QXmppIbbIq.h
+ base/QXmppIq.h
+ base/QXmppJingleIq.h
+ base/QXmppLogger.h
+ base/QXmppMamIq.h
+ base/QXmppMessage.h
+ base/QXmppMucIq.h
+ base/QXmppNonSASLAuth.h
+ base/QXmppPingIq.h
+ base/QXmppPresence.h
+ base/QXmppPubSubIq.h
+ base/QXmppRegisterIq.h
+ base/QXmppResultSet.h
+ base/QXmppRosterIq.h
+ base/QXmppRpcIq.h
+ base/QXmppRtcpPacket.h
+ base/QXmppRtpChannel.h
+ base/QXmppRtpPacket.h
+ base/QXmppSessionIq.h
+ base/QXmppSocks.h
+ base/QXmppStanza.h
+ base/QXmppStream.h
+ base/QXmppStreamFeatures.h
+ base/QXmppStun.h
+ base/QXmppUtils.h
+ base/QXmppVCardIq.h
+ base/QXmppVersionIq.h
+
+ # Client
+ client/QXmppArchiveManager.h
+ client/QXmppBookmarkManager.h
+ client/QXmppCallManager.h
+ client/QXmppCarbonManager.h
+ client/QXmppClient.h
+ client/QXmppClientExtension.h
+ client/QXmppConfiguration.h
+ client/QXmppDiscoveryManager.h
+ client/QXmppEntityTimeManager.h
+ client/QXmppInvokable.h
+ client/QXmppMamManager.h
+ client/QXmppMessageReceiptManager.h
+ client/QXmppMucManager.h
+ client/QXmppOutgoingClient.h
+ client/QXmppRemoteMethod.h
+ client/QXmppRosterManager.h
+ client/QXmppRpcManager.h
+ client/QXmppTransferManager.h
+ client/QXmppTransferManager_p.h
+ client/QXmppVCardManager.h
+ client/QXmppVersionManager.h
+
+ # Server
+ server/QXmppDialback.h
+ server/QXmppIncomingClient.h
+ server/QXmppIncomingServer.h
+ server/QXmppOutgoingServer.h
+ server/QXmppPasswordChecker.h
+ server/QXmppServer.h
+ server/QXmppServerExtension.h
+ server/QXmppServerPlugin.h
+)
+
+set(SOURCE_FILES
+ # Base
+ base/QXmppArchiveIq.cpp
+ base/QXmppBindIq.cpp
+ base/QXmppBookmarkSet.cpp
+ base/QXmppByteStreamIq.cpp
+ base/QXmppCodec.cpp
+ base/QXmppConstants.cpp
+ base/QXmppDataForm.cpp
+ base/QXmppDiscoveryIq.cpp
+ base/QXmppElement.cpp
+ base/QXmppEntityTimeIq.cpp
+ base/QXmppGlobal.cpp
+ base/QXmppIbbIq.cpp
+ base/QXmppIq.cpp
+ base/QXmppJingleIq.cpp
+ base/QXmppLogger.cpp
+ base/QXmppMamIq.cpp
+ base/QXmppMessage.cpp
+ base/QXmppMucIq.cpp
+ base/QXmppNonSASLAuth.cpp
+ base/QXmppPingIq.cpp
+ base/QXmppPresence.cpp
+ base/QXmppPubSubIq.cpp
+ base/QXmppRegisterIq.cpp
+ base/QXmppResultSet.cpp
+ base/QXmppRosterIq.cpp
+ base/QXmppRpcIq.cpp
+ base/QXmppRtcpPacket.cpp
+ base/QXmppRtpChannel.cpp
+ base/QXmppRtpPacket.cpp
+ base/QXmppSasl.cpp
+ base/QXmppSessionIq.cpp
+ base/QXmppSocks.cpp
+ base/QXmppStanza.cpp
+ base/QXmppStream.cpp
+ base/QXmppStreamFeatures.cpp
+ base/QXmppStreamInitiationIq.cpp
+ base/QXmppStreamManagement.cpp
+ base/QXmppStun.cpp
+ base/QXmppUtils.cpp
+ base/QXmppVCardIq.cpp
+ base/QXmppVersionIq.cpp
+
+ # Client
+ client/QXmppDiscoveryManager.cpp
+ client/QXmppArchiveManager.cpp
+ client/QXmppBookmarkManager.cpp
+ client/QXmppCallManager.cpp
+ client/QXmppCarbonManager.cpp
+ client/QXmppClient.cpp
+ client/QXmppClientExtension.cpp
+ client/QXmppConfiguration.cpp
+ client/QXmppEntityTimeManager.cpp
+ client/QXmppInvokable.cpp
+ client/QXmppMamManager.cpp
+ client/QXmppMessageReceiptManager.cpp
+ client/QXmppMucManager.cpp
+ client/QXmppOutgoingClient.cpp
+ client/QXmppRemoteMethod.cpp
+ client/QXmppRosterManager.cpp
+ client/QXmppRpcManager.cpp
+ client/QXmppTransferManager.cpp
+ client/QXmppVCardManager.cpp
+ client/QXmppVersionManager.cpp
+
+ # Server
+ server/QXmppDialback.cpp
+ server/QXmppIncomingClient.cpp
+ server/QXmppIncomingServer.cpp
+ server/QXmppOutgoingServer.cpp
+ server/QXmppPasswordChecker.cpp
+ server/QXmppServer.cpp
+ server/QXmppServerExtension.cpp
+ server/QXmppServerPlugin.cpp
+)
+
+add_library(qxmpp SHARED ${SOURCE_FILES})
+
+set_target_properties(qxmpp PROPERTIES
+ VERSION ${VERSION_STRING}
+ SOVERSION ${SO_VERSION}
+ EXPORT_NAME QXmpp
+ INTERFACE_INCLUDE_DIRECTORIES "${CMAKE_INSTALL_FULL_INCLUDEDIR}/qxmpp"
+)
+
+target_link_libraries(qxmpp
+ PUBLIC
+ Qt5::Core
+ Qt5::Network
+ Qt5::Xml
+)
+
+install(
+ TARGETS qxmpp
+ DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ EXPORT QXmppTarget
+)
+
+install(
+ EXPORT QXmppTarget
+ DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/qxmpp"
+ FILE QXmpp.cmake
+ NAMESPACE QXmpp::
+ COMPONENT Devel
+)
+
+install(
+ FILES ${INSTALL_HEADER_FILES}
+ DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/qxmpp"
+)
+