Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=b2031ca586de5111fee554c17406fa96d523419e

commit b2031ca586de5111fee554c17406fa96d523419e
Author: crazy <[EMAIL PROTECTED]>
Date:   Wed Jun 11 12:08:42 2008 +0200

exiv2-0.16-2-x86_64
* release bump
* added gcc43.patch
* added SA30519.patch
* closes FS#3135 in -current

diff --git a/source/lib-extra/exiv2/FrugalBuild 
b/source/lib-extra/exiv2/FrugalBuild
index 91d60b1..c4fe4fa 100644
--- a/source/lib-extra/exiv2/FrugalBuild
+++ b/source/lib-extra/exiv2/FrugalBuild
@@ -3,15 +3,17 @@

pkgname=exiv2
pkgver=0.16
-pkgrel=1
+pkgrel=2
pkgdesc="Exiv2 is a C++ library and a command line utility to access image 
metadata."
url="http://www.exiv2.org/";
depends=('libstdc++' 'zlib')
groups=('lib-extra')
archs=('i686' 'x86_64')
up2date="lynx -dump http://www.exiv2.org/download.html|grep -m1 '.tar.gz'|sed 
's/.*v2-\(.*\).t.*/\1/'"
-source=($url/$pkgname-$pkgver.tar.gz)
+source=($url/$pkgname-$pkgver.tar.gz gcc43.patch SA30519.patch)
Fconfopts="$Fconfopts --with-zlib=/usr"
-sha1sums=('fd5cdec6b60fd52a15c73c30760e099bbfa3cf50')
+sha1sums=('fd5cdec6b60fd52a15c73c30760e099bbfa3cf50' \
+          'db3a90e930390ae92c2907e63f8118a609304537' \
+          '586dd4c2fb273407cab4eab0182876014dd17e05')

# optimization OK
diff --git a/source/lib-extra/exiv2/SA30519.patch 
b/source/lib-extra/exiv2/SA30519.patch
new file mode 100644
index 0000000..a104f5d
--- /dev/null
+++ b/source/lib-extra/exiv2/SA30519.patch
@@ -0,0 +1,54 @@
+--- src/nikonmn.cpp    2008/01/29 13:33:51     1385
++++ src/nikonmn.cpp    2008/03/29 06:14:56     1399
+@@ -931,29 +931,31 @@
+     std::ostream& Nikon3MakerNote::print0x0084(std::ostream& os,
+                                                const Value& value)
+     {
+-        if (value.count() == 4) {
+-            long len1 = value.toLong(0);
+-            long len2 = value.toLong(1);
+-            Rational fno1 = value.toRational(2);
+-            Rational fno2 = value.toRational(3);
+-            os << len1;
+-            if (len2 != len1) {
+-                os << "-" << len2;
+-            }
+-            os << "mm ";
+-            std::ostringstream oss;
+-            oss.copyfmt(os);
+-            os << "F" << std::setprecision(2)
+-               << static_cast<float>(fno1.first) / fno1.second;
+-            if (fno2 != fno1) {
+-                os << "-" << std::setprecision(2)
+-                   << static_cast<float>(fno2.first) / fno2.second;
+-            }
+-            os.copyfmt(oss);
+-        }
+-        else {
++        if (   value.count() != 4
++            || value.toRational(0).second == 0
++            || value.toRational(1).second == 0) {
+             os << "(" << value << ")";
++            return os;
++        }
++        long len1 = value.toLong(0);
++        long len2 = value.toLong(1);
++
++        Rational fno1 = value.toRational(2);
++        Rational fno2 = value.toRational(3);
++        os << len1;
++        if (len2 != len1) {
++            os << "-" << len2;
++        }
++        os << "mm ";
++        std::ostringstream oss;
++        oss.copyfmt(os);
++        os << "F" << std::setprecision(2)
++           << static_cast<float>(fno1.first) / fno1.second;
++        if (fno2 != fno1) {
++            os << "-" << std::setprecision(2)
++               << static_cast<float>(fno2.first) / fno2.second;
+         }
++        os.copyfmt(oss);
+         return os;
+     }
diff --git a/source/lib-extra/exiv2/gcc43.patch 
b/source/lib-extra/exiv2/gcc43.patch
new file mode 100644
index 0000000..c98d217
--- /dev/null
+++ b/source/lib-extra/exiv2/gcc43.patch
@@ -0,0 +1,200 @@
+Index: config/config.mk.in
+===================================================================
+--- config/config.mk.in        (revision 1401)
++++ config/config.mk.in        (revision 1402)
+@@ -58,7 +58,7 @@
+ # Common compiler flags (warnings, symbols [-ggdb], optimization [-O2], etc)
+ CXXFLAGS = @CXXFLAGS@
+ ifeq ($(GXX),yes)
+-      CXXFLAGS += -Wall -Wcast-align -Wconversion -Wpointer-arith 
-Wformat-security -Wmissing-format-attribute -W
++      CXXFLAGS += -Wall -Wcast-align -Wpointer-arith -Wformat-security 
-Wmissing-format-attribute -W
+ endif
+
+ # Command to run only the preprocessor
+Index: xmpsdk/src/XMPCore_Impl.hpp
+===================================================================
+--- xmpsdk/src/XMPCore_Impl.hpp        (revision 1401)
++++ xmpsdk/src/XMPCore_Impl.hpp        (revision 1402)
+@@ -24,6 +24,7 @@
+ #include <map>
+
+ #include <cassert>
++#include <cstring>
+
+ #if XMP_MacBuild
+       #include <Multiprocessing.h>
+Index: src/tiffparser.cpp
+===================================================================
+--- src/tiffparser.cpp (revision 1401)
++++ src/tiffparser.cpp (revision 1402)
+@@ -148,9 +148,9 @@
+         { "*",         0x8649, Group::ifd0,    
&TiffMetadataDecoder::decodeIptc         }
+     };
+
+-    const DecoderFct TiffDecoder::findDecoder(const std::string& make,
+-                                                    uint32_t     extendedTag,
+-                                                    uint16_t     group)
++    DecoderFct TiffDecoder::findDecoder(const std::string& make,
++                                              uint32_t     extendedTag,
++                                              uint16_t     group)
+     {
+         DecoderFct decoderFct = &TiffMetadataDecoder::decodeStdTiffEntry;
+         const TiffDecoderInfo* td = find(tiffDecoderInfo_,
+Index: src/exif.cpp
+===================================================================
+--- src/exif.cpp       (revision 1401)
++++ src/exif.cpp       (revision 1402)
+@@ -959,7 +959,7 @@
+                                                 + pGpsIfd_->dataSize());
+             }
+             if (   maxOffset > pIfd1_->offset()
+-                || maxOffset > pIfd1_->dataOffset() && pIfd1_->dataOffset() > 
0)
++                || (maxOffset > pIfd1_->dataOffset() && pIfd1_->dataOffset() 
> 0))
+                 rc = false;
+             /*
+                Todo: Removed condition from the above if(). Should be 
re-added...
+Index: src/cr2image.hpp
+===================================================================
+--- src/cr2image.hpp   (revision 1401)
++++ src/cr2image.hpp   (revision 1402)
+@@ -137,9 +137,9 @@
+
+           @return Pointer to the decoder function
+          */
+-        static const DecoderFct findDecoder(const std::string& make,
+-                                                  uint32_t     extendedTag,
+-                                                  uint16_t     group);
++        static DecoderFct findDecoder(const std::string& make,
++                                            uint32_t     extendedTag,
++                                            uint16_t     group);
+
+     private:
+         static const TiffDecoderInfo cr2DecoderInfo_[]; //<! CR2 decoder table
+Index: src/tags.cpp
+===================================================================
+--- src/tags.cpp       (revision 1401)
++++ src/tags.cpp       (revision 1402)
+@@ -1269,7 +1269,7 @@
+     const TagInfo* ExifTags::makerTagInfo(uint16_t tag, IfdId ifdId)
+     {
+         int i = 0;
+-        for (; i < MAX_MAKER_TAG_INFOS && makerIfdIds_[i] != ifdId; ++i);
++        for (; i < MAX_MAKER_TAG_INFOS && makerIfdIds_[i] != ifdId; ++i) {}
+         if (i == MAX_MAKER_TAG_INFOS) return 0;
+
+         for (int k = 0; makerTagInfos_[i][k].tag_ != 0xffff; ++k) {
+@@ -1283,7 +1283,7 @@
+                                           IfdId ifdId)
+     {
+         int i = 0;
+-        for (; i < MAX_MAKER_TAG_INFOS && makerIfdIds_[i] != ifdId; ++i);
++        for (; i < MAX_MAKER_TAG_INFOS && makerIfdIds_[i] != ifdId; ++i) {}
+         if (i == MAX_MAKER_TAG_INFOS) return 0;
+
+         for (int k = 0; makerTagInfos_[i][k].tag_ != 0xffff; ++k) {
+@@ -1298,7 +1298,7 @@
+     bool ExifTags::isMakerIfd(IfdId ifdId)
+     {
+         int i = 0;
+-        for (; i < MAX_MAKER_TAG_INFOS && makerIfdIds_[i] != ifdId; ++i);
++        for (; i < MAX_MAKER_TAG_INFOS && makerIfdIds_[i] != ifdId; ++i) {}
+         return i != MAX_MAKER_TAG_INFOS && makerIfdIds_[i] != IfdId(0);
+     }
+
+@@ -1491,7 +1491,7 @@
+     void ExifTags::makerTaglist(std::ostream& os, IfdId ifdId)
+     {
+         int i = 0;
+-        for (; i < MAX_MAKER_TAG_INFOS && makerIfdIds_[i] != ifdId; ++i);
++        for (; i < MAX_MAKER_TAG_INFOS && makerIfdIds_[i] != ifdId; ++i) {}
+         if (i != MAX_MAKER_TAG_INFOS) {
+             const TagInfo* mnTagInfo = makerTagInfos_[i];
+             for (int k=0; mnTagInfo[k].tag_ != 0xffff; ++k) {
+Index: src/tiffparser.hpp
+===================================================================
+--- src/tiffparser.hpp (revision 1401)
++++ src/tiffparser.hpp (revision 1402)
+@@ -118,9 +118,9 @@
+
+           @return Pointer to the decoder function
+          */
+-        static const DecoderFct findDecoder(const std::string& make,
+-                                                  uint32_t     extendedTag,
+-                                                  uint16_t     group);
++        static DecoderFct findDecoder(const std::string& make,
++                                            uint32_t     extendedTag,
++                                            uint16_t     group);
+
+     private:
+         static const TiffDecoderInfo tiffDecoderInfo_[]; //<! TIFF decoder 
table
+Index: src/cr2image.cpp
+===================================================================
+--- src/cr2image.cpp   (revision 1401)
++++ src/cr2image.cpp   (revision 1402)
+@@ -74,9 +74,9 @@
+         { "*",         0x8649, Group::ifd0,    
&TiffMetadataDecoder::decodeIptc }
+     };
+
+-    const DecoderFct Cr2Decoder::findDecoder(const std::string& make,
+-                                                   uint32_t     extendedTag,
+-                                                   uint16_t     group)
++    DecoderFct Cr2Decoder::findDecoder(const std::string& make,
++                                             uint32_t     extendedTag,
++                                             uint16_t     group)
+     {
+         DecoderFct decoderFct = &TiffMetadataDecoder::decodeStdTiffEntry;
+         const TiffDecoderInfo* td = find(cr2DecoderInfo_,
+Index: src/tifffwd.hpp
+===================================================================
+--- src/tifffwd.hpp    (revision 1401)
++++ src/tifffwd.hpp    (revision 1402)
+@@ -81,9 +81,9 @@
+     /*!
+       @brief Type for a function pointer for a function to decode a TIFF 
component.
+      */
+-    typedef const DecoderFct (*FindDecoderFct)(const std::string& make,
+-                                                     uint32_t     extendedTag,
+-                                                     uint16_t     group);
++    typedef DecoderFct (*FindDecoderFct)(const std::string& make,
++                                               uint32_t     extendedTag,
++                                               uint16_t     group);
+     /*!
+       @brief Type for a function pointer for a function to create a TIFF 
component.
+              Use TiffComponent::AutoPtr, it is not used in this declaration 
only
+Index: src/actions.cpp
+===================================================================
+--- src/actions.cpp    (revision 1401)
++++ src/actions.cpp    (revision 1402)
+@@ -1125,10 +1125,10 @@
+             rc = insertThumbnail(path);
+         }
+         if (   rc == 0
+-            && Params::instance().target_ & Params::ctExif
+-            || Params::instance().target_ & Params::ctIptc
+-            || Params::instance().target_ & Params::ctComment
+-            || Params::instance().target_ & Params::ctXmp) {
++            && (   Params::instance().target_ & Params::ctExif
++                || Params::instance().target_ & Params::ctIptc
++                || Params::instance().target_ & Params::ctComment
++                || Params::instance().target_ & Params::ctXmp)) {
+             std::string suffix = Params::instance().suffix_;
+             if (suffix.empty()) suffix = ".exv";
+             std::string exvPath = newFilePath(path, suffix);
+Index: src/sigmamn.cpp
+===================================================================
+--- src/sigmamn.cpp    (revision 1401)
++++ src/sigmamn.cpp    (revision 1402)
+@@ -178,10 +178,10 @@
+         int rc = 0;
+         // Check the SIGMA or FOVEON prefix
+         if (   header_.size_ < 10
+-            || std::string(reinterpret_cast<char*>(header_.pData_), 8)
++            || (   std::string(reinterpret_cast<char*>(header_.pData_), 8)
+                         != std::string("SIGMA\0\0\0", 8)
+-            && std::string(reinterpret_cast<char*>(header_.pData_), 8)
+-                        != std::string("FOVEON\0\0", 8)) {
++                && std::string(reinterpret_cast<char*>(header_.pData_), 8)
++                        != std::string("FOVEON\0\0", 8))) {
+             rc = 2;
+         }
+         return rc;
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to