diff --git a/CMakeLists.txt b/CMakeLists.txt index de93c879e0ed9e356e344fe6bb599416c0c0579f..cf32fca2fc7a883b827bff0ae566fe750f467c83 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -30,6 +30,7 @@ FIND_PACKAGE(Ring REQUIRED) IF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") ADD_SUBDIRECTORY(${CMAKE_SOURCE_DIR}/src/qtwrapper) ADD_DEFINITIONS(-DENABLE_LIBWRAP=true) # Use native calls (no dbus) + ADD_DEFINITIONS(-Wno-unknown-pragmas) SET(ENABLE_QT5 true) # Use Qt5 SET(ENABLE_LIBWRAP true) MESSAGE("Compiling for OS X: LibWrap enabled, Qt5 enabled.") @@ -401,7 +402,10 @@ IF(NOT ${ENABLE_STATIC} MATCHES false) ENDIF() IF(${ENABLE_QT5} MATCHES true) - QT5_USE_MODULES(ringclient Core DBus) + QT5_USE_MODULES(ringclient Core) + IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux") + QT5_USE_MODULES(ringclient DBus) + ENDIF(${CMAKE_SYSTEM_NAME} MATCHES "Linux") ENDIF(${ENABLE_QT5} MATCHES true) IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux") diff --git a/INSTALL b/INSTALL index 6f49cab8dc4a05a14c4c1e55e9637b6d3bfac592..11bdc50887465ebcc55d03049a03be17e298263e 100644 --- a/INSTALL +++ b/INSTALL @@ -21,7 +21,7 @@ To install the appplication, type the following commands in a console, while in make -j3 sudo make install -To generate a source tarball (sflphone-cliend-kde.tar.xz), just execute release.sh +To generate a source tarball (ring-cliend-kde.tar.xz), just execute release.sh Explaination ================== @@ -50,21 +50,17 @@ OS X Install # Install necessary tools: brew install dbus cmake -brew install qt5 --with-d-bus +brew install qt5 export CMAKE_PREFIX_PATH=/usr/local/Cellar/qt5/5.3.2/ -# First make sure you have built sflphone daemon for OS X. You currently need some special -# care, but as the port matures, that should get fixed. - -cd ~/sflphone-kde/src/lib/ -install_name_tool -id @executable_path/libsflphone.0.dylib libsflphone.0.dylib +# First make sure you have built ring daemon for OS X. mkdir build && cd build cmake .. [-DCMAKE_BUILD_TYPE=Debug for compiling with debug symbols] make -install_name_tool -change @rpath/libsflphone.0.dylib @executable_path/libsflphone.0.dylib libqtsflphone.1.4.1.dylib -install_name_tool -id @executable_path/libqtsflphone.1.4.1.dylib libqtsflphone.1.4.1.dylib +install_name_tool -change @rpath/libring.0.dylib @executable_path/libring.0.dylib libringclient.1.4.1.dylib +install_name_tool -id @executable_path/libringclient.1.4.1.dylib libringclient.1.4.1.dylib # You can now use thes libraries in a QtCreator project. Don't forget to copy both dylibs inside # your .app/Contents/MacOS/ diff --git a/cmake/FindRing.cmake b/cmake/FindRing.cmake index 74d18248a7e451d703db6e2c8527b84fc73a7bd5..81b63b639552360f38ccd0736187c5a8f115c114 100644 --- a/cmake/FindRing.cmake +++ b/cmake/FindRing.cmake @@ -11,7 +11,7 @@ ELSE() Add -DRING_BUILD_DIR or -DCMAKE_INSTALL_PREFIX") ENDIF() -SET(CMAKE_FIND_LIBRARY_SUFFIXES ".dylib") +SET(CMAKE_FIND_LIBRARY_SUFFIXES ".dylib;.so;.dll") FIND_LIBRARY(ring_BIN NAMES ring PATHS ${RING_BUILD_DIR}/.libs PATHS ${CMAKE_INSTALL_PREFIX}/libexec ) diff --git a/cmake/LibRingClientConfig.cmake.in b/cmake/LibRingClientConfig.cmake.in index a4afb95986bff9b57274aba7f55834b3ad012dd6..1b49464237089379a6bf618d87e67b3dbb7f086f 100644 --- a/cmake/LibRingClientConfig.cmake.in +++ b/cmake/LibRingClientConfig.cmake.in @@ -5,4 +5,13 @@ INCLUDE(GNUInstallDirs) SET(LIB_RING_CLIENT_INCLUDE_DIR ${INCLUDE_INSTALL_DIR}/libringclient/) STRING(REPLACE "${CMAKE_LIBRARY_ARCHITECTURE}" "" SANE_LIBRARY_PATH "${CMAKE_INSTALL_FULL_LIBDIR}" ) -SET(LIB_RING_CLIENT_LIBRARY ${SANE_LIBRARY_PATH}/libringclient.so) \ No newline at end of file + +IF(DEFINED ${ENABLE_STATIC}) + SET(CMAKE_FIND_LIBRARY_SUFFIXES ".a;.la;.lib") +ELSE() + SET(CMAKE_FIND_LIBRARY_SUFFIXES ".dylib;.so;.dll") +ENDIF() + +FIND_LIBRARY(LIB_RING_CLIENT_LIBRARY NAMES ringclient + PATHS ${RING_BUILD_DIR}/.libs + PATHS ${CMAKE_INSTALL_PREFIX}/libexec ) diff --git a/src/accountmodel.cpp b/src/accountmodel.cpp index 78469157612b2b9f2db927b17a8c167d41addbe5..e980d8166292ef3a720d49da63272186bc947898 100644 --- a/src/accountmodel.cpp +++ b/src/accountmodel.cpp @@ -21,6 +21,7 @@ //Qt #include <QtCore/QObject> +#include <QtCore/QCoreApplication> //Ring library #include "dbus/configurationmanager.h" diff --git a/src/audio/settings.cpp b/src/audio/settings.cpp index bd18600c76cc9f730834133dc6917a540824211a..0055304f9e1e5290b24e8a7dda80d8ea70fedb44 100644 --- a/src/audio/settings.cpp +++ b/src/audio/settings.cpp @@ -17,6 +17,9 @@ ***************************************************************************/ #include "settings.h" +//Qt include +#include <QUrl> + //Ring #include "dbus/configurationmanager.h" #include "dbus/callmanager.h" diff --git a/src/callmodel.cpp b/src/callmodel.cpp index f6fa6850a13dce1abac08144ea2c83c945a34afc..c7e516e1dfb5912b450924380be83ad699b3e41e 100644 --- a/src/callmodel.cpp +++ b/src/callmodel.cpp @@ -19,7 +19,9 @@ //Qt #include <QtCore/QDebug> +#include <QtCore/QCoreApplication> #include <QtGui/QDragEnterEvent> +#include <QtCore/QMimeData> //Ring library #include "call.h" diff --git a/src/dbus/metatypes.h b/src/dbus/metatypes.h index ba3c85fb10453cfa2237a46238ebbbfaf224a784..86a1934943c60c588c8b793b7d44f009d12d2ba2 100644 --- a/src/dbus/metatypes.h +++ b/src/dbus/metatypes.h @@ -23,7 +23,10 @@ #include <QtCore/QMap> #include <QVector> #include <QtCore/QString> + +#ifndef ENABLE_LIBWRAP #include <QtDBus/QtDBus> +#endif #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant" typedef QMap<QString, QString> MapStringString; @@ -42,6 +45,7 @@ Q_DECLARE_METATYPE(VectorInt) Q_DECLARE_METATYPE(VectorString) Q_DECLARE_METATYPE(MapStringVectorString) +#ifndef ENABLE_LIBWRAP static bool dbus_metaTypeInit = false; inline void registerCommTypes() { qDBusRegisterMetaType<MapStringString>(); @@ -53,6 +57,12 @@ inline void registerCommTypes() { qDBusRegisterMetaType<MapStringVectorString>(); dbus_metaTypeInit = true; } +#else +inline void registerCommTypes() { + +} +#endif + #pragma GCC diagnostic pop #endif diff --git a/src/historymodel.cpp b/src/historymodel.cpp index f762ffcb8c2aa623fc177e60808be54ea58c7977..d532dc0085741cad733399374377c107a0c3ecd9 100644 --- a/src/historymodel.cpp +++ b/src/historymodel.cpp @@ -20,6 +20,10 @@ //C include #include <time.h> +//Qt include +#include <QMimeData> +#include <QCoreApplication> + //Ring lib #include "mime.h" #include "dbus/callmanager.h" diff --git a/src/qtwrapper/callmanager_wrap.h b/src/qtwrapper/callmanager_wrap.h index e27b8a91d58d5950a0bae107c460e0b7a9ea27af..5a29bd06384f44bdf738336c230c25ee8b0bd9b7 100644 --- a/src/qtwrapper/callmanager_wrap.h +++ b/src/qtwrapper/callmanager_wrap.h @@ -25,7 +25,6 @@ #include <QtCore/QString> #include <QtCore/QStringList> #include <QtCore/QVariant> -#include <QtDBus/QtDBus> #include <ring.h> #include "../dbus/metatypes.h" diff --git a/src/qtwrapper/configurationmanager_wrap.h b/src/qtwrapper/configurationmanager_wrap.h index 360b72f81f1c252d38f271fc1f4ebf4503054f3a..d565b13a2eb976ce6395fa4d6584d13492bcce23 100644 --- a/src/qtwrapper/configurationmanager_wrap.h +++ b/src/qtwrapper/configurationmanager_wrap.h @@ -25,7 +25,6 @@ #include <QtCore/QString> #include <QtCore/QStringList> #include <QtCore/QVariant> -#include <QtDBus/QtDBus> #include <future> diff --git a/src/qtwrapper/conversions_wrap.hpp b/src/qtwrapper/conversions_wrap.hpp index e28115dbfe0b330135da5988fa222b71b14a1037..39cf326ece65886731d3feabe66225e75ebfb01a 100644 --- a/src/qtwrapper/conversions_wrap.hpp +++ b/src/qtwrapper/conversions_wrap.hpp @@ -24,6 +24,8 @@ #include "../dbus/metatypes.h" +#define Q_NOREPLY + inline MapStringString convertMap(const std::map<std::string, std::string>& m) { MapStringString temp; for (const auto& x : m) { diff --git a/src/qtwrapper/instancemanager.cpp b/src/qtwrapper/instancemanager.cpp index bf33856ce2a0207d9f2566bb9d21de6a2ef14af2..7178f451c730a44ffddeba63d3a7c265e1537be5 100644 --- a/src/qtwrapper/instancemanager.cpp +++ b/src/qtwrapper/instancemanager.cpp @@ -24,7 +24,6 @@ #include "videomanager.h" #endif //ENABLE_VIDEO - static int ringFlags = 0; InstanceInterface::InstanceInterface() : m_pTimer(nullptr) diff --git a/src/qtwrapper/instancemanager_wrap.h b/src/qtwrapper/instancemanager_wrap.h index eac6472ac5b1f2396d7727e63084152f4053696f..c9621e44e7e90aafda0c066b235b8759bda9f82d 100644 --- a/src/qtwrapper/instancemanager_wrap.h +++ b/src/qtwrapper/instancemanager_wrap.h @@ -25,6 +25,7 @@ #include <QString> #include <QStringList> #include <QVariant> +#include <QTimer> #include "ring.h" #include "../dbus/metatypes.h" diff --git a/src/qtwrapper/presencemanager_wrap.h b/src/qtwrapper/presencemanager_wrap.h index b68904f05f38b0a4f03b6290d87c452e9007f1ad..062e277c12bf5da5f9b8131423171a47402e5add 100644 --- a/src/qtwrapper/presencemanager_wrap.h +++ b/src/qtwrapper/presencemanager_wrap.h @@ -25,7 +25,6 @@ #include <QtCore/QString> #include <QtCore/QStringList> #include <QtCore/QVariant> -#include <QtDBus/QtDBus> #include <ring.h> diff --git a/src/qtwrapper/videomanager_wrap.h b/src/qtwrapper/videomanager_wrap.h index b6aff490305f813d16eaf7b407d596dab7a66634..5d7c3c462e02f06898a3323415f5b9eb2696bed8 100644 --- a/src/qtwrapper/videomanager_wrap.h +++ b/src/qtwrapper/videomanager_wrap.h @@ -25,7 +25,6 @@ #include <QtCore/QString> #include <QtCore/QStringList> #include <QtCore/QVariant> -#include <QtDBus/QtDBus> #include <ring.h> #include "../dbus/metatypes.h" diff --git a/src/ringtonemodel.cpp b/src/ringtonemodel.cpp index 20e06181daab5e2078e5b437677e8acf01fe08fc..2bcbc2fda51d6749dda6b0d35310895a6adc1a83 100644 --- a/src/ringtonemodel.cpp +++ b/src/ringtonemodel.cpp @@ -19,6 +19,7 @@ //Qt #include <QtCore/QTimer> +#include <QtCore/QFileInfo> //Ring #include "dbus/configurationmanager.h"