[kdelibs] The one true fix(tm) for udisks2-backend build
Rex Dieter
rdieter at fedoraproject.org
Thu May 24 16:26:45 UTC 2012
commit a183fa3b6bb233d068b19c12a033ae3a11bc1de6
Author: Rex Dieter <rdieter at fedoraproject.org>
Date: Thu May 24 11:26:51 2012 -0500
The one true fix(tm) for udisks2-backend build
split out non-upstreamed pieces into _post.patch
and quick-n-dirty sed to handle header renames.
kdelibs-udisks2-backend.patch | 115 --------------------
kdelibs-udisks2_post.patch | 115 ++++++++++++++++++++
...disks2_prep.patch => kdelibs-udisks2_prep.patch | 0
kdelibs.spec | 13 ++-
4 files changed, 126 insertions(+), 117 deletions(-)
---
diff --git a/kdelibs-udisks2-backend.patch b/kdelibs-udisks2-backend.patch
index 371a6ac..74ec3c2 100644
--- a/kdelibs-udisks2-backend.patch
+++ b/kdelibs-udisks2-backend.patch
@@ -3522,118 +3522,3 @@ index 0000000..2ca04d2
+}
+
+#endif // UDISKS2STORAGEVOLUME_H
-diff --git a/tier1/solid/src/solid/CMakeLists.txt b/tier1/solid/src/solid/CMakeLists.txt
-index 0fabd2c..75bb642 100644
---- a/tier1/solid/src/solid/solid/CMakeLists.txt
-+++ b/tier1/solid/src/solid/solid/CMakeLists.txt
-@@ -29,7 +29,6 @@ configure_file(config-processor.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-proce
-
- file(MAKE_DIRECTORY
- ${CMAKE_CURRENT_BINARY_DIR}/backends/fakehw
-- ${CMAKE_CURRENT_BINARY_DIR}/backends/hal
- ${CMAKE_CURRENT_BINARY_DIR}/backends/udev
- ${CMAKE_CURRENT_BINARY_DIR}/backends/wmi
- )
-@@ -205,33 +204,6 @@ if(NOT WIN32 AND NOT APPLE)
- endif( UDEV_FOUND )
-
-
-- message(STATUS "Building Solid HAL backend." )
-- set(solid_LIB_SRCS ${solid_LIB_SRCS}
-- backends/hal/halacadapter.cpp
-- backends/hal/halaudiointerface.cpp
-- backends/hal/halbattery.cpp
-- backends/hal/halblock.cpp
-- backends/hal/halbutton.cpp
-- backends/hal/halcamera.cpp
-- backends/hal/halcdrom.cpp
-- backends/hal/haldeviceinterface.cpp
-- backends/hal/haldvbinterface.cpp
-- backends/hal/halfstabhandling.cpp
-- backends/hal/halgenericinterface.cpp
-- backends/hal/haldevice.cpp
-- backends/hal/halmanager.cpp
-- backends/hal/halnetworkinterface.cpp
-- backends/hal/halserialinterface.cpp
-- backends/hal/halopticaldisc.cpp
-- backends/hal/halportablemediaplayer.cpp
-- backends/hal/halprocessor.cpp
-- backends/hal/halstorageaccess.cpp
-- backends/hal/halstorage.cpp
-- backends/hal/halvideo.cpp
-- backends/hal/halvolume.cpp
-- backends/hal/halsmartcardreader.cpp
-- )
--
- message(STATUS "Building Solid UPower backend." )
- set(solid_LIB_SRCS ${solid_LIB_SRCS}
- backends/upower/upowermanager.cpp
-@@ -244,18 +216,19 @@ if(NOT WIN32 AND NOT APPLE)
-
- # FIXME: this should work on more Unix systems
- if (CMAKE_SYSTEM_NAME MATCHES Linux)
-- message(STATUS "Building Solid UDisks backend." )
-+ message(STATUS "Building Solid UDisks2 backend." )
- set(solid_LIB_SRCS ${solid_LIB_SRCS}
-- backends/udisks/udisksmanager.cpp
-- backends/udisks/udisksdevice.cpp
-- backends/udisks/udisksblock.cpp
-- backends/udisks/udisksstoragevolume.cpp
-- backends/udisks/udisksdeviceinterface.cpp
-- backends/udisks/udisksopticaldisc.cpp
-- backends/udisks/udisksopticaldrive.cpp
-- backends/udisks/udisksstoragedrive.cpp
-- backends/udisks/udisksstorageaccess.cpp
-- backends/udisks/udisksgenericinterface.cpp
-+ backends/udisks2/udisksmanager.cpp
-+ backends/udisks2/udisksdevice.cpp
-+ backends/udisks2/udisksblock.cpp
-+ backends/udisks2/udisksstoragevolume.cpp
-+ backends/udisks2/udisksdeviceinterface.cpp
-+ backends/udisks2/udisksopticaldisc.cpp
-+ backends/udisks2/udisksopticaldrive.cpp
-+ backends/udisks2/udisksstoragedrive.cpp
-+ backends/udisks2/udisksstorageaccess.cpp
-+ backends/udisks2/udisksgenericinterface.cpp
-+ backends/udisks2/dbus/manager.cpp
- )
- endif (CMAKE_SYSTEM_NAME MATCHES Linux)
-
-diff --git a/tier1/solid/src/solid/managerbase.cpp b/tier1/solid/src/solid/managerbase.cpp
-index e228b48..7a7cc7d 100644
---- a/tier1/solid/src/solid/solid/managerbase.cpp
-+++ b/tier1/solid/src/solid/solid/managerbase.cpp
-@@ -30,8 +30,7 @@
- #if defined (Q_OS_MAC)
- #include "backends/iokit/iokitmanager.h"
- #elif defined (Q_OS_UNIX)
--#include "backends/hal/halmanager.h"
--#include "backends/udisks/udisksmanager.h"
-+#include "backends/udisks2/udisksmanager.h"
- #include "backends/upower/upowermanager.h"
-
- #if defined (HUPNP_FOUND)
-@@ -71,22 +70,13 @@ void Solid::ManagerBasePrivate::loadBackends()
- # elif defined(Q_OS_WIN) && defined(HAVE_WBEM) && !defined(_WIN32_WCE)
- m_backends << new Solid::Backends::Wmi::WmiManager(0);
-
--# elif defined(Q_OS_UNIX) && !defined(Q_OS_LINUX)
-- m_backends << new Solid::Backends::Hal::HalManager(0);
--
- # elif defined(Q_OS_LINUX)
-- bool solidHalLegacyEnabled
-- = QString::fromLocal8Bit(qgetenv("SOLID_HAL_LEGACY")).toInt()==1;
-- if (solidHalLegacyEnabled) {
-- m_backends << new Solid::Backends::Hal::HalManager(0);
-- } else {
- # if defined(UDEV_FOUND)
- m_backends << new Solid::Backends::UDev::UDevManager(0);
- # endif
-- m_backends << new Solid::Backends::UDisks::UDisksManager(0)
-+ m_backends << new Solid::Backends::UDisks2::Manager(0)
- << new Solid::Backends::UPower::UPowerManager(0)
- << new Solid::Backends::Fstab::FstabManager(0);
-- }
- # endif
-
- # if defined (HUPNP_FOUND)
diff --git a/kdelibs-udisks2_post.patch b/kdelibs-udisks2_post.patch
new file mode 100644
index 0000000..f22742d
--- /dev/null
+++ b/kdelibs-udisks2_post.patch
@@ -0,0 +1,115 @@
+diff --git a/tier1/solid/src/solid/CMakeLists.txt b/tier1/solid/src/solid/CMakeLists.txt
+index 0fabd2c..75bb642 100644
+--- a/tier1/solid/src/solid/CMakeLists.txt
++++ b/tier1/solid/src/solid/CMakeLists.txt
+@@ -29,7 +29,6 @@ configure_file(config-processor.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-proce
+
+ file(MAKE_DIRECTORY
+ ${CMAKE_CURRENT_BINARY_DIR}/backends/fakehw
+- ${CMAKE_CURRENT_BINARY_DIR}/backends/hal
+ ${CMAKE_CURRENT_BINARY_DIR}/backends/udev
+ ${CMAKE_CURRENT_BINARY_DIR}/backends/wmi
+ )
+@@ -205,33 +204,6 @@ if(NOT WIN32 AND NOT APPLE)
+ endif( UDEV_FOUND )
+
+
+- message(STATUS "Building Solid HAL backend." )
+- set(solid_LIB_SRCS ${solid_LIB_SRCS}
+- backends/hal/halacadapter.cpp
+- backends/hal/halaudiointerface.cpp
+- backends/hal/halbattery.cpp
+- backends/hal/halblock.cpp
+- backends/hal/halbutton.cpp
+- backends/hal/halcamera.cpp
+- backends/hal/halcdrom.cpp
+- backends/hal/haldeviceinterface.cpp
+- backends/hal/haldvbinterface.cpp
+- backends/hal/halfstabhandling.cpp
+- backends/hal/halgenericinterface.cpp
+- backends/hal/haldevice.cpp
+- backends/hal/halmanager.cpp
+- backends/hal/halnetworkinterface.cpp
+- backends/hal/halserialinterface.cpp
+- backends/hal/halopticaldisc.cpp
+- backends/hal/halportablemediaplayer.cpp
+- backends/hal/halprocessor.cpp
+- backends/hal/halstorageaccess.cpp
+- backends/hal/halstorage.cpp
+- backends/hal/halvideo.cpp
+- backends/hal/halvolume.cpp
+- backends/hal/halsmartcardreader.cpp
+- )
+-
+ message(STATUS "Building Solid UPower backend." )
+ set(solid_LIB_SRCS ${solid_LIB_SRCS}
+ backends/upower/upowermanager.cpp
+@@ -244,18 +216,19 @@ if(NOT WIN32 AND NOT APPLE)
+
+ # FIXME: this should work on more Unix systems
+ if (CMAKE_SYSTEM_NAME MATCHES Linux)
+- message(STATUS "Building Solid UDisks backend." )
++ message(STATUS "Building Solid UDisks2 backend." )
+ set(solid_LIB_SRCS ${solid_LIB_SRCS}
+- backends/udisks/udisksmanager.cpp
+- backends/udisks/udisksdevice.cpp
+- backends/udisks/udisksblock.cpp
+- backends/udisks/udisksstoragevolume.cpp
+- backends/udisks/udisksdeviceinterface.cpp
+- backends/udisks/udisksopticaldisc.cpp
+- backends/udisks/udisksopticaldrive.cpp
+- backends/udisks/udisksstoragedrive.cpp
+- backends/udisks/udisksstorageaccess.cpp
+- backends/udisks/udisksgenericinterface.cpp
++ backends/udisks2/udisksmanager.cpp
++ backends/udisks2/udisksdevice.cpp
++ backends/udisks2/udisksblock.cpp
++ backends/udisks2/udisksstoragevolume.cpp
++ backends/udisks2/udisksdeviceinterface.cpp
++ backends/udisks2/udisksopticaldisc.cpp
++ backends/udisks2/udisksopticaldrive.cpp
++ backends/udisks2/udisksstoragedrive.cpp
++ backends/udisks2/udisksstorageaccess.cpp
++ backends/udisks2/udisksgenericinterface.cpp
++ backends/udisks2/dbus/manager.cpp
+ )
+ endif (CMAKE_SYSTEM_NAME MATCHES Linux)
+
+diff --git a/tier1/solid/src/solid/managerbase.cpp b/tier1/solid/src/solid/managerbase.cpp
+index e228b48..7a7cc7d 100644
+--- a/tier1/solid/src/solid/managerbase.cpp
++++ b/tier1/solid/src/solid/managerbase.cpp
+@@ -30,8 +30,7 @@
+ #if defined (Q_OS_MAC)
+ #include "backends/iokit/iokitmanager.h"
+ #elif defined (Q_OS_UNIX)
+-#include "backends/hal/halmanager.h"
+-#include "backends/udisks/udisksmanager.h"
++#include "backends/udisks2/udisksmanager.h"
+ #include "backends/upower/upowermanager.h"
+
+ #if defined (HUPNP_FOUND)
+@@ -71,22 +70,13 @@ void Solid::ManagerBasePrivate::loadBackends()
+ # elif defined(Q_OS_WIN) && defined(HAVE_WBEM) && !defined(_WIN32_WCE)
+ m_backends << new Solid::Backends::Wmi::WmiManager(0);
+
+-# elif defined(Q_OS_UNIX) && !defined(Q_OS_LINUX)
+- m_backends << new Solid::Backends::Hal::HalManager(0);
+-
+ # elif defined(Q_OS_LINUX)
+- bool solidHalLegacyEnabled
+- = QString::fromLocal8Bit(qgetenv("SOLID_HAL_LEGACY")).toInt()==1;
+- if (solidHalLegacyEnabled) {
+- m_backends << new Solid::Backends::Hal::HalManager(0);
+- } else {
+ # if defined(UDEV_FOUND)
+ m_backends << new Solid::Backends::UDev::UDevManager(0);
+ # endif
+- m_backends << new Solid::Backends::UDisks::UDisksManager(0)
++ m_backends << new Solid::Backends::UDisks2::Manager(0)
+ << new Solid::Backends::UPower::UPowerManager(0)
+ << new Solid::Backends::Fstab::FstabManager(0);
+- }
+ # endif
+
+ # if defined (HUPNP_FOUND)
diff --git a/kdelibs-4.8.2-udisks2_prep.patch b/kdelibs-udisks2_prep.patch
similarity index 100%
rename from kdelibs-4.8.2-udisks2_prep.patch
rename to kdelibs-udisks2_prep.patch
diff --git a/kdelibs.spec b/kdelibs.spec
index 3b2a599..8ce1e16 100644
--- a/kdelibs.spec
+++ b/kdelibs.spec
@@ -123,8 +123,9 @@ Patch42: 0003-Implement-automatic-scanning-of-source-code-for-requ.patch
Patch45: kdelibs-4.7.3-halectomy.patch
# udisks2 Solid backend, halectomy
-Patch46: kdelibs-4.8.2-udisks2_prep.patch
+Patch46: kdelibs-udisks2_prep.patch
Patch47: kdelibs-udisks2-backend.patch
+Patch48: kdelibs-udisks2_post.patch
## upstreamable
# knewstuff2 variant of:
@@ -332,8 +333,16 @@ sed -i -e "s|@@VERSION_RELEASE@@|%{version}-%{release}|" kio/kio/kprotocolmanage
%if "%{?udisks}" == "udisks2"
pushd solid
%patch46 -p2 -b .udisks2_prep
-popd
%patch47 -p4 -b .udisks2backend
+sed -i.udisks2_sed \
+ -e 's|#include "../shared/udevqtdevice.h"|#include "../shared/udevqt.h"|g' \
+ -e 's|#include "../shared/udevqtclient.h"|#include "../shared/udevqt.h"|g' \
+ solid/backends/udisks2/udisksopticaldisc.h \
+ solid/backends/udisks2/udisksstoragedrive.h \
+ solid/backends/udisks2/udisksopticaldisc.cpp \
+ solid/backends/udisks2/udisksstoragedrive.cpp
+%patch48 -p4 -b .udisks2_post
+popd
%else
%patch45 -p1 -b .halectomy
%endif
More information about the scm-commits
mailing list