Changeset View
Changeset View
Standalone View
Standalone View
src/solid/devices/managerbase.cpp
Show All 15 Lines | 1 | /* | |||
---|---|---|---|---|---|
16 | 16 | | |||
17 | You should have received a copy of the GNU Lesser General Public | 17 | You should have received a copy of the GNU Lesser General Public | ||
18 | License along with this library. If not, see <http://www.gnu.org/licenses/>. | 18 | License along with this library. If not, see <http://www.gnu.org/licenses/>. | ||
19 | */ | 19 | */ | ||
20 | 20 | | |||
21 | #include "managerbase_p.h" | 21 | #include "managerbase_p.h" | ||
22 | 22 | | |||
23 | #include <stdlib.h> | 23 | #include <stdlib.h> | ||
24 | #if !defined (Q_OS_WIN) && !defined (Q_OS_MAC) | | |||
25 | #include <config-solid.h> | | |||
26 | #endif | | |||
27 | 24 | | |||
28 | #include "backends/fakehw/fakemanager.h" | 25 | #include <config-backends.h> | ||
29 | 26 | | |||
30 | #if defined (Q_OS_MAC) | 27 | // do *not* use other defines than BUILD_DEVICE_BACKEND_$backend to include | ||
31 | #include "backends/iokit/iokitmanager.h" | 28 | // the managers, and keep an alphabetical order | ||
32 | #elif defined (Q_OS_UNIX) | 29 | #ifdef BUILD_DEVICE_BACKEND_fakehw | ||
30 | #include "backends/fakehw/fakemanager.h" | ||||
31 | #endif | ||||
32 | #ifdef BUILD_DEVICE_BACKEND_fstab | ||||
33 | #include "backends/fstab/fstabmanager.h" | ||||
34 | #endif | ||||
35 | #ifdef BUILD_DEVICE_BACKEND_hal | ||||
33 | #include "backends/hal/halmanager.h" | 36 | #include "backends/hal/halmanager.h" | ||
37 | #endif | ||||
38 | #ifdef BUILD_DEVICE_BACKEND_iokit | ||||
39 | #include "backends/iokit/iokitmanager.h" | ||||
40 | #endif | ||||
41 | #ifdef BUILD_DEVICE_BACKEND_udev | ||||
42 | #include "backends/udev/udevmanager.h" | ||||
43 | #endif | ||||
44 | #ifdef BUILD_DEVICE_BACKEND_udisks2 | ||||
34 | #include "backends/udisks2/udisksmanager.h" | 45 | #include "backends/udisks2/udisksmanager.h" | ||
46 | #endif | ||||
47 | #ifdef BUILD_DEVICE_BACKEND_upower | ||||
35 | #include "backends/upower/upowermanager.h" | 48 | #include "backends/upower/upowermanager.h" | ||
36 | | ||||
37 | #if UDEV_FOUND | | |||
38 | #include "backends/udev/udevmanager.h" | | |||
39 | #endif | 49 | #endif | ||
40 | 50 | #ifdef BUILD_DEVICE_BACKEND_win | |||
41 | #include "backends/fstab/fstabmanager.h" | | |||
42 | | ||||
43 | #elif defined (Q_OS_WIN) && !defined(_WIN32_WCE) | | |||
44 | #include "backends/win/windevicemanager.h" | 51 | #include "backends/win/windevicemanager.h" | ||
45 | #endif | 52 | #endif | ||
46 | 53 | | |||
47 | Solid::ManagerBasePrivate::ManagerBasePrivate() | 54 | Solid::ManagerBasePrivate::ManagerBasePrivate() | ||
48 | { | 55 | { | ||
49 | } | 56 | } | ||
50 | 57 | | |||
51 | Solid::ManagerBasePrivate::~ManagerBasePrivate() | 58 | Solid::ManagerBasePrivate::~ManagerBasePrivate() | ||
52 | { | 59 | { | ||
53 | qDeleteAll(m_backends); | 60 | qDeleteAll(m_backends); | ||
54 | } | 61 | } | ||
55 | 62 | | |||
63 | // do *not* use other defines than BUILD_DEVICE_BACKEND_$backend to add | ||||
64 | // the managers, and keep an alphabetical order | ||||
56 | void Solid::ManagerBasePrivate::loadBackends() | 65 | void Solid::ManagerBasePrivate::loadBackends() | ||
57 | { | 66 | { | ||
58 | QString solidFakeXml(QString::fromLocal8Bit(qgetenv("SOLID_FAKEHW"))); | 67 | QString solidFakeXml(QString::fromLocal8Bit(qgetenv("SOLID_FAKEHW"))); | ||
59 | 68 | | |||
60 | if (!solidFakeXml.isEmpty()) { | 69 | if (!solidFakeXml.isEmpty()) { | ||
70 | #ifdef BUILD_DEVICE_BACKEND_fakehw | ||||
61 | m_backends << new Solid::Backends::Fake::FakeManager(nullptr, solidFakeXml); | 71 | m_backends << new Solid::Backends::Fake::FakeManager(nullptr, solidFakeXml); | ||
72 | #endif | ||||
62 | } else { | 73 | } else { | ||
63 | # if defined(Q_OS_MAC) | 74 | #ifdef BUILD_DEVICE_BACKEND_fstab | ||
64 | m_backends << new Solid::Backends::IOKit::IOKitManager(nullptr); | 75 | m_backends << new Solid::Backends::Fstab::FstabManager(nullptr); | ||
65 | | ||||
66 | # elif defined(Q_OS_FREEBSD) | | |||
67 | m_backends << new Solid::Backends::UPower::UPowerManager(nullptr) | | |||
68 | # if EXPERIMENTAL_BSDISKS | | |||
69 | << new Solid::Backends::UDisks2::Manager(nullptr) | | |||
70 | # else | | |||
71 | << new Solid::Backends::Hal::HalManager(nullptr) | | |||
72 | # endif | 76 | #endif | ||
73 | << new Solid::Backends::Fstab::FstabManager(nullptr); | 77 | #ifdef BUILD_DEVICE_BACKEND_hal | ||
74 | | ||||
75 | # elif defined(Q_OS_WIN) && !defined(_WIN32_WCE) | | |||
76 | m_backends << new Solid::Backends::Win::WinDeviceManager(nullptr); | | |||
77 | # elif defined(Q_OS_UNIX) && !defined(Q_OS_LINUX) | | |||
78 | m_backends << new Solid::Backends::Hal::HalManager(nullptr); | 78 | m_backends << new Solid::Backends::Hal::HalManager(nullptr); | ||
79 | 79 | #endif | |||
80 | # elif defined(Q_OS_LINUX) && !defined(Q_OS_ANDROID) | 80 | #ifdef BUILD_DEVICE_BACKEND_iokit | ||
81 | # if UDEV_FOUND | 81 | m_backends << new Solid::Backends::IOKit::IOKitManager(nullptr); | ||
82 | #endif | ||||
83 | #ifdef BUILD_DEVICE_BACKEND_udev | ||||
82 | m_backends << new Solid::Backends::UDev::UDevManager(nullptr); | 84 | m_backends << new Solid::Backends::UDev::UDevManager(nullptr); | ||
85 | #endif | ||||
86 | #ifdef BUILD_DEVICE_BACKEND_udisks2 | ||||
83 | m_backends << new Solid::Backends::UDisks2::Manager(nullptr); | 87 | m_backends << new Solid::Backends::UDisks2::Manager(nullptr); | ||
84 | # endif | 88 | #endif | ||
85 | m_backends << new Solid::Backends::UPower::UPowerManager(nullptr) | 89 | #ifdef BUILD_DEVICE_BACKEND_upower | ||
86 | << new Solid::Backends::Fstab::FstabManager(nullptr); | 90 | m_backends << new Solid::Backends::UPower::UPowerManager(nullptr); | ||
91 | #endif | ||||
92 | #ifdef BUILD_DEVICE_BACKEND_win | ||||
93 | m_backends << new Solid::Backends::Win::WinDeviceManager(nullptr); | ||||
87 | # endif | 94 | #endif | ||
88 | } | 95 | } | ||
89 | } | 96 | } | ||
90 | 97 | | |||
91 | QList<QObject *> Solid::ManagerBasePrivate::managerBackends() const | 98 | QList<QObject *> Solid::ManagerBasePrivate::managerBackends() const | ||
92 | { | 99 | { | ||
93 | return m_backends; | 100 | return m_backends; | ||
94 | } | 101 | } | ||
95 | 102 | |