From d39c0cf156e4a146763024226bb7b69b7f3b473d Mon Sep 17 00:00:00 2001 From: Igor Ulyanov Date: Sun, 5 Feb 2012 18:11:14 +0400 Subject: digikam boost patch added --- media-gfx/digikam/digikam-2.5.0-r1.ebuild | 147 +++++++++++++++++++++ .../digikam/files/digikam-2.5.0-d18ea6da.patch | 65 +++++++++ .../digikam/files/digikam-2.5.0-libkipi.patch | 75 +++++++++++ 3 files changed, 287 insertions(+) create mode 100644 media-gfx/digikam/digikam-2.5.0-r1.ebuild create mode 100644 media-gfx/digikam/files/digikam-2.5.0-d18ea6da.patch create mode 100644 media-gfx/digikam/files/digikam-2.5.0-libkipi.patch diff --git a/media-gfx/digikam/digikam-2.5.0-r1.ebuild b/media-gfx/digikam/digikam-2.5.0-r1.ebuild new file mode 100644 index 0000000..c9e41b0 --- /dev/null +++ b/media-gfx/digikam/digikam-2.5.0-r1.ebuild @@ -0,0 +1,147 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-gfx/digikam/digikam-2.5.0.ebuild,v 1.1 2012/01/03 16:30:11 dilfridge Exp $ + +EAPI=4 + +KDE_LINGUAS="af ar az be bg bn br bs ca cs csb cy da de el en_GB eo es et eu fa fi fo fr fy ga gl ha he hi hr hsb +hu id is it ja ka kk km ko ku lb lo lt lv mi mk mn ms mt nb nds ne nl nn nso oc pa pl pt pt_BR ro ru +rw se sk sl sq sr sr@Latn ss sv ta te tg th tr tt uk uz uz@cyrillic ven vi wa xh zh_CN zh_HK zh_TW zu" + +KDE_HANDBOOK="optional" +CMAKE_MIN_VERSION="2.8" +KDE_MINIMAL="4.7" + +inherit kde4-base + +MY_P="${PN}-${PV/_/-}" + +DESCRIPTION="Digital photo management application for KDE" +HOMEPAGE="http://www.digikam.org/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2" + +LICENSE="GPL-2 + handbook? ( FDL-1.2 )" +KEYWORDS="~amd64 ~x86" +SLOT="4" +IUSE="addressbook debug doc gphoto2 mysql semantic-desktop themedesigner +thumbnails video" + +CDEPEND=" + $(add_kdebase_dep kdelibs 'semantic-desktop=') + $(add_kdebase_dep libkdcraw) + $(add_kdebase_dep libkexiv2) + $(add_kdebase_dep libkipi) + $(add_kdebase_dep marble plasma) + $(add_kdebase_dep solid) + media-libs/jasper + media-libs/lcms:0 + >=media-libs/lensfun-0.2.5 + >=media-libs/libkface-${PV} + >=media-libs/libkgeomap-${PV} + media-libs/liblqr + >=media-libs/libpgf-6.11.28 + media-libs/libpng + media-libs/tiff + virtual/jpeg + x11-libs/qt-gui[qt3support] + >=sci-libs/clapack-3.2.1-r6 + || ( x11-libs/qt-sql[mysql] x11-libs/qt-sql[sqlite] ) + addressbook? ( $(add_kdebase_dep kdepimlibs) ) + gphoto2? ( media-libs/libgphoto2 ) + mysql? ( virtual/mysql ) +" +RDEPEND="${CDEPEND} + $(add_kdebase_dep kreadconfig) + media-plugins/kipi-plugins + video? ( + || ( + $(add_kdebase_dep mplayerthumbs) + $(add_kdebase_dep ffmpegthumbs) + ) + ) +" +DEPEND="${CDEPEND} + sys-devel/gettext + doc? ( app-doc/doxygen ) +" + +S="${WORKDIR}/${MY_P}/core" + +RESTRICT=test +# bug 366505 + +PATCHES=( "${FILESDIR}/${P}-libkipi.patch" + "${FILESDIR}"/digikam-2.5.0-d18ea6da.patch ) + +src_prepare() { + # just to make absolutely sure + rm -rf "${WORKDIR}/${MY_P}/extra" || die + + # prepare the handbook + mv "${WORKDIR}/${MY_P}/doc/${PN}" doc || die + echo "add_subdirectory( digikam )" > doc/CMakeLists.txt + echo "add_subdirectory( showfoto )" >> doc/CMakeLists.txt + + # prepare the translations + mv "${WORKDIR}/${MY_P}/po" po || die + find po -name "*.po" -and -not -name "digikam.po" -exec rm {} + + + echo "find_package(Msgfmt REQUIRED)" >> CMakeLists.txt || die + echo "find_package(Gettext REQUIRED)" >> CMakeLists.txt || die + echo "add_subdirectory( po )" >> CMakeLists.txt || die + + kde4-base_src_prepare + + if use handbook; then + echo "add_subdirectory( doc )" >> CMakeLists.txt + fi +} + +src_configure() { + local backend + + use semantic-desktop && backend="Nepomuk" || backend="None" + # LQR = only allows to choose between bundled/external + local mycmakeargs=( + -DFORCED_UNBUNDLE=ON + -DWITH_LQR=ON + -DWITH_LENSFUN=ON + -DGWENVIEW_SEMANTICINFO_BACKEND=${backend} + $(cmake-utils_use_with addressbook KdepimLibs) + -DWITH_MarbleWidget=ON + $(cmake-utils_use_enable gphoto2 GPHOTO2) + $(cmake-utils_use_with gphoto2) + $(cmake-utils_use_with semantic-desktop Soprano) + $(cmake-utils_use_enable themedesigner) + $(cmake-utils_use_enable thumbnails THUMBS_DB) + $(cmake-utils_use_enable mysql INTERNALMYSQL) + $(cmake-utils_use_enable debug DEBUG_MESSAGES) + ) + + kde4-base_src_configure +} + +src_compile() { + local mytargets="all" + use doc && mytargets+=" doc" + + kde4-base_src_compile ${mytargets} +} + +src_install() { + kde4-base_src_install + + if use doc; then + # install the api documentation + insinto /usr/share/doc/${PF}/html + doins -r ${CMAKE_BUILD_DIR}/api/html/* + fi +} + +pkg_postinst() { + kde4-base_pkg_postinst + + if use doc; then + elog "The digikam api documentation has been installed at /usr/share/doc/${PF}/html" + fi +} diff --git a/media-gfx/digikam/files/digikam-2.5.0-d18ea6da.patch b/media-gfx/digikam/files/digikam-2.5.0-d18ea6da.patch new file mode 100644 index 0000000..e234bf1 --- /dev/null +++ b/media-gfx/digikam/files/digikam-2.5.0-d18ea6da.patch @@ -0,0 +1,65 @@ +diff -ur digikam-2.5.0.orig/core/libs/database/imagehistory/imagehistorygraph_boost.h digikam-2.5.0/core/libs/database/imagehistory/imagehistorygraph_boost.h +--- core/libs/database/imagehistory/imagehistorygraph_boost.h 2012-01-03 08:32:26.000000000 +0800 ++++ core/libs/database/imagehistory/imagehistorygraph_boost.h 2012-01-29 01:02:31.635993670 +0800 +@@ -1198,7 +1198,7 @@ + { + boost::dag_shortest_paths(graph, v, + // we provide a constant weight of 1 +- weight_map(boost::ref_property_map(weight)). ++ weight_map(boost::ref_property_map::edge_descriptor,int>(weight)). + // Store distance and predecessors in QMaps, wrapped to serve as property maps + distance_map(VertexIntMapAdaptor(distances)). + predecessor_map(VertexVertexMapAdaptor(predecessors)) +@@ -1218,7 +1218,7 @@ + { + boost::dag_shortest_paths(graph, v, + // we provide a constant weight of 1 +- weight_map(boost::ref_property_map(weight)). ++ weight_map(boost::ref_property_map::edge_descriptor,int>(weight)). + // Invert the default compare method: With greater, we get the longest path + distance_compare(std::greater()). + // will be returned if a node is unreachable +@@ -1384,14 +1384,15 @@ + template + class lessThanMapEdgeToTarget + { ++ typedef typename boost::graph_traits::edge_descriptor edge_descriptor; + public: + lessThanMapEdgeToTarget(const GraphType& g, VertexLessThan vertexLessThan) + : g(g), vertexLessThan(vertexLessThan) {} + const GraphType& g; + VertexLessThan vertexLessThan; +- bool operator()(const Edge& a, const Edge& b) ++ bool operator()(const edge_descriptor& a, const edge_descriptor& b) + { +- return vertexLessThan(boost::target(a.toEdge(), g), boost::target(b.toEdge(), g)); ++ return vertexLessThan(boost::target(a, g), boost::target(b, g)); + } + }; + +@@ -1402,20 +1403,21 @@ + { + typedef std::pair > VertexInfo; + +- QList outEdges; ++ typedef typename boost::graph_traits::edge_descriptor edge_descriptor; ++ QList outEdges; + std::vector stack; + + boost::put(color, u, boost::gray_color); + vis.discover_vertex(u, g); + +- outEdges = toEdgeList(boost::out_edges(u, g)); ++ outEdges = toList(boost::out_edges(u, g)); + // Sort edges. The lessThan we have takes vertices, so we use a lessThan which + // maps the given edges to their targets, and calls our vertex lessThan. + qSort(outEdges.begin(), outEdges.end(), lessThanMapEdgeToTarget(g, lessThan)); + +- foreach(const Edge& e, outEdges) ++ foreach(const edge_descriptor& e, outEdges) + { +- Vertex v = boost::target(e.toEdge(), g); ++ Vertex v = boost::target(e, g); + vis.examine_edge(e, g); + boost::default_color_type v_color = boost::get(color, v); + if (v_color == boost::white_color) diff --git a/media-gfx/digikam/files/digikam-2.5.0-libkipi.patch b/media-gfx/digikam/files/digikam-2.5.0-libkipi.patch new file mode 100644 index 0000000..fbbac97 --- /dev/null +++ b/media-gfx/digikam/files/digikam-2.5.0-libkipi.patch @@ -0,0 +1,75 @@ +From 25cc9c9876a5233bd630105d0110319892d4e18c Mon Sep 17 00:00:00 2001 +From: Gilles Caulier +Date: Tue, 3 Jan 2012 15:16:37 +0100 +Subject: [PATCH] enable checkall and clearall buttons only with libkipi version 1.4.0 + BUGS: 290496 + +--- + utilities/setup/setupplugins.cpp | 13 +++++++++++-- + utilities/setup/setupplugins.h | 4 ++-- + 2 files changed, 13 insertions(+), 4 deletions(-) + +diff --git a/utilities/setup/setupplugins.cpp b/utilities/setup/setupplugins.cpp +index 0f4030a..b8efb35 100644 +--- a/utilities/setup/setupplugins.cpp ++++ b/utilities/setup/setupplugins.cpp +@@ -6,8 +6,8 @@ + * Date : 2004-01-02 + * Description : setup Kipi plugins tab. + * +- * Copyright (C) 2004-2011 by Gilles Caulier +- * Copyright (C) 2011 by Andi Clemens ++ * Copyright (C) 2004-2012 by Gilles Caulier ++ * Copyright (C) 2011-2012 by Andi Clemens + * + * This program is free software; you can redistribute it + * and/or modify it under the terms of the GNU General +@@ -100,6 +100,11 @@ SetupPlugins::SetupPlugins(QWidget* parent) + + panel->setLayout(mainLayout); + ++#if KIPI_VERSION < 0x010400 ++ d->checkAllBtn->setVisible(false); ++ d->clearBtn->setVisible(false); ++#endif ++ + initPlugins(); + + // -------------------------------------------------------- +@@ -158,14 +163,18 @@ void SetupPlugins::applyPlugins() + void SetupPlugins::slotCheckAll() + { + QApplication::setOverrideCursor(Qt::WaitCursor); ++#if KIPI_VERSION >= 0x010400 + d->kipiConfig->slotCheckAll(); ++#endif + QApplication::restoreOverrideCursor(); + } + + void SetupPlugins::slotClear() + { + QApplication::setOverrideCursor(Qt::WaitCursor); ++#if KIPI_VERSION >= 0x010400 + d->kipiConfig->slotClear(); ++#endif + QApplication::restoreOverrideCursor(); + } + +diff --git a/utilities/setup/setupplugins.h b/utilities/setup/setupplugins.h +index 271a569..114e0fa 100644 +--- a/utilities/setup/setupplugins.h ++++ b/utilities/setup/setupplugins.h +@@ -6,8 +6,8 @@ + * Date : 2004-01-02 + * Description : setup Kipi plugins tab. + * +- * Copyright (C) 2004-2011 by Gilles Caulier +- * Copyright (C) 2011 by Andi Clemens ++ * Copyright (C) 2004-2012 by Gilles Caulier ++ * Copyright (C) 2011-2012 by Andi Clemens + * + * This program is free software; you can redistribute it + * and/or modify it under the terms of the GNU General +-- +1.7.3.4 + -- cgit v1.2.3-65-gdbad