Accepting request 679901 from KDE:Extra

- Update to 6.0.0
- Drop patches merged upstream:
  * Add-QtWebEngine-support.patch
  * fix-black-Welcome-page-by-clicking-on-a-link.patch
  * add-support-for-Exiv2-0.27.patch
  * be-compatible-with-backward-0.26.patch
  * adjust-find-cmake-script-to-exiv2-0.27-RC1.patch
  * first-patch-to-be-compatible-with-Exiv2-0.27.patch
  * f27ab9c1051bd0a0.patch
  * fix-compile.patch
- Drop docs subpackage, docs are no longer included
- Drop kipi-plugins subpackage, no longer included
- Drop patch for kipi-plugins that's no longer relevant:
  * 0002-Revert-replace-obsolete-qSort-function.patch
- Drop 0001-Revert-replace-obsolete-qSort-function.patch and build
  with gcc7 on Leap 42.3 instead
- Refresh Lower-minimum-exiv2-version.patch
- Remove kipi-plugins requirement, digikam doesn't use libkipi
  anymore
- Recommend enblend-enfuse and hugin (previously recommended by
  kipi-plugins), needed for certain functionality in digikam
- Update/cleanup build requirements
- Use fdupes without -s option
- Make lang package conditional
- Handle soversion via a macro, bump to 6 following upstream
- Run spec-cleaner (forwarded request 679892 from wolfi323)

OBS-URL: https://build.opensuse.org/request/show/679901
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/digikam?expand=0&rev=178
This commit is contained in:
Dominique Leuenberger 2019-03-26 14:38:37 +00:00 committed by Git OBS Bridge
commit 1d248cb6f5
15 changed files with 201 additions and 3016 deletions

View File

@ -1,635 +0,0 @@
From 87d90549a5db7c309228697652a4608ee774be74 Mon Sep 17 00:00:00 2001
From: Wolfgang Bauer <wbauer@tmo.at>
Date: Sun, 14 Jan 2018 00:17:04 +0100
Subject: [PATCH] Revert "replace obsolete qSort() function"
This reverts commit 1fdff40d7efaf9ab9d8fe716970e02a18bdb73f7.
It breaks compilation with GCC 4.8.
---
app/utils/tooltipfiller.cpp | 2 +-
app/views/tableview/tableview_model.cpp | 6 ++--
libs/album/albummanager.cpp | 6 ++--
libs/database/collection/collectionscanner.cpp | 2 +-
.../imagehistory/imagehistorygraph_boost.h | 2 +-
.../imagehistory/imagehistorygraphmodel.cpp | 2 +-
libs/database/models/imagemodel.cpp | 2 +-
libs/database/tags/facetags.cpp | 2 +-
libs/dimg/imagehistory/dimagehistory.cpp | 2 +-
libs/dmetadata/dmetadatasettingscontainer.cpp | 2 +-
libs/dtrash/dtrashitemmodel.cpp | 32 +++++++++++-----------
libs/imageproperties/disjointmetadata.cpp | 2 +-
libs/tags/tagfolderview.cpp | 18 ++++++------
libs/tags/tagsmanager/tagmngrtreeview.cpp | 10 +++----
libs/widgets/fonts/dfontproperties.cpp | 4 +--
libs/widgets/iccprofiles/iccprofilescombobox.cpp | 2 +-
showfoto/thumbbar/showfotoimagemodel.cpp | 2 +-
tests/dimg/dimghistorygraphtest.cpp | 18 ++++++------
utilities/advancedrename/advancedrenamemanager.cpp | 6 ++--
.../editor/correlator/track_correlator_thread.cpp | 2 +-
.../editor/searches/searchresultmodel.cpp | 4 +--
.../geolocation/geoiface/tracks/trackreader.cpp | 2 +-
utilities/importui/models/importimagemodel.cpp | 2 +-
utilities/maintenance/imageinfojob.cpp | 2 +-
utilities/searchwindow/searchutilities.cpp | 6 ++--
25 files changed, 70 insertions(+), 70 deletions(-)
diff --git a/core/app/utils/tooltipfiller.cpp b/core/app/utils/tooltipfiller.cpp
index 0371cdfe73..e40cefd18f 100644
--- a/core/app/utils/tooltipfiller.cpp
+++ b/core/app/utils/tooltipfiller.cpp
@@ -677,7 +677,7 @@ QString ToolTipFiller::filterActionTipContents(const FilterAction& action)
const QHash<QString, QVariant>& params = action.parameters();
QList<QString> keys = params.keys();
- std::sort(keys.begin(), keys.end());
+ qSort(keys);
foreach(const QString& key, keys)
{
diff --git a/core/app/views/tableview/tableview_model.cpp b/core/app/views/tableview/tableview_model.cpp
index 6047462023..f168f577f1 100644
--- a/core/app/views/tableview/tableview_model.cpp
+++ b/core/app/views/tableview/tableview_model.cpp
@@ -1144,9 +1144,9 @@ QList<TableViewModel::Item*> TableViewModel::sortItems(const QList<TableViewMode
{
QList<Item*> sortedList = itemList;
- std::sort(sortedList.begin(),
- sortedList.end(),
- LessThan(this));
+ qSort(sortedList.begin(),
+ sortedList.end(),
+ LessThan(this));
return sortedList;
}
diff --git a/core/libs/album/albummanager.cpp b/core/libs/album/albummanager.cpp
index ea0726eab3..f41f3faeac 100644
--- a/core/libs/album/albummanager.cpp
+++ b/core/libs/album/albummanager.cpp
@@ -1290,7 +1290,7 @@ void AlbumManager::scanPAlbums()
QList<AlbumInfo> currentAlbums = CoreDbAccess().db()->scanAlbums();
// sort by relative path so that parents are created before children
- std::sort(currentAlbums.begin(), currentAlbums.end());
+ qSort(currentAlbums);
QList<AlbumInfo> newAlbums;
@@ -1342,7 +1342,7 @@ void AlbumManager::scanPAlbums()
}
// sort by relative path so that parents are created before children
- std::sort(newAlbums.begin(), newAlbums.end());
+ qSort(newAlbums);
// create all new albums
foreach(const AlbumInfo& info, newAlbums)
@@ -1924,7 +1924,7 @@ void AlbumManager::setCurrentAlbums(QList<Album*> albums)
/**
* Sort is needed to identify selection correctly, ex AlbumHistory
*/
- std::sort(albums.begin(), albums.end());
+ qSort(albums.begin(),albums.end());
d->currentAlbums.clear();
d->currentAlbums+=albums;
diff --git a/core/libs/database/collection/collectionscanner.cpp b/core/libs/database/collection/collectionscanner.cpp
index b3284c8d99..b98d2d799a 100644
--- a/core/libs/database/collection/collectionscanner.cpp
+++ b/core/libs/database/collection/collectionscanner.cpp
@@ -531,7 +531,7 @@ void CollectionScanner::finishCompleteScan(const QStringList& albumPaths)
// remove subalbums from list if parent album is already contained
QStringList sortedPaths = albumPaths;
- std::sort(sortedPaths.begin(), sortedPaths.end());
+ qSort(sortedPaths);
QStringList::iterator it, it2;
for (it = sortedPaths.begin(); it != sortedPaths.end(); )
diff --git a/core/libs/database/imagehistory/imagehistorygraph_boost.h b/core/libs/database/imagehistory/imagehistorygraph_boost.h
index 5c4c49ac5f..affdf48466 100644
--- a/core/libs/database/imagehistory/imagehistorygraph_boost.h
+++ b/core/libs/database/imagehistory/imagehistorygraph_boost.h
@@ -1454,7 +1454,7 @@ protected:
outEdges = toList<edge_descriptor>(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.
- std::sort(outEdges.begin(), outEdges.end(), lessThanMapEdgeToTarget<IncidenceGraph, LessThan>(g, lessThan));
+ qSort(outEdges.begin(), outEdges.end(), lessThanMapEdgeToTarget<IncidenceGraph, LessThan>(g, lessThan));
foreach(const edge_descriptor& e, outEdges)
{
diff --git a/core/libs/database/imagehistory/imagehistorygraphmodel.cpp b/core/libs/database/imagehistory/imagehistorygraphmodel.cpp
index fbe53b0af9..930bc9eab4 100644
--- a/core/libs/database/imagehistory/imagehistorygraphmodel.cpp
+++ b/core/libs/database/imagehistory/imagehistorygraphmodel.cpp
@@ -521,7 +521,7 @@ void ImageHistoryGraphModel::Private::
{
parentItem->addItem(new CategoryItem(title));
- std::sort(vertices.begin(), vertices.end(), sortBy(oldestInfoFirst));
+ qSort(vertices.begin(), vertices.end(), sortBy(oldestInfoFirst));
bool isFirst = true;
VertexItem* item = 0;
diff --git a/core/libs/database/models/imagemodel.cpp b/core/libs/database/models/imagemodel.cpp
index cd4dde5520..db30e93a5b 100644
--- a/core/libs/database/models/imagemodel.cpp
+++ b/core/libs/database/models/imagemodel.cpp
@@ -1197,7 +1197,7 @@ QList<QPair<int, int> > ImageModelIncrementalUpdater::toContiguousPairs(const QL
}
QList<int> indices(unsorted);
- std::sort(indices.begin(), indices.end());
+ qSort(indices);
QPair<int, int> pair(indices.first(), indices.first());
diff --git a/core/libs/database/tags/facetags.cpp b/core/libs/database/tags/facetags.cpp
index dc1f965ce2..cdf08c6613 100644
--- a/core/libs/database/tags/facetags.cpp
+++ b/core/libs/database/tags/facetags.cpp
@@ -398,7 +398,7 @@ int FaceTags::personParentTag()
QList<int> mosttoplevelTags = tiers.values(tiers.begin().key());
// as a pretty weak criterion, take the largest id which usually corresponds to the latest tag creation.
- std::sort(mosttoplevelTags.begin(), mosttoplevelTags.end());
+ qSort(mosttoplevelTags);
return TagsCache::instance()->parentTag(mosttoplevelTags.last());
}
diff --git a/core/libs/dimg/imagehistory/dimagehistory.cpp b/core/libs/dimg/imagehistory/dimagehistory.cpp
index ee24dc206c..2eb2b2ea17 100644
--- a/core/libs/dimg/imagehistory/dimagehistory.cpp
+++ b/core/libs/dimg/imagehistory/dimagehistory.cpp
@@ -534,7 +534,7 @@ QString DImageHistory::toXml() const
if (!params.isEmpty())
{
QList<QString> keys = params.keys();
- std::sort(keys.begin(), keys.end());
+ qSort(keys);
foreach(const QString& key, keys)
{
diff --git a/core/libs/dmetadata/dmetadatasettingscontainer.cpp b/core/libs/dmetadata/dmetadatasettingscontainer.cpp
index 32def9519b..4789f7543a 100644
--- a/core/libs/dmetadata/dmetadatasettingscontainer.cpp
+++ b/core/libs/dmetadata/dmetadatasettingscontainer.cpp
@@ -440,7 +440,7 @@ void DMetadataSettingsContainer::readOneGroup(KConfigGroup& group, const QString
container.append(ns);
}
- std::sort(container.begin(), container.end(), Digikam::dmcompare);
+ qSort(container.begin(), container.end(), Digikam::dmcompare);
}
void DMetadataSettingsContainer::writeOneGroup(KConfigGroup& group, const QString& name, QList<NamespaceEntry>& container) const
diff --git a/core/libs/dtrash/dtrashitemmodel.cpp b/core/libs/dtrash/dtrashitemmodel.cpp
index b21ac32446..0abbe7d223 100644
--- a/core/libs/dtrash/dtrashitemmodel.cpp
+++ b/core/libs/dtrash/dtrashitemmodel.cpp
@@ -146,28 +146,28 @@ void DTrashItemModel::sort(int column, Qt::SortOrder order)
return;
}
- std::sort(d->data.begin(), d->data.end(),
- [column, order](const DTrashItemInfo& a, const DTrashItemInfo& b)
+ qSort(d->data.begin(), d->data.end(),
+ [column, order](const DTrashItemInfo& a, const DTrashItemInfo& b)
+ {
+ if (column == 2 && a.deletionTimestamp != b.deletionTimestamp)
{
- if (column == 2 && a.deletionTimestamp != b.deletionTimestamp)
+ if (order == Qt::DescendingOrder)
{
- if (order == Qt::DescendingOrder)
- {
- return a.deletionTimestamp > b.deletionTimestamp;
- }
- else
- {
- return a.deletionTimestamp < b.deletionTimestamp;
- }
+ return a.deletionTimestamp > b.deletionTimestamp;
}
-
- if (order == Qt::DescendingOrder)
+ else
{
- return a.collectionRelativePath > b.collectionRelativePath;
+ return a.deletionTimestamp < b.deletionTimestamp;
}
+ }
+
+ if (order == Qt::DescendingOrder)
+ {
+ return a.collectionRelativePath > b.collectionRelativePath;
+ }
- return a.collectionRelativePath < b.collectionRelativePath;
- });
+ return a.collectionRelativePath < b.collectionRelativePath;
+ });
const QModelIndex topLeft = index(0, 0, QModelIndex());
const QModelIndex bottomRight = index(rowCount(QModelIndex())-1,
diff --git a/core/libs/imageproperties/disjointmetadata.cpp b/core/libs/imageproperties/disjointmetadata.cpp
index 3f3cd56bbc..53d5cb2cf0 100644
--- a/core/libs/imageproperties/disjointmetadata.cpp
+++ b/core/libs/imageproperties/disjointmetadata.cpp
@@ -609,7 +609,7 @@ void DisjointMetadata::loadTags( QList<int> &loadedTagIds)
return;
}
- std::sort(loadedTagIds.begin(), loadedTagIds.end());
+ qSort(loadedTagIds.begin(),loadedTagIds.end());
// We search for metadata available tags, and
// it is not present in current list, set it to
// disjoint
diff --git a/core/libs/tags/tagfolderview.cpp b/core/libs/tags/tagfolderview.cpp
index d4e1c09dfc..a194af0a5a 100644
--- a/core/libs/tags/tagfolderview.cpp
+++ b/core/libs/tags/tagfolderview.cpp
@@ -136,7 +136,7 @@ void TagFolderView::addCustomContextMenuActions(ContextMenuHelper& cmh, Album* a
cmh.addSeparator();
if (d->showDeleteFaceTagsAction)
{
- cmh.addActionDeleteFaceTag(tagModificationHelper(), tag);
+ cmh.addActionDeleteFaceTag(tagModificationHelper(),tag);
cmh.addSeparator();
}
else
@@ -146,7 +146,7 @@ void TagFolderView::addCustomContextMenuActions(ContextMenuHelper& cmh, Album* a
// If the tag is no face tag, add the option to set it as face tag.
if (!FaceTags::isPerson(tag->id()))
{
- cmh.addActionTagToFaceTag(tagModificationHelper(), tag);
+ cmh.addActionTagToFaceTag(tagModificationHelper(),tag);
}
}
cmh.addActionEditTag(tagModificationHelper(), tag);
@@ -199,7 +199,7 @@ void TagFolderView::slotExpandNode()
{
expand(child);
greyNodes.enqueue(child);
- child = current.child(it++, 0);
+ child = current.child(it++,0);
}
}
}
@@ -234,7 +234,7 @@ void TagFolderView::slotCollapseNode()
{
collapse(child);
greyNodes.enqueue(child);
- child = current.child(it++, 0);
+ child = current.child(it++,0);
}
}
}
@@ -294,18 +294,18 @@ void TagFolderView::setContexMenuItems(ContextMenuHelper& cmh, QList< TAlbum* >
cmh.addSeparator();
if (d->showDeleteFaceTagsAction)
{
- cmh.addActionDeleteFaceTags(tagModificationHelper(), albums);
+ cmh.addActionDeleteFaceTags(tagModificationHelper(),albums);
}
else
{
- cmh.addActionDeleteTags(tagModificationHelper(), albums);
+ cmh.addActionDeleteTags(tagModificationHelper(),albums);
// If one of the selected tags is no face tag, add the action to mark them as face tags.
foreach (TAlbum * const tag, albums)
{
if (!FaceTags::isPerson(tag->id()))
{
cmh.addSeparator();
- cmh.addActionTagToFaceTag(tagModificationHelper(), tag);
+ cmh.addActionTagToFaceTag(tagModificationHelper(),tag);
break;
}
}
@@ -342,7 +342,7 @@ void TagFolderView::contextMenuEvent(QContextMenuEvent* event)
QModelIndexList selectedItems = selectionModel()->selectedIndexes();
- std::sort(selectedItems.begin(), selectedItems.end());
+ qSort(selectedItems.begin(),selectedItems.end());
QList<TAlbum*> items;
foreach(const QModelIndex& mIndex, selectedItems)
@@ -356,7 +356,7 @@ void TagFolderView::contextMenuEvent(QContextMenuEvent* event)
*/
if(items.isEmpty())
{
- QModelIndex root = this->model()->index(0, 0);
+ QModelIndex root = this->model()->index(0,0);
items.append(static_cast<TAlbum*>(albumForIndex(root)));
}
diff --git a/core/libs/tags/tagsmanager/tagmngrtreeview.cpp b/core/libs/tags/tagsmanager/tagmngrtreeview.cpp
index 6dec5c6eb7..fb2a6991ba 100644
--- a/core/libs/tags/tagsmanager/tagmngrtreeview.cpp
+++ b/core/libs/tags/tagsmanager/tagmngrtreeview.cpp
@@ -71,7 +71,7 @@ void TagMngrTreeView::contextMenuEvent(QContextMenuEvent* event)
{
QModelIndexList selectedItems = selectionModel()->selectedIndexes();
- std::sort(selectedItems.begin(), selectedItems.end());
+ qSort(selectedItems.begin(),selectedItems.end());
QList<TAlbum*> items;
foreach(const QModelIndex& mIndex, selectedItems)
@@ -85,7 +85,7 @@ void TagMngrTreeView::contextMenuEvent(QContextMenuEvent* event)
*/
if(items.isEmpty())
{
- QModelIndex root = this->model()->index(0, 0);
+ QModelIndex root = this->model()->index(0,0);
items.append(static_cast<TAlbum*>(albumForIndex(root)));
}
@@ -130,7 +130,7 @@ void TagMngrTreeView::setContexMenuItems(ContextMenuHelper& cmh, QList<TAlbum*>
if (!isRoot)
{
- cmh.addActionDeleteTags(tagModificationHelper(), albums);
+ cmh.addActionDeleteTags(tagModificationHelper(),albums);
}
else
{
@@ -194,7 +194,7 @@ void TagMngrTreeView::slotExpandSelected()
void TagMngrTreeView::slotExpandTree()
{
- QModelIndex root = this->model()->index(0, 0);
+ QModelIndex root = this->model()->index(0,0);
QItemSelectionModel* const model = this->selectionModel();
QModelIndexList selected = model->selectedIndexes();
@@ -227,7 +227,7 @@ void TagMngrTreeView::slotExpandTree()
expand(child);
}
- child = current.child(it++, 0);
+ child = current.child(it++,0);
}
}
else
diff --git a/core/libs/widgets/fonts/dfontproperties.cpp b/core/libs/widgets/fonts/dfontproperties.cpp
index c78f8e5cb2..7466b62477 100644
--- a/core/libs/widgets/fonts/dfontproperties.cpp
+++ b/core/libs/widgets/fonts/dfontproperties.cpp
@@ -1037,7 +1037,7 @@ qreal DFontProperties::Private::fillSizeList(const QList<qreal>& sizes_)
// Insert sizes into the listbox.
sizeListBox->clear();
- std::sort(sizes.begin(), sizes.end());
+ qSort(sizes);
Q_FOREACH (qreal size, sizes)
{
@@ -1400,7 +1400,7 @@ QStringList DFontProperties::Private::translateFontNameList(const QStringList& n
// Sort real fonts alphabetically.
- std::sort(trNames.begin(), trNames.end(), localeLessThan);
+ qSort(trNames.begin(), trNames.end(), localeLessThan);
// Prepend generic fonts, in the predefined order.
diff --git a/core/libs/widgets/iccprofiles/iccprofilescombobox.cpp b/core/libs/widgets/iccprofiles/iccprofilescombobox.cpp
index 779be49aec..3be93a04a8 100644
--- a/core/libs/widgets/iccprofiles/iccprofilescombobox.cpp
+++ b/core/libs/widgets/iccprofiles/iccprofilescombobox.cpp
@@ -97,7 +97,7 @@ static void formatProfiles(const QList<IccProfile>& givenProfiles, QList<IccProf
}
}
- std::sort(profiles.begin(), profiles.end(), iccProfileLessThan);
+ qSort(profiles.begin(), profiles.end(), iccProfileLessThan);
foreach(IccProfile profile, profiles) // krazy:exclude=foreach
{
diff --git a/core/showfoto/thumbbar/showfotoimagemodel.cpp b/core/showfoto/thumbbar/showfotoimagemodel.cpp
index 500c0ce6e5..08bc5175b3 100644
--- a/core/showfoto/thumbbar/showfotoimagemodel.cpp
+++ b/core/showfoto/thumbbar/showfotoimagemodel.cpp
@@ -542,7 +542,7 @@ QList<QPair<int, int> > ShowfotoImageModel::toContiguousPairs(const QList<int>&
}
QList<int> indices(unsorted);
- std::sort(indices.begin(), indices.end());
+ qSort(indices);
QPair<int, int> pair(indices.first(), indices.first());
diff --git a/core/tests/dimg/dimghistorygraphtest.cpp b/core/tests/dimg/dimghistorygraphtest.cpp
index e9204954cd..335d8192a5 100644
--- a/core/tests/dimg/dimghistorygraphtest.cpp
+++ b/core/tests/dimg/dimghistorygraphtest.cpp
@@ -183,7 +183,7 @@ void DImgHistoryGraphTest::testEditing()
controlCloud << IdPair(two.id(), orig.id());
controlCloud << IdPair(three.id(), orig.id());
controlCloud << IdPair(four.id(), orig.id());
- std::sort(controlCloud.begin(), controlCloud.end());
+ qSort(controlCloud);
ImageHistoryGraph graph1 = ImageHistoryGraph::fromInfo(three);
qDebug() << graph1;
@@ -198,7 +198,7 @@ void DImgHistoryGraphTest::testEditing()
QVERIFY(graph3.data().vertexCount() == 5);
QList<IdPair> cloud = graph3.relationCloud();
- std::sort(cloud.begin(), cloud.end());
+ qSort(cloud);
QVERIFY(cloud == controlCloud);
int needResolvingTag = TagsCache::instance()->getOrCreateInternalTag(InternalTagName::needResolvingHistory());
@@ -301,7 +301,7 @@ void DImgHistoryGraphTest::testGraph()
QList<qlonglong> controlLeaves;
controlLeaves << 8 << 19 << 20 << 21 << 10 << 3 << 11 << 22 << 24 << 14 << 15 << 16 << 17 << 18;
- std::sort(controlLeaves.begin(), controlLeaves.end());
+ qSort(controlLeaves);
QList<qlonglong> controlRoots;
controlRoots << 1;
@@ -429,11 +429,11 @@ void DImgHistoryGraphTest::testGraph()
}
QList<qlonglong> leaves = mapList(graph.data().leaves(), vertexToId);
- std::sort(leaves.begin(), leaves.end());
+ qSort(leaves);
QVERIFY(leaves == controlLeaves);
QList<qlonglong> roots = mapList(graph.data().roots(), vertexToId);
- std::sort(roots.begin(), roots.end());
+ qSort(roots);
QVERIFY(roots == controlRoots);
QList<qlonglong> longestPath1 = mapList(graph.data().longestPathTouching(idToVertex.value(18)), vertexToId);
@@ -444,13 +444,13 @@ void DImgHistoryGraphTest::testGraph()
// depth-first
QList<qlonglong> subgraphTwo = mapList(graph.data().verticesDominatedBy(idToVertex.value(2), idToVertex.value(1),
HistoryGraph::DepthFirstOrder), vertexToId);
- std::sort(subgraphTwo.begin(), subgraphTwo.end());
+ qSort(subgraphTwo);
QVERIFY(subgraphTwo == controlSubgraphTwo);
// breadth-first
QList<qlonglong> subgraphFour = mapList(graph.data().verticesDominatedBy(idToVertex.value(4), idToVertex.value(1)), vertexToId);
QVERIFY(subgraphFour.indexOf(22) > subgraphFour.indexOf(13));
- std::sort(subgraphFour.begin(), subgraphFour.end());
+ qSort(subgraphFour);
QVERIFY(subgraphFour == controlSubgraphFour);
// depth-first
@@ -461,10 +461,10 @@ void DImgHistoryGraphTest::testGraph()
QVERIFY(subgraphTwoSorted == controlSubgraphTwoSorted);
QList<qlonglong> rootsOfEighteen = mapList(graph.data().rootsOf(idToVertex.value(18)), vertexToId);
- std::sort(rootsOfEighteen.begin(), rootsOfEighteen.end());
+ qSort(rootsOfEighteen);
QVERIFY(rootsOfEighteen == controlRootsOfEighteen);
QList<qlonglong> leavesFromTwo = mapList(graph.data().leavesFrom(idToVertex.value(2)), vertexToId);
- std::sort(leavesFromTwo.begin(), leavesFromTwo.end());
+ qSort(leavesFromTwo);
QVERIFY(leavesFromTwo == controlLeavesFromTwo);
}
diff --git a/core/utilities/advancedrename/advancedrenamemanager.cpp b/core/utilities/advancedrename/advancedrenamemanager.cpp
index 1c0c207af7..9f83887f80 100644
--- a/core/utilities/advancedrename/advancedrenamemanager.cpp
+++ b/core/utilities/advancedrename/advancedrenamemanager.cpp
@@ -331,19 +331,19 @@ void AdvancedRenameManager::initializeFileList()
{
case SortName:
{
- std::sort(tmpFiles.begin(), tmpFiles.end(), SortByNameCaseInsensitive());
+ qSort(tmpFiles.begin(), tmpFiles.end(), SortByNameCaseInsensitive());
break;
}
case SortDate:
{
- std::sort(tmpFiles.begin(), tmpFiles.end(), SortByDate());
+ qSort(tmpFiles.begin(), tmpFiles.end(), SortByDate());
break;
}
case SortSize:
{
- std::sort(tmpFiles.begin(), tmpFiles.end(), SortBySize());
+ qSort(tmpFiles.begin(), tmpFiles.end(), SortBySize());
break;
}
diff --git a/core/utilities/geolocation/editor/correlator/track_correlator_thread.cpp b/core/utilities/geolocation/editor/correlator/track_correlator_thread.cpp
index 8dc7b7df66..a5b818b6ea 100644
--- a/core/utilities/geolocation/editor/correlator/track_correlator_thread.cpp
+++ b/core/utilities/geolocation/editor/correlator/track_correlator_thread.cpp
@@ -50,7 +50,7 @@ TrackCorrelatorThread::~TrackCorrelatorThread()
void TrackCorrelatorThread::run()
{
// sort the items to correlate by time:
- std::sort(itemsToCorrelate.begin(), itemsToCorrelate.end(), TrackCorrelationLessThan);
+ qSort(itemsToCorrelate.begin(), itemsToCorrelate.end(), TrackCorrelationLessThan);
// now perform the correlation
// we search all loaded gpx data files in parallel for the points with the best match
diff --git a/core/utilities/geolocation/editor/searches/searchresultmodel.cpp b/core/utilities/geolocation/editor/searches/searchresultmodel.cpp
index aea4dc0346..412488ea38 100644
--- a/core/utilities/geolocation/editor/searches/searchresultmodel.cpp
+++ b/core/utilities/geolocation/editor/searches/searchresultmodel.cpp
@@ -315,7 +315,7 @@ void SearchResultModel::removeRowsByIndexes(const QModelIndexList& rowsList)
return;
}
- std::sort(rowNumbers.begin(), rowNumbers.end());
+ qSort(rowNumbers.begin(), rowNumbers.end());
// now delete the rows, starting with the last row:
for (int i = rowNumbers.count()-1; i >= 0; i--)
@@ -340,7 +340,7 @@ void SearchResultModel::removeRowsBySelection(const QItemSelection& selectionLis
}
// we expect the ranges to be sorted here
- std::sort(rowRanges.begin(), rowRanges.end(), RowRangeLessThan);
+ qSort(rowRanges.begin(), rowRanges.end(), RowRangeLessThan);
// now delete the rows, starting with the last row:
for (int i = rowRanges.count()-1; i >= 0; i--)
diff --git a/core/utilities/geolocation/geoiface/tracks/trackreader.cpp b/core/utilities/geolocation/geoiface/tracks/trackreader.cpp
index 71fef9804e..cb58917c08 100644
--- a/core/utilities/geolocation/geoiface/tracks/trackreader.cpp
+++ b/core/utilities/geolocation/geoiface/tracks/trackreader.cpp
@@ -330,7 +330,7 @@ TrackReader::TrackReadResult TrackReader::loadTrackFile(const QUrl& url)
}
// the correlation algorithm relies on sorted data, therefore sort now
- std::sort(parsedData.track.points.begin(), parsedData.track.points.end(), TrackManager::TrackPoint::EarlierThan);
+ qSort(parsedData.track.points.begin(), parsedData.track.points.end(), TrackManager::TrackPoint::EarlierThan);
return parsedData;
}
diff --git a/core/utilities/importui/models/importimagemodel.cpp b/core/utilities/importui/models/importimagemodel.cpp
index 644f436a2a..ce351efa10 100644
--- a/core/utilities/importui/models/importimagemodel.cpp
+++ b/core/utilities/importui/models/importimagemodel.cpp
@@ -926,7 +926,7 @@ QList<QPair<int, int> > ImportImageModelIncrementalUpdater::toContiguousPairs(co
}
QList<int> indices(unsorted);
- std::sort(indices.begin(), indices.end());
+ qSort(indices);
QPair<int, int> pair(indices.first(), indices.first());
diff --git a/core/utilities/maintenance/imageinfojob.cpp b/core/utilities/maintenance/imageinfojob.cpp
index d3915ceebe..8277e14368 100644
--- a/core/utilities/maintenance/imageinfojob.cpp
+++ b/core/utilities/maintenance/imageinfojob.cpp
@@ -175,7 +175,7 @@ void ImageInfoJob::slotData(const QList<ImageListerRecord>& records)
}
// Sort the itemList based on name
- std::sort(itemsList.begin(), itemsList.end(), ImageInfoList::namefileLessThan);
+ qSort(itemsList.begin(), itemsList.end(), ImageInfoList::namefileLessThan);
emit signalItemsInfo(itemsList);
}
diff --git a/core/utilities/searchwindow/searchutilities.cpp b/core/utilities/searchwindow/searchutilities.cpp
index 3a7fe43410..622a0a73ad 100644
--- a/core/utilities/searchwindow/searchutilities.cpp
+++ b/core/utilities/searchwindow/searchutilities.cpp
@@ -296,7 +296,7 @@ void CustomStepsDoubleSpinBox::setSuggestedValues(const QList<double>& values)
this, SLOT(slotValueChanged(double)));
d->values = values;
- std::sort(d->values.begin(), d->values.end());
+ qSort(d->values);
}
void CustomStepsDoubleSpinBox::setSuggestedInitialValue(double initialValue)
@@ -469,7 +469,7 @@ void CustomStepsIntSpinBox::setSuggestedValues(const QList<int>& values)
this, SLOT(slotValueChanged(int)));
d->values = values;
- std::sort(d->values.begin(), d->values.end());
+ qSort(d->values);
}
void CustomStepsIntSpinBox::setSuggestedInitialValue(int initialValue)
@@ -491,7 +491,7 @@ void CustomStepsIntSpinBox::setInvertStepping(bool invert)
void CustomStepsIntSpinBox::enableFractionMagic(const QString& prefix)
{
d->fractionPrefix = prefix;
- std::sort(d->values.begin(), d->values.end(), qGreater<int>());
+ qSort(d->values.begin(), d->values.end(), qGreater<int>());
}
void CustomStepsIntSpinBox::reset()
--
2.13.6

View File

@ -1,105 +0,0 @@
From d19d149b55c3f25c3c7f1c69c0b777acf0c83024 Mon Sep 17 00:00:00 2001
From: Wolfgang Bauer <wbauer@tmo.at>
Date: Sun, 14 Jan 2018 01:47:45 +0100
Subject: [PATCH] Revert "replace obsolete qSort() function"
This reverts commit 734b9d685f458e5f4dadc61216fbf12f9dc59ca6.
It breaks compilation with GCC 4.8.
---
facebook/fbtalker.cpp | 3 ++-
flashexport/simpleviewer.cpp | 2 +-
googleservices/gdtalker.cpp | 2 +-
googleservices/gptalker.cpp | 2 +-
piwigo/piwigotalker.cpp | 2 +-
smug/smugtalker.cpp | 2 +-
6 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/extra/kipi-plugins/facebook/fbtalker.cpp b/extra/kipi-plugins/facebook/fbtalker.cpp
index 24d8b9723..71d704ee0 100644
--- a/extra/kipi-plugins/facebook/fbtalker.cpp
+++ b/extra/kipi-plugins/facebook/fbtalker.cpp
@@ -43,6 +43,7 @@
#include <QPlainTextEdit>
#include <QList>
#include <QDesktopServices>
+#include <QDebug>
#include <QApplication>
#include <QPushButton>
#include <QDialog>
@@ -863,7 +864,7 @@ void FbTalker::parseResponseListAlbums(const QByteArray& data)
errMsg = obj[QString::fromLatin1("message")].toString();
}
- std::sort(albumsList.begin(), albumsList.end());
+ qSort(albumsList.begin(), albumsList.end());
emit signalBusy(false);
emit signalListAlbumsDone(errCode, errorToText(errCode, errMsg),
diff --git a/extra/kipi-plugins/flashexport/simpleviewer.cpp b/extra/kipi-plugins/flashexport/simpleviewer.cpp
index 618f1b30a..b60f7fdda 100644
--- a/extra/kipi-plugins/flashexport/simpleviewer.cpp
+++ b/extra/kipi-plugins/flashexport/simpleviewer.cpp
@@ -530,7 +530,7 @@ void SimpleViewer::processQUrlList(QList<QUrl>& images, QDomDocument& xmlDoc,
QUrl imagesDir = QUrl::fromLocalFile(d->tempDir->path());
imagesDir.setPath(imagesDir.path() + QLatin1String("/images/"));
- std::sort(images.begin(), images.end(), cmpUrl);
+ qSort(images.begin(), images.end(), cmpUrl);
for (QList<QUrl>::ConstIterator it = images.constBegin();
!d->canceled && (it != images.constEnd()) ; ++it)
diff --git a/extra/kipi-plugins/googleservices/gdtalker.cpp b/extra/kipi-plugins/googleservices/gdtalker.cpp
index b7ba5295f..d719089f1 100644
--- a/extra/kipi-plugins/googleservices/gdtalker.cpp
+++ b/extra/kipi-plugins/googleservices/gdtalker.cpp
@@ -355,7 +355,7 @@ void GDTalker::parseResponseListFolders(const QByteArray& data)
albumList.append(fps);
}
- std::sort(albumList.begin(), albumList.end(), gdriveLessThan);
+ qSort(albumList.begin(), albumList.end(), gdriveLessThan);
emit signalBusy(false);
emit signalListAlbumsDone(1,QString(),albumList);
}
diff --git a/extra/kipi-plugins/googleservices/gptalker.cpp b/extra/kipi-plugins/googleservices/gptalker.cpp
index fe839a7d2..264acfa79 100644
--- a/extra/kipi-plugins/googleservices/gptalker.cpp
+++ b/extra/kipi-plugins/googleservices/gptalker.cpp
@@ -745,7 +745,7 @@ void GPTalker::parseResponseListAlbums(const QByteArray& data)
node = node.nextSibling();
}
- std::sort(albumList.begin(), albumList.end(), gphotoLessThan);
+ qSort(albumList.begin(), albumList.end(), gphotoLessThan);
emit signalListAlbumsDone(1, QString::fromLatin1(""), albumList);
}
diff --git a/extra/kipi-plugins/piwigo/piwigotalker.cpp b/extra/kipi-plugins/piwigo/piwigotalker.cpp
index 3fbfbec66..81c8368e0 100644
--- a/extra/kipi-plugins/piwigo/piwigotalker.cpp
+++ b/extra/kipi-plugins/piwigo/piwigotalker.cpp
@@ -569,7 +569,7 @@ void PiwigoTalker::parseResponseListAlbums(const QByteArray& data)
}
// We need parent albums to come first for rest of the code to work
- std::sort(albumList.begin(), albumList.end());
+ qSort(albumList);
emit signalAlbums(albumList);
}
diff --git a/extra/kipi-plugins/smug/smugtalker.cpp b/extra/kipi-plugins/smug/smugtalker.cpp
index 873a1f061..9349be00f 100644
--- a/extra/kipi-plugins/smug/smugtalker.cpp
+++ b/extra/kipi-plugins/smug/smugtalker.cpp
@@ -846,7 +846,7 @@ void SmugTalker::parseResponseListAlbums(const QByteArray& data)
if (errCode == 15) // 15: empty list
errCode = 0;
- std::sort(albumsList.begin(), albumsList.end(), SmugAlbum::lessThan);
+ qSort(albumsList.begin(), albumsList.end(), SmugAlbum::lessThan);
emit signalBusy(false);
emit signalListAlbumsDone(errCode, errorToText(errCode, errMsg), albumsList);
--
2.13.6

File diff suppressed because it is too large Load Diff

View File

@ -13,15 +13,15 @@ diff --git a/core/CMakeLists.txt b/core/CMakeLists.txt
index 041865ffcc..4518ea1815 100644 index 041865ffcc..4518ea1815 100644
--- a/core/CMakeLists.txt --- a/core/CMakeLists.txt
+++ b/core/CMakeLists.txt +++ b/core/CMakeLists.txt
@@ -58,7 +58,7 @@ set(QT_MIN_VERSION "5.6.0") @@ -56,7 +56,7 @@ set(QT_MIN_VERSION "5.6.0")
set(KIPI_MIN_VERSION "5.0.0") set(KF5_MIN_VERSION "5.1.0")
set(KSANE_MIN_VERSION "5.0.0") set(QT_MIN_VERSION "5.6.0")
set(LENSFUN_MIN_VERSION "0.2.6.0") set(LENSFUN_MIN_VERSION "0.2.6.0")
-set(EXIV2_MIN_VERSION "0.26") -set(EXIV2_MIN_VERSION "0.26")
+set(EXIV2_MIN_VERSION "0.25") +set(EXIV2_MIN_VERSION "0.25")
set(AKONADI_MIN_VERSION "4.89.0") # Akonadi Contact dependency set(OPENCV_MIN_VERSION "3.1.0")
set(CALENDAR_MIN_VERSION "4.81.0") # Calendar Core dependency set(QTAV_MIN_VERSION "1.12.0")
set(QTAV_MIN_VERSION "1.12.0") set(KSANE_MIN_VERSION "5.0.0") # For digital scanner support.
-- --
2.16.4 2.16.4

View File

@ -1,133 +0,0 @@
From cb808f574248a0c96894338fdcf03b12fbbc080d Mon Sep 17 00:00:00 2001
From: Gilles Caulier <caulier.gilles@gmail.com>
Date: Sun, 7 Oct 2018 10:17:30 +0200
Subject: add support of Exiv2 0.27
---
core/cmake/modules/FindExiv2.cmake | 75 +++++++++++++++++++++++++++-----------
1 file changed, 53 insertions(+), 22 deletions(-)
diff --git a/core/cmake/modules/FindExiv2.cmake b/core/cmake/modules/FindExiv2.cmake
index 1e971a3..02d2943 100644
--- a/core/cmake/modules/FindExiv2.cmake
+++ b/core/cmake/modules/FindExiv2.cmake
@@ -1,7 +1,7 @@
# - Try to find the Exiv2 library
#
# EXIV2_MIN_VERSION - You can set this variable to the minimum version you need
-# before doing FIND_PACKAGE(Exiv2). The default is 0.15.
+# before doing FIND_PACKAGE(Exiv2). The default is 0.26.
#
# Once done this will define
#
@@ -11,34 +11,41 @@
# EXIV2_DEFINITIONS - Compiler switches required for using libexiv2
#
# The minimum required version of Exiv2 can be specified using the
-# standard syntax, e.g. find_package(Exiv2 0.17)
+# standard syntax, e.g. find_package(Exiv2 0.26)
#
# For compatibility, also the variable EXIV2_MIN_VERSION can be set to the minimum version
-# you need before doing FIND_PACKAGE(Exiv2). The default is 0.15.
+# you need before doing FIND_PACKAGE(Exiv2). The default is 0.26.
#
# Copyright (c) 2010, Alexander Neundorf, <neundorf at kde dot org>
-# Copyright (c) 2008-2017, Gilles Caulier, <caulier dot gilles at gmail dot com>
+# Copyright (c) 2008-2018, Gilles Caulier, <caulier dot gilles at gmail dot com>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
# Support EXIV2_MIN_VERSION for compatibility:
+
if(NOT Exiv2_FIND_VERSION)
- set(Exiv2_FIND_VERSION "${EXIV2_MIN_VERSION}")
-endif(NOT Exiv2_FIND_VERSION)
-# the minimum version of exiv2 we require
+ set(Exiv2_FIND_VERSION "${EXIV2_MIN_VERSION}")
+
+endif()
+
+# The minimum version of exiv2 we require
if(NOT Exiv2_FIND_VERSION)
- set(Exiv2_FIND_VERSION "0.15")
-endif(NOT Exiv2_FIND_VERSION)
-if (NOT WIN32)
+ set(Exiv2_FIND_VERSION "0.26")
+
+endif()
+
+if(NOT WIN32)
+
# use pkg-config to get the directories and then use these values
# in the FIND_PATH() and FIND_LIBRARY() calls
find_package(PkgConfig)
pkg_check_modules(PC_EXIV2 QUIET exiv2)
set(EXIV2_DEFINITIONS ${PC_EXIV2_CFLAGS_OTHER})
-endif (NOT WIN32)
+
+endif()
find_path(EXIV2_INCLUDE_DIR NAMES exiv2/exif.hpp
HINTS
@@ -52,20 +59,44 @@ find_library(EXIV2_LIBRARY NAMES exiv2 libexiv2
${PC_EXIV2_LIBRARY_DIRS}
)
-# Get the version number from exiv2/version.hpp and store it in the cache:
-if(EXIV2_INCLUDE_DIR AND NOT EXIV2_VERSION)
- file(READ ${EXIV2_INCLUDE_DIR}/exiv2/version.hpp EXIV2_VERSION_CONTENT)
- string(REGEX MATCH "#define EXIV2_MAJOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}")
- set(EXIV2_VERSION_MAJOR "${CMAKE_MATCH_1}")
+if (EXIV2_INCLUDE_DIR AND NOT EXIV2_VERSION)
+
+ # For Exiv2 <= 0.26, get the version number from exiv2/version.hpp and store it in the cache:
+
+ file(READ ${EXIV2_INCLUDE_DIR}/exiv2/version.hpp EXIV2_VERSION_CONTENT)
+ string(REGEX MATCH "#define EXIV2_MAJOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}")
+ set(EXIV2_VERSION_MAJOR "${CMAKE_MATCH_1}")
+
+ string(REGEX MATCH "#define EXIV2_MINOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}")
+ set(EXIV2_VERSION_MINOR "${CMAKE_MATCH_1}")
+
+ string(REGEX MATCH "#define EXIV2_PATCH_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}")
+ set(EXIV2_VERSION_PATCH "${CMAKE_MATCH_1}")
+
+ if(EXIV2_VERSION_MAJOR AND EXIV2_VERSION_MINOR AND EXIV2_VERSION_PATCH)
+
+ set(EXIV2_VERSION "${EXIV2_VERSION_MAJOR}.${EXIV2_VERSION_MINOR}.${EXIV2_VERSION_PATCH}"
+ CACHE STRING "Version number of Exiv2" FORCE)
+ else()
+
+ # For Exiv2 >= 0.27, get the version number from exiv2/exv_conf.h and store it in the cache:
+
+ file(READ ${EXIV2_INCLUDE_DIR}/exiv2/exv_conf.h EXIV2_VERSION_CONTENT)
+ string(REGEX MATCH "#define EXIV2_MAJOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}")
+ set(EXIV2_VERSION_MAJOR "${CMAKE_MATCH_1}")
+
+ string(REGEX MATCH "#define EXIV2_MINOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}")
+ set(EXIV2_VERSION_MINOR "${CMAKE_MATCH_1}")
+
+ string(REGEX MATCH "#define EXIV2_PATCH_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}")
+ set(EXIV2_VERSION_PATCH "${CMAKE_MATCH_1}")
- string(REGEX MATCH "#define EXIV2_MINOR_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}")
- set(EXIV2_VERSION_MINOR "${CMAKE_MATCH_1}")
+ set(EXIV2_VERSION "${EXIV2_VERSION_MAJOR}.${EXIV2_VERSION_MINOR}.${EXIV2_VERSION_PATCH}"
+ CACHE STRING "Version number of Exiv2" FORCE)
- string(REGEX MATCH "#define EXIV2_PATCH_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}")
- set(EXIV2_VERSION_PATCH "${CMAKE_MATCH_1}")
+ endif()
- set(EXIV2_VERSION "${EXIV2_VERSION_MAJOR}.${EXIV2_VERSION_MINOR}.${EXIV2_VERSION_PATCH}" CACHE STRING "Version number of Exiv2" FORCE)
-endif(EXIV2_INCLUDE_DIR AND NOT EXIV2_VERSION)
+endif()
set(EXIV2_LIBRARIES "${EXIV2_LIBRARY}")
--
cgit v1.1

View File

@ -1,48 +0,0 @@
From 87e5ee6503f084b4bd9c8e1b1311a76655c2685e Mon Sep 17 00:00:00 2001
From: Gilles Caulier <caulier.gilles@gmail.com>
Date: Sat, 27 Oct 2018 09:58:38 +0200
Subject: exiv2 0.27 RC1 generate now libexiv2lib.so at install stage. Adjust
the find cmake script accordingly. Print all values found while parsing host
system to detect the library
---
core/cmake/modules/FindExiv2.cmake | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/core/cmake/modules/FindExiv2.cmake b/core/cmake/modules/FindExiv2.cmake
index 2fcee5b..c677832 100644
--- a/core/cmake/modules/FindExiv2.cmake
+++ b/core/cmake/modules/FindExiv2.cmake
@@ -5,7 +5,8 @@
#
# Once done this will define
#
-# Exiv2_FOUND - system has libexiv2
+# EXIV2_FOUND - system has libexiv2
+# EXIV2_VERSION - the version of libexiv2
# EXIV2_INCLUDE_DIR - the libexiv2 include directory
# EXIV2_LIBRARIES - Link these to use libexiv2
# EXIV2_DEFINITIONS - Compiler switches required for using libexiv2
@@ -53,7 +54,7 @@ find_path(EXIV2_INCLUDE_DIR NAMES exiv2/exif.hpp
${PC_EXIV2_INCLUDE_DIRS}
)
-find_library(EXIV2_LIBRARY NAMES exiv2 libexiv2
+find_library(EXIV2_LIBRARY NAMES exiv2 libexiv2 exiv2lib
HINTS
${PC_EXIV2_LIBDIR}
${PC_EXIV2_LIBRARY_DIRS}
@@ -106,4 +107,10 @@ include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Exiv2 REQUIRED_VARS EXIV2_LIBRARY EXIV2_INCLUDE_DIR
VERSION_VAR EXIV2_VERSION)
+MESSAGE(STATUS "EXIV2_FOUND = ${EXIV2_FOUND}")
+MESSAGE(STATUS "EXIV2_VERSION = ${EXIV2_VERSION}")
+MESSAGE(STATUS "EXIV2_INCLUDE_DIR = ${EXIV2_INCLUDE_DIR}")
+MESSAGE(STATUS "EXIV2_LIBRARY = ${EXIV2_LIBRARY}")
+MESSAGE(STATUS "EXIV2_DEFINITIONS = ${EXIV2_DEFINITIONS}")
+
mark_as_advanced(EXIV2_INCLUDE_DIR EXIV2_LIBRARY)
--
cgit v1.1

View File

@ -1,29 +0,0 @@
From 16e452c62a81f1b70844c97f18137a004ab08b65 Mon Sep 17 00:00:00 2001
From: Gilles Caulier <caulier.gilles@gmail.com>
Date: Sun, 7 Oct 2018 11:32:44 +0200
Subject: be compatible with backward 0.26
---
core/cmake/modules/FindExiv2.cmake | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
(limited to 'core/cmake/modules/FindExiv2.cmake')
diff --git a/core/cmake/modules/FindExiv2.cmake b/core/cmake/modules/FindExiv2.cmake
index 02d2943..2fcee5b 100644
--- a/core/cmake/modules/FindExiv2.cmake
+++ b/core/cmake/modules/FindExiv2.cmake
@@ -73,7 +73,9 @@ if (EXIV2_INCLUDE_DIR AND NOT EXIV2_VERSION)
string(REGEX MATCH "#define EXIV2_PATCH_VERSION +\\( *([0-9]+) *\\)" _dummy "${EXIV2_VERSION_CONTENT}")
set(EXIV2_VERSION_PATCH "${CMAKE_MATCH_1}")
- if(EXIV2_VERSION_MAJOR AND EXIV2_VERSION_MINOR AND EXIV2_VERSION_PATCH)
+ if(NOT "${EXIV2_VERSION_MAJOR}" STREQUAL "" AND
+ NOT "${EXIV2_VERSION_MINOR}" STREQUAL "" AND
+ NOT "${EXIV2_VERSION_PATCH}" STREQUAL "")
set(EXIV2_VERSION "${EXIV2_VERSION_MAJOR}.${EXIV2_VERSION_MINOR}.${EXIV2_VERSION_PATCH}"
CACHE STRING "Version number of Exiv2" FORCE)
--
cgit v1.1

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:660d32eedcfd6fe1a75170a651fab068ae62f7f092ae710771a2f32a1c550d1b
size 132931184

3
digikam-6.0.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6e4f0ee52772ea2baef38fc9b96f18ca10f165f0c5bda71d8161a4eded26fb47
size 331386500

View File

@ -1,3 +1,104 @@
-------------------------------------------------------------------
Fri Feb 22 15:56:21 UTC 2019 - wbauer@tmo.at
- Update to 6.0.0
* https://www.digikam.org/news/2019-02-10-6.0.0_release_announcement/
- New features (from NEWS):
ImageEditor : Add Web services Import and Export tools.
Showfoto : Add Web services Import and Export tools.
LightTable : Add Web services Import and Export tools.
Database : Similarity database has been moved to a dedicated file
to not bloat core database with computed finger-prints.
This will speed-up query in core database in case of
Similarity feature is used.
Database : New video metadata parser based on ffmpeg to populate
database.
Search : Add video support to find files based on properties
registered on database.
General : Add new Exiv2 0.27 support.
General : Add new Lensfun 0.4 support.
General : Use DrMinGW has crash handler under Windows.
General : Port all export/import tool to OAuth2 authentification.
General : New tool to adjust quickly time and date information
from items. Tool will be available in AlbumView,
ImageEditor, LightTable, and Showfoto.
General : New function to group images by timelapse / burst
General : New tool to export to Pinterest social network.
General : New tool to export to OneDrive webservice.
General : New tool to export to Box webservice.
General : New tool to export to Ipfs webservice.
General : All bundles use last Lenfun 0.3.95 to process
automatic lens correction.
General : Add QWebEngine support.
General : Fix all Krazy static analyzer reports.
General : Update internal Libraw to last 0.19.2.
New camera supported:
* Apple: Phone 8, iPhone 8 plus, iPhone X
* BlackMagic: URSA Mini 4k, URSA Mini 4.6k, URSA Mini Pro 4.6k
* Canon: PowerShot A410, A540, D10, ELPH 130 IS, ELPH 160 IS,
SD750, SX100 IS,SX130 IS, SX160 IS, SX510 HS,
SX10 IS, IXUS 900Ti, PowerShot G1 X Mark III,
G9 X Mark II, EOS 6D Mark II, EOS 77D, EOS 200D,
EOS 800D, EOS M6, EOS M100
* Casio: EX-ZR4100/5100
* DJI: Phantom4 Pro/Pro+, Zenmuse X5, Zenmuse X5R
* FujiFilm: S6500fd, GFX 50S, X100f, X-A3, X-A5, X-A10, X-A20,
X-E3, X-H1, X-T20
* Hasselblad: H6D-100c, A6D-100c
* Huawei: P9 (EVA-L09/AL00), Honor6a, Honor9, Mate10 (BLA-L29)
* Leica: CL, M10, TL2
* LG: V20 (F800K), VS995
* Nikon: D850, D5600, D7500, Coolpix B700
* Olympus: E-PL9, E-M10 Mark III, TG-5
* OnePlus: A3303, A5000
* Panasonic: DMC-FZ45, DMC-FZ72, DC-FZ80/82, DC-G9 (std. res mode only),
DC-GF10/GF90, DC-GH5, DC-GX9, DC-GX800/850/GF9,
DMC-LX1, DC-ZS70 (DC-TZ90/91/92, DC-T93),
DC-TZ100/101/ZS100, DC-TZ200/ZS200
* PARROT: Bebop 2, Bebop Drone
* Pentax: KP
* PhaseOne: IQ3 100MP Trichromatic
* Samsung: Galaxy Nexus, Galaxy S3, S6 (SM-G920F), S7, S7 Edge,
S8 (SM-G950U)
* Sony: A7R III, A9, DSC-RX0, DSC-RX10IV
* Yi: M1
* YUNEEC: CGO3, CGO3P
* Xiaoyi: YIAC3 (YI 4k)
Collection : Add tool button to update an existing collection to the new
drive or path.
Tags : Add possibility to merge tags by drag & drop.
IconView : Add capability to re-organize the contents manually.
IconView : Add capability to separate the contents by month.
HTML Gallery : New Vanilla theme to emulate export to HTML from Adobe LightRoom.
HTML Gallery : New Blue Frame theme.
HTML Gallery : New Kiosk-Mode theme.
- 630 bugs fixed
- Drop patches merged upstream:
* Add-QtWebEngine-support.patch
* fix-black-Welcome-page-by-clicking-on-a-link.patch
* add-support-for-Exiv2-0.27.patch
* be-compatible-with-backward-0.26.patch
* adjust-find-cmake-script-to-exiv2-0.27-RC1.patch
* first-patch-to-be-compatible-with-Exiv2-0.27.patch
* f27ab9c1051bd0a0.patch
* fix-compile.patch
- Drop docs subpackage, docs are no longer included
- Drop kipi-plugins subpackage, no longer included
- Drop patch for kipi-plugins that's no longer relevant:
* 0002-Revert-replace-obsolete-qSort-function.patch
- Drop 0001-Revert-replace-obsolete-qSort-function.patch and build
with gcc7 on Leap 42.3 instead
- Refresh Lower-minimum-exiv2-version.patch
- Remove kipi-plugins requirement, digikam doesn't use libkipi
anymore
- Recommend enblend-enfuse and hugin (previously recommended by
kipi-plugins), needed for certain functionality in digikam
- Update/cleanup build requirements
- Use fdupes without -s option
- Make lang package conditional
- Handle soversion via a macro, bump to 6 following upstream
- Run spec-cleaner
------------------------------------------------------------------- -------------------------------------------------------------------
Wed Jan 2 12:21:09 UTC 2019 - wbauer@tmo.at Wed Jan 2 12:21:09 UTC 2019 - wbauer@tmo.at

View File

@ -1,7 +1,7 @@
# #
# spec file for package digikam # spec file for package digikam
# #
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -16,40 +16,20 @@
# #
%define soversion 6
%bcond_without lang
Name: digikam Name: digikam
Version: 5.9.0 Version: 6.0.0
Release: 0 Release: 0
Summary: A KDE Photo Manager Summary: A KDE Photo Manager
License: GPL-2.0-or-later License: GPL-2.0-or-later
Group: Productivity/Graphics/Viewers Group: Productivity/Graphics/Viewers
Url: http://www.digikam.org/ URL: http://www.digikam.org/
Source0: http://download.kde.org/stable/%{name}/%{name}-%{version}.tar.xz Source0: http://download.kde.org/stable/%{name}/%{version}/%{name}-%{version}.tar.xz
# PATCH-FIX-OPENSUSE 0001-Disable-detection-of-OpenGL-for-GLES-platforms.patch -- The OpenGL slideshow depends on Desktop GL, see kde#383715 # PATCH-FIX-OPENSUSE 0001-Disable-detection-of-OpenGL-for-GLES-platforms.patch -- The OpenGL slideshow depends on Desktop GL, see kde#383715
Patch0: 0001-Disable-detection-of-OpenGL-for-GLES-platforms.patch Patch0: 0001-Disable-detection-of-OpenGL-for-GLES-platforms.patch
# PATCH-FIX-OPENSUSE # PATCH-FIX-OPENSUSE
Patch1: 0001-Revert-replace-obsolete-qSort-function.patch Patch1: Lower-minimum-exiv2-version.patch
# PATCH-FIX-OPENSUSE
Patch2: 0002-Revert-replace-obsolete-qSort-function.patch
# PATCH-FIX-OPENSUSE
Patch3: Lower-minimum-exiv2-version.patch
# PATCH-FEATURE-UPSTREAM
Patch4: Add-QtWebEngine-support.patch
# PATCH-FIX-UPSTREAM
Patch5: fix-black-Welcome-page-by-clicking-on-a-link.patch
# PATCH-FIX-UPSTREAM -- fix build with exiv2-0.27
Patch6: add-support-for-Exiv2-0.27.patch
Patch7: be-compatible-with-backward-0.26.patch
Patch8: adjust-find-cmake-script-to-exiv2-0.27-RC1.patch
Patch9: first-patch-to-be-compatible-with-Exiv2-0.27.patch
Patch10: f27ab9c1051bd0a0.patch
Patch11: fix-compile.patch
#This pulls in QWebEngine, which is not available on ppc64
%ifarch %ix86 x86_64 %arm aarch64 mips mips64
BuildRequires: akonadi-contact-devel
BuildRequires: pkgconfig(Qt5WebEngineWidgets)
%else
BuildRequires: pkgconfig(Qt5WebKitWidgets)
%endif
BuildRequires: QtAV-devel >= 1.12 BuildRequires: QtAV-devel >= 1.12
BuildRequires: bison BuildRequires: bison
BuildRequires: boost-devel BuildRequires: boost-devel
@ -57,8 +37,7 @@ BuildRequires: doxygen
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: flex BuildRequires: flex
BuildRequires: graphviz-devel BuildRequires: graphviz-devel
BuildRequires: gtk2-devel BuildRequires: hicolor-icon-theme
BuildRequires: karchive-devel
BuildRequires: kconfig-devel BuildRequires: kconfig-devel
BuildRequires: kcoreaddons-devel BuildRequires: kcoreaddons-devel
BuildRequires: kdoctools-devel BuildRequires: kdoctools-devel
@ -76,44 +55,44 @@ BuildRequires: lensfun-devel
BuildRequires: libeigen3-devel BuildRequires: libeigen3-devel
BuildRequires: libexiv2-devel >= 0.25 BuildRequires: libexiv2-devel >= 0.25
BuildRequires: libexpat-devel BuildRequires: libexpat-devel
BuildRequires: libgcrypt-devel
BuildRequires: libgpod-devel
BuildRequires: libjasper-devel BuildRequires: libjasper-devel
BuildRequires: libkipi-devel >= 16.04.0
BuildRequires: libksane-devel >= 15.12.0 BuildRequires: libksane-devel >= 15.12.0
BuildRequires: liblcms2-devel BuildRequires: liblcms2-devel
BuildRequires: liblqr-devel BuildRequires: liblqr-devel
BuildRequires: libmediawiki-devel BuildRequires: libpng-devel
BuildRequires: libmysqlclient-devel
BuildRequires: libmysqld-devel
BuildRequires: libpgf-devel
BuildRequires: libtiff-devel BuildRequires: libtiff-devel
BuildRequires: libusb-devel BuildRequires: libxml2-devel
BuildRequires: libxslt-devel
BuildRequires: marble-devel BuildRequires: marble-devel
BuildRequires: mysql
BuildRequires: opencv-devel BuildRequires: opencv-devel
BuildRequires: pkgconfig
BuildRequires: solid-devel BuildRequires: solid-devel
BuildRequires: threadweaver-devel >= 5.1.0 BuildRequires: threadweaver-devel >= 5.1.0
BuildRequires: update-desktop-files BuildRequires: update-desktop-files
BuildRequires: cmake(KF5CalendarCore) BuildRequires: cmake(KF5CalendarCore)
BuildRequires: pkgconfig(Qt5Concurrent) BuildRequires: cmake(Qt5Concurrent)
BuildRequires: pkgconfig(Qt5Core) >= 5.6.0 BuildRequires: cmake(Qt5Core) >= 5.6.0
BuildRequires: pkgconfig(Qt5DBus) BuildRequires: cmake(Qt5DBus)
BuildRequires: pkgconfig(Qt5Network) BuildRequires: cmake(Qt5Gui)
BuildRequires: pkgconfig(Qt5OpenGL) BuildRequires: cmake(Qt5Network)
BuildRequires: pkgconfig(Qt5PrintSupport) BuildRequires: cmake(Qt5OpenGL)
BuildRequires: pkgconfig(Qt5Sql) BuildRequires: cmake(Qt5PrintSupport)
BuildRequires: pkgconfig(Qt5Svg) BuildRequires: cmake(Qt5Sql)
BuildRequires: pkgconfig(Qt5Test) BuildRequires: cmake(Qt5Test)
BuildRequires: pkgconfig(Qt5X11Extras) BuildRequires: cmake(Qt5Widgets)
BuildRequires: pkgconfig(Qt5Xml) BuildRequires: cmake(Qt5X11Extras)
BuildRequires: pkgconfig(Qt5XmlPatterns) BuildRequires: cmake(Qt5Xml)
BuildRequires: cmake(Qt5XmlPatterns)
BuildRequires: pkgconfig(libavcodec)
BuildRequires: pkgconfig(libavfilter)
BuildRequires: pkgconfig(libavformat)
BuildRequires: pkgconfig(libavutil)
BuildRequires: pkgconfig(libgphoto2) >= 2.4.0 BuildRequires: pkgconfig(libgphoto2) >= 2.4.0
Requires: kipi-plugins >= %{version} BuildRequires: pkgconfig(libswscale)
Requires: libQt5Sql5-sqlite Requires: libQt5Sql5-sqlite
Recommends: %{name}-doc
Recommends: %{name}-lang Recommends: %{name}-lang
BuildRoot: %{_tmppath}/%{name}-%{version}-build Recommends: enblend-enfuse
Recommends: hugin
Recommends: marble Recommends: marble
Recommends: showfoto Recommends: showfoto
# Got merged into libimageeditor in 5.2.0 # Got merged into libimageeditor in 5.2.0
@ -128,6 +107,20 @@ Obsoletes: %{name}-plugin-fxfilters < %{version}
Provides: %{name}-plugin-transform = %{version} Provides: %{name}-plugin-transform = %{version}
Obsoletes: %{name}-plugin-transform < %{version} Obsoletes: %{name}-plugin-transform < %{version}
Obsoletes: digikam-libs < %{version} Obsoletes: digikam-libs < %{version}
# Docs no longer included in 6.0.0
Provides: %{name}-doc = %{version}
Obsoletes: %{name}-doc < %{version}
#This pulls in QWebEngine, which is not available on ppc64
%ifarch %{ix86} x86_64 %{arm} aarch64 mips mips64
BuildRequires: akonadi-contact-devel
BuildRequires: pkgconfig(Qt5WebEngineWidgets)
%else
BuildRequires: pkgconfig(Qt5WebKitWidgets)
%endif
%if 0%{?suse_version} < 1320
# It does not build with the default compiler (GCC 4.8) on Leap 42.x
BuildRequires: gcc7-c++
%endif
%description %description
digiKam is a simple digital photo management application for KDE, which digiKam is a simple digital photo management application for KDE, which
@ -137,88 +130,47 @@ by directory layout, or by custom collections. An easy-to-use interface
that enables you to connect to your camera and preview, download, or that enables you to connect to your camera and preview, download, or
delete your images, is provided. delete your images, is provided.
%package doc
Summary: Documentation of Digikam
License: GFDL-1.2-only
Group: Documentation/HTML
BuildArch: noarch
%description doc
This package contains the documentation for digikam
%package -n kipi-plugins
Summary: KDE Plug-Ins for Image Manipulation
License: GPL-2.0-or-later
Group: Productivity/Graphics/Other
Recommends: ImageMagick
Recommends: enblend-enfuse
Recommends: hugin
Recommends: kipi-plugins-lang = %{version}
Obsoletes: kipi-plugins-acquireimage < %{version}
Obsoletes: kipi-plugins-geolocation < %{version}
Obsoletes: kipi-plugins5 < %{version}
Provides: kipi-plugins5 = %{version}
Obsoletes: kipi-plugin-icons < %{version}
Provides: kipi-plugin-icons = %{version}
%description -n kipi-plugins
A set of plug-ins for the KDE KIPI interface, used by some KDE imaging
applications.
%package -n showfoto %package -n showfoto
Summary: DigiKam: Showfoto Summary: DigiKam: Showfoto
License: GPL-2.0-or-later
Group: Productivity/Graphics/Viewers Group: Productivity/Graphics/Viewers
Supplements: %{name} Supplements: %{name}
%description -n showfoto %description -n showfoto
Additional program to browse and view photos Additional program to browse and view photos
%package -n libdigikamcore5 %package -n libdigikamcore%{soversion}
Summary: The main digikam libraries Summary: The main digikam libraries
License: GPL-2.0-or-later
Group: Development/Libraries/KDE Group: Development/Libraries/KDE
%description -n libdigikamcore5 %description -n libdigikamcore%{soversion}
The main digikam libraries that are being shared between showfoto and digikam The main digikam libraries that are being shared between showfoto and digikam
%lang_package %lang_package
%lang_package -n kipi-plugins
%prep %prep
%setup -q -n %{name}-%{version} %setup -q
%ifarch %arm aarch64 %ifarch %{arm} aarch64
# Disable OpenGL slideshow on embedded platforms # Disable OpenGL slideshow on embedded platforms
%patch0 -p1 %patch0 -p1
%endif %endif
%if 0%{?suse_version} < 1320 %if 0%{?suse_version} < 1320
%patch1 -p1 %patch1 -p1
%patch2 -p1
%patch3 -p1
%endif %endif
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%patch10 -p1
%patch11 -p1
# Remove build time references so build-compare can do its work # Remove build time references so build-compare can do its work
FAKE_BUILDDATE=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%%b %%e %%Y') FAKE_BUILDDATE=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%%b %%e %%Y')
FAKE_BUILDTIME=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%%H:%%M') FAKE_BUILDTIME=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%%H:%%M')
sed -i "s/__DATE__/\"$FAKE_BUILDDATE\"/" core/app/utils/digikam_version.h.cmake.in sed -i "s/__DATE__/\"$FAKE_BUILDDATE\"/" core/app/utils/digikam_version.h.cmake.in
sed -i "s/__DATE__/\"$FAKE_BUILDDATE\"/g" extra/kipi-plugins/common/libkipiplugins/tools/kpversion.h.cmake.in
sed -i "s/__DATE__/\"$FAKE_BUILDDATE\"/g" core/libs/dimg/filters/greycstoration/cimg/CImg.h sed -i "s/__DATE__/\"$FAKE_BUILDDATE\"/g" core/libs/dimg/filters/greycstoration/cimg/CImg.h
sed -i "s/__TIME__/\"$FAKE_BUILDTIME\"/g" core/libs/dimg/filters/greycstoration/cimg/CImg.h sed -i "s/__TIME__/\"$FAKE_BUILDTIME\"/g" core/libs/dimg/filters/greycstoration/cimg/CImg.h
# Workaround for kde#369517 - vkontakte installs translations even if not built
rm -f po/*/kipiplugin_vkontakte.po
%build %build
%ifarch %ix86 x86_64 %arm aarch64 mips mips64 %if 0%{?suse_version} < 1320
# gcc 4.8.5 is too old
export CC=gcc-7
export CXX=g++-7
%endif
%ifarch %{ix86} x86_64 %{arm} aarch64 mips mips64
%cmake_kf5 -d build -- -DENABLE_APPSTYLES=ON -DENABLE_MEDIAPLAYER=ON -DENABLE_QWEBENGINE=ON %cmake_kf5 -d build -- -DENABLE_APPSTYLES=ON -DENABLE_MEDIAPLAYER=ON -DENABLE_QWEBENGINE=ON
%else %else
%cmake_kf5 -d build -- -DENABLE_APPSTYLES=ON -DENABLE_MEDIAPLAYER=ON %cmake_kf5 -d build -- -DENABLE_APPSTYLES=ON -DENABLE_MEDIAPLAYER=ON
@ -232,80 +184,58 @@ rm -f po/*/kipiplugin_vkontakte.po
rm -f %{buildroot}%{_kf5_libdir}/libdigikamcore.so rm -f %{buildroot}%{_kf5_libdir}/libdigikamcore.so
rm -f %{buildroot}%{_kf5_libdir}/libdigikamdatabase.so rm -f %{buildroot}%{_kf5_libdir}/libdigikamdatabase.so
rm -f %{buildroot}%{_kf5_libdir}/libdigikamgui.so rm -f %{buildroot}%{_kf5_libdir}/libdigikamgui.so
rm -f %{buildroot}%{_kf5_libdir}/libKF5kipiplugins.so
%if 0%{?suse_version} %if 0%{?suse_version}
%suse_update_desktop_file -r org.kde.digikam Qt KDE Graphics Photography %suse_update_desktop_file -r org.kde.digikam Qt KDE Graphics Photography
%suse_update_desktop_file -r org.kde.showfoto Qt KDE Graphics Photography %suse_update_desktop_file -r org.kde.showfoto Qt KDE Graphics Photography
%endif %endif
%if %{with lang}
%find_lang %{name} --without-kde %find_lang %{name} --without-kde
%find_lang kipiplugins kipiplugin.lang --without-kde %endif
for i in dropbox googleservices sendimages facebook flashexport flickr imageshack imgur kmlexport piwigo printimages rajce remotestorage sendimages smug yandexfotki %fdupes %{buildroot}
do
%find_lang kipiplugin_$i kipiplugin.lang
done
%fdupes -s %{buildroot} %post -n libdigikamcore%{soversion} -p /sbin/ldconfig
%postun -n libdigikamcore%{soversion} -p /sbin/ldconfig
%post -n libdigikamcore5 -p /sbin/ldconfig
%postun -n libdigikamcore5 -p /sbin/ldconfig
%post -n kipi-plugins -p /sbin/ldconfig
%postun -n kipi-plugins -p /sbin/ldconfig
%files %files
%{_bindir}/digikam %{_kf5_bindir}/digikam
%{_bindir}/digitaglinktree %{_kf5_bindir}/digitaglinktree
%{_bindir}/cleanup_digikamdb %{_kf5_bindir}/cleanup_digikamdb
%{_kf5_applicationsdir}/org.kde.digikam.desktop %{_kf5_applicationsdir}/org.kde.digikam.desktop
%_kf5_iconsdir/hicolor/*/apps/digikam.* %{_kf5_iconsdir}/hicolor/*/actions/
%_kf5_iconsdir/hicolor/*/apps/expoblending.* %{_kf5_iconsdir}/hicolor/*/apps/digikam.*
%_kf5_iconsdir/hicolor/*/actions/ %{_kf5_iconsdir}/hicolor/*/apps/dk-*
%_datadir/digikam/ %{_kf5_iconsdir}/hicolor/*/apps/expoblending.*
%dir %_datadir/solid %{_kf5_iconsdir}/hicolor/*/apps/panorama.*
%dir %_datadir/solid/actions %doc %{_kf5_mandir}/man1/cleanup_digikamdb.1%{ext_man}
%_datadir/solid/actions/digikam-opencamera.desktop %doc %{_kf5_mandir}/man1/digitaglinktree.1%{ext_man}
%_datadir/kxmlgui5/digikam/ %{_kf5_sharedir}/digikam/
%_datadir/knotifications5/digikam.notifyrc %dir %{_kf5_sharedir}/solid
%dir %{_kf5_sharedir}/solid/actions
%{_kf5_sharedir}/solid/actions/digikam-opencamera.desktop
%{_kf5_kxmlguidir}/digikam/
%{_kf5_notifydir}/digikam.notifyrc
%{_kf5_appstreamdir}/org.kde.digikam.appdata.xml %{_kf5_appstreamdir}/org.kde.digikam.appdata.xml
%_kf5_iconsdir/hicolor/*/apps/panorama.*
%files -n showfoto %files -n showfoto
%{_bindir}/showfoto %{_kf5_bindir}/showfoto
%{_kf5_applicationsdir}/org.kde.showfoto.desktop %{_kf5_applicationsdir}/org.kde.showfoto.desktop
%_kf5_iconsdir/hicolor/*/apps/showfoto.* %{_kf5_iconsdir}/hicolor/*/apps/showfoto.*
%_datadir/showfoto/ %{_kf5_sharedir}/showfoto/
%_datadir/kxmlgui5/showfoto/ %{_kf5_kxmlguidir}/showfoto/
%{_kf5_appstreamdir}/org.kde.showfoto.appdata.xml %{_kf5_appstreamdir}/org.kde.showfoto.appdata.xml
%files -n libdigikamcore5 %files -n libdigikamcore%{soversion}
%license COPYING* %license COPYING*
%doc core/{AUTHORS,ChangeLog,NEWS,README.md} %doc AUTHORS ChangeLog NEWS README.md
%{_libdir}/libdigikam*.so* %{_kf5_libdir}/libdigikamcore.so.%{soversion}.*
%{_kf5_libdir}/libdigikamdatabase.so.%{soversion}.*
%files doc %{_kf5_libdir}/libdigikamgui.so.%{soversion}.*
%license doc/COPYING.DOC
%doc %{_mandir}/man1/cleanup_digikamdb.1%{ext_man}
%doc %{_mandir}/man1/digitaglinktree.1%{ext_man}
%doc %{_kf5_htmldir}/*/
%if %{with lang}
%files lang -f %{name}.lang %files lang -f %{name}.lang
%endif
%files -n kipi-plugins
%license COPYING*
%doc extra/kipi-plugins/{AUTHORS,ChangeLog,NEWS,README,TODO}
%_libdir/libKF5kipiplugins.so*
%{_kf5_plugindir}/kipiplugin_*.so
%{_kf5_applicationsdir}/kipiplugins.desktop
%{_kf5_iconsdir}/hicolor/*/apps/kipi-*.*
%{_datadir}/kipiplugin_*/
%{_kf5_servicesdir}/kipiplugin_*.desktop
%{_kf5_kxmlguidir}/kipi/
%files -n kipi-plugins-lang -f kipiplugin.lang
%changelog %changelog

View File

@ -1,63 +0,0 @@
From 516128e999abbd57913b076dec019f899c07da3d Mon Sep 17 00:00:00 2001
From: Gilles Caulier <caulier.gilles@gmail.com>
Date: Sun, 7 Oct 2018 18:39:10 +0200
Subject: there is a mess in exiv2 headers 0.27.0, between version.hpp and
exv_con.h We cannot use the macro defined in version.hpp to include this
file...
---
core/libs/dmetadata/metaengine_exif.cpp | 4 ++++
core/libs/dmetadata/metaengine_p.h | 18 ++++++------------
2 files changed, 10 insertions(+), 12 deletions(-)
diff --git a/core/libs/dmetadata/metaengine_exif.cpp b/core/libs/dmetadata/metaengine_exif.cpp
index 079fa96..73af582 100644
--- a/core/libs/dmetadata/metaengine_exif.cpp
+++ b/core/libs/dmetadata/metaengine_exif.cpp
@@ -995,7 +995,11 @@ bool MetaEngine::setTiffThumbnail(const QImage& thumbImage) const
if (pos == d->exifMetadata().end() || pos->count() != 1 || pos->toLong() != 0)
{
+#if EXIV2_TEST_VERSION(0,27,0)
+ throw Exiv2::Error(Exiv2::kerErrorMessage, "Exif.Image.NewSubfileType missing or not set as main image");
+#else
throw Exiv2::Error(1, "Exif.Image.NewSubfileType missing or not set as main image");
+#endif
}
// Remove sub-IFD tags
diff --git a/core/libs/dmetadata/metaengine_p.h b/core/libs/dmetadata/metaengine_p.h
index 9e234f2..157b63f 100644
--- a/core/libs/dmetadata/metaengine_p.h
+++ b/core/libs/dmetadata/metaengine_p.h
@@ -72,21 +72,19 @@
#include <exiv2/exif.hpp>
#include <exiv2/xmpsidecar.hpp>
+#if (((EXIV2_MAJOR_VERSION) << 16) | ((EXIV2_MINOR_VERSION) << 8) | (EXIV2_PATCH_VERSION)) >= (((0) << 16) | ((27) << 8) | (0))
+# include <exiv2/version.hpp>
+#endif
+
// Check if Exiv2 support XMP
#ifdef EXV_HAVE_XMP_TOOLKIT
# define _XMP_SUPPORT_ 1
#endif
-// Make sure an EXIV2_TEST_VERSION macro exists:
-
-#ifdef EXIV2_VERSION
-# ifndef EXIV2_TEST_VERSION
-# define EXIV2_TEST_VERSION(major,minor,patch) \
+#ifndef EXIV2_TEST_VERSION
+# define EXIV2_TEST_VERSION(major,minor,patch) \
( EXIV2_VERSION >= EXIV2_MAKE_VERSION(major,minor,patch) )
-# endif
-#else
-# define EXIV2_TEST_VERSION(major,minor,patch) (false)
#endif
// With exiv2 > 0.20.0, all makernote header files have been removed to increase binary compatibility.
--
cgit v1.1

View File

@ -1,44 +0,0 @@
From 7c8c0e44adcaadb342e85c66df79d53bd561ebc7 Mon Sep 17 00:00:00 2001
From: Gilles Caulier <caulier.gilles@gmail.com>
Date: Sun, 7 Oct 2018 11:33:06 +0200
Subject: first patch to be compatible with Exiv2 0.27
---
core/libs/dmetadata/metaengine.cpp | 7 ++++---
core/libs/dmetadata/metaengine_p.h | 1 +
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/core/libs/dmetadata/metaengine.cpp b/core/libs/dmetadata/metaengine.cpp
index eb1a1a0..833c807 100644
--- a/core/libs/dmetadata/metaengine.cpp
+++ b/core/libs/dmetadata/metaengine.cpp
@@ -152,10 +152,11 @@ bool MetaEngine::supportMetadataWritting(const QString& typeMime)
QString MetaEngine::Exiv2Version()
{
- // Since 0.14.0 release, we can extract run-time version of Exiv2.
- // else we return make version.
-
+#if EXIV2_TEST_VERSION(0,27,0)
+ return QLatin1String(Exiv2::versionString().c_str());
+#else
return QString::fromLatin1(Exiv2::version());
+#endif
}
QString MetaEngine::sidecarFilePathForFile(const QString& path)
diff --git a/core/libs/dmetadata/metaengine_p.h b/core/libs/dmetadata/metaengine_p.h
index 79f35e9..bf75e4a 100644
--- a/core/libs/dmetadata/metaengine_p.h
+++ b/core/libs/dmetadata/metaengine_p.h
@@ -60,6 +60,7 @@
#endif
#include <exiv2/exv_conf.h>
+#include <exiv2/version.hpp>
#include <exiv2/error.hpp>
#include <exiv2/image.hpp>
#include <exiv2/jpgimage.hpp>
--
cgit v1.1

View File

@ -1,25 +0,0 @@
From 60721615dd9af2b81dacce06adaa7e31d56eee32 Mon Sep 17 00:00:00 2001
From: Maik Qualmann <metzpinguin@gmail.com>
Date: Sat, 1 Dec 2018 16:34:41 +0100
Subject: fix black Welcome page by clicking on a link REVIEW: D17276
---
core/app/views/welcomepageview_qwebengine.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/core/app/views/welcomepageview_qwebengine.cpp b/core/app/views/welcomepageview_qwebengine.cpp
index 2dfe2c6..d4ee8c5 100644
--- a/core/app/views/welcomepageview_qwebengine.cpp
+++ b/core/app/views/welcomepageview_qwebengine.cpp
@@ -115,7 +115,7 @@ WelcomePageView::~WelcomePageView()
void WelcomePageView::slotUrlOpen(const QUrl& url)
{
- WebBrowserDlg* const browser = new WebBrowserDlg(url, this);
+ WebBrowserDlg* const browser = new WebBrowserDlg(url, qApp->activeWindow());
browser->show();
}
--
cgit v0.11.2

View File

@ -1,37 +0,0 @@
From 8a12ffc60e2f2a59a60355824ba51370b0a20acd Mon Sep 17 00:00:00 2001
From: Maik Qualmann <metzpinguin@gmail.com>
Date: Sun, 7 Oct 2018 15:39:32 +0200
Subject: fix compile
---
core/libs/dmetadata/metaengine_p.h | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
(limited to 'core/libs/dmetadata/metaengine_p.h')
diff --git a/core/libs/dmetadata/metaengine_p.h b/core/libs/dmetadata/metaengine_p.h
index bf75e4a..9e234f2 100644
--- a/core/libs/dmetadata/metaengine_p.h
+++ b/core/libs/dmetadata/metaengine_p.h
@@ -61,7 +61,6 @@
#endif
#include <exiv2/exv_conf.h>
-#include <exiv2/version.hpp>
#include <exiv2/error.hpp>
#include <exiv2/image.hpp>
#include <exiv2/jpgimage.hpp>
@@ -98,6 +97,10 @@
# pragma GCC visibility pop
#endif
+#if EXIV2_TEST_VERSION(0,27,0)
+ #include <exiv2/version.hpp>
+#endif
+
// End of Exiv2 headers ------------------------------------------------------
namespace Digikam
--
cgit v1.1