Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package gmic for openSUSE:Factory checked in 
at 2022-05-02 16:24:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gmic (Old)
 and      /work/SRC/openSUSE:Factory/.gmic.new.1538 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gmic"

Mon May  2 16:24:54 2022 rev:22 rq:974198 version:3.1.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/gmic/gmic.changes        2022-02-09 
20:40:01.862495233 +0100
+++ /work/SRC/openSUSE:Factory/.gmic.new.1538/gmic.changes      2022-05-02 
16:25:03.544804149 +0200
@@ -1,0 +2,11 @@
+Fri Apr 29 06:37:52 UTC 2022 - Christophe Giboudeaux <christo...@krop.fr>
+
+- Update to 3.1.0. No changelog.
+- Rebase patches:
+  * krita5.patch
+- Add patch to keep using CMake when building gmic-qt:
+  * 0001-Find-the-local-gmic-library.patch
+- Drop patch, no longer needed:
+  * 0001-Remove-unneeded-CImg-include.patch
+
+-------------------------------------------------------------------

Old:
----
  0001-Remove-unneeded-CImg-include.patch
  gmic_3.0.2.tar.gz
  gmic_qt.png

New:
----
  0001-Find-the-local-gmic-library.patch
  gmic_3.1.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gmic.spec ++++++
--- /var/tmp/diff_new_pack.MnLA27/_old  2022-05-02 16:25:05.808806666 +0200
+++ /var/tmp/diff_new_pack.MnLA27/_new  2022-05-02 16:25:05.812806671 +0200
@@ -35,12 +35,12 @@
 %define hostapps gimp%{?gimp_suffix} krita
 %endif
 
-%define gmic_qt_options -DENABLE_SYSTEM_GMIC=OFF -DENABLE_DYNAMIC_LINKING=ON 
-DGMIC_PATH=%{_builddir}/%{name}-%{version}/src 
-DGMIC_LIB_PATH=%{_builddir}/%{name}-%{version}/build
+%define gmic_qt_options -DENABLE_SYSTEM_GMIC=OFF -DENABLE_DYNAMIC_LINKING=ON
 
 %define gmic_datadir %{_datadir}/gmic
 
 Name:           gmic
-Version:        3.0.2
+Version:        3.1.0
 Release:        0
 Summary:        GREYC's Magick for Image Computing (denoise and others)
 # gmic-qt is GPL-3.0-or-later, zart is CECILL-2.0, libgmic and cli program are
@@ -50,25 +50,26 @@
 URL:            https://gmic.eu
 # Git URL:      https://github.com/dtschump/gmic
 Source0:        https://gmic.eu/files/source/gmic_%{version}.tar.gz
-Source1:        gmic_qt.png
 # PATCH-FIX-UPSTREAM gmic-qt-make-it-work-without-gmic-cpp.patch - 
https://github.com/c-koi/gmic-qt/pull/134
 Patch0:         gmic-qt-make-it-work-without-gmic-cpp.patch
 # PATCH-FIX-UPSTREAM krita.patch - Will be sent upstream soon. For now 
https://github.com/darix/gmic-qt/tree/krita5
 Patch1:         krita5.patch
-# PATCH-FIX-UPSTREAM
-Patch2:         0001-Remove-unneeded-CImg-include.patch
-BuildRequires:  cmake >= 3.14.0
-BuildRequires:  fftw3-threads-devel
+# PATCH-FEATURE-OPENSUSE
+Patch2:         0001-Find-the-local-gmic-library.patch
 #
-# BR for pkg_vcmp
+# SECTION pkg_vcmp
 #
 # Those 2 are used for the pkg_vcmp conditionals above and also the rich 
expressions in the BuildRequires below
 #
 BuildRequires:  gimp
 BuildRequires:  krita
 #
-#/BR for pkg_vcmp
+# /SECTION
 #
+BuildRequires:  cmake >= 3.14.0
+BuildRequires:  dos2unix
+BuildRequires:  fftw3-threads-devel
+BuildRequires:  hicolor-icon-theme
 BuildRequires:  pkgconfig
 BuildRequires:  update-desktop-files
 BuildRequires:  xorg-x11-devel
@@ -86,8 +87,10 @@
 BuildRequires:  pkgconfig(OpenEXR)
 BuildRequires:  pkgconfig(fftw3)
 BuildRequires:  pkgconfig(libcurl)
+BuildRequires:  pkgconfig(libheif)
 BuildRequires:  pkgconfig(libjpeg)
 BuildRequires:  pkgconfig(libpng)
+BuildRequires:  pkgconfig(xcb-shm)
 BuildRequires:  pkgconfig(libtiff-4)
 BuildRequires:  pkgconfig(zlib)
 # gmic first looks for opencv 4 and falls back to opencv 3 if not found.
@@ -111,7 +114,7 @@
 generic image datasets, from 1d scalar signals to 3d+t sequences of
 multi-spectral volumetric images.
 
-%package -n libgmic1
+%package -n libgmic3
 Summary:        Shared library that belongs to gmic
 License:        CECILL-2.1
 Group:          Productivity/Graphics/Bitmap Editors
@@ -120,9 +123,9 @@
 Summary:        Header and library from gmic for use in other C++ projects
 License:        CECILL-2.1
 Group:          Development/Libraries/C and C++
-Requires:       libgmic1 = %{version}
+Requires:       libgmic3 = %{version}
 
-%description -n libgmic1
+%description -n libgmic3
 Shared library allows you to use gmic functionality from other
 programs.
 
@@ -175,18 +178,25 @@
 This package contains shared data files for the various gmic frontends.
 
 %prep
-%autosetup -p1
+%setup -q
+dos2unix src/{gmic_libc.*,use_libcgmic.c}
+%autopatch -p1
 
 %build
 # Build gmic
-%cmake \
-    -DENABLE_DYNAMIC_LINKING=ON \
-    -DBUILD_LIB_STATIC=OFF \
-    -DENABLE_OPENCV:BOOL=ON \
-    -DENABLE_XSHM:BOOL=ON
-%cmake_build
+# Starting with gmic 3.1.0, the gmic dev replaced their CMake build system 
with a non-configurable Makefile...
+sed -i 's#LIB = lib#LIB = %{_lib}#' src/Makefile
 
-cd ..
+# Breaks compilation for a couple archs
+sed -i 's#-mtune=generic##' src/Makefile
+
+# Broken rpath
+sed -i 's# -Wl,-rpath,.##' src/Makefile
+
+# The file is moved post-install in a directory not owned by gimp
+sed -i 's#/usr/lib/gimp/2.0/plug-ins#%{gmic_datadir}#' src/gmic_stdlib.gmic
+
+EXTRA_CFLAGS='%{optflags}' NOSTRIP=1 make lib cli_shared
 
 # Build gmic{_gimp|_krita}_qt
 pushd gmic-qt
@@ -213,7 +223,16 @@
 popd
 
 %install
-%cmake_install
+DESTDIR=%{buildroot} make install
+
+# As planned, only providing a Makefile partially works...
+install -m 0644 src/CImg.h %{buildroot}%{_includedir}
+
+# Install icons
+for size in 16 32 48 64; do
+    install -Dm 0644 gmic-qt/icons/application/${size}-gmic_qt.png 
%{buildroot}%{_datadir}/icons/hicolor/${size}x${size}/apps/gmic_qt.png
+done
+install -Dm 0644 gmic-qt/icons/application/gmic_qt.svg 
%{buildroot}%{_datadir}/icons/hicolor/scalable/apps/gmic_qt.svg
 
 %if %{with krita5}
 DESTDIR=%{buildroot} cmake --install gmic-qt/plugin-build
@@ -222,8 +241,6 @@
 install -m 0755 gmic-qt/build/gmic_krita_qt 
%{buildroot}%{_bindir}/gmic_krita_qt
 %endif
 
-install -D -m 0644 %{SOURCE1} %{buildroot}%{_datadir}/pixmaps/gmic_qt.png
-
 %suse_update_desktop_file -c gmic_qt "G'Mic Qt" "G'MIC Qt GUI" "gmic_qt %%F" 
gmic_qt "Qt;Graphics;Photography;"
 
 # Film color lookup tables
@@ -231,10 +248,14 @@
     %{buildroot}%{_gimpplugindir} \
     %{buildroot}%{gmic_datadir}/
 
+# Move gmic plugins out of the gimp plugin dir
 for file in gmic_cluts.gmz gmic_denoise_cnn.gmz ; do
-    install -m 0644 resources/${file} %{buildroot}%{gmic_datadir}/${file}
+    mv %{buildroot}%{_libdir}/gimp/2.0/plug-ins/${file} 
%{buildroot}%{gmic_datadir}/
 done
 
+# This manpage isn't translated
+rm %{buildroot}%{_mandir}/fr/man1/gmic.1*
+
 # qt_gmic
 pushd gmic-qt
 install -m 0755 build/gmic_qt %{buildroot}%{_bindir}/gmic_qt
@@ -243,43 +264,40 @@
 install -m 0755 build/gmic_gimp_qt %{buildroot}%{_gimpplugindir}/gmic_gimp_qt
 popd
 
-%post -n libgmic1 -p /sbin/ldconfig
-%postun -n libgmic1 -p /sbin/ldconfig
+%post -n libgmic3 -p /sbin/ldconfig
+%postun -n libgmic3 -p /sbin/ldconfig
 
 %files
-%license COPYING
 %doc README gmic-qt/README.md
 %{_bindir}/gmic
 %{_bindir}/gmic_qt
 %{_mandir}/man1/gmic.1%{?ext_man}
 %{_datadir}/applications/gmic_qt.desktop
-%{_datadir}/pixmaps/gmic_qt.png
+%{_datadir}/icons/hicolor/*/apps/gmic_qt.png
+%{_datadir}/icons/hicolor/scalable/apps/gmic_qt.svg
 
 %files data
-%license COPYING
 %{gmic_datadir}/
 
 %files -n gimp-plugin-gmic
-%license COPYING
 %{_gimpplugindir}/
 
 %files -n krita-plugin-gmic
-%license COPYING
 %if %{with krita5}
 %{_kf5_libdir}/kritaplugins/krita_gmic_qt.so
 %else
 %{_bindir}/gmic_krita_qt
 %endif
 
-%files -n libgmic1
+%files -n libgmic3
 %license COPYING
 %{_libdir}/libgmic.so.*
 
 %files -n libgmic-devel
 %{_includedir}/CImg.h
 %{_includedir}/gmic.h
+%{_includedir}/gmic_libc.h
 %{_libdir}/libgmic.so
-%{_libdir}/cmake/gmic/
 
 %files bash-completion
 %dir %{_datadir}/bash-completion/completions

++++++ 0001-Find-the-local-gmic-library.patch ++++++
>From 66475044c5ebed112d75cb51af925f9643b20d18 Mon Sep 17 00:00:00 2001
From: Christophe Giboudeaux <christo...@krop.fr>
Date: Sat, 30 Apr 2022 09:23:31 +0200
Subject: [PATCH] Find the local gmic library

GMic's working build system was replaced by a Makefile for unknown reasons
(the gmic author doesn't add messages to his commits).

To keep using CMake in gmic-qt, we need to teach it where the libgmic library 
is located.
---
 gmic-qt/CMakeLists.txt | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/gmic-qt/CMakeLists.txt b/gmic-qt/CMakeLists.txt
index 3d4b109..fd360ba 100644
--- a/gmic-qt/CMakeLists.txt
+++ b/gmic-qt/CMakeLists.txt
@@ -119,6 +119,9 @@ if (NOT ENABLE_SYSTEM_GMIC)
   if (NOT(${GMIC_VERSION} EQUAL ${CIMG_VERSION}))
   message(FATAL_ERROR "\nVersion numbers of files 'gmic.h' (" ${GMIC_VERSION} 
") and 'CImg.h' (" ${CIMG_VERSION} ") mismatch")
   endif()
+
+  # find the 'gmic' library built using 'make lib' in the top folder
+  find_library(gmic NAMES gmic PATHS "${CMAKE_CURRENT_SOURCE_DIR}/../src")
 endif()
 
 
@@ -567,7 +570,7 @@ if(ENABLE_DYNAMIC_LINKING)
   set(CMAKE_SKIP_RPATH TRUE)
   set(gmic_qt_LIBRARIES
     ${gmic_qt_LIBRARIES}
-    "gmic"
+    ${gmic}
     )
   if (NOT ENABLE_SYSTEM_GMIC)
     link_directories(${GMIC_LIB_PATH})
-- 
2.36.0


++++++ gmic_3.0.2.tar.gz -> gmic_3.1.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/gmic/gmic_3.0.2.tar.gz 
/work/SRC/openSUSE:Factory/.gmic.new.1538/gmic_3.1.0.tar.gz differ: char 5, 
line 1

++++++ krita5.patch ++++++
--- /var/tmp/diff_new_pack.MnLA27/_old  2022-05-02 16:25:05.876806742 +0200
+++ /var/tmp/diff_new_pack.MnLA27/_new  2022-05-02 16:25:05.880806746 +0200
@@ -1,13 +1,13 @@
 diff --git a/gmic-qt/CMakeLists.txt b/gmic-qt/CMakeLists.txt
-index 8bba11e..6137f59 100644
+index 61d2b9c..3d4b109 100644
 --- a/gmic-qt/CMakeLists.txt
 +++ b/gmic-qt/CMakeLists.txt
 @@ -22,7 +22,7 @@ endif()
  
  message("Build type is " ${CMAKE_BUILD_TYPE})
  
--set (GMIC_QT_HOST "gimp" CACHE STRING "Define for which host qmic-qt will be 
built: gimp, gimp3 (experimental), krita, none, paintdotnet or 8bf.")
-+set (GMIC_QT_HOST "gimp" CACHE STRING "Define for which host qmic-qt will be 
built: gimp, gimp3 (experimental), krita, krita-plugin, none, paintdotnet or 
8bf.")
+-set (GMIC_QT_HOST "gimp" CACHE STRING "Define for which host gmic-qt will be 
built: gimp, gimp3 (experimental), krita, none, paintdotnet or 8bf.")
++set (GMIC_QT_HOST "gimp" CACHE STRING "Define for which host gmic-qt will be 
built: gimp, gimp3 (experimental), krita, krita-plugin, none, paintdotnet or 
8bf.")
  if (${GMIC_QT_HOST} STREQUAL "none")
    message("Building standalone version.")
  else()
@@ -292,10 +292,10 @@
    _grid->addWidget(_slider, row, 1, 1, 1);
    _grid->addWidget(_spinBox, row, 2, 1, 1);
 diff --git a/gmic-qt/src/FilterParameters/NoteParameter.cpp 
b/gmic-qt/src/FilterParameters/NoteParameter.cpp
-index 34d3424..bd1df33 100644
+index 3b71c19..24e7b58 100644
 --- a/gmic-qt/src/FilterParameters/NoteParameter.cpp
 +++ b/gmic-qt/src/FilterParameters/NoteParameter.cpp
-@@ -87,14 +87,14 @@ bool NoteParameter::initFromText(const QString & 
filterName, const char * text,
+@@ -87,14 +87,14 @@ bool NoteParameter::initFromText(const QString & /* 
filterName */, const char *
    _text = list[1].trimmed(); // Notes are never translated
    
_text.remove(QRegExp("^\"")).remove(QRegExp("\"$")).replace(QString("\\\""), 
"\"");
    _text.replace(QString("\\n"), "<br/>");
@@ -313,7 +313,7 @@
    _text.replace(QRegExp("foreground\\s*=\\s*\""), QString("style=\"color:"));
    _text = HtmlTranslator::fromUtf8Escapes(_text);
 diff --git a/gmic-qt/src/FilterParameters/SeparatorParameter.cpp 
b/gmic-qt/src/FilterParameters/SeparatorParameter.cpp
-index 40347f7..941b280 100644
+index 0bacffb..623b5d9 100644
 --- a/gmic-qt/src/FilterParameters/SeparatorParameter.cpp
 +++ b/gmic-qt/src/FilterParameters/SeparatorParameter.cpp
 @@ -58,9 +58,11 @@ bool SeparatorParameter::addTo(QWidget * widget, int row)
@@ -329,7 +329,7 @@
    return true;
  }
 diff --git a/gmic-qt/src/FilterSelector/FiltersPresenter.cpp 
b/gmic-qt/src/FilterSelector/FiltersPresenter.cpp
-index e39270f..18e722e 100644
+index 5406eb1..2481bc2 100644
 --- a/gmic-qt/src/FilterSelector/FiltersPresenter.cpp
 +++ b/gmic-qt/src/FilterSelector/FiltersPresenter.cpp
 @@ -416,7 +416,7 @@ void FiltersPresenter::expandFaveFolder()
@@ -996,7 +996,7 @@
      }
    }
 diff --git a/gmic-qt/src/MainWindow.cpp b/gmic-qt/src/MainWindow.cpp
-index 33db6e4..9311901 100644
+index d89aa7e..56b4bec 100644
 --- a/gmic-qt/src/MainWindow.cpp
 +++ b/gmic-qt/src/MainWindow.cpp
 @@ -184,8 +184,12 @@ MainWindow::MainWindow(QWidget * parent) : 
QMainWindow(parent), ui(new Ui::MainW
@@ -1037,7 +1037,7 @@
    }
  
    _filtersPresenter->toggleSelectionMode(withVisibility);
-@@ -477,7 +483,7 @@ void MainWindow::onStartupFiltersUpdateFinished(int status)
+@@ -478,7 +484,7 @@ void MainWindow::onStartupFiltersUpdateFinished(int status)
    } else if (status == (int)Updater::UpdateStatus::NotNecessary) {
    }
  
@@ -1046,7 +1046,7 @@
      _gtkFavesShouldBeImported = false;
    } else {
      _gtkFavesShouldBeImported = askUserForGTKFavesImport();
-@@ -494,7 +500,7 @@ void MainWindow::onStartupFiltersUpdateFinished(int status)
+@@ -495,7 +501,7 @@ void MainWindow::onStartupFiltersUpdateFinished(int status)
    }
  
    // Retrieve and select previously selected filter
@@ -1055,7 +1055,7 @@
    if (_newSession || !_lastExecutionOK) {
      hash.clear();
    }
-@@ -559,7 +565,9 @@ void MainWindow::onEscapeKeyPressed()
+@@ -560,7 +566,9 @@ void MainWindow::onEscapeKeyPressed()
      } else {
        _processor.cancel();
        ui->previewWidget->displayOriginalImage();
@@ -1065,7 +1065,7 @@
      }
    }
  }
-@@ -671,7 +679,9 @@ void MainWindow::onPreviewUpdateRequested(bool synchronous)
+@@ -672,7 +680,9 @@ void MainWindow::onPreviewUpdateRequested(bool synchronous)
      ui->previewWidget->displayOriginalImage();
      return;
    }
@@ -1075,7 +1075,7 @@
  
    const FiltersPresenter::Filter currentFilter = 
_filtersPresenter->currentFilter();
    GmicProcessor::FilterContext context;
-@@ -733,7 +743,9 @@ void MainWindow::onPreviewImageAvailable()
+@@ -736,7 +746,9 @@ void MainWindow::onPreviewImageAvailable()
    }
    ui->previewWidget->setPreviewImage(_processor.previewImage());
    ui->previewWidget->enableRightClick();
@@ -1085,7 +1085,7 @@
    if (_pendingActionAfterCurrentProcessing == ProcessingAction::Close) {
      close();
    }
-@@ -743,7 +755,9 @@ void MainWindow::onPreviewError(const QString & message)
+@@ -746,7 +758,9 @@ void MainWindow::onPreviewError(const QString & message)
  {
    ui->previewWidget->setPreviewErrorMessage(message);
    ui->previewWidget->enableRightClick();
@@ -1095,7 +1095,7 @@
    if (_pendingActionAfterCurrentProcessing == ProcessingAction::Close) {
      close();
    }
-@@ -969,7 +983,7 @@ void MainWindow::saveCurrentParameters()
+@@ -973,7 +987,7 @@ void MainWindow::saveCurrentParameters()
  
  void MainWindow::saveSettings()
  {
@@ -1104,7 +1104,7 @@
  
    _filtersPresenter->saveSettings(settings);
  
-@@ -1010,7 +1024,7 @@ void MainWindow::saveSettings()
+@@ -1014,7 +1028,7 @@ void MainWindow::saveSettings()
  
  void MainWindow::loadSettings()
  {
@@ -1113,7 +1113,7 @@
    _filtersPresenter->loadSettings(settings);
  
    _lastExecutionOK = settings.value("LastExecution/ExitedNormally", 
true).toBool();
-@@ -1026,9 +1040,11 @@ void MainWindow::loadSettings()
+@@ -1030,9 +1044,11 @@ void MainWindow::loadSettings()
    if (settings.value("Config/PreviewPosition", "Left").toString() == "Left") {
      setPreviewPosition(PreviewPosition::Left);
    }
@@ -1125,7 +1125,7 @@
    if (!DialogSettings::logosAreVisible()) {
      ui->logosLabel->hide();
    }
-@@ -1068,7 +1084,7 @@ void MainWindow::loadSettings()
+@@ -1072,7 +1088,7 @@ void MainWindow::loadSettings()
      ui->splitter->setSizes(sizes);
    }
  
@@ -1134,7 +1134,7 @@
  }
  
  void MainWindow::setPreviewPosition(MainWindow::PreviewPosition position)
-@@ -1130,7 +1146,7 @@ void 
MainWindow::setPreviewPosition(MainWindow::PreviewPosition position)
+@@ -1134,7 +1150,7 @@ void 
MainWindow::setPreviewPosition(MainWindow::PreviewPosition position)
  void MainWindow::adjustVerticalSplitter()
  {
    QList<int> sizes;
@@ -1143,7 +1143,7 @@
    
sizes.push_back(settings.value(QString("Config/ParamsVerticalSplitterSizeTop"), 
-1).toInt());
    
sizes.push_back(settings.value(QString("Config/ParamsVerticalSplitterSizeBottom"),
 -1).toInt());
    const int splitterHeight = ui->verticalSplitter->height();
-@@ -1251,12 +1267,16 @@ void MainWindow::showEvent(QShowEvent * event)
+@@ -1255,12 +1271,16 @@ void MainWindow::showEvent(QShowEvent * event)
    Updater::setOutputMessageMode(DialogSettings::outputMessageMode());
    int ageLimit;
    {
@@ -1162,7 +1162,7 @@
  }
  
  void MainWindow::resizeEvent(QResizeEvent * e)
-@@ -1273,17 +1293,19 @@ bool MainWindow::askUserForGTKFavesImport()
+@@ -1277,17 +1297,19 @@ bool MainWindow::askUserForGTKFavesImport()
                           QMessageBox::Yes | QMessageBox::No, this);
    messageBox.setDefaultButton(QMessageBox::Yes);
    QCheckBox * cb = new QCheckBox(tr("Don't ask again"));
@@ -1303,4 +1303,7 @@
           <property name="title">
            <string>Theme</string>
           </property>
+-- 
+2.36.0
+
 

Reply via email to