From 76c1941f757583f51e0ef1f832f5b74e3abeb947 Mon Sep 17 00:00:00 2001 From: eroen Date: Thu, 7 Feb 2013 17:10:21 +0100 Subject: [PATCH 2/2] kdelibs-4.10.0: Make udisks optional See https://bugs.gentoo.org/show_bug.cgi?id=455792 Thanks to Franz Fellner for patches. --- .../kdelibs/files/kdelibs-4.10.0-no_udisks1.patch | 48 ++++++++++++++++++++++ ...kdelibs-4.10.0-udisks2_opticaldisc_spinup.patch | 35 ++++++++++++++++ kde-base/kdelibs/kdelibs-4.10.0.ebuild | 16 ++++++-- 3 files changed, 96 insertions(+), 3 deletions(-) create mode 100644 kde-base/kdelibs/files/kdelibs-4.10.0-no_udisks1.patch create mode 100644 kde-base/kdelibs/files/kdelibs-4.10.0-udisks2_opticaldisc_spinup.patch diff --git a/kde-base/kdelibs/files/kdelibs-4.10.0-no_udisks1.patch b/kde-base/kdelibs/files/kdelibs-4.10.0-no_udisks1.patch new file mode 100644 index 0000000..825d7ec --- /dev/null +++ b/kde-base/kdelibs/files/kdelibs-4.10.0-no_udisks1.patch @@ -0,0 +1,48 @@ +--- solid/solid/CMakeLists.txt.org 2013-02-07 09:04:57.838999597 +0100 ++++ solid/solid/CMakeLists.txt 2013-02-07 09:05:32.412999593 +0100 +@@ -283,20 +283,6 @@ + backends/udisks2/udisksgenericinterface.cpp + backends/udisks2/dbus/manager.cpp + ) +- else ( WITH_SOLID_UDISKS2 ) +- message(STATUS "Building Solid UDisks 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 +- ) + endif ( WITH_SOLID_UDISKS2 ) + endif (CMAKE_SYSTEM_NAME MATCHES Linux) + +--- solid/solid/managerbase.cpp.org 2013-02-07 09:58:22.124999215 +0100 ++++ solid/solid/managerbase.cpp 2013-02-07 10:06:29.183999157 +0100 +@@ -33,8 +33,6 @@ + #include "backends/hal/halmanager.h" + #if defined (WITH_SOLID_UDISKS2) + #include "backends/udisks2/udisksmanager.h" +-#else +-#include "backends/udisks/udisksmanager.h" + #endif + #include "backends/upower/upowermanager.h" + +@@ -88,11 +86,9 @@ + m_backends << new Solid::Backends::UDev::UDevManager(0); + # endif + # if defined(WITH_SOLID_UDISKS2) +- m_backends << new Solid::Backends::UDisks2::Manager(0) +-# else +- m_backends << new Solid::Backends::UDisks::UDisksManager(0) ++ m_backends << new Solid::Backends::UDisks2::Manager(0); + # endif +- << new Solid::Backends::UPower::UPowerManager(0) ++ m_backends << new Solid::Backends::UPower::UPowerManager(0) + << new Solid::Backends::Fstab::FstabManager(0); + } + # endif diff --git a/kde-base/kdelibs/files/kdelibs-4.10.0-udisks2_opticaldisc_spinup.patch b/kde-base/kdelibs/files/kdelibs-4.10.0-udisks2_opticaldisc_spinup.patch new file mode 100644 index 0000000..a9d839c --- /dev/null +++ b/kde-base/kdelibs/files/kdelibs-4.10.0-udisks2_opticaldisc_spinup.patch @@ -0,0 +1,35 @@ +--- solid/solid/backends/udisks2/udisksdevice.cpp.org 2013-02-07 09:12:48.071999541 +0100 ++++ solid/solid/backends/udisks2/udisksdevice.cpp 2013-02-07 09:13:10.193999538 +0100 +@@ -609,32 +609,6 @@ + { + if ( drive.prop("Optical").toBool() ) // optical stuff + { +- bool isWritable = drive.prop("OpticalBlank").toBool(); +- +- const UDisks2::OpticalDisc disc(const_cast(this)); +- Solid::OpticalDisc::ContentTypes availContent = disc.availableContent(); +- +- if (availContent & Solid::OpticalDisc::VideoDvd) // Video DVD +- return "media-optical-dvd-video"; +- else if ((availContent & Solid::OpticalDisc::VideoCd) || (availContent & Solid::OpticalDisc::SuperVideoCd)) // Video CD +- return "media-optical-video"; +- else if ((availContent & Solid::OpticalDisc::Data) && (availContent & Solid::OpticalDisc::Audio)) // Mixed CD +- return "media-optical-mixed-cd"; +- else if (availContent & Solid::OpticalDisc::Audio) // Audio CD +- return "media-optical-audio"; +- else if (availContent & Solid::OpticalDisc::Data) // Data CD +- return "media-optical-data"; +- else if ( isWritable ) +- return "media-optical-recordable"; +- else +- { +- if ( media.startsWith( "optical_dvd" ) || media.startsWith( "optical_hddvd" ) ) // DVD +- return "media-optical-dvd"; +- else if ( media.startsWith( "optical_bd" ) ) // BluRay +- return "media-optical-blu-ray"; +- } +- +- // fallback for every other optical disc + return "media-optical"; + } + diff --git a/kde-base/kdelibs/kdelibs-4.10.0.ebuild b/kde-base/kdelibs/kdelibs-4.10.0.ebuild index 3bd2d8d..9b15b37 100644 --- a/kde-base/kdelibs/kdelibs-4.10.0.ebuild +++ b/kde-base/kdelibs/kdelibs-4.10.0.ebuild @@ -18,10 +18,12 @@ KEYWORDS="~amd64 ~arm ~ppc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux" LICENSE="LGPL-2.1" IUSE="3dnow acl alsa altivec +bzip2 debug doc fam jpeg2k kerberos lzma mmx nls openexr +policykit semantic-desktop spell sse sse2 ssl +udev -udisks2 +upower upnp zeroconf" +udisks udisks2 +upower upnp zeroconf" REQUIRED_USE=" upower? ( udev ) + udisks? ( udev ) + udisks2? ( udisks ) " # needs the kate regression testsuite from svn @@ -101,8 +103,10 @@ RDEPEND="${COMMONDEPEND} x11-apps/iceauth x11-apps/rgb >=x11-misc/xdg-utils-1.0.2-r3 - udisks2? ( sys-fs/udisks:2 ) - !udisks2? ( sys-fs/udisks:0 ) + udisks? ( + !udisks2? ( sys-fs/udisks:0 ) + udisks2? ( sys-fs/udisks:2 ) + ) upower? ( sys-power/upower ) ) udev? ( app-misc/media-player-info ) @@ -139,6 +143,12 @@ PATCHES=( "${FILESDIR}/${PN}-4.8.1-norpath.patch" "${FILESDIR}/${PN}-4.9.3-werror.patch" ) +if ! use udisks; then + PATCHES+=( + "${FILESDIR}/${PN}-4.10.0-udisks2_opticaldisc_spinup.patch" + "${FILESDIR}/${PN}-4.10.0-no_udisks1.patch" + ) +fi pkg_pretend() { if [[ ${MERGE_TYPE} != binary ]]; then -- 1.8.1.2