From a108b6f8050e3848e4415ac103ea556ade877e625bbeb4cdc67de1fbb050916c Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Mon, 16 Apr 2007 22:30:47 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/digikam?expand=0&rev=4 --- digikam-exif-support.diff | 380 ++++++++++++++++++++++++++++++++++++++ digikam.changes | 5 + digikam.spec | 6 +- 3 files changed, 390 insertions(+), 1 deletion(-) create mode 100644 digikam-exif-support.diff diff --git a/digikam-exif-support.diff b/digikam-exif-support.diff new file mode 100644 index 0000000..bccab81 --- /dev/null +++ b/digikam-exif-support.diff @@ -0,0 +1,380 @@ +------------------------------------------------------------------------ +r642723 | cgilles | 2007-03-15 10:15:46 +0100 (Thu, 15 Mar 2007) | 3 lines + +digikam from trunk : Fix broken compilation with current Exiv2 implementation (next 0.14.0 release), duing a change with C++ Exception rule. Binary compatibilty is broken I recommend to cleanup and recompile digiKam. + +CCMAIL: digikam-devel@kde.org +------------------------------------------------------------------------ +Index: digikam/libs/widgets/metadata/makernotewidget.h +=================================================================== +--- digikam/libs/widgets/metadata/makernotewidget.h (revision 642722) ++++ digikam/libs/widgets/metadata/makernotewidget.h (revision 642723) +@@ -1,10 +1,10 @@ + /* ============================================================ +- * Author: Gilles Caulier +- * Date : 2006-02-20 ++ * Authors: Gilles Caulier ++ * Date : 2006-02-20 + * Description : a widget to display non standard Exif metadata + * used by camera makers + * +- * Copyright 2006 by Gilles Caulier ++ * Copyright 2006-2007 by Gilles Caulier + * + * This program is free software; you can redistribute it + * and/or modify it under the terms of the GNU General +Index: digikam/libs/widgets/metadata/exifwidget.cpp +=================================================================== +--- digikam/libs/widgets/metadata/exifwidget.cpp (revision 642722) ++++ digikam/libs/widgets/metadata/exifwidget.cpp (revision 642723) +@@ -1,9 +1,9 @@ + /* ============================================================ +- * Author: Gilles Caulier +- * Date : 2006-02-20 ++ * Authors: Gilles Caulier ++ * Date : 2006-02-20 + * Description : a widget to display Standard Exif metadata + * +- * Copyright 2006 by Gilles Caulier ++ * Copyright 2006-2007 by Gilles Caulier + * + * This program is free software; you can redistribute it + * and/or modify it under the terms of the GNU General +@@ -46,6 +46,7 @@ + #include "dmetadata.h" + #include "metadatalistview.h" + #include "exifwidget.h" ++#include "exifwidget.moc" + + namespace Digikam + { +@@ -180,11 +181,10 @@ bool ExifWidget::decodeMetadata() + } + catch (Exiv2::Error& e) + { +- DDebug() << "Cannot parse EXIF metadata using Exiv2 (" +- << QString::fromAscii(e.what().c_str()) +- << ")" << endl; +- return false; ++ DMetadata::printExiv2ExceptionError("Cannot parse EXIF metadata using Exiv2 ", e); + } ++ ++ return false; + } + + void ExifWidget::buildView(void) +@@ -210,11 +210,10 @@ QString ExifWidget::getTagTitle(const QS + } + catch (Exiv2::Error& e) + { +- DDebug() << "Cannot get metadata tag title using Exiv2 (" +- << QString::fromAscii(e.what().c_str()) +- << ")" << endl; +- return i18n("Unknown"); ++ DMetadata::printExiv2ExceptionError("Cannot get metadata tag title using Exiv2 ", e); + } ++ ++ return i18n("Unknown"); + } + + QString ExifWidget::getTagDescription(const QString& key) +@@ -227,11 +226,10 @@ QString ExifWidget::getTagDescription(co + } + catch (Exiv2::Error& e) + { +- DDebug() << "Cannot get metadata tag description using Exiv2 (" +- << QString::fromAscii(e.what().c_str()) +- << ")" << endl; +- return i18n("No description available"); ++ DMetadata::printExiv2ExceptionError("Cannot get metadata tag description using Exiv2 ", e); + } ++ ++ return i18n("No description available"); + } + + void ExifWidget::slotSaveMetadataToFile(void) +@@ -243,4 +241,3 @@ void ExifWidget::slotSaveMetadataToFile( + + } // namespace Digikam + +-#include "exifwidget.moc" +Index: digikam/libs/widgets/metadata/gpswidget.h +=================================================================== +--- digikam/libs/widgets/metadata/gpswidget.h (revision 642722) ++++ digikam/libs/widgets/metadata/gpswidget.h (revision 642723) +@@ -1,9 +1,9 @@ + /* ============================================================ +- * Author: Gilles Caulier +- * Date : 2006-02-22 ++ * Authors: Gilles Caulier ++ * Date : 2006-02-22 + * Description : a tab widget to display GPS info + * +- * Copyright 2006 by Gilles Caulier ++ * Copyright 2006-2007 by Gilles Caulier + * + * This program is free software; you can redistribute it + * and/or modify it under the terms of the GNU General +@@ -84,7 +84,6 @@ private: + private: + + GPSWidgetPriv *d; +- + }; + + } // namespace Digikam +Index: digikam/libs/widgets/metadata/iptcwidget.cpp +=================================================================== +--- digikam/libs/widgets/metadata/iptcwidget.cpp (revision 642722) ++++ digikam/libs/widgets/metadata/iptcwidget.cpp (revision 642723) +@@ -1,9 +1,9 @@ + /* ============================================================ +- * Author: Gilles Caulier +- * Date : 2006-02-20 ++ * Authors: Gilles Caulier ++ * Date : 2006-02-20 + * Description : A widget to display IPTC metadata + * +- * Copyright 2006 by Gilles Caulier ++ * Copyright 2006-2007 by Gilles Caulier + * + * This program is free software; you can redistribute it + * and/or modify it under the terms of the GNU General +@@ -44,6 +44,7 @@ + #include "ddebug.h" + #include "dmetadata.h" + #include "iptcwidget.h" ++#include "iptcwidget.moc" + + namespace Digikam + { +@@ -155,11 +156,10 @@ bool IptcWidget::decodeMetadata() + } + catch (Exiv2::Error& e) + { +- DDebug() << "Cannot parse IPTC metadata using Exiv2 (" +- << QString::fromAscii(e.what().c_str()) +- << ")" << endl; +- return false; ++ DMetadata::printExiv2ExceptionError("Cannot parse IPTC metadata using Exiv2 ", e); + } ++ ++ return false; + } + + void IptcWidget::buildView(void) +@@ -184,11 +184,10 @@ QString IptcWidget::getTagTitle(const QS + } + catch (Exiv2::Error& e) + { +- DDebug() << "Cannot get metadata tag title using Exiv2 (" +- << QString::fromAscii(e.what().c_str()) +- << ")" << endl; +- return i18n("Unknow"); ++ DMetadata::printExiv2ExceptionError("Cannot get metadata tag title using Exiv2 ", e); + } ++ ++ return i18n("Unknow"); + } + + QString IptcWidget::getTagDescription(const QString& key) +@@ -201,11 +200,10 @@ QString IptcWidget::getTagDescription(co + } + catch (Exiv2::Error& e) + { +- DDebug() << "Cannot get metadata tag description using Exiv2 (" +- << QString::fromAscii(e.what().c_str()) +- << ")" << endl; +- return i18n("No description available"); ++ DMetadata::printExiv2ExceptionError("Cannot get metadata tag description using Exiv2 ", e); + } ++ ++ return i18n("No description available"); + } + + void IptcWidget::slotSaveMetadataToFile(void) +@@ -217,4 +215,3 @@ void IptcWidget::slotSaveMetadataToFile( + + } // namespace Digikam + +-#include "iptcwidget.moc" +Index: digikam/libs/widgets/metadata/exifwidget.h +=================================================================== +--- digikam/libs/widgets/metadata/exifwidget.h (revision 642722) ++++ digikam/libs/widgets/metadata/exifwidget.h (revision 642723) +@@ -1,9 +1,9 @@ + /* ============================================================ +- * Author: Gilles Caulier +- * Date : 2006-02-20 ++ * Authors: Gilles Caulier ++ * Date : 2006-02-20 + * Description : a widget to display Standard Exif metadata + * +- * Copyright 2006 by Gilles Caulier ++ * Copyright 2006-2007 by Gilles Caulier + * + * This program is free software; you can redistribute it + * and/or modify it under the terms of the GNU General +Index: digikam/libs/widgets/metadata/iptcwidget.h +=================================================================== +--- digikam/libs/widgets/metadata/iptcwidget.h (revision 642722) ++++ digikam/libs/widgets/metadata/iptcwidget.h (revision 642723) +@@ -1,9 +1,9 @@ + /* ============================================================ +- * Author: Gilles Caulier +- * Date : 2006-02-20 ++ * Authors: Gilles Caulier ++ * Date : 2006-02-20 + * Description : A widget to display IPTC metadata + * +- * Copyright 2006 by Gilles Caulier ++ * Copyright 2006-2007 by Gilles Caulier + * + * This program is free software; you can redistribute it + * and/or modify it under the terms of the GNU General +Index: digikam/libs/widgets/metadata/makernotewidget.cpp +=================================================================== +--- digikam/libs/widgets/metadata/makernotewidget.cpp (revision 642722) ++++ digikam/libs/widgets/metadata/makernotewidget.cpp (revision 642723) +@@ -1,10 +1,10 @@ + /* ============================================================ +- * Author: Gilles Caulier +- * Date : 2006-02-20 ++ * Authors: Gilles Caulier ++ * Date : 2006-02-20 + * Description : a widget to display non standard Exif metadata + * used by camera makers + * +- * Copyright 2006 by Gilles Caulier ++ * Copyright 2006-2007 by Gilles Caulier + * + * This program is free software; you can redistribute it + * and/or modify it under the terms of the GNU General +@@ -46,6 +46,7 @@ + #include "ddebug.h" + #include "dmetadata.h" + #include "makernotewidget.h" ++#include "makernotewidget.moc" + + namespace Digikam + { +@@ -197,11 +198,10 @@ bool MakerNoteWidget::decodeMetadata() + } + catch (Exiv2::Error& e) + { +- DDebug() << "Cannot parse MAKERNOTE metadata using Exiv2 (" +- << QString::fromAscii(e.what().c_str()) +- << ")" << endl; +- return false; ++ DMetadata::printExiv2ExceptionError("Cannot parse MAKERNOTE metadata using Exiv2 ", e); + } ++ ++ return false; + } + + void MakerNoteWidget::buildView(void) +@@ -226,11 +226,10 @@ QString MakerNoteWidget::getTagTitle(con + } + catch (Exiv2::Error& e) + { +- DDebug() << "Cannot get metadata tag title using Exiv2 (" +- << QString::fromAscii(e.what().c_str()) +- << ")" << endl; +- return i18n("Unknown"); ++ DMetadata::printExiv2ExceptionError("Cannot get metadata tag title using Exiv2 ", e); + } ++ ++ return i18n("Unknown"); + } + + QString MakerNoteWidget::getTagDescription(const QString& key) +@@ -243,11 +242,10 @@ QString MakerNoteWidget::getTagDescripti + } + catch (Exiv2::Error& e) + { +- DDebug() << "Cannot get metadata tag description using Exiv2 (" +- << QString::fromAscii(e.what().c_str()) +- << ")" << endl; +- return i18n("No description available"); ++ DMetadata::printExiv2ExceptionError("Cannot get metadata tag description using Exiv2 ", e); + } ++ ++ return i18n("No description available"); + } + + void MakerNoteWidget::slotSaveMetadataToFile(void) +@@ -259,4 +257,3 @@ void MakerNoteWidget::slotSaveMetadataTo + + } // namespace Digikam + +-#include "makernotewidget.moc" +Index: digikam/libs/widgets/metadata/gpswidget.cpp +=================================================================== +--- digikam/libs/widgets/metadata/gpswidget.cpp (revision 642722) ++++ digikam/libs/widgets/metadata/gpswidget.cpp (revision 642723) +@@ -1,9 +1,9 @@ + /* ============================================================ +- * Author: Gilles Caulier +- * Date : 2006-02-22 ++ * Authors: Gilles Caulier ++ * Date : 2006-02-22 + * Description : a tab widget to display GPS info + * +- * Copyright 2006 by Gilles Caulier ++ * Copyright 2006-2007 by Gilles Caulier + * + * This program is free software; you can redistribute it + * and/or modify it under the terms of the GNU General +@@ -62,6 +62,7 @@ http://www.gpspassion.com/forumsen/topic + + namespace Digikam + { ++ + static const char* ExifGPSHumanList[] = + { + "GPSLatitude", +@@ -304,11 +305,10 @@ bool GPSWidget::decodeMetadata() + catch (Exiv2::Error& e) + { + setMetadataEmpty(); +- DDebug() << "Cannot parse EXIF metadata using Exiv2 (" +- << QString::fromAscii(e.what().c_str()) +- << ")" << endl; +- return false; ++ DMetadata::printExiv2ExceptionError("Cannot parse EXIF metadata using Exiv2 ", e); + } ++ ++ return false; + } + + void GPSWidget::setMetadataEmpty() +@@ -342,11 +342,10 @@ QString GPSWidget::getTagTitle(const QSt + } + catch (Exiv2::Error& e) + { +- DDebug() << "Cannot get metadata tag title using Exiv2 (" +- << QString::fromAscii(e.what().c_str()) +- << ")" << endl; +- return i18n("Unknown"); ++ DMetadata::printExiv2ExceptionError("Cannot get metadata tag title using Exiv2 ", e); + } ++ ++ return i18n("Unknown"); + } + + QString GPSWidget::getTagDescription(const QString& key) +@@ -359,11 +358,10 @@ QString GPSWidget::getTagDescription(con + } + catch (Exiv2::Error& e) + { +- DDebug() << "Cannot get metadata tag description using Exiv2 (" +- << QString::fromAscii(e.what().c_str()) +- << ")" << endl; +- return i18n("No description available"); ++ DMetadata::printExiv2ExceptionError("Cannot get metadata tag description using Exiv2 ", e); + } ++ ++ return i18n("No description available"); + } + + bool GPSWidget::decodeGPSPosition(void) diff --git a/digikam.changes b/digikam.changes index e06def3..57d6dfa 100644 --- a/digikam.changes +++ b/digikam.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Mon Apr 16 23:45:29 CEST 2007 - dmueller@suse.de + +- build against libexiv 0.14 + ------------------------------------------------------------------- Mon Mar 5 17:05:39 CET 2007 - stbinner@suse.de diff --git a/digikam.spec b/digikam.spec index 22914c3..5b5bc60 100644 --- a/digikam.spec +++ b/digikam.spec @@ -24,7 +24,7 @@ License: GNU General Public License (GPL) Group: Hardware/Other Summary: A KDE Photo Manager Version: 0.9.1 -Release: 1 +Release: 9 %define rversion %version URL: http://www.digikam.org/ BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -35,6 +35,7 @@ Patch2: autoconf.diff Patch4: digikam-gphoto-disk.patch Patch5: digikam-load.diff Patch7: digikam-print.diff +Patch8: digikam-exif-support.diff Patch9: renamepreview.patch Patch10: accept-old-libexiv2.diff Patch11: fix-non-utf8.diff @@ -64,6 +65,7 @@ rm -rf digikam/sqlite %patch4 -p1 #%patch5 -p0 %patch7 +%patch8 %patch9 %if %suse_version == 1020 %patch10 @@ -118,6 +120,8 @@ rm -rf $RPM_BUILD_ROOT %dir /opt/kde3/share/doc/HTML/en/digikam-%rversion-apidocs %changelog +* Mon Apr 16 2007 - dmueller@suse.de +- build against libexiv 0.14 * Mon Mar 05 2007 - stbinner@suse.de - update to 0.9.1: * Native JPEG2000 image loader. Warning for lossy JPEG file saving