svn commit: r368415 - in head/graphics: . xcftools xcftools/files

John Marino marino at FreeBSD.org
Wed Sep 17 20:33:24 UTC 2014


Author: marino
Date: Wed Sep 17 20:33:22 2014
New Revision: 368415
URL: http://svnweb.freebsd.org/changeset/ports/368415
QAT: https://qat.redports.org/buildarchive/r368415/

Log:
  Add new port graphics/xcftools
  
  PR:		179116
  Submitted by:	Kalten (gmx.at)
  
  Xcftools is a set of fast command-line tools for extracting information
  from the Gimp's native file format XCF. The tools are designed to allow
  efficient use of layered XCF files as sources in a build system that use
  'make' and similar tools to manage automatic processing of the graphics.
  These tools work independently of the Gimp engine and do not require the
  Gimp to even be installed.

Added:
  head/graphics/xcftools/
  head/graphics/xcftools/Makefile   (contents, props changed)
  head/graphics/xcftools/distinfo   (contents, props changed)
  head/graphics/xcftools/files/
  head/graphics/xcftools/files/patch-src_io-unix.c   (contents, props changed)
  head/graphics/xcftools/files/patch-src_xcf2png.c   (contents, props changed)
  head/graphics/xcftools/files/patch-test_dottest   (contents, props changed)
  head/graphics/xcftools/pkg-descr   (contents, props changed)
Modified:
  head/graphics/Makefile

Modified: head/graphics/Makefile
==============================================================================
--- head/graphics/Makefile	Wed Sep 17 19:54:38 2014	(r368414)
+++ head/graphics/Makefile	Wed Sep 17 20:33:22 2014	(r368415)
@@ -1019,6 +1019,7 @@
     SUBDIR += wxsvg
     SUBDIR += xaos
     SUBDIR += xbmbrowser
+    SUBDIR += xcftools
     SUBDIR += xd3d
     SUBDIR += xdgagrab
     SUBDIR += xface.el

Added: head/graphics/xcftools/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/xcftools/Makefile	Wed Sep 17 20:33:22 2014	(r368415)
@@ -0,0 +1,84 @@
+# $FreeBSD$
+
+PORTNAME=	xcftools
+PORTVERSION=	1.0.8.20130212
+CATEGORIES=	graphics
+MASTER_SITES=	GH \
+		http://freeheimdall.spdns.org/files/
+
+MAINTAINER=	kalten at gmx.at
+COMMENT=	Command-line tools for extracting from XCF format (graphics/gimp)
+
+LIB_DEPENDS=	libpng15.so:${PORTSDIR}/graphics/png
+
+# xcftools is under a public domain licence
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	j-jorge
+GH_TAGNAME=	${GH_COMMIT}
+GH_COMMIT=	d72ba82
+
+DIST_SUBDIR=	${PORTNAME}
+
+# option NLS (for gettext) is wrong as this port allways needs NLS:
+USES=	libtool cmake gmake iconv pkgconfig perl5 gettext
+USE_PERL5=	build run
+GNU_CONFIGURE=	yes
+USE_LDCONFIG=	yes
+INSTALL_TARGET=	preinstall
+
+# manual pages not built but there is -h for each program.
+# regression tests (TESTS option) fail
+
+PORTDOCS=	ChangeLog README TRANSLATION
+PLIST_FILES=	bin/xcf2png \
+		bin/xcf2pnm \
+		bin/xcfinfo \
+		bin/xcfview
+
+CFLAGS+=	-I${LOCALBASE}/include -I${LOCALBASE}/include/libpng15
+LDFLAGS+=	-L${LOCALBASE}/lib -lintl
+
+MAKE_JOBS_UNSAFE=	yes
+
+OPTIONS_DEFINE=	DOCS TESTS
+TESTS_DESC=	Run self-tests (faulty) (pulls in graphics/netpbm shells/bash)
+
+TEST_BUILD_DEPENDS=	pngtopnm:${PORTSDIR}/graphics/netpbm \
+			bash:${PORTSDIR}/shells/bash
+
+.include <bsd.port.options.mk>
+
+post-patch:
+	@${REINPLACE_CMD} -e "s|^#! \(/bin/bash\)|#!${PREFIX}\1|" \
+		${WRKSRC}/test/dotest
+	@${REINPLACE_CMD} -e "s|perl|${PERL}|" \
+		${WRKSRC}/test/dotest
+	@${REINPLACE_CMD} -e "s|^#! /usr/bin/perl|#!${PERL}|" \
+		${WRKSRC}/xcfview \
+		${WRKSRC}/mancombine.pl \
+		${WRKSRC}/manpo/mantranslate.pl \
+		${WRKSRC}/manpo/optipot.pl \
+		${WRKSRC}/mkenumsc.pl \
+		${WRKSRC}/mkenumsh.pl \
+		${WRKSRC}/mkopti.pl \
+		${WRKSRC}/mktablec.pl
+
+test:
+.if ${PORT_OPTIONS:MTESTS}
+	cd ${WRKSRC}/test && \
+		${SETENV} ${MAKE_ENV} limits -m 20m ${GMAKE} check
+.endif
+
+post-build: test
+
+post-install:
+	${STRIP_CMD} ${WRKSRC}/bin/xcf2png ${WRKSRC}/bin/xcf2pnm \
+		${WRKSRC}/bin/xcfinfo
+	${INSTALL_SCRIPT} ${WRKSRC}/bin/xcf2png ${WRKSRC}/bin/xcf2pnm \
+		${WRKSRC}/bin/xcfinfo ${WRKSRC}/xcfview \
+		${STAGEDIR}${PREFIX}/bin
+	@${MKDIR} ${STAGEDIR}${DOCSDIR}
+	(cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR})
+
+.include <bsd.port.mk>

Added: head/graphics/xcftools/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/xcftools/distinfo	Wed Sep 17 20:33:22 2014	(r368415)
@@ -0,0 +1,2 @@
+SHA256 (xcftools/xcftools-1.0.8.20130212.tar.gz) = 3b00aa9ace6e4c46674fbaee03a8ba0111bd4a2c980b42c9a82f1ff42cd8f6cd
+SIZE (xcftools/xcftools-1.0.8.20130212.tar.gz) = 197954

Added: head/graphics/xcftools/files/patch-src_io-unix.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/xcftools/files/patch-src_io-unix.c	Wed Sep 17 20:33:22 2014	(r368415)
@@ -0,0 +1,11 @@
+--- src/io-unix.c.orig	2013-02-12 19:30:10.000000000 +0100
++++ src/io-unix.c	2014-09-11 01:34:41.000000000 +0200
+@@ -96,7 +96,7 @@
+       if( status > 0 ) {
+         fclose(xcfstream) ;
+         xcfstream = 0 ;
+-        FatalGeneric(status,NULL);
++        FatalGeneric(status,"status=%d",status);
+       }
+     } else {
+       fclose(xcfstream) ;

Added: head/graphics/xcftools/files/patch-src_xcf2png.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/xcftools/files/patch-src_xcf2png.c	Wed Sep 17 20:33:22 2014	(r368415)
@@ -0,0 +1,16 @@
+--- src/xcf2png.c.orig	2013-02-12 19:30:10.000000000 +0100
++++ src/xcf2png.c	2014-09-11 01:38:20.000000000 +0200
+@@ -23,6 +23,13 @@
+ #include "palette.h"
+ 
+ #include <png.h>
++#ifndef png_voidp_NULL
++#define png_voidp_NULL (png_voidp)NULL
++#endif
++#ifndef png_error_ptr_NULL
++#define png_error_ptr_NULL (png_error_ptr)NULL
++#endif
++
+ #include <stdlib.h>
+ #include <string.h>
+ #include <locale.h>

Added: head/graphics/xcftools/files/patch-test_dottest
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/xcftools/files/patch-test_dottest	Wed Sep 17 20:33:22 2014	(r368415)
@@ -0,0 +1,53 @@
+--- test/dotest.orig	2013-02-12 19:30:10.000000000 +0100
++++ test/dotest	2014-09-11 05:58:19.000000000 +0200
+@@ -31,6 +31,17 @@
+     keepgoing=1
+ fi
+ 
++
++compare() {
++ answer=`pamarith -compare "$1" "$2" 2>&1`
++ result=$?
++ if [ ! $result -eq 0 ]; then
++  echo "$answer"
++ fi
++ return $result
++}
++
++
+ failed() {
+     if (( lastfailed != totaltests ))
+     then
+@@ -126,9 +137,9 @@
+     source="$1"
+     shift
+     testrun ${XCFTOOLS_PREFIX}xcf2pnm \
+-        -@ -oo.$oext $aopt source/$source.xcf.gz "$@"
+-    [ -z "$oanswer" ] || cmp o.want o.$oext || failed
+-    [ -z "$aanswer" ] || cmp a.want a.pnm || failed
++        -oo.$oext $aopt source/$source.xcf.gz "$@"
++    [ -z "$oanswer" ] || compare o.want o.$oext || failed
++    [ -z "$aanswer" ] || compare a.want a.pnm || failed
+ }
+ 
+ testpng() {
+@@ -162,10 +173,10 @@
+     perl pngtype.pl < o.png > pngtype
+     diff -u pngtype.want pngtype || failed
+     pngtopnm $oargs o.png > o.pnm
+-    cmp o.want o.pnm || failed
++    compare o.want o.pnm || failed
+     if [ "$afilter" != : ] ; then
+         pngtopnm -alpha o.png > a.pnm
+-        cmp a.want a.pnm || failed
++        compare a.want a.pnm || failed
+     fi
+     rm pngtype.want
+ }
+@@ -732,4 +743,4 @@
+     exit 0
+ fi
+ 
+-# End
+\ No newline at end of file
++# End

Added: head/graphics/xcftools/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/graphics/xcftools/pkg-descr	Wed Sep 17 20:33:22 2014	(r368415)
@@ -0,0 +1,8 @@
+Xcftools is a set of fast command-line tools for extracting information
+from the Gimp's native file format XCF. The tools are designed to allow
+efficient use of layered XCF files as sources in a build system that use
+'make' and similar tools to manage automatic processing of the graphics.
+These tools work independently of the Gimp engine and do not require the
+Gimp to even be installed.
+
+WWW: http://henning.makholm.net/software


More information about the svn-ports-head mailing list