diff --git a/.gitignore b/.gitignore index e882019..970e850 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,5 @@ +<<<<<<< HEAD /kdelibs-4.5.5.tar.bz2 +======= +/kdelibs-4.6.1.tar.bz2 +>>>>>>> origin/f15/master diff --git a/kdelibs-4.0.2-branding.patch b/kdelibs-4.0.2-branding.patch deleted file mode 100644 index 7fc0e95..0000000 --- a/kdelibs-4.0.2-branding.patch +++ /dev/null @@ -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 \ diff --git a/kdelibs-4.4.80-libexecdir.patch b/kdelibs-4.4.80-libexecdir.patch deleted file mode 100644 index 3360e63..0000000 --- a/kdelibs-4.4.80-libexecdir.patch +++ /dev/null @@ -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; diff --git a/kdelibs-4.4.80-no_rpath.patch b/kdelibs-4.4.80-no_rpath.patch deleted file mode 100644 index 1d20ec4..0000000 --- a/kdelibs-4.4.80-no_rpath.patch +++ /dev/null @@ -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) - diff --git a/kdelibs-4.4.80-policykit-workaround.patch b/kdelibs-4.4.80-policykit-workaround.patch deleted file mode 100644 index 41c5312..0000000 --- a/kdelibs-4.4.80-policykit-workaround.patch +++ /dev/null @@ -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 // 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(); diff --git a/kdelibs-4.5.2-plasma_wallpaper_configchanged.patch b/kdelibs-4.5.2-plasma_wallpaper_configchanged.patch deleted file mode 100644 index d709e4a..0000000 --- a/kdelibs-4.5.2-plasma_wallpaper_configchanged.patch +++ /dev/null @@ -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. diff --git a/kdelibs-4.5.80-branding.patch b/kdelibs-4.5.80-branding.patch new file mode 100644 index 0000000..355be45 --- /dev/null +++ b/kdelibs-4.5.80-branding.patch @@ -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 diff --git a/kdelibs-4.1.72-kstandarddirs.patch b/kdelibs-4.5.80-kstandarddirs.patch similarity index 67% rename from kdelibs-4.1.72-kstandarddirs.patch rename to kdelibs-4.5.80-kstandarddirs.patch index 6f3478b..ca05435 100644 --- a/kdelibs-4.1.72-kstandarddirs.patch +++ b/kdelibs-4.5.80-kstandarddirs.patch @@ -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 diff --git a/kdelibs-4.5.80-libexecdir.patch b/kdelibs-4.5.80-libexecdir.patch new file mode 100644 index 0000000..a70f836 --- /dev/null +++ b/kdelibs-4.5.80-libexecdir.patch @@ -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; diff --git a/kdelibs-4.5.80-no_rpath.patch b/kdelibs-4.5.80-no_rpath.patch new file mode 100644 index 0000000..23a95c0 --- /dev/null +++ b/kdelibs-4.5.80-no_rpath.patch @@ -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) diff --git a/kdelibs-4.4.85-parallel_devel.patch b/kdelibs-4.5.80-parallel_devel.patch similarity index 68% rename from kdelibs-4.4.85-parallel_devel.patch rename to kdelibs-4.5.80-parallel_devel.patch index dfe24a4..3058de7 100644 --- a/kdelibs-4.4.85-parallel_devel.patch +++ b/kdelibs-4.5.80-parallel_devel.patch @@ -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 diff --git a/kdelibs-4.5.90-halectomy.patch b/kdelibs-4.5.90-halectomy.patch new file mode 100644 index 0000000..f167b68 --- /dev/null +++ b/kdelibs-4.5.90-halectomy.patch @@ -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) diff --git a/kdelibs-4.6.1-dirlister.patch b/kdelibs-4.6.1-dirlister.patch new file mode 100644 index 0000000..064a87e --- /dev/null +++ b/kdelibs-4.6.1-dirlister.patch @@ -0,0 +1,389 @@ +commit 51707e7154082b549216b8a8ecde73505302fadc +Author: David Faure +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::iterator dirit = directoryData.begin(); + const QHash::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(); diff --git a/kdelibs.spec b/kdelibs.spec index f47ddc6..f6e18ef 100644 --- a/kdelibs.spec +++ b/kdelibs.spec @@ -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 4.5.5-2 +* Tue Mar 08 2011 Rex Dieter 4.6.1-2 +- Dolphin shows no files... (kde#267709) + +* Sat Feb 26 2011 Rex Dieter 4.6.1-1 +- 4.6.1 + +* Mon Feb 21 2011 Jaroslav Reznik - 4.6.0-4 +- Fix plasma logout crash (kde#264076) + +* Mon Feb 07 2011 Fedora Release Engineering - 6:4.6.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Tue Jan 25 2011 Kevin Kofler - 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 - 4.6.0-1 +- 4.6.0 + +* Tue Jan 18 2011 Rex Dieter - 4.5.95-2 - Unowned /usr/lib*/kde4/plugins/{gui_platform,styles} dirs (#645059) -* Wed Jan 05 2011 Rex Dieter 4.5.5-1 -- 4.5.5 +* Wed Jan 05 2011 Jaroslav Reznik - 4.5.95-1 +- 4.5.95 (4.6rc2) -* Sat Dec 04 2010 Rex Dieter - 4.5.4-2 -- update kdoctools/el from branch (kde-l10n entities) +* Mon Jan 03 2011 Lukas Tinkl - 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 - 4.5.4-1 -- 4.5.4 +* Thu Dec 23 2010 Rex Dieter 4.5.90-2 +- build hal-free (ltinkl) + +* Wed Dec 22 2010 Rex Dieter 4.5.90-1 +- 4.5.90 (4.6rc1) + +* Fri Dec 17 2010 Jaroslav Reznik - 4.5.85-5 +- rebuild for polkit-qt-1-0.99.0 (soname 1.99.0) + +* Fri Dec 10 2010 Rex Dieter - 4.5.85-4 +- -common: Conflicts: kdebase-runtime < 4.5.80 +- drop some old pre-f13 era Conflicts + +* Fri Dec 10 2010 Kevin Kofler - 4.5.85-3 +- fix FindQt4.cmake when there's also qt3-devel installed (#661996) + +* Wed Dec 08 2010 Thomas Janssen 4.5.85-2 +- respun upstream tarball + +* Fri Dec 03 2010 Thomas Janssen 4.5.85-1 +- 4.5.85 (4.6beta2) + +* Fri Nov 26 2010 Rex Dieter 4.5.80-7 +- move udisks/upower dep to main pkg (from -devel) + +* Wed Nov 24 2010 Lukas Tinkl - 4.5.80-6 +- explicitely require udisks/upower now that we depend on them + +* Tue Nov 23 2010 Kevin Kofler - 4.5.80-5 +- respun tarball (again), includes fix-build patch + +* Tue Nov 23 2010 Kevin Kofler - 4.5.80-4 +- respun tarball +- fix build failure triggered by "build fix" (patch by Jonathan Riddell) + +* Mon Nov 22 2010 Lukas Tinkl - 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 - 4.5.80-2 +- squash more rpath's + +* Sat Nov 20 2010 Rex Dieter - 4.5.80-1 +- 4.5.80 (4.6beta1) * Mon Nov 15 2010 Rex Dieter - 4.5.3-3 - Closing a konsolepart shell crashes (kde#256652) diff --git a/sources b/sources index 1805394..e0573a2 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -a6037c53d34fe28f8a135181fe7c923b kdelibs-4.5.5.tar.bz2 +0cdc56a73009c65b5ad9ba3167ebb227 kdelibs-4.6.1.tar.bz2