From 6f356592a58853defb42e0519684f2f7f53b9d52 Mon Sep 17 00:00:00 2001 From: John Maguire Date: Thu, 15 Dec 2016 11:36:05 +0000 Subject: [PATCH] Fixes for cross compiling for mac. --- ext/clementine-spotifyblob/CMakeLists.txt | 2 +- ext/clementine-tagreader/CMakeLists.txt | 3 ++- src/CMakeLists.txt | 11 +++++++++-- src/devices/devicemanager.cpp | 24 +++++++++++------------ 4 files changed, 24 insertions(+), 16 deletions(-) diff --git a/ext/clementine-spotifyblob/CMakeLists.txt b/ext/clementine-spotifyblob/CMakeLists.txt index 02c25e8ce..28ee96382 100644 --- a/ext/clementine-spotifyblob/CMakeLists.txt +++ b/ext/clementine-spotifyblob/CMakeLists.txt @@ -53,7 +53,7 @@ target_link_libraries(clementine-spotifyblob if(APPLE) target_link_libraries(clementine-spotifyblob - /System/Library/Frameworks/Foundation.framework + "-framework Foundation" ) endif(APPLE) diff --git a/ext/clementine-tagreader/CMakeLists.txt b/ext/clementine-tagreader/CMakeLists.txt index cb38cc495..f4c7bb01e 100644 --- a/ext/clementine-tagreader/CMakeLists.txt +++ b/ext/clementine-tagreader/CMakeLists.txt @@ -31,6 +31,7 @@ target_link_libraries(clementine-tagreader libclementine-tagreader ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY} + z ) if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD") @@ -41,7 +42,7 @@ endif(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD") if(APPLE) target_link_libraries(clementine-tagreader - /System/Library/Frameworks/Foundation.framework + "-framework Foundation" ) endif(APPLE) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index f2905a166..570a8012d 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -859,7 +859,6 @@ optional_source(APPLE core/macfslistener.mm core/macglobalshortcutbackend.mm core/mac_startup.mm - devices/macdevicelister.mm engines/osxdevicefinder.cpp networkremote/bonjour.mm ui/globalshortcutgrabber.mm @@ -869,10 +868,18 @@ optional_source(APPLE HEADERS core/macfslistener.h core/macglobalshortcutbackend.h - devices/macdevicelister.h ui/macsystemtrayicon.h ) +if(APPLE) + optional_source(HAVE_LIBMTP + SOURCES + devices/macdevicelister.mm + HEADERS + devices/macdevicelister.h + ) +endif() + # Platform specific - Windows optional_source(WIN32 SOURCES diff --git a/src/devices/devicemanager.cpp b/src/devices/devicemanager.cpp index 32ba33657..4ad840a09 100644 --- a/src/devices/devicemanager.cpp +++ b/src/devices/devicemanager.cpp @@ -29,10 +29,6 @@ #include #include "config.h" -#include "devicedatabasebackend.h" -#include "devicekitlister.h" -#include "devicestatefiltermodel.h" -#include "filesystemdevice.h" #include "core/application.h" #include "core/concurrentrun.h" #include "core/database.h" @@ -40,14 +36,18 @@ #include "core/musicstorage.h" #include "core/taskmanager.h" #include "core/utilities.h" +#include "devicedatabasebackend.h" +#include "devicekitlister.h" +#include "devicestatefiltermodel.h" +#include "filesystemdevice.h" #include "ui/iconloader.h" #ifdef HAVE_AUDIOCD -#include "cddalister.h" #include "cddadevice.h" +#include "cddalister.h" #endif -#ifdef Q_OS_DARWIN +#if defined(Q_OS_DARWIN) and defined(HAVE_LIBMTP) #include "macdevicelister.h" #endif #ifdef HAVE_LIBGPOD @@ -169,7 +169,8 @@ DeviceManager::DeviceInfo::BestBackend() const { DeviceManager::DeviceManager(Application* app, QObject* parent) : QAbstractListModel(parent), app_(app), - not_connected_overlay_(IconLoader::Load("edit-delete", IconLoader::Base)) { + not_connected_overlay_( + IconLoader::Load("edit-delete", IconLoader::Base)) { thread_pool_.setMaxThreadCount(1); connect(app_->task_manager(), SIGNAL(TasksChanged()), SLOT(TasksChanged())); @@ -200,7 +201,7 @@ DeviceManager::DeviceManager(Application* app, QObject* parent) #ifdef HAVE_GIO AddLister(new GioLister); #endif -#ifdef Q_OS_DARWIN +#if defined(Q_OS_DARWIN) and defined(HAVE_LIBMTP) AddLister(new MacDeviceLister); #endif @@ -322,8 +323,7 @@ QVariant DeviceManager::data(const QModelIndex& index, int role) const { if (!info.device_) { if (info.database_id_ == -1 && !info.BestBackend()->lister_->DeviceNeedsMount( - info.BestBackend()->unique_id_)) { - + info.BestBackend()->unique_id_)) { if (info.BestBackend()->lister_->AskForScan( info.BestBackend()->unique_id_)) { std::unique_ptr dialog(new QMessageBox( @@ -629,8 +629,8 @@ std::shared_ptr DeviceManager::Connect(int row) { return ret; } -std::shared_ptr DeviceManager::GetConnectedDevice(int row) - const { +std::shared_ptr DeviceManager::GetConnectedDevice( + int row) const { return devices_[row].device_; }