diff --git a/graphics/luminance-qt5/Makefile b/graphics/luminance-qt5/Makefile index 1b0d2c852f74..f7fee8af15cc 100644 --- a/graphics/luminance-qt5/Makefile +++ b/graphics/luminance-qt5/Makefile @@ -1,62 +1,62 @@ PORTNAME= luminance-hdr DISTVERSION= 2.6.1.1 -PORTREVISION= 20 +PORTREVISION= 21 CATEGORIES= graphics MASTER_SITES= SF/qtpfsgui/luminance/${DISTVERSION} MAINTAINER= h2+fbsdports@fsfe.org COMMENT= Complete open source solution for HDR photography WWW= http://qtpfsgui.sourceforge.net/ LICENSE= GPLv2 BUILD_DEPENDS= ${LOCALBASE}/include/fftw3.h:math/fftw3 LIB_DEPENDS= libImath.so:math/Imath \ libtiff.so:graphics/tiff \ libraw_r.so:graphics/libraw \ libfftw3f.so:math/fftw3-float \ libgsl.so:math/gsl \ libexiv2.so:graphics/exiv2 \ liblcms2.so:graphics/lcms2 \ libpng.so:graphics/png \ libOpenEXR.so:graphics/openexr \ libboost_date_time.so:devel/boost-libs CFLAGS+= -I${LOCALBASE}/include/Imath USES= cmake desktop-file-utils eigen:3 jpeg pkgconfig qt:5 tar:bzip2 USE_QT= concurrent core declarative gui location network \ printsupport sql svg widgets xml \ buildtools:build linguisttools:build qmake:build OPTIONS_DEFINE= CFITSIO DOCS HELPBROWSER OPTIONS_DEFAULT= CFITSIO OPTIONS_DEFAULT_aarch64= HELPBROWSER OPTIONS_DEFAULT_amd64= HELPBROWSER OPTIONS_DEFAULT_i386= HELPBROWSER CFITSIO_LIB_DEPENDS= libcfitsio.so:astro/cfitsio HELPBROWSER_DESC= Build help browser (requires QtWebEngine) HELPBROWSER_USE= QT=webchannel,webengine HELPBROWSER_CMAKE_BOOL= WITH_HELPBROWSER .include post-patch: # Do not install yet another copy of GPL (we use license framework instead) # and fix installation path for docs (but not for internal help files) @${REINPLACE_CMD} -e '/LICENSE/d ; \ /#info files/s,share/luminance-hdr/doc,${DOCSDIR_REL},' \ ${WRKSRC}/CMakeLists.txt # Point to the right location for program where to look for GPL text @${REINPLACE_CMD} -e 's,LICENSE,${LICENSE}, ; \ s,share/luminance-hdr/doc,share/licenses/${PKGNAME},' \ ${WRKSRC}/src/UI/UMessageBox.cpp post-patch-HELPBROWSER-off: @${REINPLACE_CMD} -e 's,name="documentationAction">,& \ false,' \ ${WRKSRC}/src/MainWindow/MainWindow.ui .include diff --git a/graphics/luminance-qt5/files/patch-src_Exif_ExifOperations.cpp b/graphics/luminance-qt5/files/patch-src_Exif_ExifOperations.cpp new file mode 100644 index 000000000000..439f147063d3 --- /dev/null +++ b/graphics/luminance-qt5/files/patch-src_Exif_ExifOperations.cpp @@ -0,0 +1,88 @@ +--- src/Exif/ExifOperations.cpp.orig 2021-01-11 09:41:28 UTC ++++ src/Exif/ExifOperations.cpp +@@ -108,12 +108,12 @@ void copyExifData(const std::string &from, const std:: + #endif + + try { +- Exiv2::Image::AutoPtr sourceImage; ++ Exiv2::Image::UniquePtr sourceImage; + Exiv2::ExifData srcExifData; + + if (!from.empty()) { + // get source exif data +- sourceImage = Exiv2::ImageFactory::open(from); ++ sourceImage = std::move(Exiv2::ImageFactory::open(from)); + + sourceImage->readMetadata(); + srcExifData = sourceImage->exifData(); +@@ -128,7 +128,7 @@ void copyExifData(const std::string &from, const std:: + } + + // get destination exif data +- Exiv2::Image::AutoPtr destinationImage = Exiv2::ImageFactory::open(to); ++ Exiv2::Image::UniquePtr destinationImage = Exiv2::ImageFactory::open(to); + + if (dontOverwrite) { + // doesn't throw anything if it is empty +@@ -212,7 +212,7 @@ void copyExifData(const std::string &from, const std:: + destinationImage->setExifData(srcExifData); + } + destinationImage->writeMetadata(); +- } catch (Exiv2::AnyError &e) { ++ } catch (Exiv2::Error &e) { + #ifndef NDEBUG + qDebug() << e.what(); + #endif +@@ -250,7 +250,7 @@ float obtain_avg_lum(const std::string& filename) + { + try + { +- Exiv2::Image::AutoPtr image = Exiv2::ImageFactory::open(filename); ++ Exiv2::Image::UniquePtr image = Exiv2::ImageFactory::open(filename); + image->readMetadata(); + Exiv2::ExifData &exifData = image->exifData(); + if (exifData.empty()) +@@ -329,7 +329,7 @@ allowed for ev computation purposes. + return -1; + } + } +- catch (Exiv2::AnyError& e) ++ catch (Exiv2::Error& e) + { + return -1; + } +@@ -338,7 +338,7 @@ allowed for ev computation purposes. + + float getExposureTime(const std::string &filename) { + try { +- Exiv2::Image::AutoPtr image = Exiv2::ImageFactory::open(filename); ++ Exiv2::Image::UniquePtr image = Exiv2::ImageFactory::open(filename); + image->readMetadata(); + Exiv2::ExifData &exifData = image->exifData(); + if (exifData.empty()) return -1; +@@ -374,14 +374,14 @@ float getExposureTime(const std::string &filename) { + } else { + return -1; + } +- } catch (Exiv2::AnyError &e) { ++ } catch (Exiv2::Error &e) { + return -1; + } + } + + float getAverageLuminance(const std::string &filename) { + try { +- Exiv2::Image::AutoPtr image = Exiv2::ImageFactory::open(filename); ++ Exiv2::Image::UniquePtr image = Exiv2::ImageFactory::open(filename); + image->readMetadata(); + Exiv2::ExifData &exifData = image->exifData(); + +@@ -403,7 +403,7 @@ float getAverageLuminance(const std::string &filename) + << std::endl; + + return -1.0; +- } catch (Exiv2::AnyError &e) { ++ } catch (Exiv2::Error &e) { + return -1.0; + } + } diff --git a/graphics/luminance-qt5/files/patch-src_Libpfs_exif_exifdata.cpp b/graphics/luminance-qt5/files/patch-src_Libpfs_exif_exifdata.cpp new file mode 100644 index 000000000000..6a6eabf8d9dd --- /dev/null +++ b/graphics/luminance-qt5/files/patch-src_Libpfs_exif_exifdata.cpp @@ -0,0 +1,29 @@ +--- src/Libpfs/exif/exifdata.cpp.orig 2021-01-11 09:41:28 UTC ++++ src/Libpfs/exif/exifdata.cpp +@@ -52,7 +52,7 @@ ExifData::ExifData(const std::string &filename) { from + void ExifData::fromFile(const std::string &filename) { + reset(); + try { +- ::Exiv2::Image::AutoPtr image = Exiv2::ImageFactory::open(filename); ++ ::Exiv2::Image::UniquePtr image = Exiv2::ImageFactory::open(filename); + image->readMetadata(); + ::Exiv2::ExifData &exifData = image->exifData(); + +@@ -121,7 +121,7 @@ void ExifData::fromFile(const std::string &filename) { + */ + if ((it = exifData.findKey(Exiv2::ExifKey("Exif.Image.Orientation"))) != + exifData.end()) { +- long rotation = it->toLong(); ++ long rotation = it->toInt64(); + switch (rotation) { + case 3: + m_orientation = 180; +@@ -134,7 +134,7 @@ void ExifData::fromFile(const std::string &filename) { + break; + } + } +- } catch (Exiv2::AnyError &e) { ++ } catch (Exiv2::Error &e) { + return; + } + } diff --git a/graphics/luminance-qt5/files/patch-src_TransplantExif_TransplantExifDialog.cpp b/graphics/luminance-qt5/files/patch-src_TransplantExif_TransplantExifDialog.cpp new file mode 100644 index 000000000000..98db3ad724d6 --- /dev/null +++ b/graphics/luminance-qt5/files/patch-src_TransplantExif_TransplantExifDialog.cpp @@ -0,0 +1,11 @@ +--- src/TransplantExif/TransplantExifDialog.cpp.orig 2021-01-11 09:41:28 UTC ++++ src/TransplantExif/TransplantExifDialog.cpp +@@ -347,7 +347,7 @@ void TransplantExifDialog::transplant_requested() { + QFile::encodeName((*i_dest)).constData(), + m_Ui->checkBox_dont_overwrite->isChecked()); + m_Ui->rightlist->item(index)->setBackground(QBrush("#a0ff87")); +- } catch (Exiv2::AnyError &e) { ++ } catch (Exiv2::Error &e) { + add_log_message("ERROR:" + QString::fromStdString(e.what())); + m_Ui->rightlist->item(index)->setBackground(QBrush("#ff743d")); + }