[update] graphics/qiv 2.3.1 -> 2.3.2

2020-12-12 Thread Charlene Wendling
Hi,

Here is an update for qiv to 2.3.2. It brings many bugfixes and
runtime changes [0].

There are a number of changes port-wise:

- move HOMEPAGE to https, refresh WANTLIB
- fix improper manpath [0] -- i reported to upstream thinking it was
  an OpenBSD quirk. I had a fix, but upstream committed one with a 
  greater scope.
- fix "implicit conversion from 'int' to 'float'" warnings while
  building with clang-10 (upstreamed [0])

I've built and run that update on macppc and amd64 without issues.

Comments/feedback are welcome,

Charlène.


[0] https://spiegl.de/qiv/changes.shtml
[1] https://codeberg.org/ciberandy/qiv/commit/195fe9d5


Index: Makefile
===
RCS file: /cvs/ports/graphics/qiv/Makefile,v
retrieving revision 1.30
diff -u -p -u -p -r1.30 Makefile
--- Makefile12 Jul 2019 20:47:09 -  1.30
+++ Makefile12 Dec 2020 13:18:32 -
@@ -2,23 +2,22 @@
 
 COMMENT=   very small and pretty fast gdk/Imlib image viewer
 
-DISTNAME=  qiv-2.3.1
+DISTNAME=  qiv-2.3.2
 CATEGORIES=graphics
-REVISION=  0
 
 EXTRACT_SUFX=  .tgz
 
-HOMEPAGE=  http://spiegl.de/qiv/
+HOMEPAGE=  https://spiegl.de/qiv/
 
 MASTER_SITES=  ${HOMEPAGE}/download/
 
 # GPLv2
 PERMIT_PACKAGE=Yes
 
-WANTLIB =  Imlib2 X11 Xcomposite Xcursor Xdamage Xext Xfixes Xi Xinerama
-WANTLIB += Xrandr Xrender c cairo exif fontconfig freetype gdk-x11-2.0
-WANTLIB += gdk_pixbuf-2.0 gio-2.0 glib-2.0 gobject-2.0 iconv intl jpeg
-WANTLIB += lcms2 m magic pango-1.0 pangocairo-1.0 pangoft2-1.0 pthread
+WANTLIB += Imlib2 X11 Xcomposite Xcursor Xdamage Xext Xfixes Xi
+WANTLIB += Xinerama Xrandr Xrender c cairo exif fontconfig freetype
+WANTLIB += gdk-x11-2.0 gdk_pixbuf-2.0 gio-2.0 glib-2.0 gobject-2.0
+WANTLIB += harfbuzz intl jpeg lcms2 magic pango-1.0 pangocairo-1.0
 WANTLIB += tiff z
 
 LIB_DEPENDS=   devel/libmagic \
Index: distinfo
===
RCS file: /cvs/ports/graphics/qiv/distinfo,v
retrieving revision 1.8
diff -u -p -u -p -r1.8 distinfo
--- distinfo23 Aug 2014 14:33:07 -  1.8
+++ distinfo12 Dec 2020 13:18:32 -
@@ -1,2 +1,2 @@
-SHA256 (qiv-2.3.1.tgz) = Z1OWtTnmURE1/nPIZ/n91tkSwkx1Ynl8sEfCfQwsjuY=
-SIZE (qiv-2.3.1.tgz) = 130621
+SHA256 (qiv-2.3.2.tgz) = SOCgiKDVz1+sIxSmCzrtYsSRPnkmJ/ZPA5hoZa1wgNU=
+SIZE (qiv-2.3.2.tgz) = 133614
Index: patches/patch-Makefile
===
RCS file: /cvs/ports/graphics/qiv/patches/patch-Makefile,v
retrieving revision 1.8
diff -u -p -u -p -r1.8 patch-Makefile
--- patches/patch-Makefile  23 Aug 2014 14:33:07 -  1.8
+++ patches/patch-Makefile  12 Dec 2020 13:18:32 -
@@ -1,6 +1,11 @@
 $OpenBSD: patch-Makefile,v 1.8 2014/08/23 14:33:07 kirby Exp $
 Makefile.orig  Fri Dec 20 04:50:37 2013
-+++ Makefile   Thu Aug 14 14:06:52 2014
+
+Hunk #4 is a fix for bogus manpaths that can be removed for qiv>2.3.2,
+see https://codeberg.org/ciberandy/qiv/commit/195fe9d5
+
+Index: Makefile
+--- Makefile.orig
 Makefile
 @@ -4,7 +4,7 @@
  ###
  
@@ -8,9 +13,9 @@ $OpenBSD: patch-Makefile,v 1.8 2014/08/2
 -PREFIX = /usr/local
 +PREFIX ?= /usr/local
  
- # Font to use for statusbar in fullscreen mode
+ # Fonts to use for statusbar and comments
  STATUSBAR_FONT = "Monospace 9"
-@@ -30,7 +30,7 @@ GETOPT_LONG = -DHAVE_GETOPT_LONG
+@@ -31,7 +31,7 @@ GETOPT_LONG = -DHAVE_GETOPT_LONG
  
  # This program will be run on the manual page after it is installed.
  # If you don't want to compress the manpage, change it to 'true'.
@@ -19,23 +24,35 @@ $OpenBSD: patch-Makefile,v 1.8 2014/08/2
  
  # Comment this line out if your system doesn't have lcms2 installed
  # (for minimal Color Management support)
-@@ -49,11 +49,11 @@ EXIF = -DHAVE_EXIF
- # Do not edit below here!
+@@ -51,14 +51,12 @@ EXIF = -DHAVE_EXIF
  ##
  
--CC= gcc
-+CC?= gcc
+ ifeq ($(origin CC),default)
+-CC = gcc
++CC ?= gcc
+ endif
+ 
+ PKG_CONFIG ?= pkg-config
  #CFLAGS= -O0 -g -Wall
 -CFLAGS= -O2 -Wall \
 -  -fcaller-saves -ffast-math -fno-strength-reduce \
 -  -fthread-jumps #-march=pentium #-DSTAT_MACROS_BROKEN
-+#CFLAGS= -O2 -Wall \
-+# -fcaller-saves -ffast-math -fno-strength-reduce \
-+# -fthread-jumps #-march=pentium #-DSTAT_MACROS_BROKEN
++CFLAGS= -Wall
  #CFLAGS= -O2 -Wall -fomit-frame-pointer -finline-functions \
  # -fcaller-saves -ffast-math -fno-strength-reduce \
  # -fthread-jumps #-march=pentium #-DSTAT_MACROS_BROKEN
-@@ -159,10 +159,6 @@ install: $(PROGRAM)
+@@ -153,8 +151,8 @@ install: $(PROGRAM)
+ echo install -d -m 0755 $(PREFIX)/man/man1; \
+ install -d -m 0755 $(PREFIX)/man/man1; \
+   fi

Re: Update graphics/qiv

2009-07-15 Thread Christian Weisgerber
Christian Weisgerber na...@mips.inka.de wrote:

 NULL is not magic.  We #define NULL to 0.  It is 0 that is automatically
 treated as a null pointer _in pointer contexts_.  If a function has
 a variable number of arguments, like execlp() in this case, the
 compiler can't know if you are passing 0 the integer or 0 the null
 pointer.  It defaults to the former, that's why the cast is needed.

A further note:

On OpenBSD, the null pointer has a zero bit pattern, so the only
difference between 0 and (void *)0 is that these are 32 and 64-bit
values, respectively, on our LP64 platforms.

In practice, our LP64 architectures pass the first handful of
function arguments in registers.  One argument in each 64-bit
register, and if you load a 32-bit value into a register it is
(sign-)extended to 64 bits.  In most cases this will save your ass
if you erroneously pass 0 in place of (void *)0 to a variable
argument function.

Do *not* rely on this.

-- 
Christian naddy Weisgerber  na...@mips.inka.de



Update graphics/qiv

2009-07-14 Thread Matthias Kilian
New version.  New upstream maintainer.  New Homepage. New dependencies.
New features (see the changelog included in the distfile).

Tested on i386 and amd64.

Tests and comments (and ok's) are welcome.

Oh, and I've a question about the patch for util.c: is this still
required? In my silly little world (no alpha, no sparc64), NULL has
always pointer size, so the cast to (void *) appears a little bit
strange to me. Of course, passing just 0 as the sentinel *was* wrong
in the old qiv-2.0.

Ciao,
Kili

Index: Makefile
===
RCS file: /cvs/ports/graphics/qiv/Makefile,v
retrieving revision 1.12
diff -u -p -r1.12 Makefile
--- Makefile15 Sep 2007 20:09:43 -  1.12
+++ Makefile14 Jul 2009 17:00:26 -
@@ -2,24 +2,31 @@
 
 COMMENT=   very small and pretty fast gdk/Imlib image viewer
 
-DISTNAME=  qiv-2.0
+DISTNAME=  qiv-2.2.2
 CATEGORIES=graphics
 
-EXTRACT_SUFX=  -src.tgz
+EXTRACT_SUFX=  .tgz
 
-HOMEPAGE=  http://www.klografx.net/qiv/
+HOMEPAGE=  http://spiegl.de/qiv/
 
-MASTER_SITES=  http://www.klografx.net/qiv/download/
+MASTER_SITES=  ${HOMEPAGE}download/
 
-LIB_DEPENDS=   gdk_imlib.=19::graphics/imlib
+LIB_DEPENDS=   magic::devel/libmagic \
+   Imlib2::graphics/imlib2 \
+   exif::graphics/libexif \
+   gdk-x11-2.0,gdk_pixbuf-2.0::x11/gtk+2
 
-# GPL
+# GPLv2
 PERMIT_PACKAGE_CDROM=  Yes
 PERMIT_PACKAGE_FTP=Yes
 PERMIT_DISTFILES_CDROM=Yes
 PERMIT_DISTFILES_FTP=  Yes
-WANTLIB=   X11 Xext Xi c gdk glib gmodule gtk iconv intl \
-   jpeg m png tiff ungif z
+WANTLIB=X11 Xau Xcomposite Xcursor Xdamage Xdmcp \
+Xext Xfixes Xi Xinerama Xrandr Xrender c \
+cairo expat fontconfig freetype gio-2.0 \
+glib-2.0 glitz gmodule-2.0 gobject-2.0 iconv \
+intl m pango-1.0 pangocairo-1.0 pangoft2-1.0 \
+pixman-1 png z
 
 USE_GMAKE= Yes
 USE_X11=   Yes
Index: distinfo
===
RCS file: /cvs/ports/graphics/qiv/distinfo,v
retrieving revision 1.5
diff -u -p -r1.5 distinfo
--- distinfo5 Apr 2007 16:19:58 -   1.5
+++ distinfo14 Jul 2009 17:00:26 -
@@ -1,5 +1,5 @@
-MD5 (qiv-2.0-src.tgz) = Fl0MLyZHGIIflHMhlrf54Q==
-RMD160 (qiv-2.0-src.tgz) = grF8IEaCKCWPfB58YViMgOHEAQc=
-SHA1 (qiv-2.0-src.tgz) = Ru7wTEkrnwHXnqt8L+x4tO3RNVA=
-SHA256 (qiv-2.0-src.tgz) = LwwD7n55ySEPBgyH1RgR5FQPEm2MPXUbMaq2kWCz0JE=
-SIZE (qiv-2.0-src.tgz) = 76561
+MD5 (qiv-2.2.2.tgz) = 5BMQXJFTIu7qblgtm5tPLw==
+RMD160 (qiv-2.2.2.tgz) = uIdQBnq++XHCEKVcUHcwCHQCpKs=
+SHA1 (qiv-2.2.2.tgz) = SJdyMDuvhEaefbIND9Lbu1bvG9Y=
+SHA256 (qiv-2.2.2.tgz) = wyyMwqAMpazeARaDPnx3ZUVoehImbRVhf3vcixvaLe8=
+SIZE (qiv-2.2.2.tgz) = 99044
Index: patches/patch-Makefile
===
RCS file: /cvs/ports/graphics/qiv/patches/patch-Makefile,v
retrieving revision 1.4
diff -u -p -r1.4 patch-Makefile
--- patches/patch-Makefile  5 Feb 2005 16:40:29 -   1.4
+++ patches/patch-Makefile  14 Jul 2009 17:00:26 -
@@ -1,5 +1,5 @@
 Makefile.orig  Sat May 22 09:21:47 2004
-+++ Makefile   Sat Feb  5 17:25:47 2005
+--- Makefile.orig  Sun May 31 03:35:42 2009
 Makefile   Tue Jul 14 18:44:12 2009
 @@ -3,9 +3,6 @@
  # User Options
  ###
@@ -10,28 +10,35 @@
  # Font to use for statusbar in fullscreen mode
  STATUSBAR_FONT = fixed
  
-@@ -57,11 +54,6 @@ SS_RANDOMIZE = -r
+@@ -49,15 +46,6 @@ MAGIC = -DHAVE_MAGIC
  # Do not edit below here!
  ##
  
 -CC= gcc
--CFLAGS= -O2 -Wall -fomit-frame-pointer -finline-functions \
+-#CFLAGS= -O -g -Wall
+-CFLAGS= -O2 -Wall \
 -  -fcaller-saves -ffast-math -fno-strength-reduce \
 -  -fthread-jumps #-march=pentium #-DSTAT_MACROS_BROKEN
+-#CFLAGS= -O2 -Wall -fomit-frame-pointer -finline-functions \
+-# -fcaller-saves -ffast-math -fno-strength-reduce \
+-# -fthread-jumps #-march=pentium #-DSTAT_MACROS_BROKEN
 -
- INCLUDES  = `imlib-config --cflags-gdk`
- LIBS  = `imlib-config --libs-gdk`
+ INCLUDES  := $(shell pkg-config --cflags gdk-2.0 imlib2)
+ LIBS  := $(shell pkg-config --libs gdk-2.0 imlib2)
  
-@@ -126,12 +118,6 @@ install: $(PROGRAM)
+@@ -136,13 +124,7 @@ distclean : clean
+ 
+ install: $(PROGRAM)
@echo Installing QIV...
-   install -s -m 0755 $(PROGRAM) $(PREFIX)/bin
-   install -m 0644 $(PROGRAM).1 $(PREFIX)/man/man1
+-  install -s -m 0755 $(PROGRAM) $(PREFIX)/bin
+-  install -m 0644 $(PROGRAM).1 $(PREFIX)/man/man1
 -  

Re: Update graphics/qiv

2009-07-14 Thread Christian Weisgerber
Matthias Kilian k...@outback.escape.de wrote:

 Oh, and I've a question about the patch for util.c: is this still
 required?

Yes.

 In my silly little world (no alpha, no sparc64), NULL has
 always pointer size, so the cast to (void *) appears a little bit
 strange to me. Of course, passing just 0 as the sentinel *was* wrong
 in the old qiv-2.0.

NULL is not magic.  We #define NULL to 0.  It is 0 that is automatically
treated as a null pointer _in pointer contexts_.  If a function has
a variable number of arguments, like execlp() in this case, the
compiler can't know if you are passing 0 the integer or 0 the null
pointer.  It defaults to the former, that's why the cast is needed.

http://c-faq.com/null/null2.html

-- 
Christian naddy Weisgerber  na...@mips.inka.de