diff options
author | Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> | 2009-03-10 13:34:09 +0000 |
---|---|---|
committer | Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> | 2009-03-10 13:34:09 +0000 |
commit | 365c2ae9ffc2e13ac252bd2f1b2503547fbf0434 (patch) | |
tree | 1cdfcceba786befa21fbf922759d8c8a3ee3c26d /kde-base | |
parent | Add missing test flag to IUSE. (diff) | |
download | historical-365c2ae9ffc2e13ac252bd2f1b2503547fbf0434.tar.gz historical-365c2ae9ffc2e13ac252bd2f1b2503547fbf0434.tar.bz2 historical-365c2ae9ffc2e13ac252bd2f1b2503547fbf0434.zip |
Applied upstream revision 934640 that fixes upstream bug 186038 and Gentoo bug 261367.
Package-Manager: portage-2.2_rc23/cvs/Linux x86_64
Diffstat (limited to 'kde-base')
-rw-r--r-- | kde-base/kdelibs/ChangeLog | 9 | ||||
-rw-r--r-- | kde-base/kdelibs/Manifest | 4 | ||||
-rw-r--r-- | kde-base/kdelibs/files/kdelibs-4.2.1-qt4.5.patch | 654 | ||||
-rw-r--r-- | kde-base/kdelibs/kdelibs-4.2.1-r1.ebuild | 245 |
4 files changed, 910 insertions, 2 deletions
diff --git a/kde-base/kdelibs/ChangeLog b/kde-base/kdelibs/ChangeLog index 86aa146d9d91..aa0a0f41e438 100644 --- a/kde-base/kdelibs/ChangeLog +++ b/kde-base/kdelibs/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for kde-base/kdelibs # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/kde-base/kdelibs/ChangeLog,v 1.569 2009/03/08 23:22:16 scarabeus Exp $ +# $Header: /var/cvsroot/gentoo-x86/kde-base/kdelibs/ChangeLog,v 1.570 2009/03/10 13:34:09 jmbsvicetto Exp $ + +*kdelibs-4.2.1-r1 (10 Mar 2009) + + 10 Mar 2009; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> + +files/kdelibs-4.2.1-qt4.5.patch, +kdelibs-4.2.1-r1.ebuild: + Applied upstream revision 934640 that fixes upstream bug 186038 and Gentoo + bug 261367. 08 Mar 2009; Tomas Chvatal <scarabeus@gentoo.org> kdelibs-4.2.1.ebuild: Kdelibs:4.* needs allways webkit. diff --git a/kde-base/kdelibs/Manifest b/kde-base/kdelibs/Manifest index e527dd40b2e8..0edd02740b5d 100644 --- a/kde-base/kdelibs/Manifest +++ b/kde-base/kdelibs/Manifest @@ -20,6 +20,7 @@ AUX kdelibs-4.0.2-alsa-optional.patch 1742 RMD160 ea660d1148488fdac27970587535ec AUX kdelibs-4.0.3-CVS-2008-1670.patch 739 RMD160 348782a28e75435c4b36548879d2d8d243fc0436 SHA1 c08f374abc2f44cd1ece01881b510ef83241f186 SHA256 41e219e50b652800a2ca892e70baeb40ee6e7cf0f981d098dbdf2ca0926ddf5f AUX kdelibs-4.1.1-cmake-modules.patch 2905 RMD160 d7043d4153927ab655c4d7630389024983c6b95a SHA1 9d232044bf51f98656a48092082a5aafcb9d4699 SHA256 8836e0c8267054b2dedcf1c879e57bde67ff83c1b824337dec81d96a3d69754e AUX kdelibs-4.1.3-gcc4.1.patch 10046 RMD160 923b2d8d1b88651601d0fababac9251d37e84709 SHA1 86718c9abd5b68494136a83dc2d7bc696cc6612e SHA256 b6779f1bf29272ac160e559ab8315e8f7bad42e4f13a1092284e66849b5cc627 +AUX kdelibs-4.2.1-qt4.5.patch 19805 RMD160 4a266bdbe3d9dcc088f7abbffc2b46714d57208a SHA1 9490015fb83982d0aeac3a1b7918fa4262957782 SHA256 2a3ffd511d25d8a4fc4a8e246e97245a78af7766a33c6baac382568da04dc791 DIST kde-3.5.9-seli-xinerama.tar.bz2 15150 RMD160 09f9dc74e52d1507a73d1140654021d2baedde3a SHA1 cb8eaba630ee7c8f93c634512d52a9d1603d5405 SHA256 769b0135b327b3274aa45d78ae882811073041fdbfd55267106b1a3f42115966 DIST kdelibs-3.5-patchset-14.tar.bz2 23248 RMD160 223ad8aa6d3dab3a6e23a89e00eaf2e90bab399e SHA1 5d50fff6b6a26d8abffa4dda7360b42e0fc29eac SHA256 50d1517fbb3b70890b1858533a77fb0e6e1e72612e155ebe5350e8fea7405273 DIST kdelibs-3.5-patchset-15.tar.bz2 6707 RMD160 55958374bfc4ba27caf573e13337677c35cbe2c0 SHA1 e0a35642adfcf223ce7490b21af1fa2c3d922b93 SHA256 4a25bc340ce2567ea017456b4aa2292b288779d59d0dd012bd50f5189fe739ec @@ -34,6 +35,7 @@ EBUILD kdelibs-3.5.9-r2.ebuild 6205 RMD160 a751f94f3026c1233e3ed10a110d950e60620 EBUILD kdelibs-3.5.9-r3.ebuild 6285 RMD160 0946a13cebba7c34600acaee2cb1b9be6341c797 SHA1 55f98208b2c6304f7e9126bb8e695987037fe934 SHA256 654c8b45e36dde370d9c6609a36f45f5eec216a204c3b6048fcc8d44d8658652 EBUILD kdelibs-3.5.9-r4.ebuild 6370 RMD160 75c38e396b898acf3f90dc1533b500b7698c8628 SHA1 30ab876b29bb33d4aa0320949ea4cb2e4e6f575c SHA256 67ec9c7241faf95bd0614dd2309ce8f063078d047662ff5cd1300524cd0ad102 EBUILD kdelibs-3.5.9.ebuild 6042 RMD160 5402e42899c0e55787f8b7f5650143dcbc4410d7 SHA1 721388ab5fa4ee455bdadb189afa021bd336fc16 SHA256 f7acb5abb483ebeeaee7a8636073b85d4ea0b7e9badcd8f8073d5ac8dcd2167b +EBUILD kdelibs-4.2.1-r1.ebuild 6725 RMD160 8e6fd0382b60cdd150c89c94d3bf762112d1ce08 SHA1 dc471bf0cc1515f319cf53fd26a14970f57f106f SHA256 31b7846c08aca784f083f8d97e409f983a4259f73a4f52334fca0357b9d921ce EBUILD kdelibs-4.2.1.ebuild 6570 RMD160 63363a2c262f23189f7a63ddf8f20a2915cc76ea SHA1 df38ba5ff222935f4d4f45a034ef6dd0b6f158f6 SHA256 1376a9c68399c7de53c7e0f02448b9e66882f11fe9b69d24f22d22ac4665bbf0 -MISC ChangeLog 93689 RMD160 ff2910843d234739a8a802cee6ffa550fa24e5d0 SHA1 cc55e5beb8ebd41de442c47a0b67dfca27a8092e SHA256 76f7f2d1c1e2b99920c9358c50f8528655cae844d01502c567a38aa5921816d9 +MISC ChangeLog 93945 RMD160 0460ad576e05c7a2a18b09f3b42d7f03054d28f0 SHA1 26e7617178171bc5cd2c67bcd7cbd0e05fecb31b SHA256 adb651be5fbc725b934a81902acd15d63f16d71845604149a617f3c0645ecbc6 MISC metadata.xml 375 RMD160 0a16bbd99eb0c4f3d89dbede17c5d6feea41c6ba SHA1 531b56c08557857a57c7833d2bab42cdf879b9a8 SHA256 3b5a8f2ca27aa45532679f3ab64756b02a953c5c11e86d9539cec95bab292b9b diff --git a/kde-base/kdelibs/files/kdelibs-4.2.1-qt4.5.patch b/kde-base/kdelibs/files/kdelibs-4.2.1-qt4.5.patch new file mode 100644 index 000000000000..f27ed787c309 --- /dev/null +++ b/kde-base/kdelibs/files/kdelibs-4.2.1-qt4.5.patch @@ -0,0 +1,654 @@ +Index: branches/KDE/4.2/kdelibs/kdecore/kernel/kcmdlineargs.cpp +=================================================================== +--- branches/KDE/4.2/kdelibs/kdecore/kernel/kcmdlineargs.cpp (revision 934639) ++++ branches/KDE/4.2/kdelibs/kdecore/kernel/kcmdlineargs.cpp (revision 934640) +@@ -83,13 +83,13 @@ + // Helper classes + // + +-class KCmdLineParsedOptions : public QHash<QString,QString> ++class KCmdLineParsedOptions : public QHash<QByteArray,QByteArray> + { + public: + KCmdLineParsedOptions() { } + }; + +-class KCmdLineParsedArgs : public QList<QString> ++class KCmdLineParsedArgs : public QList<QByteArray> + { + public: + KCmdLineParsedArgs() { } +@@ -112,7 +112,7 @@ + + class KCmdLineOptionsPrivate { + public: +- QStringList names; ++ QList<QByteArray> names; + QList<KLocalizedString> descriptions; + QStringList defaults; + }; +@@ -143,7 +143,7 @@ + const KLocalizedString &description, + const QByteArray &defaultValue) + { +- d->names.append(QString::fromUtf8(name)); ++ d->names.append(name); + d->descriptions.append(description); + d->defaults.append(QString::fromUtf8(defaultValue)); + return *this; +@@ -171,7 +171,7 @@ + char **argv; // The original argv + bool parsed : 1; // Whether we have parsed the arguments since calling init + bool ignoreUnknown : 1; // Ignore unknown options and arguments +- QString mCwd; // Current working directory. Important for KUnqiueApp! ++ QByteArray mCwd; // Current working directory. Important for KUnqiueApp! + KCmdLineArgs::StdCmdLineArgs mStdargs; + + KCmdLineOptions qt_options; +@@ -220,15 +220,15 @@ + * + * +4 - no more options follow // !fork + */ +- static int findOption(const KCmdLineOptions &options, QString &opt, +- QString &opt_name, QString &def, bool &enabled); ++ static int findOption(const KCmdLineOptions &options, QByteArray &opt, ++ QByteArray &opt_name, QString &def, bool &enabled); + + /** + * @internal + * + * Checks what to do with a single option + */ +- static void findOption(const QString &optv, const QString &_opt, ++ static void findOption(const QByteArray &optv, const QByteArray &_opt, + int &i, bool _enabled, bool &moreOptions); + + /** +@@ -246,7 +246,7 @@ + * + * @param id The name of the options to be removed. + */ +- static void removeArgs(const QString &id); ++ static void removeArgs(const QByteArray &id); + }; + + K_GLOBAL_STATIC(KCmdLineArgsStatic, s) +@@ -336,7 +336,7 @@ + { + friend class KCmdLineArgsStatic; + public: +- KCmdLineArgsPrivate(const KCmdLineOptions &_options, const KLocalizedString &_name, const QString &_id) ++ KCmdLineArgsPrivate(const KCmdLineOptions &_options, const KLocalizedString &_name, const QByteArray &_id) + : options(_options) + , name(_name) + , id(_id) +@@ -351,7 +351,7 @@ + } + const KCmdLineOptions options; + const KLocalizedString name; +- const QString id; ++ const QByteArray id; + KCmdLineParsedOptions *parsedOptionList; + KCmdLineParsedArgs *parsedArgList; + bool isQt; +@@ -361,21 +361,21 @@ + * + * Set a boolean option + */ +- void setOption(const QString &option, bool enabled); ++ void setOption(const QByteArray &option, bool enabled); + + /** + * @internal + * + * Set a string option + */ +- void setOption(const QString &option, const QString &value); ++ void setOption(const QByteArray &option, const QByteArray &value); + + /** + * @internal + * + * Add an argument + */ +- void addArgument(const QString &argument); ++ void addArgument(const QByteArray &argument); + + /** + * @internal +@@ -469,13 +469,13 @@ + + s->about = _about; + s->parsed = false; +- s->mCwd = QDir::currentPath(); ++ s->mCwd = QDir::currentPath().toLocal8Bit(); //currentPath() uses fromLocal8Bit internally apparently + addStdCmdLineOptions(stdargs); + } + + QString KCmdLineArgs::cwd() + { +- return s->mCwd; ++ return QString::fromLocal8Bit(s->mCwd); + } + + QString KCmdLineArgs::appName() +@@ -499,14 +499,11 @@ + + void + KCmdLineArgs::addCmdLineOptions( const KCmdLineOptions &options, const KLocalizedString &name, +- const QByteArray &_id, const QByteArray &_afterId) ++ const QByteArray &id, const QByteArray &afterId) + { + if (!s->argsList) + s->argsList = new KCmdLineArgsList; + +- QString id = QString::fromUtf8(_id); +- QString afterId = QString::fromUtf8(_afterId); +- + int pos = s->argsList->count(); + // To make sure that the named options come before unnamed. + if (pos > 0 && !id.isEmpty() && s->argsList->last()->d->name.isEmpty()) +@@ -527,7 +524,7 @@ + + Q_ASSERT( s->parsed == false ); // You must add _ALL_ cmd line options + // before accessing the arguments! +- s->argsList->insert(pos, new KCmdLineArgs(options, name, id.toUtf8())); ++ s->argsList->insert(pos, new KCmdLineArgs(options, name, id)); + } + + void +@@ -540,8 +537,7 @@ + s->removeArgs("qt"); + s->removeArgs("kde"); + +- QByteArray qCwd = QFile::encodeName(s->mCwd); +- ds << qCwd; ++ ds << s->mCwd; + + uint count = s->argsList ? s->argsList->count() : 0; + ds << count; +@@ -579,16 +575,15 @@ + QByteArray qCwd; + ds >> qCwd; + +- s->mCwd = QFile::decodeName(qCwd); //FIXME: Is this proper decoding? ++ s->mCwd = qCwd; + + uint count; + ds >> count; + + while(count--) + { +- QByteArray idRaw; +- ds >> idRaw; +- QString id = idRaw; //FIXME: What about decoding? ++ QByteArray id; ++ ds >> id; + Q_ASSERT( s->argsList ); + for(args = s->argsList->begin(); args != s->argsList->end(); ++args) + { +@@ -602,9 +597,8 @@ + s->parsed = true; + } + +-KCmdLineArgs *KCmdLineArgs::parsedArgs(const QByteArray &_id) ++KCmdLineArgs *KCmdLineArgs::parsedArgs(const QByteArray &id) + { +- QString id = QString::fromUtf8(_id); + if (!s->argsList) + return 0; + KCmdLineArgsList::Iterator args = s->argsList->begin(); +@@ -622,7 +616,7 @@ + return 0; + } + +-void KCmdLineArgsStatic::removeArgs(const QString &id) ++void KCmdLineArgsStatic::removeArgs(const QByteArray &id) + { + if (!s->argsList) + return; +@@ -646,8 +640,8 @@ + } + + int +-KCmdLineArgsStatic::findOption(const KCmdLineOptions &options, QString &opt, +- QString &opt_name, QString &def, bool &enabled) ++KCmdLineArgsStatic::findOption(const KCmdLineOptions &options, QByteArray &opt, ++ QByteArray &opt_name, QString &def, bool &enabled) + { + int result; + bool inverse; +@@ -686,7 +680,7 @@ + i++; + if (i >= options.d->names.size()) + return result+0; +- QString nextOption = options.d->names[i]; ++ QByteArray nextOption = options.d->names[i]; + int p = nextOption.indexOf(' '); + if (p > 0) + nextOption = nextOption.left(p); +@@ -717,14 +711,14 @@ + } + + void +-KCmdLineArgsStatic::findOption(const QString &optv, const QString &_opt, ++KCmdLineArgsStatic::findOption(const QByteArray &optv, const QByteArray &_opt, + int &i, bool _enabled, bool &moreOptions) + { + KCmdLineArgsList::Iterator args = s->argsList->begin(); +- QString opt = _opt; +- QString opt_name; ++ QByteArray opt = _opt; ++ QByteArray opt_name; + QString def; +- QString argument; ++ QByteArray argument; + int j = opt.indexOf('='); + if (j != -1) + { +@@ -753,7 +747,7 @@ + int p = 1; + while (true) + { +- QString singleCharOption = " "; ++ QByteArray singleCharOption = " "; + singleCharOption[0] = optv[p]; + args = s->argsList->begin(); + while (args != s->argsList->end()) +@@ -800,7 +794,7 @@ + return; + #endif + KCmdLineArgs::enable_i18n(); +- KCmdLineArgs::usageError( i18n("Unknown option '%1'.", _opt)); ++ KCmdLineArgs::usageError( i18n("Unknown option '%1'.", QString::fromLocal8Bit(_opt))); + } + + if ((result & 4) != 0) +@@ -820,7 +814,7 @@ + return; + #endif + KCmdLineArgs::enable_i18n(); +- KCmdLineArgs::usageError( i18n("Unknown option '%1'.", _opt)); ++ KCmdLineArgs::usageError( i18n("Unknown option '%1'.", QString::fromLocal8Bit(_opt))); + } + if (argument.isEmpty()) + { +@@ -828,9 +822,9 @@ + if (i >= s->argc) + { + KCmdLineArgs::enable_i18n(); +- KCmdLineArgs::usageError( i18nc("@info:shell %1 is cmdoption name","'%1' missing.", opt_name)); ++ KCmdLineArgs::usageError( i18nc("@info:shell %1 is cmdoption name","'%1' missing.", QString::fromLocal8Bit(opt_name))); + } +- argument = s->decodeInput(s->argv[i]); ++ argument = s->argv[i]; + } + (*args)->d->setOption(opt, argument); + } +@@ -849,16 +843,10 @@ + KCmdLineArgs *appOptions = s->argsList->last(); + if (appOptions->d->id.isEmpty()) + { +- const KCmdLineOptions &option = appOptions->d->options; +- for (int i = 0; i < option.d->names.size(); i++) ++ foreach(const QByteArray& name, appOptions->d->options.d->names) + { +- if (option.d->names[i].startsWith('+')) +- allowArgs = true; +- if ( option.d->names[i].startsWith("!+") ) +- { +- allowArgs = true; +- everythingAfterArgIsArgs = true; +- } ++ everythingAfterArgIsArgs = everythingAfterArgIsArgs || name.startsWith("!+"); ++ allowArgs = allowArgs || name.startsWith('+') || everythingAfterArgIsArgs; + } + } + for(int i = 1; i < s->argc; i++) +@@ -869,8 +857,8 @@ + if ((s->argv[i][0] == '-') && s->argv[i][1] && inOptions) + { + bool enabled = true; +- QString orig = decodeInput(s->argv[i]); +- QString option = orig.mid(1); ++ QByteArray orig = s->argv[i]; ++ QByteArray option = orig.mid(1); + if (option.startsWith('-')) + { + option = option.mid(1); +@@ -887,7 +875,7 @@ + } + else if (option.startsWith("help-")) + { +- KCmdLineArgs::usage(option.mid(5).toUtf8()); ++ KCmdLineArgs::usage(option.mid(5)); + } + else if ((option == "version") || (option == "v")) + { +@@ -924,9 +912,8 @@ + { + if (s->about->bugAddress().isEmpty() || s->about->bugAddress() == "submit@bugs.kde.org" ) + s->printQ( i18n( "Please use http://bugs.kde.org to report bugs.\n" ) ); +- else { ++ else + s->printQ( i18n( "Please report bugs to %1.\n" , s->about->bugAddress()) ); +- } + } + else + { +@@ -955,7 +942,7 @@ + } + else + { +- appOptions->d->addArgument(s->decodeInput(s->argv[i])); ++ appOptions->d->addArgument(s->argv[i]); + if (everythingAfterArgIsArgs) + inOptions = false; + } +@@ -1009,7 +996,7 @@ + if (!(s->mStdargs & KCmdLineArgs::CmdLineArgQt)) + { + s_qt_argv = new char*[2]; +- s_qt_argv[0] = qstrdup(s->encodeOutput(appName())); ++ s_qt_argv[0] = qstrdup(s->argc?s->argv[0]:""); + s_qt_argv[1] = 0; + + return s_qt_argv; +@@ -1026,12 +1013,13 @@ + exit(255); + } + +- s_qt_argv = new char*[ args->count() + 2 ]; +- s_qt_argv[0] = qstrdup(s->encodeOutput(appName())); ++ int count=args->count(); ++ s_qt_argv = new char*[ count + 2 ]; ++ s_qt_argv[0] = qstrdup(s->argc?s->argv[0]:""); + int i = 0; +- for(; i < args->count(); i++) ++ for(; i < count; i++) + { +- s_qt_argv[i+1] = qstrdup(s->encodeOutput(args->arg(i))); ++ s_qt_argv[i+1] = qstrdup(args->d->parsedArgList->at(i)); + } + s_qt_argv[i+1] = 0; + +@@ -1110,7 +1098,7 @@ + const KCmdLineOptions &option = appOptions->d->options; + for (int i = 0; i < option.d->names.size(); i++) + { +- QString opt_name = option.d->names[i]; ++ QByteArray opt_name = option.d->names[i]; + if (opt_name.startsWith('+')) + usage = usage + (opt_name.mid(1)) + ' '; + else if ( opt_name.startsWith("!+") ) +@@ -1129,7 +1117,7 @@ + { + if (!(*args)->d->name.isEmpty() && !(*args)->d->id.isEmpty()) + { +- QString option = QString("--help-%1").arg((*args)->d->id); ++ QString option = QString("--help-%1").arg(QString::fromLatin1((*args)->d->id)); + QString desc = i18n("Show %1 specific options", (*args)->d->name.toString()); + + s->printQ(optionFormatString.arg(option, -25).arg(desc)); +@@ -1169,7 +1157,7 @@ + while (args != s->argsList->end()) + { + const KCmdLineOptions &option = (*args)->d->options; +- QString opt; ++ QByteArray opt; + + for (int i = 0; i < option.d->names.size(); i++) + { +@@ -1214,7 +1202,7 @@ + description = dl.first(); + dl.erase( dl.begin() ); + } +- QString name = option.d->names[i]; ++ QByteArray name = option.d->names[i]; + if (name.startsWith('!')) + name = name.mid(1); + +@@ -1229,7 +1217,7 @@ + name = name.mid(1); + if (name.startsWith('[') && name.endsWith(']')) + name = name.mid(1, name.length()-2); +- s->printQ(optionFormatString.arg(name, -25).arg(description)); ++ s->printQ(optionFormatString.arg(QString::fromLocal8Bit(name), -25).arg(description)); + } + else + { +@@ -1259,7 +1247,7 @@ + s->printQ(optionFormatStringDef.arg(QString( opt ), -25) + .arg(description, option.d->defaults[i])); + } +- opt = ""; ++ opt.clear(); + } + } + for(QStringList::Iterator it = dl.begin(); +@@ -1309,24 +1297,21 @@ + void + KCmdLineArgs::setCwd( const QByteArray &cwd ) + { +- s->mCwd = QString::fromUtf8(cwd); ++ s->mCwd = cwd; + } + + void + KCmdLineArgs::clear() + { +- delete d->parsedArgList; +- d->parsedArgList = 0; +- delete d->parsedOptionList; +- d->parsedOptionList = 0; ++ delete d->parsedArgList; d->parsedArgList = 0; ++ delete d->parsedOptionList; d->parsedOptionList = 0; + } + + void + KCmdLineArgs::reset() + { + if ( s->argsList ) { +- delete s->argsList; +- s->argsList = 0; ++ delete s->argsList; s->argsList = 0; + } + s->parsed = false; + } +@@ -1356,23 +1341,21 @@ + + if (parsedOptionList->count() == 0) + { +- delete parsedOptionList; +- parsedOptionList = 0; ++ delete parsedOptionList; parsedOptionList = 0; + } + if (parsedArgList->count() == 0) + { +- delete parsedArgList; +- parsedArgList = 0; ++ delete parsedArgList; parsedArgList = 0; + } + } + + void +-KCmdLineArgsPrivate::setOption(const QString &opt, bool enabled) ++KCmdLineArgsPrivate::setOption(const QByteArray &opt, bool enabled) + { + if (isQt) + { + // Qt does it own parsing. +- QString argString = "-"; ++ QByteArray argString = "-"; + if( !enabled ) + argString += "no"; + argString += opt; +@@ -1383,18 +1366,18 @@ + } + + if (enabled) +- parsedOptionList->insert( opt, QString::fromUtf8("t") ); ++ parsedOptionList->insert( opt, "t" ); + else +- parsedOptionList->insert( opt, QString::fromUtf8("f") ); ++ parsedOptionList->insert( opt, "f" ); + } + + void +-KCmdLineArgsPrivate::setOption(const QString &opt, const QString &value) ++KCmdLineArgsPrivate::setOption(const QByteArray &opt, const QByteArray &value) + { + if (isQt) + { + // Qt does it's own parsing. +- QString argString = "-"; ++ QByteArray argString = "-"; + argString += opt; + addArgument(argString); + addArgument(value); +@@ -1403,7 +1386,7 @@ + // Hack coming up! + if (argString == "-display") + { +- setenv(DISPLAY, s->encodeOutput(value).data(), true); ++ setenv(DISPLAY, value.data(), true); + } + #endif + } +@@ -1417,8 +1400,8 @@ + QString + KCmdLineArgs::getOption(const QByteArray &_opt) const + { +- QString opt = QString::fromUtf8(_opt); +- QString value; ++ QByteArray opt = _opt; ++ QByteArray value; + if (d->parsedOptionList) + { + value = d->parsedOptionList->value(opt); +@@ -1427,7 +1410,7 @@ + return value; + + // Look up the default. +- QString opt_name; ++ QByteArray opt_name; + QString def; + bool dummy = true; + int result = s->findOption( d->options, opt, opt_name, def, dummy) & ~4; +@@ -1436,7 +1419,7 @@ + { + fprintf(stderr, "\n\nFAILURE (KCmdLineArgs):\n"); + fprintf(stderr, "Application requests for getOption(\"%s\") but the \"%s\" option\n", +- s->encodeOutput(opt).data(), s->encodeOutput(opt).data()); ++ opt.data(), opt.data()); + fprintf(stderr, "has never been specified via addCmdLineOptions( ... )\n\n"); + + Q_ASSERT( 0 ); +@@ -1446,20 +1429,18 @@ + } + + QStringList +-KCmdLineArgs::getOptionList(const QByteArray &_opt) const ++KCmdLineArgs::getOptionList(const QByteArray &opt) const + { +- QString opt = QString::fromUtf8(_opt); +- + QStringList result; + if (!d->parsedOptionList) + return result; + + while(true) + { +- QString value = d->parsedOptionList->take(opt); ++ QByteArray value = d->parsedOptionList->take(opt); + if (value.isEmpty()) + break; +- result.prepend(value); ++ result.prepend(QString::fromLocal8Bit(value)); + } + + // Reinsert items in dictionary +@@ -1469,7 +1450,7 @@ + // So taking them out and then putting them back is the only way. + Q_FOREACH(const QString &str, result) + { +- d->parsedOptionList->insertMulti(opt, str); ++ d->parsedOptionList->insertMulti(opt, str.toLocal8Bit()); + } + return result; + } +@@ -1478,8 +1459,8 @@ + KCmdLineArgs::isSet(const QByteArray &_opt) const + { + // Look up the default. +- QString opt = QString::fromUtf8(_opt); +- QString opt_name; ++ QByteArray opt = _opt; ++ QByteArray opt_name; + QString def; + int result = 0; + KCmdLineArgsList::Iterator args = s->argsList->begin(); +@@ -1495,14 +1476,14 @@ + { + fprintf(stderr, "\n\nFAILURE (KCmdLineArgs):\n"); + fprintf(stderr, "Application requests for isSet(\"%s\") but the \"%s\" option\n", +- s->encodeOutput(opt).data(), s->encodeOutput(opt).data()); ++ opt.data(), opt.data()); + fprintf(stderr, "has never been specified via addCmdLineOptions( ... )\n\n"); + + Q_ASSERT( 0 ); + exit(255); + } + +- QString value; ++ QByteArray value; + if (d->parsedOptionList) + { + value = d->parsedOptionList->value(opt); +@@ -1513,7 +1494,7 @@ + if (result == 3) + return true; + else +- return (value[0] == 't'); ++ return (value.at(0) == 't'); + } + + if (result == 3) +@@ -1527,9 +1508,7 @@ + int + KCmdLineArgs::count() const + { +- if (!d->parsedArgList) +- return 0; +- return d->parsedArgList->count(); ++ return d->parsedArgList?d->parsedArgList->count():0; + } + + QString +@@ -1545,7 +1524,7 @@ + exit(255); + } + +- return d->parsedArgList->at(n); ++ return QString::fromLocal8Bit(d->parsedArgList->at(n)); + } + + KUrl +@@ -1575,7 +1554,7 @@ + } + + void +-KCmdLineArgsPrivate::addArgument(const QString &argument) ++KCmdLineArgsPrivate::addArgument(const QByteArray &argument) + { + if (!parsedArgList) + parsedArgList = new KCmdLineParsedArgs; +@@ -1594,7 +1573,5 @@ + bool KCmdLineArgs::isTempFileSet() + { + KCmdLineArgs* args = KCmdLineArgs::parsedArgs( "kde-tempfile" ); +- if ( args ) +- return args->isSet( "tempfile" ); +- return false; ++ return args && args->isSet( "tempfile" ); + } diff --git a/kde-base/kdelibs/kdelibs-4.2.1-r1.ebuild b/kde-base/kdelibs/kdelibs-4.2.1-r1.ebuild new file mode 100644 index 000000000000..8561b3d88878 --- /dev/null +++ b/kde-base/kdelibs/kdelibs-4.2.1-r1.ebuild @@ -0,0 +1,245 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/kde-base/kdelibs/kdelibs-4.2.1-r1.ebuild,v 1.1 2009/03/10 13:34:09 jmbsvicetto Exp $ + +EAPI="2" + +CPPUNIT_REQUIRED="optional" +OPENGL_REQUIRED="optional" +WEBKIT_REQUIRED="always" +inherit kde4-base fdo-mime + +DESCRIPTION="KDE libraries needed by all KDE programs." +HOMEPAGE="http://www.kde.org/" + +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +IUSE="3dnow acl alsa altivec bindist +bzip2 debug doc fam jpeg2k +kerberos mmx nls openexr +semantic-desktop spell sse sse2 ssl zeroconf" +LICENSE="LGPL-2.1" +RESTRICT="test" + +# Blockers added for !kdeprefix? due to packages from old versions, +# removed in the meanwhile +# kde-base/libplasma +# kde-base/knewsticker +# kde-base/kpercentage +# kde-base/ktnef +COMMONDEPEND=" + !<=kde-base/kdebase-3.5.9-r4 + !<=kde-base/kdebase-startkde-3.5.10 + !<kde-base/kdelibs-3.5.10 + !x11-libs/qt-phonon + !kdeprefix? ( + !kde-base/kitchensync:4.1[-kdeprefix] + !kde-base/knewsticker:4.1[-kdeprefix] + !kde-base/kpercentage:4.1[-kdeprefix] + !kde-base/ktnef:4.1[-kdeprefix] + !kde-base/libplasma[-kdeprefix] + !<=kde-misc/kdnssd-avahi-0.1.2:0 + ) + >=app-misc/strigi-0.6.3[qt4,dbus] + dev-libs/libpcre + dev-libs/libxml2 + dev-libs/libxslt + >=kde-base/automoc-0.9.87 + media-fonts/dejavu + media-libs/fontconfig + media-libs/freetype:2 + media-libs/giflib + media-libs/jpeg + media-libs/libpng + >=media-sound/phonon-4.3.1[xcb] + sys-apps/dbus[X] + x11-libs/libICE + x11-libs/libSM + x11-libs/libX11 + x11-libs/libXau + x11-libs/libXcursor + x11-libs/libXdmcp + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXft + x11-libs/libXpm + x11-libs/libXrender + x11-libs/libXtst + x11-misc/shared-mime-info + acl? ( + kernel_linux? ( sys-apps/acl ) + ) + alsa? ( media-libs/alsa-lib[midi] ) + fam? ( virtual/fam ) + jpeg2k? ( media-libs/jasper ) + kerberos? ( virtual/krb5 ) + nls? ( virtual/libintl ) + openexr? ( + media-libs/openexr + media-libs/ilmbase + ) + opengl? ( virtual/opengl ) + semantic-desktop? ( >=dev-libs/soprano-2.1.64 ) + spell? ( + app-dicts/aspell-en + app-text/aspell + app-text/enchant + ) + ssl? ( dev-libs/openssl ) + zeroconf? ( + || ( + net-dns/avahi[mdnsresponder-compat] + !bindist? ( net-misc/mDNSResponder ) + ) + ) +" + +DEPEND="${COMMONDEPEND} + sys-devel/gettext + doc? ( app-doc/doxygen ) +" + +RDEPEND="${COMMONDEPEND} + x11-apps/iceauth + x11-apps/rgb +" + +# upstream patches / dist patches +# {FILESDIR}/${P}-qt4.5.patch is upstream revision 934640 +# and fixes upstream bug 186038 and Gentoo bug 261367 +PATCHES=( + "${FILESDIR}/dist/09_disable_debug_messages_if_not_explicitly_enabled.patch" + "${FILESDIR}/dist/20_use_dejavu_as_default_font.patch" + "${FILESDIR}/dist/23_solid_no_double_build.patch" + "${FILESDIR}/${P}-qt4.5.patch" +) + +src_configure() { + if use zeroconf; then + if has_version net-dns/avahi; then + mycmakeargs="${mycmakeargs} -DWITH_Avahi=ON -DWITH_DNSSD=OFF" + elif has_version net-misc/mDNSResponder; then + mycmakeargs="${mycmakeargs} -DWITH_Avahi=OFF -DWITH_DNSSD=ON" + else + die "USE=\"zeroconf\" enabled but neither net-dns/avahi nor net-misc/mDNSResponder were found." + fi + fi + if use kdeprefix; then + HME=".kde${SLOT}" + else + HME=".kde4" + fi + mycmakeargs="${mycmakeargs} + -DWITH_HSPELL=OFF + -DKDE_DEFAULT_HOME=${HME} + $(cmake-utils_has 3dnow X86_3DNOW) + $(cmake-utils_has altivec PPC_ALTIVEC) + $(cmake-utils_has mmx X86_MMX) + $(cmake-utils_has sse X86_SSE) + $(cmake-utils_has sse2 X86_SSE2) + $(cmake-utils_use_with acl ACL) + $(cmake-utils_use_with alsa Alsa) + $(cmake-utils_use_with bzip2 BZip2) + $(cmake-utils_use_with fam FAM) + $(cmake-utils_use_with jpeg2k Jasper) + $(cmake-utils_use_with kerberos GSSAPI) + $(cmake-utils_use_with nls Libintl) + $(cmake-utils_use_with openexr OpenEXR) + $(cmake-utils_use_with opengl OpenGL) + $(cmake-utils_use_with semantic-desktop Soprano) + $(cmake-utils_use_with spell ASPELL) + $(cmake-utils_use_with spell ENCHANT) + $(cmake-utils_use_with ssl OpenSSL) + " + kde4-base_src_configure +} + +src_compile() { + kde4-base_src_compile + + # The building of apidox is not managed anymore by the build system + if use doc; then + einfo "Building API documentation" + cd "${S}"/doc/api/ + ./doxygen.sh "${S}" || die "APIDOX generation failed" + fi +} + +src_install() { + kde4-base_src_install + + if use doc; then + einfo "Installing API documentation. This could take a bit of time." + cd "${S}"/doc/api/ + docinto /HTML/en/kdelibs-apidox + dohtml -r ${P}-apidocs/* || die "Install phase of KDE4 API Documentation failed" + fi + + dodir /etc/env.d + dodir /etc/revdep-rebuild + + # List all the multilib libdirs + local _libdir _libdirs + for _libdir in $(get_all_libdirs); do + _libdirs="${_libdirs}:${PREFIX}/${_libdir}" + done + _libdirs=${_libdirs#:} + + if use kdeprefix; then + cat <<-EOF > "${T}"/43kdepaths-${SLOT} # number goes down with version +PATH="${PREFIX}/bin" +ROOTPATH="${PREFIX}/sbin:${PREFIX}/bin" +LDPATH="${_libdirs}" +MANPATH="${PREFIX}/share/man" +CONFIG_PROTECT="${PREFIX}/share/config ${PREFIX}/env ${PREFIX}/shutdown /usr/share/config" +#KDE_IS_PRELINKED=1 +XDG_DATA_DIRS="/usr/share:${PREFIX}/share:/usr/local/share" +COLON_SEPARATED="XDG_DATA_DIRS" +EOF + doenvd "${T}"/43kdepaths-${SLOT} + + # make sure 'source /etc/profile' doesn't hose the PATH + dodir /etc/profile.d + cat <<-'EOF' > "${D}"/etc/profile.d/44kdereorderpaths-${SLOT}.sh +if [ -n "${KDEDIR}" ]; then + export PATH=${KDEDIR}/bin:$(echo ${PATH} | sed "s#${KDEDIR}/s\?bin:##g") + export ROOTPATH=${KDEDIR}/sbin:${KDEDIR}/bin:$(echo ${PATH} | sed "s#${KDEDIR}/s\?bin:##g") +fi +EOF + + cat <<-EOF > "${D}/etc/revdep-rebuild/50-kde-${SLOT}" +SEARCH_DIRS="${PREFIX}/bin ${PREFIX}/lib*" +EOF + else # Much simpler for the FHS compliant -kdeprefix install + cat <<-EOF > "${T}"/43kdepaths # number goes down with version +CONFIG_PROTECT="/usr/share/config" +#KDE_IS_PRELINKED=1 +XDG_DATA_DIRS="/usr/share:/usr/local/share" +COLON_SEPARATED="XDG_DATA_DIRS" + EOF + doenvd "${T}"/43kdepaths + fi + # Ensure that the correct permissions are set on ${PREFIX}/share/config + fperms 755 "${PREFIX}"/share/config +} + +pkg_postinst() { + fdo-mime_mime_database_update + if use zeroconf; then + echo + elog "To make zeroconf support available in KDE make sure that the 'mdnsd' daemon" + elog "is running. Make sure also that multicast dns lookups are enabled by editing" + elog "the 'hosts:' line in /etc/nsswitch.conf to include 'mdns', e.g.:" + elog " hosts: files mdns dns" + echo + fi + elog "Your homedir is set to "'${HOME}'"/${HME}" + elog + elog "If you experience weird application behavior (missing texts, etc.) run as root:" + elog "# chmod 755 -R /usr/share/config $PREFIX/share/config" + + kde4-base_pkg_postinst +} + +pkg_postrm() { + fdo-mime_mime_database_update + + kde4-base_pkg_postrm +} |