diff options
author | Andreas K. Hüttel <dilfridge@gentoo.org> | 2012-04-08 13:54:07 +0000 |
---|---|---|
committer | Andreas K. Hüttel <dilfridge@gentoo.org> | 2012-04-08 13:54:07 +0000 |
commit | 3e9d37a5e99c050c4181f3d5fe47ef33ad342694 (patch) | |
tree | 34c470715087c8339e99729f1f9ed2e080541c92 /app-office | |
parent | Fix build with -semantic-desktop, bug 409515 (diff) | |
download | gentoo-2-3e9d37a5e99c050c4181f3d5fe47ef33ad342694.tar.gz gentoo-2-3e9d37a5e99c050c4181f3d5fe47ef33ad342694.tar.bz2 gentoo-2-3e9d37a5e99c050c4181f3d5fe47ef33ad342694.zip |
Add several crash fixes, thanks to Franz Fellner, bug 410109 and bug 410187
(Portage version: 2.1.10.56/cvs/Linux x86_64)
Diffstat (limited to 'app-office')
-rw-r--r-- | app-office/calligra/ChangeLog | 9 | ||||
-rw-r--r-- | app-office/calligra/calligra-2.3.92-r1.ebuild | 205 | ||||
-rw-r--r-- | app-office/calligra/files/calligra-2.3.92-language.patch | 21 | ||||
-rw-r--r-- | app-office/calligra/files/calligra-2.3.92-table.patch | 96 |
4 files changed, 330 insertions, 1 deletions
diff --git a/app-office/calligra/ChangeLog b/app-office/calligra/ChangeLog index 2c03843da6f2..c8198d81d74b 100644 --- a/app-office/calligra/ChangeLog +++ b/app-office/calligra/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for app-office/calligra # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-office/calligra/ChangeLog,v 1.33 2012/04/08 13:39:59 dilfridge Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-office/calligra/ChangeLog,v 1.34 2012/04/08 13:54:06 dilfridge Exp $ + +*calligra-2.3.92-r1 (08 Apr 2012) + + 08 Apr 2012; Andreas K. Huettel <dilfridge@gentoo.org> + +calligra-2.3.92-r1.ebuild, +files/calligra-2.3.92-language.patch, + +files/calligra-2.3.92-table.patch: + Add several crash fixes, thanks to Franz Fellner, bug 410109 and bug 410187 08 Apr 2012; Andreas K. Huettel <dilfridge@gentoo.org> calligra-2.3.92.ebuild, calligra-2.4.0.ebuild, diff --git a/app-office/calligra/calligra-2.3.92-r1.ebuild b/app-office/calligra/calligra-2.3.92-r1.ebuild new file mode 100644 index 000000000000..6bf39dd56d51 --- /dev/null +++ b/app-office/calligra/calligra-2.3.92-r1.ebuild @@ -0,0 +1,205 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-office/calligra/calligra-2.3.92-r1.ebuild,v 1.1 2012/04/08 13:54:06 dilfridge Exp $ + +# note: files that need to be checked for dependencies etc: +# CMakeLists.txt, kexi/CMakeLists.txt kexi/migration/CMakeLists.txt +# krita/CMakeLists.txt + +EAPI=4 + +KDE_SCM=git +KDE_MINIMAL=4.6.4 +OPENGL_REQUIRED=optional + +KDE_HANDBOOK=optional + +KDE_LINGUAS_LIVE_OVERRIDE=true +inherit kde4-base + +DESCRIPTION="KDE Office Suite" +HOMEPAGE="http://www.calligra-suite.org/" +[[ ${PV} == 9999 ]] || SRC_URI="mirror://kde/unstable/${P}/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="4" +[[ ${PV} == 9999 ]] || KEYWORDS="~amd64 ~x86" +IUSE="attica +crypt +eigen +exif fftw +fontconfig freetds +gif glew +glib +gsf +gsl +iconv +jpeg jpeg2k +kdcraw kdepim +lcms marble mysql +mso +okular openctl openexr ++pdf postgres +semantic-desktop +ssl sybase test tiff +threads +truetype ++wmf word-perfect xbase +xml +xslt" + +# please do not sort here, order is same as in CMakeLists.txt +CAL_FTS="kexi words flow plan stage sheets krita karbon braindump" +for cal_ft in ${CAL_FTS}; do + IUSE+=" calligra_features_${cal_ft}" +done +unset cal_ft + +REQUIRED_USE=" + calligra_features_kexi? ( calligra_features_sheets ) + calligra_features_words? ( calligra_features_sheets ) + calligra_features_krita? ( eigen exif lcms ) + calligra_features_plan? ( kdepim semantic-desktop ) + calligra_features_sheets? ( eigen ) + test? ( calligra_features_karbon ) +" + +RDEPEND=" + !app-office/karbon + !app-office/kexi + !app-office/koffice-data + !app-office/koffice-l10n + !app-office/koffice-libs + !app-office/koffice-meta + !app-office/kplato + !app-office/kpresenter + !app-office/krita + !app-office/kspread + !app-office/kword + dev-lang/perl + dev-libs/boost + dev-libs/libxml2 + $(add_kdebase_dep knewstuff) + media-libs/libpng + sys-libs/zlib + attica? ( dev-libs/libattica ) + crypt? ( app-crypt/qca:2 ) + eigen? ( dev-cpp/eigen:2 ) + exif? ( media-gfx/exiv2 ) + fftw? ( sci-libs/fftw:3.0 ) + fontconfig? ( media-libs/fontconfig ) + freetds? ( dev-db/freetds ) + gif? ( media-libs/giflib ) + glew? ( media-libs/glew ) + glib? ( dev-libs/glib:2 ) + gsf? ( gnome-extra/libgsf ) + gsl? ( sci-libs/gsl ) + iconv? ( virtual/libiconv ) + jpeg? ( virtual/jpeg ) + jpeg2k? ( media-libs/openjpeg ) + kdcraw? ( $(add_kdebase_dep libkdcraw) ) + kdepim? ( $(add_kdebase_dep kdepimlibs) ) + lcms? ( media-libs/lcms:2 ) + marble? ( $(add_kdebase_dep marble) ) + mysql? ( virtual/mysql ) + okular? ( $(add_kdebase_dep okular) ) + openctl? ( >=media-libs/opengtl-0.9.15 ) + openexr? ( media-libs/openexr ) + pdf? ( + app-text/poppler + media-gfx/pstoedit + ) + postgres? ( + dev-db/postgresql-base + =dev-libs/libpqxx-3* + ) + semantic-desktop? ( dev-libs/soprano $(add_kdebase_dep kdelibs semantic-desktop) ) + ssl? ( dev-libs/openssl ) + sybase? ( dev-db/freetds ) + tiff? ( media-libs/tiff ) + truetype? ( media-libs/freetype:2 ) + word-perfect? ( + app-text/libwpd + app-text/libwps + app-text/libwpg + ) + xbase? ( dev-db/xbase ) + xslt? ( dev-libs/libxslt ) + calligra_features_kexi? ( + >=dev-db/sqlite-3.7.9:3[extensions] + dev-libs/icu + ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}/${PN}-2.3.92-language.patch" + "${FILESDIR}/${PN}-2.3.92-table.patch" + "${FILESDIR}/${PN}-2.4.0-rdf.patch" +) + +RESTRICT=test +# bug 394273 + +src_configure() { + local cal_ft + + # first write out things we want to hard-enable + local mycmakeargs=( + "-DWITH_Boost=ON" + "-DWITH_LibXml2=ON" + "-DWITH_PNG=ON" + "-DWITH_ZLIB=ON" + "-DGHNS=ON" + "-DWITH_X11=ON" + "-DWITH_Qt4=ON" + "-DQT3SUPPORT=ON" # kde4-base.eclass pulls this in anyway + ) + + # default disablers + mycmakeargs+=( + "-DBUILD_mobile=OFF" # we dont suppor mobile gui, maybe arm could + "-DWITH_LCMS=OFF" # we use lcms:2 + "-DCREATIVEONLY=OFF" + "-DWITH_TINY=OFF" + "-DWITH_CreateResources=OFF" # NOT PACKAGED: http://create.freedesktop.org/ + "-DWITH_DCMTK=OFF" # NOT PACKAGED: http://www.dcmtk.org/dcmtk.php.en + "-DWITH_Spnav=OFF" # NOT PACKAGED: http://spacenav.sourceforge.net/ + ) + + # regular options + mycmakeargs+=( + $(cmake-utils_use_with attica LibAttica) + $(cmake-utils_use_with crypt QCA2) + $(cmake-utils_use_with eigen Eigen2) + $(cmake-utils_use_with exif Exiv2) + $(cmake-utils_use_with fftw FFTW3) + $(cmake-utils_use_with fontconfig Fontconfig) + $(cmake-utils_use_with freetds FreeTDS) + $(cmake-utils_use_with gif GIF2) + $(cmake-utils_use_with glew GLEW) + $(cmake-utils_use_with glib GLIB2) + $(cmake-utils_use_with glib GObject) + $(cmake-utils_use_with gsf LIBGSF) + $(cmake-utils_use_with gsl GSL) + $(cmake-utils_use_with iconv Iconv) + $(cmake-utils_use_with jpeg JPEG) + $(cmake-utils_use_with jpeg2k OpenJPEG) + $(cmake-utils_use_with kdcraw Kdcraw) + $(cmake-utils_use_with kdepim KdepimLibs) + $(cmake-utils_use_with lcms LCMS2) + $(cmake-utils_use_with marble Marble) + $(cmake-utils_use_with mysql MySQL) + $(cmake-utils_use_with okular Okular) + $(cmake-utils_use_with openctl OpenCTL) + $(cmake-utils_use_with openexr OpenEXR) + $(cmake-utils_use_with opengl OpenGL) + $(cmake-utils_use_with pdf Poppler) + $(cmake-utils_use_with pdf Pstoedit) + $(cmake-utils_use_with postgres PostgreSQL) + $(cmake-utils_use_with semantic-desktop Soprano) + $(cmake-utils_use semantic-desktop NEPOMUK) + $(cmake-utils_use_with ssl OpenSSL) + $(cmake-utils_use_with sybase FreeTDS) + $(cmake-utils_use_with tiff TIFF) + $(cmake-utils_use_with threads Threads) + $(cmake-utils_use_with truetype Freetype) + $(cmake-utils_use_with word-perfect WPD) + $(cmake-utils_use_with word-perfect WPG) + $(cmake-utils_use_with xbase XBase) + $(cmake-utils_use_with xslt LibXslt) + $(cmake-utils_use_build wmf libkowmf) + $(cmake-utils_use_build mso libmsooxml) + ) + + # applications + for cal_ft in ${CAL_FTS}; do + mycmakeargs+=( $(cmake-utils_use_build calligra_features_${cal_ft} ${cal_ft}) ) + done + mycmakeargs+=( $(cmake-utils_use_build test cstester) ) + + # filters + + kde4-base_src_configure +} diff --git a/app-office/calligra/files/calligra-2.3.92-language.patch b/app-office/calligra/files/calligra-2.3.92-language.patch new file mode 100644 index 000000000000..da94e95cf58a --- /dev/null +++ b/app-office/calligra/files/calligra-2.3.92-language.patch @@ -0,0 +1,21 @@ +--- plugins/textediting/spellcheck/SpellCheck.cpp.org 2012-03-29 07:19:58.808192633 +0200 ++++ plugins/textediting/spellcheck/SpellCheck.cpp 2012-03-29 07:28:13.671184157 +0200 +@@ -44,7 +44,8 @@ + m_allowSignals(true), + m_documentIsLoading(false), + m_isChecking(false), +- m_spellCheckMenu(0) ++ m_spellCheckMenu(0), ++ m_document(0) + { + /* setup actions for this plugin */ + KAction *configureAction = new KAction(i18n("Configure &Spell Checking..."), this); +@@ -141,7 +142,7 @@ + { + m_speller.setDefaultLanguage(language); + m_bgSpellCheck->setDefaultLanguage(language); +- if (m_enableSpellCheck) { ++ if (m_enableSpellCheck && m_document) { + checkSection(m_document, 0, m_document->characterCount() - 1); + } + } diff --git a/app-office/calligra/files/calligra-2.3.92-table.patch b/app-office/calligra/files/calligra-2.3.92-table.patch new file mode 100644 index 000000000000..c9f06b8354af --- /dev/null +++ b/app-office/calligra/files/calligra-2.3.92-table.patch @@ -0,0 +1,96 @@ +From 0f96e4b78756deaba77b2d8d486ea5585bd8f652 Mon Sep 17 00:00:00 2001 +From: Boudewijn Rempt <boud@valdyas.org> +Date: Thu, 29 Mar 2012 15:32:18 +0200 +Subject: [PATCH] Fix inserting table shape in non-english locale + +Comparing a translated name with a fixed text isn't going to work... + +BUG:297029 +BUG:293704 + +Okay to backport to 2.4? +--- + libs/flake/KoDeferredShapeFactoryBase.h | 2 ++ + libs/flake/KoShapeFactoryBase.cpp | 9 ++------- + sheets/shape/TableShapeDeferredFactory.h | 2 ++ + sheets/shape/TableShapeFactory.cpp | 2 +- + sheets/shape/spreadsheetshape-deferred.desktop | 1 + + 5 files changed, 8 insertions(+), 8 deletions(-) + +diff --git a/libs/flake/KoDeferredShapeFactoryBase.h b/libs/flake/KoDeferredShapeFactoryBase.h +index 68bc5e3..7887484 100644 +--- a/libs/flake/KoDeferredShapeFactoryBase.h ++++ b/libs/flake/KoDeferredShapeFactoryBase.h +@@ -47,6 +47,8 @@ public: + + virtual ~KoDeferredShapeFactoryBase(); + ++ virtual QString deferredPluginName() = 0; ++ + /** + * This method should be implemented by factories to create a shape that the user + * gets when doing a base insert. For example from a script. The created shape +diff --git a/libs/flake/KoShapeFactoryBase.cpp b/libs/flake/KoShapeFactoryBase.cpp +index 116cacc..5c5ec48 100644 +--- a/libs/flake/KoShapeFactoryBase.cpp ++++ b/libs/flake/KoShapeFactoryBase.cpp +@@ -242,19 +242,14 @@ void KoShapeFactoryBase::getDeferredPlugin() + if (d->deferredFactory) return; + + const QString serviceType = "Calligra/Deferred"; +- QString query = QString::fromLatin1("(Type == 'Service') and (Name == '%1')").arg(d->deferredPluginName); +- const KService::List offers = KServiceTypeTrader::self()->query(serviceType, query); ++ const KService::List offers = KServiceTypeTrader::self()->query(serviceType, QString()); + Q_ASSERT(offers.size() > 0); + + foreach(KSharedPtr<KService> service, offers) { +- QString error = 0; // FIXME: From where does error get a value? + KoDeferredShapeFactoryBase *plugin = service->createInstance<KoDeferredShapeFactoryBase>(this); +- if (plugin) { ++ if (plugin && plugin->deferredPluginName() == d->deferredPluginName) { + d->deferredFactory = plugin; + } +- else { +- kWarning(30003) << "loading plugin" << service->name() << "failed, " << error; +- } + } + + } +diff --git a/sheets/shape/TableShapeDeferredFactory.h b/sheets/shape/TableShapeDeferredFactory.h +index 2668c2b..981b4d8 100644 +--- a/sheets/shape/TableShapeDeferredFactory.h ++++ b/sheets/shape/TableShapeDeferredFactory.h +@@ -30,6 +30,8 @@ public: + TableDeferredShapeFactory(QObject *parent, const QVariantList&); + ~TableDeferredShapeFactory(); + ++ virtual QString deferredPluginName() { return "spreadsheetshape-deferred"; } ++ + KoShape *createDefaultShape(KoDocumentResourceManager *documentResources = 0) const; + private: + KoShapeFactoryBase *m_stubFactory; +diff --git a/sheets/shape/TableShapeFactory.cpp b/sheets/shape/TableShapeFactory.cpp +index 0cba2a9..98102a6 100644 +--- a/sheets/shape/TableShapeFactory.cpp ++++ b/sheets/shape/TableShapeFactory.cpp +@@ -47,7 +47,7 @@ TableShapePlugin::TableShapePlugin(QObject * parent, const QVariantList&) + + + TableShapeFactory::TableShapeFactory() +- : KoShapeFactoryBase(TableShapeId, i18n("Spreadsheet"), "Spreadsheet Shape") ++ : KoShapeFactoryBase(TableShapeId, i18n("Spreadsheet"), "spreadsheetshape-deferred") + { + setToolTip(i18n("Spreadsheet Shape")); + setIcon("spreadsheetshape"); +diff --git a/sheets/shape/spreadsheetshape-deferred.desktop b/sheets/shape/spreadsheetshape-deferred.desktop +index cb47900..da3b679 100644 +--- a/sheets/shape/spreadsheetshape-deferred.desktop ++++ b/sheets/shape/spreadsheetshape-deferred.desktop +@@ -39,3 +39,4 @@ Type=Service + X-KDE-Library=spreadsheetshape-deferred + X-Flake-MinVersion=4 + X-Flake-PluginVersion=4 ++X-DeferredID=spreadsheetshape-deferred +-- +1.7.9.2 + |