Merge remote-tracking branch 'origin/f15/master' into f14/master

Conflicts:
	.gitignore
	kdelibs.spec
	sources
This commit is contained in:
Rex Dieter 2011-03-11 10:37:52 -06:00
commit cd262aa261
15 changed files with 893 additions and 358 deletions

4
.gitignore vendored
View File

@ -1 +1,5 @@
<<<<<<< HEAD
/kdelibs-4.5.5.tar.bz2
=======
/kdelibs-4.6.1.tar.bz2
>>>>>>> origin/f15/master

View File

@ -1,12 +0,0 @@
diff -up kdelibs-4.0.2/kio/kio/kprotocolmanager.cpp.branding kdelibs-4.0.2/kio/kio/kprotocolmanager.cpp
--- kdelibs-4.0.2/kio/kio/kprotocolmanager.cpp.branding 2008-01-04 18:00:15.000000000 -0600
+++ kdelibs-4.0.2/kio/kio/kprotocolmanager.cpp 2008-03-07 14:49:46.000000000 -0600
@@ -73,7 +73,7 @@ KProtocolManagerPrivate::~KProtocolManag
// DEFAULT USERAGENT STRING
#define CFG_DEFAULT_UAGENT(X) \
-QString("Mozilla/5.0 (compatible; Konqueror/%1.%2%3) KHTML/%4.%5.%6 (like Gecko)") \
+QString("Mozilla/5.0 (compatible; Konqueror/%1.%2%3) KHTML/%4.%5.%6 (like Gecko) Fedora/@@VERSION_RELEASE@@") \
.arg(KDE_VERSION_MAJOR).arg(KDE_VERSION_MINOR).arg(X).arg(KDE_VERSION_MAJOR).arg(KDE_VERSION_MINOR).arg(KDE_VERSION_RELEASE)
#define PRIVATE_DATA \

View File

@ -1,60 +0,0 @@
diff -up kdelibs-4.4.80/kdecore/kernel/kstandarddirs.cpp.libexecdir kdelibs-4.4.80/kdecore/kernel/kstandarddirs.cpp
--- kdelibs-4.4.80/kdecore/kernel/kstandarddirs.cpp.libexecdir 2010-04-28 10:01:43.000000000 +0200
+++ kdelibs-4.4.80/kdecore/kernel/kstandarddirs.cpp 2010-05-21 09:51:22.456216633 +0200
@@ -1819,7 +1819,7 @@ void KStandardDirs::addKDEDefaults()
addResourceType(types_string + types_indices[index], 0, types_string + types_indices[index+1], true);
index+=2;
}
- addResourceType("exe", "lib", "kde4/libexec", true );
+ addResourceType("exe", 0, "libexec/kde4", true );
addResourceDir("home", QDir::homePath(), false);
diff -up kdelibs-4.4.80/kdecore/kernel/kstandarddirs_unix.cpp.libexecdir kdelibs-4.4.80/kdecore/kernel/kstandarddirs_unix.cpp
--- kdelibs-4.4.80/kdecore/kernel/kstandarddirs_unix.cpp.libexecdir 2008-05-21 13:08:57.000000000 +0200
+++ kdelibs-4.4.80/kdecore/kernel/kstandarddirs_unix.cpp 2010-05-21 09:51:22.456216633 +0200
@@ -62,7 +62,7 @@ QString KStandardDirs::installPath(const
if (strcmp("lib", type) == 0)
return QString::fromLatin1(LIB_INSTALL_DIR "/");
if (strcmp("libexec", type) == 0)
- return QString::fromLatin1(KDEDIR "/lib" KDELIBSUFF "/kde4/libexec/");
+ return QString::fromLatin1(LIBEXEC_INSTALL_DIR "/");
if (strcmp("locale", type) == 0)
return QString::fromLatin1(LOCALE_INSTALL_DIR "/");
break;
diff -up kdelibs-4.4.80/kdecore/tests/kstandarddirstest.cpp.libexecdir kdelibs-4.4.80/kdecore/tests/kstandarddirstest.cpp
--- kdelibs-4.4.80/kdecore/tests/kstandarddirstest.cpp.libexecdir 2010-04-28 10:01:43.000000000 +0200
+++ kdelibs-4.4.80/kdecore/tests/kstandarddirstest.cpp 2010-05-21 09:59:12.502278424 +0200
@@ -83,8 +83,9 @@ void KStandarddirsTest::testFindResource
#define KIOSLAVE "bin/kioslave.exe"
#else
#define EXT ""
-#define KIOSLAVE "kde4/libexec/kioslave"
+#define KIOSLAVE "libexec/kde4/kioslave"
#endif
+
const QString bin = KGlobal::dirs()->findResource( "exe", "kioslave" EXT );
QVERIFY( !bin.isEmpty() );
QVERIFY( bin.endsWith( KIOSLAVE ) );
@@ -210,7 +211,8 @@ void KStandarddirsTest::testFindExe()
// findExe with a result in libexec
const QString lnusertemp = KGlobal::dirs()->findExe( "lnusertemp" );
QVERIFY( !lnusertemp.isEmpty() );
- QVERIFY( lnusertemp.endsWith( "lib" KDELIBSUFF "/kde4/libexec/lnusertemp" EXT, PATH_SENSITIVITY ) );
+ QVERIFY( lnusertemp.endsWith( "lib" KDELIBSUFF "/kde4/libexec/lnusertemp" EXT, PATH_SENSITIVITY )
+ || lnusertemp.endsWith( "libexec/kde4/lnusertemp" EXT, PATH_SENSITIVITY ) );
#endif
// Check the "exe" resource too
diff -up kdelibs-4.4.80/kio/tests/krununittest.cpp.libexecdir kdelibs-4.4.80/kio/tests/krununittest.cpp
--- kdelibs-4.4.80/kio/tests/krununittest.cpp.libexecdir 2010-02-24 13:52:53.000000000 +0100
+++ kdelibs-4.4.80/kio/tests/krununittest.cpp 2010-05-21 09:51:22.457216466 +0200
@@ -147,7 +147,7 @@ void KRunUnitTest::testProcessDesktopExe
if (kmailservice.isEmpty()) kmailservice = "kmailservice";
if (!kdeinit.isEmpty()) {
QVERIFY(!kmailservice.isEmpty());
- QVERIFY(kmailservice.contains("kde4/libexec"));
+ QVERIFY(kmailservice.contains("kde4/libexec") || kmailservice.contains("libexec/kde4"));
}
QTest::newRow("%U l0") << "kdeinit4 %U" << l0 << false << kdeinit;

View File

@ -1,26 +0,0 @@
diff -up kdelibs-4.4.80/cmake/modules/FindKDE4Internal.cmake.no_rpath kdelibs-4.4.80/cmake/modules/FindKDE4Internal.cmake
--- kdelibs-4.4.80/cmake/modules/FindKDE4Internal.cmake.no_rpath 2010-05-21 10:00:15.000000000 +0200
+++ kdelibs-4.4.80/cmake/modules/FindKDE4Internal.cmake 2010-05-21 10:09:42.195154891 +0200
@@ -1014,12 +1014,20 @@ if (UNIX)
list(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${LIB_INSTALL_DIR}" _isSystemLibDir)
if("${_isSystemLibDir}" STREQUAL "-1")
- set(CMAKE_INSTALL_RPATH "${LIB_INSTALL_DIR}")
+ set(CMAKE_INSTALL_RPATH "${LIB_INSTALL_DIR}")
+ #message(STATUS "CMAKE_SYSTEM_LIBRARY_PATH: ${CMAKE_SYSTEM_LIBRARY_PATH}")
+ #message(STATUS "LIB_INSTALL_DIR: ${LIB_INSTALL_DIR}")
+ #list(FIND CMAKE_SYSTEM_LIBRARY_PATH ${LIB_INSTALL_DIR} _LIB_INSTALL_DIR_INDEX_IN_CMAKE_SYSTEM_LIBRARY_PATH)
+ #message(STATUS "_LIB_INSTALL_DIR_INDEX_IN_CMAKE_SYSTEM_LIBRARY_PATH: ${_LIB_INSTALL_DIR_INDEX_IN_CMAKE_SYSTEM_LIBRARY_PATH}")
+ #if(${_LIB_INSTALL_DIR_INDEX_IN_CMAKE_SYSTEM_LIBRARY_PATH} EQUAL -1)
+ # message(STATUS "appending to CMAKE_INSTALL_RPATH: ${LIB_INSTALL_DIR}")
+ # list(APPEND CMAKE_INSTALL_RPATH ${LIB_INSTALL_DIR})
+ #endif(${_LIB_INSTALL_DIR_INDEX_IN_CMAKE_SYSTEM_LIBRARY_PATH} EQUAL -1)
endif("${_isSystemLibDir}" STREQUAL "-1")
set(CMAKE_SKIP_BUILD_RPATH FALSE)
set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
- set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
+ set(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE)
endif (APPLE)
endif (UNIX)

View File

@ -1,119 +0,0 @@
diff -up kdelibs-4.4.80/solid/solid/backends/hal/halstorageaccess.cpp.policykit-workaround kdelibs-4.4.80/solid/solid/backends/hal/halstorageaccess.cpp
--- kdelibs-4.4.80/solid/solid/backends/hal/halstorageaccess.cpp.policykit-workaround 2010-04-22 10:04:55.000000000 +0200
+++ kdelibs-4.4.80/solid/solid/backends/hal/halstorageaccess.cpp 2010-05-21 22:07:08.043211300 +0200
@@ -17,6 +17,8 @@
*/
+#include <config-prefix.h> // for LIBEXEC_INSTALL_DIR
+
#include "halstorageaccess.h"
#include "halfstabhandling.h"
@@ -201,11 +203,21 @@ void StorageAccess::slotDBusError(const
{
// TODO: Better error reporting here
if (m_setupInProgress) {
+ if (error.name() == "org.freedesktop.Hal.Device.PermissionDeniedByPolicy") {
+ if (callPrivilegedMount())
+ return;
+ // if we fail to run kdesu, fall through and emit the original PermissionDeniedByPolicy error
+ }
m_setupInProgress = false;
m_device->broadcastActionDone("setupDone", Solid::UnauthorizedOperation,
QString(error.name()+": "+error.message()),
m_device->udi());
} else if (m_teardownInProgress) {
+ if (error.name() == "org.freedesktop.Hal.Device.PermissionDeniedByPolicy") {
+ if (callPrivilegedUnmount())
+ return;
+ // if we fail to run kdesu, fall through and emit the original PermissionDeniedByPolicy error
+ }
m_teardownInProgress = false;
m_device->broadcastActionDone("teardownDone", Solid::UnauthorizedOperation,
QString(error.name()+": "+error.message()),
@@ -347,8 +359,9 @@ bool StorageAccess::callHalVolumeMount()
#else
QString uid="uid=";
#endif
- if (halOptions.contains(uid)) {
- options << uid+QString::number(::getuid());
+ if (halOptions.contains(uid) &&
+ (fstype == "vfat" || fstype == "iso9660" || fstype == "hfs" || fstype == "udf")) {
+ options << uid+QString::number(::getuid());
}
#ifdef Q_OS_FREEBSD
@@ -390,6 +403,59 @@ bool StorageAccess::callHalVolumeMount()
SLOT(slotDBusError(const QDBusError &)));
}
+bool Solid::Backends::Hal::StorageAccess::callPrivilegedMount()
+{
+ QString udi = m_device->udi();
+ QString options;
+ QStringList halOptions = m_device->property("volume.mount.valid_options").toStringList();
+ QString fstype = m_device->property("volume.fstype").toString();
+
+ if (halOptions.contains("uid=")
+ && (fstype == "vfat" || fstype == "iso9660" || fstype == "hfs" || fstype == "udf")) {
+ options = "uid="+QString::number(::getuid());
+ }
+
+ m_process = new QProcess(this);
+
+ connect(m_process, SIGNAL(finished(int, QProcess::ExitStatus)),
+ this, SLOT(slotProcessFinished(int, QProcess::ExitStatus)));
+
+ m_process->start(LIBEXEC_INSTALL_DIR "/kdesu", QStringList() << "-d" << "-t"
+ << "--noignorebutton" << "-c"
+ << QString::fromLatin1("dbus-send --system --print-reply --dest=org.freedesktop.Hal %1 "
+ "org.freedesktop.Hal.Device.Volume.Mount string: string: "
+ "array:string:%2").arg(udi).arg(options));
+
+ if (m_process->waitForStarted()) {
+ return true;
+ } else {
+ delete m_process;
+ return false;
+ }
+}
+
+bool Solid::Backends::Hal::StorageAccess::callPrivilegedUnmount()
+{
+ QString udi = m_device->udi();
+
+ m_process = new QProcess(this);
+
+ connect(m_process, SIGNAL(finished(int, QProcess::ExitStatus)),
+ this, SLOT(slotProcessFinished(int, QProcess::ExitStatus)));
+
+ m_process->start(LIBEXEC_INSTALL_DIR "/kdesu", QStringList() << "-d" << "-t"
+ << "--noignorebutton" << "-c"
+ << QString::fromLatin1("dbus-send --system --print-reply --dest=org.freedesktop.Hal %1 "
+ "org.freedesktop.Hal.Device.Volume.Unmount array:string:").arg(udi));
+
+ if (m_process->waitForStarted()) {
+ return true;
+ } else {
+ delete m_process;
+ return false;
+ }
+}
+
bool StorageAccess::callHalVolumeUnmount()
{
QDBusConnection c = QDBusConnection::systemBus();
diff -up kdelibs-4.4.80/solid/solid/backends/hal/halstorageaccess.h.policykit-workaround kdelibs-4.4.80/solid/solid/backends/hal/halstorageaccess.h
--- kdelibs-4.4.80/solid/solid/backends/hal/halstorageaccess.h.policykit-workaround 2010-04-22 10:04:55.000000000 +0200
+++ kdelibs-4.4.80/solid/solid/backends/hal/halstorageaccess.h 2010-05-21 22:03:25.933210697 +0200
@@ -78,6 +78,9 @@ private:
bool callSystemMount();
bool callSystemUnmount();
+ bool callPrivilegedMount();
+ bool callPrivilegedUnmount();
+
bool requestPassphrase();
void callCryptoSetup(const QString &passphrase);
bool callCryptoTeardown();

View File

@ -1,36 +0,0 @@
--- trunk/KDE/kdelibs/plasma/containment.cpp 2010/10/14 15:42:21 1185911
+++ trunk/KDE/kdelibs/plasma/containment.cpp 2010/10/14 15:46:05 1185912
@@ -2079,6 +2079,17 @@
Applet::showConfigurationInterface();
}
+void Containment::configChanged()
+{
+ if (d->drawWallpaper) {
+ KConfigGroup group = config();
+ setWallpaper(group.readEntry("wallpaperplugin", defaultWallpaper),
+ group.readEntry("wallpaperpluginmode", defaultWallpaperMode));
+ }
+
+ Applet::configChanged();
+}
+
void ContainmentPrivate::requestConfiguration()
{
emit q->configureRequested(q);
--- trunk/KDE/kdelibs/plasma/containment.h 2010/10/14 15:42:21 1185911
+++ trunk/KDE/kdelibs/plasma/containment.h 2010/10/14 15:46:05 1185912
@@ -527,6 +527,13 @@
*/
void showConfigurationInterface();
+ /**
+ * Called when applet configuration values have changed.
+ * @reimp
+ * @sa Applet::configChanged()
+ */
+ void configChanged();
+
protected:
/**
* Sets the type of this containment.

View File

@ -0,0 +1,12 @@
diff -up kdelibs-4.5.80/kio/kio/kprotocolmanager.cpp.branding kdelibs-4.5.80/kio/kio/kprotocolmanager.cpp
--- kdelibs-4.5.80/kio/kio/kprotocolmanager.cpp.branding 2010-11-05 05:48:26.000000000 -0500
+++ kdelibs-4.5.80/kio/kio/kprotocolmanager.cpp 2010-11-20 10:42:54.223363491 -0600
@@ -87,7 +87,7 @@ QL1S("Mozilla/5.0 (compatible; Konqueror
QString::number(KDE::versionMajor()) % QL1C('.') % QString::number(KDE::versionMinor()) % \
X % QL1S(") KHTML/") % \
QString::number(KDE::versionMajor()) % QL1C('.') % QString::number(KDE::versionMinor()) % \
-QL1C('.') % QString::number(KDE::versionRelease()) % QL1S(" (like Gecko)")
+QL1C('.') % QString::number(KDE::versionRelease()) % QL1S(" (like Gecko) Fedora/@@VERSION_RELEASE@@")
#define PRIVATE_DATA \
KProtocolManagerPrivate *d = kProtocolManagerPrivate

View File

@ -1,7 +1,7 @@
diff -Naur kdelibs-4.1.72/kdecore/kernel/kstandarddirs.cpp kdelibs-4.1.72.kstandarddirs/kdecore/kernel/kstandarddirs.cpp
--- kdelibs-4.1.72/kdecore/kernel/kstandarddirs.cpp 2008-11-12 18:31:44.000000000 +0100
+++ kdelibs-4.1.72.kstandarddirs/kdecore/kernel/kstandarddirs.cpp 2008-11-12 18:38:40.000000000 +0100
@@ -1002,7 +1002,9 @@
diff -up kdelibs-4.5.80/kdecore/kernel/kstandarddirs.cpp.kstandarddirs kdelibs-4.5.80/kdecore/kernel/kstandarddirs.cpp
--- kdelibs-4.5.80/kdecore/kernel/kstandarddirs.cpp.kstandarddirs 2010-11-20 16:04:10.456373049 -0600
+++ kdelibs-4.5.80/kdecore/kernel/kstandarddirs.cpp 2010-11-20 16:05:09.356363480 -0600
@@ -1125,7 +1125,9 @@ QStringList KStandardDirs::KStandardDirs
pit != prefixList->end();
++pit)
{
@ -12,7 +12,7 @@ diff -Naur kdelibs-4.1.72/kdecore/kernel/kstandarddirs.cpp kdelibs-4.1.72.kstand
{
for (QStringList::ConstIterator it = dirs.constBegin();
it != dirs.constEnd(); ++it)
@@ -1016,6 +1018,11 @@
@@ -1143,6 +1145,11 @@ QStringList KStandardDirs::KStandardDirs
if ((local || testdir.exists()) && !candidates.contains(path))
candidates.append(path);
}
@ -20,7 +20,7 @@ diff -Naur kdelibs-4.1.72/kdecore/kernel/kstandarddirs.cpp kdelibs-4.1.72.kstand
+ // hack) - we want /etc/kde after the local config paths
+ // and before the ones in /usr (including kde-profile)
+ if (local && !strcmp("config", type))
+ candidates.append("/etc/kde/");
+ candidates.append(QLatin1String("/etc/kde/"));
local = false;
}
else

View File

@ -0,0 +1,60 @@
diff -up kdelibs-4.5.80/kdecore/kernel/kstandarddirs.cpp.libexecdir kdelibs-4.5.80/kdecore/kernel/kstandarddirs.cpp
--- kdelibs-4.5.80/kdecore/kernel/kstandarddirs.cpp.libexecdir 2010-11-19 04:52:23.000000000 -0600
+++ kdelibs-4.5.80/kdecore/kernel/kstandarddirs.cpp 2010-11-20 10:44:54.913612398 -0600
@@ -1842,7 +1842,7 @@ void KStandardDirs::addKDEDefaults()
addResourceType(types_string + types_indices[index], 0, types_string + types_indices[index+1], true);
index+=2;
}
- addResourceType("exe", "lib", "kde4/libexec", true );
+ addResourceType("exe", 0, "libexec/kde4", true );
addResourceDir("home", QDir::homePath(), false);
diff -up kdelibs-4.5.80/kdecore/kernel/kstandarddirs_unix.cpp.libexecdir kdelibs-4.5.80/kdecore/kernel/kstandarddirs_unix.cpp
--- kdelibs-4.5.80/kdecore/kernel/kstandarddirs_unix.cpp.libexecdir 2010-11-05 05:48:28.000000000 -0500
+++ kdelibs-4.5.80/kdecore/kernel/kstandarddirs_unix.cpp 2010-11-20 10:48:44.671378287 -0600
@@ -63,7 +63,7 @@ QString KStandardDirs::installPath(const
if (strcmp("lib", type) == 0)
return QFile::decodeName(LIB_INSTALL_DIR "/");
if (strcmp("libexec", type) == 0)
- return QFile::decodeName(KDEDIR "/lib" KDELIBSUFF "/kde4/libexec/");
+ return QFile::decodeName(LIBEXEC_INSTALL_DIR "/");
if (strcmp("locale", type) == 0)
return QFile::decodeName(LOCALE_INSTALL_DIR "/");
break;
diff -up kdelibs-4.5.80/kdecore/tests/kstandarddirstest.cpp.libexecdir kdelibs-4.5.80/kdecore/tests/kstandarddirstest.cpp
--- kdelibs-4.5.80/kdecore/tests/kstandarddirstest.cpp.libexecdir 2010-11-11 08:41:42.000000000 -0600
+++ kdelibs-4.5.80/kdecore/tests/kstandarddirstest.cpp 2010-11-20 10:44:54.914612189 -0600
@@ -94,8 +94,9 @@ void KStandarddirsTest::testFindResource
#define KIOSLAVE "bin/kioslave.exe"
#else
#define EXT ""
-#define KIOSLAVE "kde4/libexec/kioslave"
+#define KIOSLAVE "libexec/kde4/kioslave"
#endif
+
const QString bin = KGlobal::dirs()->findResource( "exe", "kioslave" EXT );
QVERIFY( !bin.isEmpty() );
QVERIFY( bin.endsWith( KIOSLAVE ) );
@@ -221,7 +222,8 @@ void KStandarddirsTest::testFindExe()
// findExe with a result in libexec
const QString lnusertemp = KGlobal::dirs()->findExe( "lnusertemp" );
QVERIFY( !lnusertemp.isEmpty() );
- QVERIFY( lnusertemp.endsWith( "lib" KDELIBSUFF "/kde4/libexec/lnusertemp" EXT, PATH_SENSITIVITY ) );
+ QVERIFY( lnusertemp.endsWith( "lib" KDELIBSUFF "/kde4/libexec/lnusertemp" EXT, PATH_SENSITIVITY )
+ || lnusertemp.endsWith( "libexec/kde4/lnusertemp" EXT, PATH_SENSITIVITY ) );
#endif
// Check the "exe" resource too
diff -up kdelibs-4.5.80/kio/tests/krununittest.cpp.libexecdir kdelibs-4.5.80/kio/tests/krununittest.cpp
--- kdelibs-4.5.80/kio/tests/krununittest.cpp.libexecdir 2010-11-05 05:48:27.000000000 -0500
+++ kdelibs-4.5.80/kio/tests/krununittest.cpp 2010-11-20 10:44:54.915612398 -0600
@@ -148,7 +148,7 @@ void KRunUnitTest::testProcessDesktopExe
if (kmailservice.isEmpty()) kmailservice = "kmailservice";
if (!kdeinit.isEmpty()) {
QVERIFY(!kmailservice.isEmpty());
- QVERIFY(kmailservice.contains("kde4/libexec"));
+ QVERIFY(kmailservice.contains("kde4/libexec") || kmailservice.contains("libexec/kde4"));
}
QTest::newRow("%U l0") << "kdeinit4 %U" << l0 << false << kdeinit;

View File

@ -0,0 +1,107 @@
diff -up kdelibs-4.5.80/cmake/modules/FindKDE4Internal.cmake.no_rpath kdelibs-4.5.80/cmake/modules/FindKDE4Internal.cmake
--- kdelibs-4.5.80/cmake/modules/FindKDE4Internal.cmake.no_rpath 2010-11-20 16:28:26.945612607 -0600
+++ kdelibs-4.5.80/cmake/modules/FindKDE4Internal.cmake 2010-11-20 18:18:01.926613935 -0600
@@ -1042,7 +1042,7 @@ if (UNIX)
set(CMAKE_SKIP_BUILD_RPATH FALSE)
set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
- set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
+ set(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE)
endif (APPLE)
endif (UNIX)
diff -up kdelibs-4.5.80/kdewidgets/CMakeLists.txt.no_rpath kdelibs-4.5.80/kdewidgets/CMakeLists.txt
--- kdelibs-4.5.80/kdewidgets/CMakeLists.txt.no_rpath 2010-11-20 16:28:26.784363550 -0600
+++ kdelibs-4.5.80/kdewidgets/CMakeLists.txt 2010-11-20 18:20:09.111363760 -0600
@@ -46,14 +46,14 @@ if(QT_QTDESIGNER_FOUND)
kde4_add_plugin(kdewidgets ${kdewidgets_PART_SRCS})
target_link_libraries(kdewidgets ${KDE4_KIO_LIBS})
- if(NOT WIN32)
- set_target_properties(kdewidgets PROPERTIES
- INSTALL_RPATH_USE_LINK_PATH TRUE
- SKIP_BUILD_RPATH TRUE
- BUILD_WITH_INSTALL_RPATH TRUE
- INSTALL_RPATH ${LIB_INSTALL_DIR}
- )
- endif(NOT WIN32)
+# if(NOT WIN32)
+# set_target_properties(kdewidgets PROPERTIES
+# INSTALL_RPATH_USE_LINK_PATH TRUE
+# SKIP_BUILD_RPATH TRUE
+# BUILD_WITH_INSTALL_RPATH TRUE
+# INSTALL_RPATH ${LIB_INSTALL_DIR}
+# )
+# endif(NOT WIN32)
install(TARGETS kdewidgets DESTINATION ${PLUGIN_INSTALL_DIR}/plugins/designer )
@@ -76,14 +76,14 @@ if(QT_QTDESIGNER_FOUND)
kde4_add_plugin(kdedeprecated ${kdedeprecated_PART_SRCS})
target_link_libraries(kdedeprecated ${KDE4_KIO_LIBS})
- if(NOT WIN32)
- set_target_properties(kdedeprecated PROPERTIES
- INSTALL_RPATH_USE_LINK_PATH TRUE
- SKIP_BUILD_RPATH TRUE
- BUILD_WITH_INSTALL_RPATH TRUE
- INSTALL_RPATH ${LIB_INSTALL_DIR}
- )
- endif(NOT WIN32)
+# if(NOT WIN32)
+# set_target_properties(kdedeprecated PROPERTIES
+# INSTALL_RPATH_USE_LINK_PATH TRUE
+# SKIP_BUILD_RPATH TRUE
+# BUILD_WITH_INSTALL_RPATH TRUE
+# INSTALL_RPATH ${LIB_INSTALL_DIR}
+# )
+# endif(NOT WIN32)
install(TARGETS kdedeprecated DESTINATION ${PLUGIN_INSTALL_DIR}/plugins/designer )
endif(NOT KDE_NO_DEPRECATED)
@@ -111,14 +111,14 @@ if(QT_QTDESIGNER_FOUND)
kde4_add_plugin(kdewebkitwidgets ${kdewebkitwidgets_PART_SRCS})
target_link_libraries(kdewebkitwidgets ${KDE4_KDEUI_LIBS} ${KDE4_KDEWEBKIT_LIBS} ${QT_QTWEBKIT_LIBRARY})
- if(NOT WIN32)
- set_target_properties(kdewebkitwidgets PROPERTIES
- INSTALL_RPATH_USE_LINK_PATH TRUE
- SKIP_BUILD_RPATH TRUE
- BUILD_WITH_INSTALL_RPATH TRUE
- INSTALL_RPATH ${LIB_INSTALL_DIR}
- )
- endif(NOT WIN32)
+# if(NOT WIN32)
+# set_target_properties(kdewebkitwidgets PROPERTIES
+# INSTALL_RPATH_USE_LINK_PATH TRUE
+# SKIP_BUILD_RPATH TRUE
+# BUILD_WITH_INSTALL_RPATH TRUE
+# INSTALL_RPATH ${LIB_INSTALL_DIR}
+# )
+# endif(NOT WIN32)
install(TARGETS kdewebkitwidgets DESTINATION ${PLUGIN_INSTALL_DIR}/plugins/designer )
@@ -147,14 +147,14 @@ if(QT_QTDESIGNER_FOUND)
kde4_add_plugin(kde3supportwidgets ${kde3supportwidgets_PART_SRCS})
target_link_libraries(kde3supportwidgets ${KDE4_KDE3SUPPORT_LIBS} ${KDE4_KIO_LIBS})
- if(NOT WIN32)
- set_target_properties(kde3supportwidgets PROPERTIES
- INSTALL_RPATH_USE_LINK_PATH TRUE
- SKIP_BUILD_RPATH TRUE
- BUILD_WITH_INSTALL_RPATH TRUE
- INSTALL_RPATH ${LIB_INSTALL_DIR}
- )
- endif(NOT WIN32)
+# if(NOT WIN32)
+# set_target_properties(kde3supportwidgets PROPERTIES
+# INSTALL_RPATH_USE_LINK_PATH TRUE
+# SKIP_BUILD_RPATH TRUE
+# BUILD_WITH_INSTALL_RPATH TRUE
+# INSTALL_RPATH ${LIB_INSTALL_DIR}
+# )
+# endif(NOT WIN32)
install(TARGETS kde3supportwidgets DESTINATION ${PLUGIN_INSTALL_DIR}/plugins/designer )
endif (QT_QT3SUPPORT_FOUND)

View File

@ -1,7 +1,7 @@
diff -up kdelibs-4.4.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdelibs-4.4.85/cmake/modules/FindKDE4Internal.cmake
--- kdelibs-4.4.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel 2010-05-20 13:40:44.000000000 +0200
+++ kdelibs-4.4.85/cmake/modules/FindKDE4Internal.cmake 2010-06-07 15:50:26.148340678 +0200
@@ -37,10 +37,10 @@
diff -ur kdelibs-4.5.80/cmake/modules/FindKDE4Internal.cmake kdelibs-4.5.80-parallel_devel/cmake/modules/FindKDE4Internal.cmake
--- kdelibs-4.5.80/cmake/modules/FindKDE4Internal.cmake 2010-10-27 21:55:42.000000000 +0200
+++ kdelibs-4.5.80-parallel_devel/cmake/modules/FindKDE4Internal.cmake 2010-11-20 19:41:54.000000000 +0100
@@ -38,10 +38,10 @@
# The following variables are defined for the various tools required to
# compile KDE software:
#
@ -14,7 +14,7 @@ diff -up kdelibs-4.4.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
#
# The following variables point to the location of the KDE libraries,
# but shouldn't be used directly:
@@ -174,7 +174,7 @@
@@ -191,7 +191,7 @@
# relative path to the file.
#
# KDE4_ADD_WIDGET_FILES (SRCS_VAR file1.widgets ... fileN.widgets)
@ -23,12 +23,18 @@ diff -up kdelibs-4.4.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
# for Qt Designer plugins.
#
# KDE4_CREATE_FINAL_FILES (filename_CXX filename_C file1 ... fileN)
@@ -487,25 +487,25 @@ if (_kdeBootStrapping)
if (WIN32)
@@ -506,31 +506,31 @@
set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH} )
# CMAKE_CFG_INTDIR is the output subdirectory created e.g. by XCode and MSVC
- set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler )
+ set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler4 )
if (NOT WINCE)
- set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler )
+ set(KDE4_KCFGC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kconfig_compiler4 )
set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 )
else (NOT WINCE)
- set(KDE4_KCFGC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/kconfig_compiler )
+ set(KDE4_KCFGC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/kconfig_compiler4 )
set(KDE4_MEINPROC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/meinproc4 )
endif(NOT WINCE)
set(KDE4_MEINPROC_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/meinproc4 )
set(KDE4_KAUTH_POLICY_GEN_EXECUTABLE ${EXECUTABLE_OUTPUT_PATH}/${CMAKE_CFG_INTDIR}/kauth-policy-gen )
@ -46,6 +52,7 @@ diff -up kdelibs-4.4.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
set(KDE4_LIB_DIR ${LIBRARY_OUTPUT_PATH}/${CMAKE_CFG_INTDIR})
# when building kdelibs, make the kcfg rules depend on the binaries...
- set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler)
+ set( _KDE4_KCONFIG_COMPILER_DEP kconfig_compiler4)
@ -55,7 +62,7 @@ diff -up kdelibs-4.4.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
set( _KDE4_MEINPROC_EXECUTABLE_DEP meinproc4)
set(KDE4_INSTALLED_VERSION_OK TRUE)
@@ -554,7 +554,8 @@ else (_kdeBootStrapping)
@@ -579,7 +579,8 @@
# KDE4_LIB_INSTALL_DIR and KDE4_INCLUDE_INSTALL_DIR are set in KDELibsDependencies.cmake,
# use them to set the KDE4_LIB_DIR and KDE4_INCLUDE_DIR "public interface" variables
@ -65,20 +72,30 @@ diff -up kdelibs-4.4.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
set(KDE4_INCLUDE_DIR ${KDE4_INCLUDE_INSTALL_DIR} )
@@ -570,10 +571,10 @@ else (_kdeBootStrapping)
get_target_property(_importedConfigurations ${KDE4_TARGET_PREFIX}kconfig_compiler IMPORTED_CONFIGURATIONS )
@@ -593,18 +594,18 @@
# get the build CONFIGURATIONS which were exported in this file, and use just the first
# of them to get the location of the installed executables
- get_target_property(_importedConfigurations ${KDE4_TARGET_PREFIX}kconfig_compiler IMPORTED_CONFIGURATIONS )
+ get_target_property(_importedConfigurations ${KDE4_TARGET_PREFIX}kconfig_compiler4 IMPORTED_CONFIGURATIONS )
list(GET _importedConfigurations 0 _firstConfig)
if(NOT WINCE)
- get_target_property(KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler LOCATION_${_firstConfig})
+ get_target_property(KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler4 LOCATION_${_firstConfig})
+ get_target_property(KDE4_KCFGC_EXECUTABLE ${KDE4_TARGET_PREFIX}kconfig_compiler4 LOCATION_${_firstConfig})
get_target_property(KDE4_MEINPROC_EXECUTABLE ${KDE4_TARGET_PREFIX}meinproc4 LOCATION_${_firstConfig})
else(NOT WINCE)
- set(KDE4_KCFGC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/kconfig_compiler )
+ set(KDE4_KCFGC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/kconfig_compiler4 )
set(KDE4_MEINPROC_EXECUTABLE ${HOST_BINDIR}/${CMAKE_CFG_INTDIR}/meinproc4 )
endif(NOT WINCE)
get_target_property(KDE4_KAUTH_POLICY_GEN_EXECUTABLE ${KDE4_TARGET_PREFIX}kauth-policy-gen LOCATION_${_firstConfig})
- get_target_property(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${KDE4_TARGET_PREFIX}makekdewidgets LOCATION_${_firstConfig})
+ get_target_property(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${KDE4_TARGET_PREFIX}makekdewidgets4 LOCATION_${_firstConfig})
+ get_target_property(KDE4_MAKEKDEWIDGETS_EXECUTABLE ${KDE4_TARGET_PREFIX}makekdewidgets4 LOCATION_${_firstConfig})
# allow searching cmake modules in all given kde install locations (KDEDIRS based)
execute_process(COMMAND "${KDE4_KDECONFIG_EXECUTABLE}" --path data OUTPUT_VARIABLE _data_DIR ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE)
@@ -907,7 +908,8 @@ set(CMAKE_SYSTEM_INCLUDE_PATH ${CMAKE_SY
@@ -930,7 +931,8 @@
set(CMAKE_SYSTEM_PROGRAM_PATH ${CMAKE_SYSTEM_PROGRAM_PATH}
"${KDE4_BIN_INSTALL_DIR}" )
@ -88,7 +105,7 @@ diff -up kdelibs-4.4.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
"${KDE4_LIB_INSTALL_DIR}" )
# under Windows dlls may be also installed in bin/
@@ -1309,9 +1311,9 @@ macro (KDE4_PRINT_RESULTS)
@@ -1360,9 +1362,9 @@
endif (NOT _kdeBootStrapping)
if(KDE4_KCFGC_EXECUTABLE)
@ -100,7 +117,7 @@ diff -up kdelibs-4.4.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
endif(KDE4_KCFGC_EXECUTABLE)
if(AUTOMOC4_EXECUTABLE)
@@ -1330,7 +1332,7 @@ if (KDE4Internal_FIND_REQUIRED AND NOT K
@@ -1381,7 +1383,7 @@
endif (NOT KDE4_INSTALLED_VERSION_OK)
if (NOT KDE4_KCFGC_EXECUTABLE)
@ -109,9 +126,9 @@ diff -up kdelibs-4.4.85/cmake/modules/FindKDE4Internal.cmake.parallel_devel kdel
endif (NOT KDE4_KCFGC_EXECUTABLE)
message(FATAL_ERROR "ERROR: could NOT find everything required for compiling KDE 4 programs")
diff -up kdelibs-4.4.85/doc/api/doxygen-preprocess-kcfg.sh.parallel_devel kdelibs-4.4.85/doc/api/doxygen-preprocess-kcfg.sh
--- kdelibs-4.4.85/doc/api/doxygen-preprocess-kcfg.sh.parallel_devel 2008-05-21 13:07:26.000000000 +0200
+++ kdelibs-4.4.85/doc/api/doxygen-preprocess-kcfg.sh 2010-06-07 15:50:26.149340577 +0200
diff -ur kdelibs-4.5.80/doc/api/doxygen-preprocess-kcfg.sh kdelibs-4.5.80-parallel_devel/doc/api/doxygen-preprocess-kcfg.sh
--- kdelibs-4.5.80/doc/api/doxygen-preprocess-kcfg.sh 2008-05-21 13:07:26.000000000 +0200
+++ kdelibs-4.5.80-parallel_devel/doc/api/doxygen-preprocess-kcfg.sh 2010-11-20 19:30:18.000000000 +0100
@@ -2,9 +2,9 @@
# Generates and cleans KConfigXT source code during a API dox build
#
@ -124,10 +141,10 @@ diff -up kdelibs-4.4.85/doc/api/doxygen-preprocess-kcfg.sh.parallel_devel kdelib
exit 1;
fi
diff -up kdelibs-4.4.85/kdecore/kconfig_compiler/checkkcfg.pl.parallel_devel kdelibs-4.4.85/kdecore/kconfig_compiler/checkkcfg.pl
--- kdelibs-4.4.85/kdecore/kconfig_compiler/checkkcfg.pl.parallel_devel 2008-05-21 13:09:13.000000000 +0200
+++ kdelibs-4.4.85/kdecore/kconfig_compiler/checkkcfg.pl 2010-06-07 15:50:26.154403288 +0200
@@ -15,12 +15,12 @@ $file_cpp = "$filebase.cpp";
diff -ur kdelibs-4.5.80/kdecore/kconfig_compiler/checkkcfg.pl kdelibs-4.5.80-parallel_devel/kdecore/kconfig_compiler/checkkcfg.pl
--- kdelibs-4.5.80/kdecore/kconfig_compiler/checkkcfg.pl 2008-05-21 13:09:13.000000000 +0200
+++ kdelibs-4.5.80-parallel_devel/kdecore/kconfig_compiler/checkkcfg.pl 2010-11-20 19:30:18.000000000 +0100
@@ -15,12 +15,12 @@
$kcfgc = $file . "c";
@ -142,9 +159,9 @@ diff -up kdelibs-4.4.85/kdecore/kconfig_compiler/checkkcfg.pl.parallel_devel kde
exit 1;
}
diff -up kdelibs-4.4.85/kdecore/kconfig_compiler/CMakeLists.txt.parallel_devel kdelibs-4.4.85/kdecore/kconfig_compiler/CMakeLists.txt
--- kdelibs-4.4.85/kdecore/kconfig_compiler/CMakeLists.txt.parallel_devel 2010-05-27 19:25:31.000000000 +0200
+++ kdelibs-4.4.85/kdecore/kconfig_compiler/CMakeLists.txt 2010-06-07 15:57:35.970340770 +0200
diff -ur kdelibs-4.5.80/kdecore/kconfig_compiler/CMakeLists.txt kdelibs-4.5.80-parallel_devel/kdecore/kconfig_compiler/CMakeLists.txt
--- kdelibs-4.5.80/kdecore/kconfig_compiler/CMakeLists.txt 2010-05-27 19:25:31.000000000 +0200
+++ kdelibs-4.5.80-parallel_devel/kdecore/kconfig_compiler/CMakeLists.txt 2010-11-20 19:30:18.000000000 +0100
@@ -11,13 +11,13 @@
set(kconfig_compiler_SRCS kconfig_compiler.cpp)
@ -162,10 +179,10 @@ diff -up kdelibs-4.4.85/kdecore/kconfig_compiler/CMakeLists.txt.parallel_devel k
# # export this binary for cross-compilation
diff -up kdelibs-4.4.85/kdeui/tests/kconfig_compiler/CMakeLists.txt.parallel_devel kdelibs-4.4.85/kdeui/tests/kconfig_compiler/CMakeLists.txt
--- kdelibs-4.4.85/kdeui/tests/kconfig_compiler/CMakeLists.txt.parallel_devel 2009-08-12 12:00:20.000000000 +0200
+++ kdelibs-4.4.85/kdeui/tests/kconfig_compiler/CMakeLists.txt 2010-06-07 15:50:26.155403451 +0200
@@ -9,7 +9,7 @@ macro(GEN_KCFG_TEST_SOURCE _testName _sr
diff -ur kdelibs-4.5.80/kdeui/tests/kconfig_compiler/CMakeLists.txt kdelibs-4.5.80-parallel_devel/kdeui/tests/kconfig_compiler/CMakeLists.txt
--- kdelibs-4.5.80/kdeui/tests/kconfig_compiler/CMakeLists.txt 2009-08-12 12:00:20.000000000 +0200
+++ kdelibs-4.5.80-parallel_devel/kdeui/tests/kconfig_compiler/CMakeLists.txt 2010-11-20 19:30:18.000000000 +0100
@@ -9,7 +9,7 @@
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.cpp ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h
COMMAND ${KDE4_KCFGC_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfg ${CMAKE_CURRENT_SOURCE_DIR}/${_testName}.kcfgc
@ -174,10 +191,10 @@ diff -up kdelibs-4.4.85/kdeui/tests/kconfig_compiler/CMakeLists.txt.parallel_dev
# set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h PROPERTIES GENERATED TRUE)
qt4_generate_moc(${CMAKE_CURRENT_BINARY_DIR}/${_testName}.h ${CMAKE_CURRENT_BINARY_DIR}/${_testName}.moc )
diff -up kdelibs-4.4.85/kdewidgets/CMakeLists.txt.parallel_devel kdelibs-4.4.85/kdewidgets/CMakeLists.txt
--- kdelibs-4.4.85/kdewidgets/CMakeLists.txt.parallel_devel 2010-03-03 19:30:35.000000000 +0100
+++ kdelibs-4.4.85/kdewidgets/CMakeLists.txt 2010-06-07 15:50:26.156403509 +0200
@@ -14,24 +14,24 @@ include_directories(
diff -ur kdelibs-4.5.80/kdewidgets/CMakeLists.txt kdelibs-4.5.80-parallel_devel/kdewidgets/CMakeLists.txt
--- kdelibs-4.5.80/kdewidgets/CMakeLists.txt 2010-11-05 11:48:27.000000000 +0100
+++ kdelibs-4.5.80-parallel_devel/kdewidgets/CMakeLists.txt 2010-11-20 19:34:43.000000000 +0100
@@ -14,24 +14,24 @@
set(makekdewidgets_SRCS makekdewidgets.cpp )
@ -207,7 +224,25 @@ diff -up kdelibs-4.4.85/kdewidgets/CMakeLists.txt.parallel_devel kdelibs-4.4.85/
set(kdewidgets_PART_SRCS
classpreviews.cpp
@@ -66,7 +66,7 @@ if(QT_QTDESIGNER_FOUND)
@@ -61,7 +61,7 @@
if(NOT KDE_NO_DEPRECATED)
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/kdedeprecated.cpp
COMMAND "${MAKEKDEWIDGETS_EXECUTABLE}" -o ${CMAKE_CURRENT_BINARY_DIR}/kdedeprecated.cpp ${CMAKE_CURRENT_SOURCE_DIR}/kdedeprecated.widgets
- MAIN_DEPENDENCY kdedeprecated.widgets DEPENDS makekdewidgets)
+ MAIN_DEPENDENCY kdedeprecated.widgets DEPENDS makekdewidgets4)
set(kdedeprecated_PART_SRCS
classpreviews.cpp
@@ -96,7 +96,7 @@
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/kdewebkitwidgets.cpp
COMMAND "${MAKEKDEWIDGETS_EXECUTABLE}" -o ${CMAKE_CURRENT_BINARY_DIR}/kdewebkitwidgets.cpp ${CMAKE_CURRENT_SOURCE_DIR}/kdewebkit.widgets
- MAIN_DEPENDENCY kdewebkit.widgets DEPENDS makekdewidgets)
+ MAIN_DEPENDENCY kdewebkit.widgets DEPENDS makekdewidgets4)
set(kdewebkitwidgets_PART_SRCS
classpreviews.cpp
@@ -132,7 +132,7 @@
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/kde3supportwidgets.cpp
COMMAND "${MAKEKDEWIDGETS_EXECUTABLE}" -o ${CMAKE_CURRENT_BINARY_DIR}/kde3supportwidgets.cpp ${CMAKE_CURRENT_SOURCE_DIR}/kde3support.widgets

View File

@ -0,0 +1,107 @@
Index: solid/solid/CMakeLists.txt
===================================================================
--- solid/solid/CMakeLists.txt (revision 1211253)
+++ solid/solid/CMakeLists.txt (working copy)
@@ -39,7 +39,6 @@
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
)
@@ -195,33 +194,6 @@
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
@@ -249,15 +221,6 @@
)
endif (CMAKE_SYSTEM_NAME MATCHES Linux)
- message(STATUS "Building Solid fstab backend." )
- set(solid_LIB_SRCS ${solid_LIB_SRCS}
- backends/fstab/fstabmanager.cpp
- backends/fstab/fstabdevice.cpp
- backends/fstab/fstabstorageaccess.cpp
- backends/fstab/fstabhandling.cpp
- backends/fstab/fstabwatcher.cpp
- )
-
endif(NOT WIN32 AND NOT APPLE)
if(APPLE)
Index: solid/solid/managerbase.cpp
===================================================================
--- solid/solid/managerbase.cpp (revision 1211253)
+++ solid/solid/managerbase.cpp (working copy)
@@ -30,7 +30,6 @@
#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/upower/upowermanager.h"
@@ -42,8 +41,6 @@
#include "backends/udev/udevmanager.h"
#endif
-#include "backends/fstab/fstabmanager.h"
-
#elif defined (Q_WS_WIN) && defined(HAVE_WBEM) && !defined(_WIN32_WCE)
#include "backends/wmi/wmimanager.h"
#endif
@@ -71,22 +68,12 @@
# elif defined(Q_WS_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)
- << new Solid::Backends::UPower::UPowerManager(0)
- << new Solid::Backends::Fstab::FstabManager(0);
- }
+ << new Solid::Backends::UPower::UPowerManager(0);
# endif
# if defined (HUPNP_FOUND)

View File

@ -0,0 +1,389 @@
commit 51707e7154082b549216b8a8ecde73505302fadc
Author: David Faure <faure@kde.org>
Date: Tue Mar 8 11:23:47 2011 +0100
Fix stop() killing the list job even if another dirlister needs it.
Regression introduced by me in bef0bd3e3ff.
Symptom: "dolphin $HOME" showed up empty.
In the case of concurrent listings, I made the use of the cached items job
conditional (only created if there's anything to emit) so that we can join
the current listjob without killing it (updateDirectory) if it hasn't emitted
anything yet.
The unittest also uncovered inconsistencies in the emission of the cancelled
signal, now cacheditemsjob behaves like the listjob in this respect.
FIXED-IN: 4.6.2
BUG: 267709
diff --git a/kio/kio/kdirlister.cpp b/kio/kio/kdirlister.cpp
index 75360e08f..df81dc8 100644
--- a/kio/kio/kdirlister.cpp
+++ b/kio/kio/kdirlister.cpp
@@ -194,7 +194,7 @@ bool KDirListerCache::listDir( KDirLister *lister, const KUrl& _u,
// List items from the cache in a delayed manner, just like things would happen
// if we were not using the cache.
- new KDirLister::Private::CachedItemsJob(lister, itemU->lstItems, itemU->rootItem, _url, _reload);
+ new KDirLister::Private::CachedItemsJob(lister, _url, _reload);
} else {
// dir not in cache or _reload is true
@@ -260,8 +260,13 @@ bool KDirListerCache::listDir( KDirLister *lister, const KUrl& _u,
// List existing items in a delayed manner, just like things would happen
// if we were not using the cache.
- //kDebug() << "Listing" << itemU->lstItems.count() << "cached items soon";
- new KDirLister::Private::CachedItemsJob(lister, itemU->lstItems, itemU->rootItem, _url, _reload);
+ if (!itemU->lstItems.isEmpty()) {
+ kDebug() << "Listing" << itemU->lstItems.count() << "cached items soon";
+ new KDirLister::Private::CachedItemsJob(lister, _url, _reload);
+ } else {
+ // The other lister hasn't emitted anything yet. Good, we'll just listen to it.
+ // One problem could be if we have _reload=true and the existing job doesn't, though.
+ }
#ifdef DEBUG_CACHE
printDebug();
@@ -280,11 +285,9 @@ KDirLister::Private::CachedItemsJob* KDirLister::Private::cachedItemsJobForUrl(c
return 0;
}
-KDirLister::Private::CachedItemsJob::CachedItemsJob(KDirLister* lister, const KFileItemList& items,
- const KFileItem& rootItem, const KUrl& url, bool reload)
+KDirLister::Private::CachedItemsJob::CachedItemsJob(KDirLister* lister, const KUrl& url, bool reload)
: KJob(lister),
m_lister(lister), m_url(url),
- m_items(items), m_rootItem(rootItem),
m_reload(reload), m_emitCompleted(true)
{
//kDebug() << "Creating CachedItemsJob" << this << "for lister" << lister << url;
@@ -301,40 +304,70 @@ void KDirLister::Private::CachedItemsJob::done()
{
if (!m_lister) // job was already killed, but waiting deletion due to deleteLater
return;
- kDirListerCache->emitItemsFromCache(this, m_lister, m_items, m_rootItem, m_url, m_reload, m_emitCompleted);
+ kDirListerCache->emitItemsFromCache(this, m_lister, m_url, m_reload, m_emitCompleted);
emitResult();
}
bool KDirLister::Private::CachedItemsJob::doKill()
{
- //kDebug() << this;
- kDirListerCache->emitItemsFromCache(this, m_lister, KFileItemList(), KFileItem(), m_url, false, false);
+ //kDebug(7004) << this;
+ kDirListerCache->forgetCachedItemsJob(this, m_lister, m_url);
+ if (!property("_kdlc_silent").toBool()) {
+ emit m_lister->canceled(m_url);
+ emit m_lister->canceled();
+ }
m_lister = 0;
return true;
}
-void KDirListerCache::emitItemsFromCache(KDirLister::Private::CachedItemsJob* cachedItemsJob, KDirLister* lister, const KFileItemList& items, const KFileItem& rootItem, const KUrl& _url, bool _reload, bool _emitCompleted)
+void KDirListerCache::emitItemsFromCache(KDirLister::Private::CachedItemsJob* cachedItemsJob, KDirLister* lister, const KUrl& _url, bool _reload, bool _emitCompleted)
{
const QString urlStr = _url.url();
- DirItem *itemU = kDirListerCache->itemsInUse.value(urlStr);
- Q_ASSERT(itemU); // hey we're listing that dir, so this can't be 0, right?
-
KDirLister::Private* kdl = lister->d;
-
kdl->complete = false;
- if (kdl->rootFileItem.isNull() && !rootItem.isNull() && kdl->url == _url) {
- kdl->rootFileItem = rootItem;
+ DirItem *itemU = kDirListerCache->itemsInUse.value(urlStr);
+ if (!itemU) {
+ kWarning(7004) << "Can't find item for directory" << urlStr << "anymore";
+ } else {
+ const KFileItemList items = itemU->lstItems;
+ const KFileItem rootItem = itemU->rootItem;
+ _reload = _reload || !itemU->complete;
+
+ if (kdl->rootFileItem.isNull() && !rootItem.isNull() && kdl->url == _url) {
+ kdl->rootFileItem = rootItem;
+ }
+ if (!items.isEmpty()) {
+ //kDebug(7004) << "emitting" << items.count() << "for lister" << lister;
+ kdl->addNewItems(_url, items);
+ kdl->emitItems();
+ }
}
- if (!items.isEmpty()) {
- //kDebug(7004) << "emitting" << items.count() << "for lister" << lister;
- kdl->addNewItems(_url, items);
- kdl->emitItems();
+
+ forgetCachedItemsJob(cachedItemsJob, lister, _url);
+
+ // Emit completed, unless we were told not to,
+ // or if listDir() was called while another directory listing for this dir was happening,
+ // so we "joined" it. We detect that using jobForUrl to ensure it's a real ListJob,
+ // not just a lister-specific CachedItemsJob (which wouldn't emit completed for us).
+ if (_emitCompleted) {
+
+ kdl->complete = true;
+ emit lister->completed( _url );
+ emit lister->completed();
+
+ if ( _reload ) {
+ updateDirectory( _url );
+ }
}
+}
+void KDirListerCache::forgetCachedItemsJob(KDirLister::Private::CachedItemsJob* cachedItemsJob, KDirLister* lister, const KUrl& _url)
+{
// Modifications to data structures only below this point;
// so that addNewItems is called with a consistent state
+ const QString urlStr = _url.url();
lister->d->m_cachedItemsJobs.removeAll(cachedItemsJob);
KDirListerCacheDirectoryData& dirData = directoryData[urlStr];
@@ -343,27 +376,12 @@ void KDirListerCache::emitItemsFromCache(KDirLister::Private::CachedItemsJob* ca
KIO::ListJob *listJob = jobForUrl(urlStr);
if (!listJob) {
Q_ASSERT(!dirData.listersCurrentlyHolding.contains(lister));
- kDebug(7004) << "Moving from listing to holding, because no more job" << lister << urlStr;
+ //kDebug(7004) << "Moving from listing to holding, because no more job" << lister << urlStr;
dirData.listersCurrentlyHolding.append( lister );
dirData.listersCurrentlyListing.removeAll( lister );
} else {
//kDebug(7004) << "Still having a listjob" << listJob << ", so not moving to currently-holding.";
}
-
- // Emit completed, unless we were told not to,
- // or if listDir() was called while another directory listing for this dir was happening,
- // so we "joined" it. We detect that using jobForUrl to ensure it's a real ListJob,
- // not just a lister-specific CachedItemsJob (which wouldn't emit completed for us).
- if (_emitCompleted) {
-
- kdl->complete = true;
- emit lister->completed( _url );
- emit lister->completed();
-
- if ( _reload || !itemU->complete ) {
- updateDirectory( _url );
- }
- }
}
bool KDirListerCache::validUrl( const KDirLister *lister, const KUrl& url ) const
@@ -396,19 +414,13 @@ void KDirListerCache::stop( KDirLister *lister, bool silent )
#ifdef DEBUG_CACHE
//printDebug();
#endif
- //kDebug(7004) << "lister: " << lister;
+ //kDebug(7004) << "lister:" << lister << "silent=" << silent;
const KUrl::List urls = lister->d->lstDirs;
Q_FOREACH(const KUrl& url, urls) {
- //kDebug() << "Stopping any listjob for" << url.url();
- stopListJob(url.url(), silent);
+ stopListingUrl(lister, url, silent);
}
-
- Q_FOREACH(KDirLister::Private::CachedItemsJob* job, lister->d->m_cachedItemsJobs) {
- //kDebug() << "Killing cached items job";
- job->kill(); // removes job from list, too
- }
-
+
#if 0 // test code
QHash<QString,KDirListerCacheDirectoryData>::iterator dirit = directoryData.begin();
const QHash<QString,KDirListerCacheDirectoryData>::iterator dirend = directoryData.end();
@@ -416,6 +428,7 @@ void KDirListerCache::stop( KDirLister *lister, bool silent )
KDirListerCacheDirectoryData& dirData = dirit.value();
if (dirData.listersCurrentlyListing.contains(lister)) {
kDebug(7004) << "ERROR: found lister" << lister << "in list - for" << dirit.key();
+ Q_ASSERT(false);
}
}
#endif
@@ -429,6 +442,9 @@ void KDirListerCache::stopListingUrl(KDirLister *lister, const KUrl& _u, bool si
KDirLister::Private::CachedItemsJob* cachedItemsJob = lister->d->cachedItemsJobForUrl(url);
if (cachedItemsJob) {
+ if (silent) {
+ cachedItemsJob->setProperty("_kdlc_silent", true);
+ }
cachedItemsJob->kill(); // removes job from list, too
}
@@ -440,9 +456,18 @@ void KDirListerCache::stopListingUrl(KDirLister *lister, const KUrl& _u, bool si
return;
KDirListerCacheDirectoryData& dirData = dirit.value();
if (dirData.listersCurrentlyListing.contains(lister)) {
-
//kDebug(7004) << " found lister" << lister << "in list - for" << urlStr;
- stopListJob(urlStr, silent);
+ if (dirData.listersCurrentlyListing.count() == 1) {
+ // This was the only dirlister interested in the list job -> kill the job
+ stopListJob(urlStr, silent);
+ } else {
+ // Leave the job running for the other dirlisters, just unsubscribe us.
+ dirData.listersCurrentlyListing.removeAll(lister);
+ if (!silent) {
+ emit lister->canceled();
+ emit lister->canceled(url);
+ }
+ }
}
}
@@ -460,9 +485,10 @@ void KDirListerCache::stopListJob(const QString& url, bool silent)
KIO::ListJob *job = jobForUrl(url);
if (job) {
- //kDebug() << "Killing list job" << job;
- if (silent)
+ //kDebug() << "Killing list job" << job << "for" << url;
+ if (silent) {
job->setProperty("_kdlc_silent", true);
+ }
job->kill(KJob::EmitResult);
}
}
diff --git a/kio/kio/kdirlister_p.h b/kio/kio/kdirlister_p.h
index 4464c16..dd4c00f 100644
--- a/kio/kio/kdirlister_p.h
+++ b/kio/kio/kdirlister_p.h
@@ -209,10 +209,12 @@ public:
KFileItem *findByUrl(const KDirLister *lister, const KUrl &url) const;
// Called by CachedItemsJob:
- // Emits those items, for this lister and this url
+ // Emits the cached items, for this lister and this url
void emitItemsFromCache(KDirLister::Private::CachedItemsJob* job, KDirLister* lister,
- const KFileItemList& lst, const KFileItem& rootItem,
const KUrl& _url, bool _reload, bool _emitCompleted);
+ // Called by CachedItemsJob:
+ void forgetCachedItemsJob(KDirLister::Private::CachedItemsJob* job, KDirLister* lister,
+ const KUrl& url);
public Q_SLOTS:
/**
@@ -464,8 +466,7 @@ struct KDirListerCacheDirectoryData
class KDirLister::Private::CachedItemsJob : public KJob {
Q_OBJECT
public:
- CachedItemsJob(KDirLister* lister, const KFileItemList& items, const KFileItem& rootItem,
- const KUrl& url, bool reload);
+ CachedItemsJob(KDirLister* lister, const KUrl& url, bool reload);
/*reimp*/ void start() { QMetaObject::invokeMethod(this, "done", Qt::QueuedConnection); }
@@ -483,8 +484,6 @@ public Q_SLOTS:
private:
KDirLister* m_lister;
KUrl m_url;
- KFileItemList m_items;
- KFileItem m_rootItem;
bool m_reload;
bool m_emitCompleted;
};
diff --git a/kio/tests/kdirlistertest.cpp b/kio/tests/kdirlistertest.cpp
index e543c1f..3047fdd 100644
--- a/kio/tests/kdirlistertest.cpp
+++ b/kio/tests/kdirlistertest.cpp
@@ -678,12 +678,83 @@ void KDirListerTest::testConcurrentHoldingListing()
QCOMPARE(m_dirLister.spyClear.count(), 1);
QCOMPARE(m_dirLister.spyClearKUrl.count(), 0);
QVERIFY(dirLister2.isFinished());
- disconnect(&dirLister2, 0, this, 0);
QVERIFY(m_dirLister.isFinished());
disconnect(&m_dirLister, 0, this, 0);
QCOMPARE(m_items.count(), origItemCount);
}
+void KDirListerTest::testConcurrentListingAndStop()
+{
+ m_items.clear();
+ m_items2.clear();
+
+ MyDirLister dirLister2;
+
+ // Use a new tempdir for this test, so that we don't use the cache at all.
+ KTempDir tempDir;
+ const QString path = tempDir.name();
+ createTestFile(path+"file_1");
+ createTestFile(path+"file_2");
+ createTestFile(path+"file_3");
+
+ connect(&m_dirLister, SIGNAL(newItems(KFileItemList)), this, SLOT(slotNewItems(KFileItemList)));
+ connect(&dirLister2, SIGNAL(newItems(KFileItemList)), this, SLOT(slotNewItems2(KFileItemList)));
+
+ // Before m_dirLister has time to emit the items, let's make dirLister2 call stop().
+ // This should not stop the list job for m_dirLister (#267709).
+ dirLister2.openUrl(KUrl(path), KDirLister::Reload);
+ m_dirLister.openUrl(KUrl(path)/*, KDirLister::Reload*/);
+
+ QCOMPARE(m_dirLister.spyStarted.count(), 1);
+ QCOMPARE(m_dirLister.spyCompleted.count(), 0);
+ QCOMPARE(m_dirLister.spyCompletedKUrl.count(), 0);
+ QCOMPARE(m_dirLister.spyCanceled.count(), 0);
+ QCOMPARE(m_dirLister.spyCanceledKUrl.count(), 0);
+ QCOMPARE(m_dirLister.spyClear.count(), 1);
+ QCOMPARE(m_dirLister.spyClearKUrl.count(), 0);
+ QCOMPARE(m_items.count(), 0);
+
+ QCOMPARE(dirLister2.spyStarted.count(), 1);
+ QCOMPARE(dirLister2.spyCompleted.count(), 0);
+ QCOMPARE(dirLister2.spyCompletedKUrl.count(), 0);
+ QCOMPARE(dirLister2.spyCanceled.count(), 0);
+ QCOMPARE(dirLister2.spyCanceledKUrl.count(), 0);
+ QCOMPARE(dirLister2.spyClear.count(), 1);
+ QCOMPARE(dirLister2.spyClearKUrl.count(), 0);
+ QCOMPARE(m_items2.count(), 0);
+ QVERIFY(!m_dirLister.isFinished());
+ QVERIFY(!dirLister2.isFinished());
+
+ dirLister2.stop();
+
+ QCOMPARE(dirLister2.spyStarted.count(), 1);
+ QCOMPARE(dirLister2.spyCompleted.count(), 0);
+ QCOMPARE(dirLister2.spyCompletedKUrl.count(), 0);
+ QCOMPARE(dirLister2.spyCanceled.count(), 1);
+ QCOMPARE(dirLister2.spyCanceledKUrl.count(), 1);
+ QCOMPARE(dirLister2.spyClear.count(), 1);
+ QCOMPARE(dirLister2.spyClearKUrl.count(), 0);
+ QCOMPARE(m_items2.count(), 0);
+
+ // then wait for completed
+ qDebug("waiting for completed");
+ connect(&m_dirLister, SIGNAL(completed()), this, SLOT(exitLoop()));
+ enterLoop();
+
+ QCOMPARE(m_items.count(), 3);
+ QCOMPARE(m_items2.count(), 0);
+
+ //QCOMPARE(m_dirLister.spyStarted.count(), 1); // 2 when in cache
+ QCOMPARE(m_dirLister.spyCompleted.count(), 1);
+ QCOMPARE(m_dirLister.spyCompletedKUrl.count(), 1);
+ QCOMPARE(m_dirLister.spyCanceled.count(), 0);
+ QCOMPARE(m_dirLister.spyCanceledKUrl.count(), 0);
+ QCOMPARE(m_dirLister.spyClear.count(), 1);
+ QCOMPARE(m_dirLister.spyClearKUrl.count(), 0);
+
+ disconnect(&m_dirLister, 0, this, 0);
+}
+
void KDirListerTest::testDeleteListerEarly()
{
// Do the same again, it should behave the same, even with the items in the cache
diff --git a/kio/tests/kdirlistertest.h b/kio/tests/kdirlistertest.h
index 531abd5..a781aca 100644
--- a/kio/tests/kdirlistertest.h
+++ b/kio/tests/kdirlistertest.h
@@ -101,6 +101,7 @@ private Q_SLOTS:
void testRenameAndOverwrite();
void testConcurrentListing();
void testConcurrentHoldingListing();
+ void testConcurrentListingAndStop();
void testDeleteListerEarly();
void testOpenUrlTwice();
void testOpenUrlTwiceWithKeep();

View File

@ -1,21 +1,21 @@
%global attica_ver 0.1.4
%global dbusmenu_qt_ver 0.5.2
%global phonon_ver 4.4.2
%global qt4_ver 4.6.2
%global soprano_ver 2.5.0
%global strigi_ver 0.7.2
%define attica_ver 0.2.0
%define dbusmenu_qt_ver 0.5.2
%define phonon_ver 4.4.4
%define qt4_ver 4.7.0
%define soprano_ver 2.6.0
%define strigi_ver 0.7.2
# to build/include apidocs or not
%global apidocs 1
%define apidocs 1
# to build/include QCH apidocs or not (currently broken)
#define apidocs_qch 1
%global dbusmenu_qt_version %(pkg-config --modversion dbusmenu-qt 2>/dev/null || echo %{dbusmenu_qt_ver})
%global phonon_version %(pkg-config --modversion phonon 2>/dev/null || echo %{phonon_ver})
%global soprano_version %(pkg-config --modversion soprano 2>/dev/null || echo %{soprano_ver})
%global strigi_version %(pkg-config --modversion libstreams 2>/dev/null || echo %{strigi_ver})
%if 0%{?fedora} > 13
%define halectomy 1
%endif
Summary: KDE Libraries
Version: 4.5.5
Version: 4.6.1
Release: 2%{?dist}
Name: kdelibs
@ -34,8 +34,8 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: kde4-macros(api) >= 2
BuildRequires: kde-filesystem >= 4-23
BuildRequires: docbook-dtds docbook-style-xsl
Requires: ca-certificates
%global dbusmenu_qt_version %(pkg-config --modversion dbusmenu-qt 2>/dev/null || echo %{dbusmenu_qt_ver})
Requires: dbusmenu-qt%{?_isa} >= %{dbusmenu_qt_version}
Requires: docbook-dtds docbook-style-xsl
Requires: hicolor-icon-theme
@ -44,56 +44,45 @@ Requires: kde-settings
%{?_kde4_macros_api:Requires: kde4-macros(api) = %{_kde4_macros_api} }
# versioned dep ok, as long as it comes from *here*
Requires: %{name}-common = %{epoch}:%{version}-%{release}
Requires: hal
Requires: hunspell
# beware of possible bootstrapping problems -- Rex
Requires: oxygen-icon-theme >= %{version}
%global phonon_version %(pkg-config --modversion phonon 2>/dev/null || echo %{phonon_ver})
Requires: phonon%{?_isa} >= %{phonon_version}
Requires: shared-desktop-ontologies
Requires: shared-desktop-ontologies >= 0.4
Requires: shared-mime-info
%global soprano_version %(pkg-config --modversion soprano 2>/dev/null || echo %{soprano_ver})
Requires: soprano%{?_isa} >= %{soprano_version}
%global strigi_version %(pkg-config --modversion libstreams 2>/dev/null || echo %{strigi_ver})
Requires: strigi-libs%{?_isa} >= %{strigi_version}
# make -devel packages parallel-installable
Patch0: kdelibs-4.4.85-parallel_devel.patch
# make kdelibs-devel parallel-installable with kdelibs3-devel
Patch0: kdelibs-4.5.80-parallel_devel.patch
# fix kde#149705
Patch2: kdelibs-4.2.85-kde149705.patch
# install all .css files and Doxyfile.global in kdelibs-common to build
# kdepimlibs-apidocs against
Patch8: kdelibs-4.3.90-install_all_css.patch
# add Fedora/V-R to KHTML UA string
Patch9: kdelibs-4.0.2-branding.patch
Patch9: kdelibs-4.5.80-branding.patch
# don't cache kdeglobals paths because they change after profile directories
# are loaded from kde4rc
Patch10: kdelibs-4.1.72-no-cache-kdeglobals-paths.patch
# workaround for policykit
Patch11: kdelibs-4.4.80-policykit-workaround.patch
# fedora/rhel applications menu
# COMMENT ME PLEASE
Patch12: kdelibs-4.1.0-xdg-menu.patch
# patch KStandardDirs to use %{_libexecdir}/kde4 instead of %{_libdir}/kde4/libexec
Patch14: kdelibs-4.4.80-libexecdir.patch
Patch14: kdelibs-4.5.80-libexecdir.patch
# kstandarddirs changes: search /etc/kde, find %{_kde4_libexecdir}
Patch18: kdelibs-4.1.72-kstandarddirs.patch
# set correct build type
Patch18: kdelibs-4.5.80-kstandarddirs.patch
# COMMENT ME PLEASE
Patch20: kdelibs-4.1.70-cmake.patch
# disable drkonqi by default, RHEL prefers/wants abrt
Patch24: kdelibs-4.3.1-drkonq.patch
# die rpath die, since we're using standard paths, we can avoid
# this extra hassle (even though cmake is *supposed* to not add standard
# paths (like /usr/lib64) already! With this, we can drop
# -DCMAKE_SKIP_RPATH:BOOL=ON (finally)
Patch27: kdelibs-4.4.80-no_rpath.patch
Patch27: kdelibs-4.5.80-no_rpath.patch
## upstreamable
# add gpg2 support to knewstuff, rough first try s/gpg/gpg2/
@ -101,20 +90,31 @@ Patch27: kdelibs-4.4.80-no_rpath.patch
# TODO: try to use either gpg or gpg2, whichever is available
Patch50: kdelibs-4.5.1-knewstuff_gpg2.patch
## 4.5 upstream, stable branch
## trunk upstream
# http://websvn.kde.org/?view=revision&revision=1185912
Patch151: kdelibs-4.5.2-plasma_wallpaper_configchanged.patch
## upstream
# https://projects.kde.org/projects/kde/kdelibs/repository/revisions/51707e7154082b549216b8a8ecde73505302fadc
Patch100: kdelibs-4.6.1-dirlister.patch
## security fix
# Not Upstreamed? why not ? -- Rex
Patch200: kdelibs-4.3.1-CVE-2009-2702.patch
## Fedora specific patches
# make forcefully hal-free build
Patch300: kdelibs-4.5.90-halectomy.patch
%if 0%{?fedora} && 0%{?fedora} < 13
Conflicts: kdebase-workspace-libs < 4.3.80
%endif
# force upgrade of apps using the discontinued KatePart Smart* interfaces to
# versions using the new Moving* interfaces instead
Conflicts: kdevplatform < 1.1.80
Conflicts: kdevelop < 9:4.1.80
# 2.1-0.9.b4.fc15 is the first build with the fix from beta 5 backported
Conflicts: kile < 2.1-0.9
Conflicts: rkward < 0.5.4
BuildRequires: qt4-devel >= %{qt4_ver}
BuildRequires: qt4-webkit-devel
%{?_qt4_version:Requires: qt4%{?_isa} >= %{_qt4_version}}
@ -134,6 +134,7 @@ BuildRequires: enchant-devel
BuildRequires: gamin-devel
BuildRequires: gettext-devel
BuildRequires: giflib-devel
BuildRequires: grantlee-devel
BuildRequires: jasper-devel
BuildRequires: krb5-devel
BuildRequires: libacl-devel libattr-devel
@ -141,12 +142,13 @@ BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libtiff-devel
BuildRequires: libxslt-devel libxml2-devel
BuildRequires: libudev-devel
BuildRequires: libutempter-devel
BuildRequires: OpenEXR-devel
BuildRequires: openssl-devel
BuildRequires: pcre-devel
BuildRequires: phonon-devel >= %{phonon_ver}
BuildRequires: polkit-qt-devel
BuildRequires: polkit-qt-devel >= 0.98.1
BuildRequires: qca2-devel
BuildRequires: shared-desktop-ontologies-devel
BuildRequires: shared-mime-info
@ -159,10 +161,18 @@ BuildRequires: dbusmenu-qt-devel
%define x_deps libSM-devel libXcomposite-devel libXdamage-devel libxkbfile-devel libXpm-devel libXScrnSaver-devel libXtst-devel libXv-devel libXxf86misc-devel
%{?x_deps:BuildRequires: %{x_deps}}
%if 0%{?halectomy}
Requires: udisks upower
%else
BuildRequires: hal-devel
Requires: hal-storage-addon
%endif
%if 0%{?apidocs}
BuildRequires: docbook-dtds
BuildRequires: doxygen
BuildRequires: graphviz
# should probably do something about removing this one, it's quite huge'ish -- Rex
BuildRequires: qt4-doc
%endif
@ -182,18 +192,14 @@ Libraries for KDE 4.
%package common
Group: System Environment/Libraries
Summary: Common files for KDE 3 and KDE 4 libraries
# some files moved kdebase-runtime -> here
Conflicts: kdebase-runtime < 4.5.80
%description common
This package includes the common files for the KDE 3 and KDE 4 libraries.
%package devel
Group: Development/Libraries
Summary: Header files for compiling KDE 4 applications
# stuff moved, help upgrade path
%if 0%{?fedora} && 0%{?fedora} < 13
Conflicts: kdebase-workspace-devel < 4.3.80
Obsoletes: kdelibs-experimental-devel < 4.3.75
Provides: kdelibs-experimental-devel = %{version}-%{release}
%endif
%if 0%{?fedora} && 0%{?fedora} < 15
Obsoletes: webkitkde-devel < 0.0.6
%endif
@ -256,7 +262,8 @@ format for use with the Qt 4 Assistant or KDevelop 4.
%patch2 -p1 -b .kde149705
%patch8 -p1 -b .install_all_css
%patch9 -p1 -b .branding
%patch11 -p1 -b .policykit-workaround
# add release version as part of branding (suggested by cailon)
sed -i -e "s|@@VERSION_RELEASE@@|%{version}-%{release}|" kio/kio/kprotocolmanager.cpp
%patch12 -p1 -b .Administration-menu
%patch14 -p1 -b .libexecdir
%patch18 -p1 -b .kstandarddirs
@ -269,18 +276,20 @@ format for use with the Qt 4 Assistant or KDevelop 4.
# upstreamable patches
%patch50 -p1 -b .knewstuff_gpg2
# upstream patches, stable branch
# upstream patches, trunk
%patch151 -p3 -b .plasma_wallpaper_configchanged
# upstream patches
%patch100 -p1 -b .dirlister
# security fix
%patch200 -p1 -b .CVE-2009-2702
# add release version as part of branding (suggested by cailon)
sed -i -e "s|@@VERSION_RELEASE@@|%{version}-%{release}|" kio/kio/kprotocolmanager.cpp
# Fedora patches
%if 0%{?halectomy}
%patch300 -p0 -b .halectomy
%endif
%build
mkdir -p %{_target_platform}
pushd %{_target_platform}
%{cmake_kde4} -DKDE_DISTRIBUTION_TEXT="%{version}-%{release} Fedora" ..
@ -440,6 +449,8 @@ rm -rf %{buildroot}
%{_kde4_configdir}/plasmoids.knsrc
%{_datadir}/dbus-1/interfaces/*
%{_sysconfdir}/dbus-1/system.d/*
%{_kde4_datadir}/applications/kde4/kmailservice.desktop
%{_kde4_datadir}/applications/kde4/ktelnetservice.desktop
%{_kde4_datadir}/mime/packages/kde.xml
%{_kde4_sharedir}/kde4/services/*
%{_kde4_sharedir}/kde4/servicetypes/*
@ -493,6 +504,7 @@ rm -rf %{buildroot}
%{_kde4_appsdir}/kdeui/
%{_kde4_docdir}/HTML/en/common/
%{_kde4_datadir}/locale/all_languages/
%{_kde4_datadir}/locale/en_US/entry.desktop
%files devel
%defattr(-,root,root,-)
@ -521,17 +533,79 @@ rm -rf %{buildroot}
%changelog
* Tue Jan 18 2011 Rex Dieter <rdieter@fedoraproject.org> 4.5.5-2
* Tue Mar 08 2011 Rex Dieter <rdieter@fedoraproject.org> 4.6.1-2
- Dolphin shows no files... (kde#267709)
* Sat Feb 26 2011 Rex Dieter <rdieter@fedoraproject.org> 4.6.1-1
- 4.6.1
* Mon Feb 21 2011 Jaroslav Reznik <jreznik@redhat.com> - 4.6.0-4
- Fix plasma logout crash (kde#264076)
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 6:4.6.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Tue Jan 25 2011 Kevin Kofler <Kevin@tigcc.ticalc.org> - 4.6.0-2
- Conflicts with old versions of kdevplatform, kdevelop, kile, rkward to force
their upgrade to compatible versions
* Fri Jan 21 2011 Jaroslav Reznik <jreznik@redhat.com> - 4.6.0-1
- 4.6.0
* Tue Jan 18 2011 Rex Dieter <rdieter@fedoraproject.org> - 4.5.95-2
- Unowned /usr/lib*/kde4/plugins/{gui_platform,styles} dirs (#645059)
* Wed Jan 05 2011 Rex Dieter <rdieter@fedoraproject.org> 4.5.5-1
- 4.5.5
* Wed Jan 05 2011 Jaroslav Reznik <jreznik@redhat.com> - 4.5.95-1
- 4.5.95 (4.6rc2)
* Sat Dec 04 2010 Rex Dieter <rdieter@fedoraproject.org> - 4.5.4-2
- update kdoctools/el from branch (kde-l10n entities)
* Mon Jan 03 2011 Lukas Tinkl <ltinkl@redhat.com> - 4.5.90-3
- update the halectomy patch to also omit the fstab backend
(may interfere with the udisks backend, causing deadlocks, cf kdebug#261359)
* Mon Nov 29 2010 Than Ngo <than@redhat.com> - 4.5.4-1
- 4.5.4
* Thu Dec 23 2010 Rex Dieter <rdieter@fedoraproject.org> 4.5.90-2
- build hal-free (ltinkl)
* Wed Dec 22 2010 Rex Dieter <rdieter@fedoraproject.org> 4.5.90-1
- 4.5.90 (4.6rc1)
* Fri Dec 17 2010 Jaroslav Reznik <jreznik@redhat.com> - 4.5.85-5
- rebuild for polkit-qt-1-0.99.0 (soname 1.99.0)
* Fri Dec 10 2010 Rex Dieter <rdieter@fedoraproject.org> - 4.5.85-4
- -common: Conflicts: kdebase-runtime < 4.5.80
- drop some old pre-f13 era Conflicts
* Fri Dec 10 2010 Kevin Kofler <Kevin@tigcc.ticalc.org> - 4.5.85-3
- fix FindQt4.cmake when there's also qt3-devel installed (#661996)
* Wed Dec 08 2010 Thomas Janssen <thomasj@fedoraproject.org> 4.5.85-2
- respun upstream tarball
* Fri Dec 03 2010 Thomas Janssen <thomasj@fedoraproject.org> 4.5.85-1
- 4.5.85 (4.6beta2)
* Fri Nov 26 2010 Rex Dieter <rdieter@fedoraproject.org> 4.5.80-7
- move udisks/upower dep to main pkg (from -devel)
* Wed Nov 24 2010 Lukas Tinkl <ltinkl@redhat.com> - 4.5.80-6
- explicitely require udisks/upower now that we depend on them
* Tue Nov 23 2010 Kevin Kofler <Kevin@tigcc.ticalc.org> - 4.5.80-5
- respun tarball (again), includes fix-build patch
* Tue Nov 23 2010 Kevin Kofler <Kevin@tigcc.ticalc.org> - 4.5.80-4
- respun tarball
- fix build failure triggered by "build fix" (patch by Jonathan Riddell)
* Mon Nov 22 2010 Lukas Tinkl <ltinkl@redhat.com> - 4.5.80-3
- don't build Solid HAL backend, rely on udisks/upower/udev only
(aka project HALsectomy)
* Sat Nov 20 2010 Rex Dieter <rdieter@fedoraproject.org> - 4.5.80-2
- squash more rpath's
* Sat Nov 20 2010 Rex Dieter <rdieter@fedoraproject.org> - 4.5.80-1
- 4.5.80 (4.6beta1)
* Mon Nov 15 2010 Rex Dieter <rdieter@fedoraproject.org> - 4.5.3-3
- Closing a konsolepart shell crashes (kde#256652)

View File

@ -1 +1 @@
a6037c53d34fe28f8a135181fe7c923b kdelibs-4.5.5.tar.bz2
0cdc56a73009c65b5ad9ba3167ebb227 kdelibs-4.6.1.tar.bz2