commit:     4daa571b055f26a218ce64ab263f05d932e0278b
Author:     NP-Hardass <NP-Hardass <AT> gentoo <DOT> org>
AuthorDate: Wed May 15 15:06:49 2019 +0000
Commit:     Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
CommitDate: Wed May 15 19:50:38 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4daa571b

mate-extra/mate-utils: Fix bug where build depends on inkscape

Closes: https://bugs.gentoo.org/685890
Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Göktürk Yüksek <gokturk <AT> gentoo.org>

 .../mate-utils-1.22.1-make-inkscape-optional.patch | 192 +++++++++++++++++++++
 ...s-1.22.1.ebuild => mate-utils-1.22.1-r1.ebuild} |   2 +
 2 files changed, 194 insertions(+)

diff --git 
a/mate-extra/mate-utils/files/mate-utils-1.22.1-make-inkscape-optional.patch 
b/mate-extra/mate-utils/files/mate-utils-1.22.1-make-inkscape-optional.patch
new file mode 100644
index 00000000000..57d984b91cc
--- /dev/null
+++ b/mate-extra/mate-utils/files/mate-utils-1.22.1-make-inkscape-optional.patch
@@ -0,0 +1,192 @@
+From 563dec11a51f4c6517509642e335a1fd64cd4ec4 Mon Sep 17 00:00:00 2001
+From: rbuj <robert....@gmail.com>
+Date: Thu, 2 May 2019 20:51:09 +0200
+Subject: [PATCH] Make inkscape and rsvg-convert optional
+
+TEST on Fedora:
+inkscape, librsvg2-tools package are not installed on system: The user can 
build, install and distribute the package:
+
+  $ sudo dnf remove inkscape librsvg2-tools -y
+  $ ./configure --prefix=/usr
+  $ make
+  $ sudo make install
+  $ make distcheck
+
+logview/data/icons:
+
+Can not run build-png-icons target if inkscape package is not installed on 
system:
+
+  $ make -C logview/data/icons clean-png-icons
+make: Entering directory '/home/robert/devel/mate-utils/logview/data/icons'
+rm -f hicolor_apps_16x16_mate-system-log.png 
hicolor_apps_22x22_mate-system-log.png hicolor_apps_32x32_mate-system-log.png 
hicolor_apps_48x48_mate-system-log.png hicolor_apps_256x256_mate-system-log.png
+make: Leaving directory '/home/robert/devel/mate-utils/logview/data/icons'
+  $ make -C logview/data/icons build-png-icons
+make: Entering directory '/home/robert/devel/mate-utils/logview/data/icons'
+make: *** No rule to make target 'hicolor_apps_16x16_mate-system-log.png', 
needed by 'build-png-icons'.  Stop.
+make: Leaving directory '/home/robert/devel/mate-utils/logview/data/icons'
+
+Can run build-png-icons target if inkscape package is installed on system:
+
+  $ sudo dnf install inkscape -y
+  $ ./configure --prefix=/usr
+  $ make -C logview/data/icons build-png-icons
+make: Entering directory '/home/robert/devel/mate-utils/logview/data/icons'
+Background RRGGBBAA: ffffff00 Area 303:65:319:81 exported to 16 x 16 pixels 
(96 dpi) Bitmap saved as: hicolor_apps_16x16_mate-system-log.png
+Background RRGGBBAA: ffffff00 Area 303:101:325:123 exported to 22 x 22 pixels 
(96 dpi) Bitmap saved as: hicolor_apps_22x22_mate-system-log.png
+Background RRGGBBAA: ffffff00 Area 304:142:336:174 exported to 32 x 32 pixels 
(96 dpi) Bitmap saved as: hicolor_apps_32x32_mate-system-log.png
+Background RRGGBBAA: ffffff00 Area 296:202:344:250 exported to 48 x 48 pixels 
(96 dpi) Bitmap saved as: hicolor_apps_48x48_mate-system-log.png
+Background RRGGBBAA: ffffff00 Area 33:11:289:267 exported to 256 x 256 pixels 
(96 dpi) Bitmap saved as: hicolor_apps_256x256_mate-system-log.png
+make: Nothing to be done for 'build-png-icons'.
+make: Leaving directory '/home/robert/devel/mate-utils/logview/data/icons'
+
+baobab/pixmaps:
+
+Can not run build-png-icons target if librsvg2-tools package is not installed 
on system:
+
+  $ make -C baobab/pixmaps clean-png-icons
+make: Entering directory '/home/robert/devel/mate-utils/baobab/pixmaps'
+rm -f hicolor_apps_16x16_mate-disk-usage-analyzer.png 
hicolor_apps_22x22_mate-disk-usage-analyzer.png 
hicolor_apps_32x32_mate-disk-usage-analyzer.png 
hicolor_apps_48x48_mate-disk-usage-analyzer.png 
hicolor_apps_128x128_mate-disk-usage-analyzer.png
+make: Leaving directory '/home/robert/devel/mate-utils/baobab/pixmaps'
+  $ make -C baobab/pixmaps build-png-icons
+make: Entering directory '/home/robert/devel/mate-utils/baobab/pixmaps'
+make: *** No rule to make target 
'hicolor_apps_16x16_mate-disk-usage-analyzer.png', needed by 'build-png-icons'. 
 Stop.
+make: Leaving directory '/home/robert/devel/mate-utils/baobab/pixmaps'
+
+Can run build-png-icons target if librsvg2-tools package is installed on 
system:
+
+  $ sudo dnf install -y librsvg2-tools
+  $ ./configure --prefix=/usr
+  $ make -C baobab/pixmaps build-png-icons
+make: Entering directory '/home/robert/devel/mate-utils/baobab/pixmaps'
+/usr/bin/rsvg-convert -w 16 -h 16 
hicolor_apps_scalable_mate-disk-usage-analyzer.svg -o 
hicolor_apps_16x16_mate-disk-usage-analyzer.png
+/usr/bin/rsvg-convert -w 22 -h 22 
hicolor_apps_scalable_mate-disk-usage-analyzer.svg -o 
hicolor_apps_22x22_mate-disk-usage-analyzer.png
+/usr/bin/rsvg-convert -w 32 -h 32 
hicolor_apps_scalable_mate-disk-usage-analyzer.svg -o 
hicolor_apps_32x32_mate-disk-usage-analyzer.png
+/usr/bin/rsvg-convert -w 48 -h 48 
hicolor_apps_scalable_mate-disk-usage-analyzer.svg -o 
hicolor_apps_48x48_mate-disk-usage-analyzer.png
+/usr/bin/rsvg-convert -w 128 -h 128 
hicolor_apps_scalable_mate-disk-usage-analyzer.svg -o 
hicolor_apps_128x128_mate-disk-usage-analyzer.png
+make: Leaving directory '/home/robert/devel/mate-utils/baobab/pixmaps'
+
+Closes #223
+---
+ baobab/pixmaps/Makefile.am     |  6 ++++--
+ configure.ac                   |  8 ++------
+ logview/data/icons/Makefile.am | 31 ++++++++++++++++++++++++-------
+ 3 files changed, 30 insertions(+), 15 deletions(-)
+
+diff --git a/baobab/pixmaps/Makefile.am b/baobab/pixmaps/Makefile.am
+index f36e8bf3..6804bef9 100644
+--- a/baobab/pixmaps/Makefile.am
++++ b/baobab/pixmaps/Makefile.am
+@@ -11,8 +11,10 @@ public_icons = \
+       hicolor_apps_scalable_mate-disk-usage-analyzer.svg \
+       $(NULL)
+ 
++if HAVE_RSVG_CONVERT
+ hicolor_apps_%.png: hicolor_apps_scalable_mate-disk-usage-analyzer.svg
+       $(RSVG_CONVERT) -w $(word 1, $(subst x, ,$(word 1,$(subst _, ,$*)))) -h 
$(word 2, $(subst x, ,$(word 1,$(subst _, ,$*)))) $^ -o $@
++endif
+ 
+ EXTRA_DIST = \
+       $(public_icons) \
+@@ -20,7 +22,7 @@ EXTRA_DIST = \
+ 
+ 
###############################################################################
+ 
+-install-icons: $(public_icons)
++install-icons: | $(public_icons)
+       for icon in $(public_icons); do \
+               THEME=`echo $$icon | cut -d_ -f1`; \
+               CONTEXT=`echo $$icon | cut -d_ -f2`; \
+@@ -57,7 +59,7 @@ update-icon-cache:
+       fi
+ 
+ .PHONY: build-png-icons clean-png-icons
+-build-png-icons: $(png_icons)
++build-png-icons: | $(png_icons)
+ 
+ clean-png-icons:
+       rm -f $(png_icons)
+diff --git a/configure.ac b/configure.ac
+index d65e5b54..0907e194 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -31,13 +31,9 @@ AC_PATH_PROG(GLIB_MKENUMS, [glib-mkenums])
+ 
+ dnl ICONS: convert svg to png
+ AC_PATH_PROG(RSVG_CONVERT, rsvg-convert)
+-if test x$RSVG_CONVERT = x ; then
+-    AC_MSG_ERROR([could not locate rsvg-convert])
+-fi
++AM_CONDITIONAL([HAVE_RSVG_CONVERT], [test "x$RSVG_CONVERT" != x])
+ AC_PATH_PROG(INKSCAPE, inkscape)
+-if test x$INKSCAPE = x ; then
+-    AC_MSG_ERROR([could not locate inkscape])
+-fi
++AM_CONDITIONAL([HAVE_INKSCAPE], [test "x$INKSCAPE" != x])
+ 
+ MATE_COMPILE_WARNINGS([yes])
+ 
+diff --git a/logview/data/icons/Makefile.am b/logview/data/icons/Makefile.am
+index 9db44489..30fff904 100644
+--- a/logview/data/icons/Makefile.am
++++ b/logview/data/icons/Makefile.am
+@@ -17,20 +17,37 @@ public_icons = \
+       hicolor_apps_scalable_mate-system-log-symbolic.svg \
+       $(NULL)
+ 
++if HAVE_INKSCAPE
+ hicolor_apps_16x16_mate-system-log.png: logview.svg
+-      $(INKSCAPE) -z $^ --export-area=303:65:319:81 -w=16 -h=16 -e=$@
++      $(if $(wildcard $(INKSCAPE)), \
++              $(info $(shell $(INKSCAPE) -z $^ --export-area=303:65:319:81 
-w=16 -h=16 -e=$@)), \
++              $(error could not locate inkscape) \
++      )
+ 
+ hicolor_apps_22x22_mate-system-log.png: logview.svg
+-      $(INKSCAPE) -z $^ --export-area=303:101:325:123 -w=22 -h=22 -e=$@
++      $(if $(wildcard $(INKSCAPE)), \
++              $(info $(shell $(INKSCAPE) -z $^ --export-area=303:101:325:123 
-w=22 -h=22 -e=$@)), \
++              $(error could not locate inkscape) \
++      )
+ 
+ hicolor_apps_32x32_mate-system-log.png: logview.svg
+-      $(INKSCAPE) -z $^ --export-area=304:142:336:174 -w=32 -h=32 -e=$@
++      $(if $(wildcard $(INKSCAPE)), \
++              $(info $(shell $(INKSCAPE) -z $^ --export-area=304:142:336:174 
-w=32 -h=32 -e=$@)), \
++              $(error could not locate inkscape) \
++      )
+ 
+ hicolor_apps_48x48_mate-system-log.png: logview.svg
+-      $(INKSCAPE) -z $^ --export-area=296:202:344:250 -w=48 -h=48 -e=$@
++      $(if $(wildcard $(INKSCAPE)), \
++              $(info $(shell $(INKSCAPE) -z $^ --export-area=296:202:344:250 
-w=48 -h=48 -e=$@)), \
++              $(error could not locate inkscape) \
++      )
+ 
+ hicolor_apps_256x256_mate-system-log.png: logview.svg
+-      $(INKSCAPE) -z $^ --export-area=33:11:289:267 -w=256 -h=256 -e=$@
++      $(if $(wildcard $(INKSCAPE)), \
++              $(info $(shell $(INKSCAPE) -z $^ --export-area=33:11:289:267 
-w=256 -h=256 -e=$@)), \
++              $(error could not locate inkscape) \
++      )
++endif
+ 
+ noinst_DATA = \
+       logview.svg \
+@@ -43,7 +60,7 @@ EXTRA_DIST = \
+ 
+ 
###############################################################################
+ 
+-install-icons:
++install-icons: | $(public_icons)
+       for icon in $(public_icons); do \
+               THEME=`echo $$icon | cut -d_ -f1`; \
+               CONTEXT=`echo $$icon | cut -d_ -f2`; \
+@@ -80,7 +97,7 @@ update-icon-cache:
+       fi
+ 
+ .PHONY: build-png-icons clean-png-icons
+-build-png-icons: $(png_icons)
++build-png-icons: | $(png_icons)
+ 
+ clean-png-icons:
+       rm -f $(png_icons)

diff --git a/mate-extra/mate-utils/mate-utils-1.22.1.ebuild 
b/mate-extra/mate-utils/mate-utils-1.22.1-r1.ebuild
similarity index 94%
rename from mate-extra/mate-utils/mate-utils-1.22.1.ebuild
rename to mate-extra/mate-utils/mate-utils-1.22.1-r1.ebuild
index e77178d5d01..c773bf08222 100644
--- a/mate-extra/mate-utils/mate-utils-1.22.1.ebuild
+++ b/mate-extra/mate-utils/mate-utils-1.22.1-r1.ebuild
@@ -46,6 +46,8 @@ DEPEND="${RDEPEND}
        virtual/pkgconfig
        x11-base/xorg-proto"
 
+PATCHES=( "${FILESDIR}/${PN}-1.22.1-make-inkscape-optional.patch" )
+
 src_prepare() {
        # Make apps visible in all DEs.
        LC_ALL=C find . -iname '*.desktop.in*' -exec \

Reply via email to