Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Mar 2008 16:15:39 +0300 (MSK)
From:      "Iouri V. Ivliev" <ii@any.com.ru>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        darius@dons.net.au
Subject:   ports/121862: Update port: graphics/pfstools - 1.6.4 release, fixup syntax error and typo in Makefile, fixup build with octave 3
Message-ID:  <200803191315.m2JDFdoH004491@smaug.esterdev.com>
Resent-Message-ID: <200803191320.m2JDK1pZ002623@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         121862
>Category:       ports
>Synopsis:       Update port: graphics/pfstools - 1.6.4 release, fixup syntax error and typo in Makefile, fixup build with octave 3
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Wed Mar 19 13:20:01 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator:     Iouri V. Ivliev
>Release:        FreeBSD 6.2-RELEASE-p7 i386
>Organization:
EsterDev, Ltd.
>Environment:
System: FreeBSD smaug.esterdev.com 6.2-RELEASE-p7 FreeBSD 6.2-RELEASE-p7 #0: Sun Sep 23 17:28:25 UTC 2007 root@smaug.esterdev.com:/usr/obj/usr/src/sys/SMAUG i386
>Description:
1.6.3 Changes:
    * fixed: pfsinopenexr can now read files that has data window < display
        window
    * fixed: pfs library can handle channel names up to 32 characters (was 8)
    * updated: pfs specification - max string lengths and format of custom
        channel names
    * security fix: fscanf in rgbeio.cpp (thanks to Stefan and Ludwig)
    * bugfix: pfsview - segfault when switching channels
    * fixed: pfsview - color readout in the status line refreshed when
        new channel or frame loaded
    * added: matlab/pfs_write_luminance.m
    * bugfix: rgbeio - header read properly when the first byte is 0x20
        (thanks to Axel)
    * bugfix: rgbeio - fix misinterpreted rle-compresses lines (thanks
        to Axel)
1.6.4 Changes:
    * fixed: buffer overflow vulnerability in rgbeio.cpp (thanks to Stefan)
    * fixed: compilation issues with gcc-4.3 - missing includes (thanks 
        to Sebastian Harl for the Debian patch)
Port changes:
    * fix OPTIONS syntax error in Makefile
    * add an extra patch from Debian GNU/Linux octave-pfstools package
        to fix build errors with octave 3.0.0 (original here:
        http://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg435739.html)
    * use real octave base in the pkg-plist.

I want to take maintainership.
>How-To-Repeat:
>Fix:
--- pfstools.diff begins here ---
diff -ruN pfstools.orig/Makefile pfstools/Makefile
--- pfstools.orig/Makefile	2008-01-28 12:32:16.000000000 +0000
+++ pfstools/Makefile	2008-03-13 12:09:40.000000000 +0000
@@ -6,10 +6,10 @@
 #
 
 PORTNAME=	pfstools
-PORTVERSION=	1.6.2
-PORTREVISION=	3
+PORTVERSION=	1.6.4
+PORTREVISION=	0
 CATEGORIES=	graphics
-MASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
+MASTER_SITES=	SF
 MASTER_SITE_SUBDIR=	${PORTNAME}
 
 MAINTAINER=	darius@dons.net.au
@@ -19,26 +19,27 @@
 
 PFS_CPPFLAGS=	-I${LOCALBASE}/include
 PFS_LDFLAGS=	-L${LOCALBASE}/lib
+PFS_BUILD=	${MACHINE_ARCH}-portbld-freebsd${OSREL}
+PLIST_SUB+=	PFS_BASE=${PREFIX}
 
 GNU_CONFIGURE=	yes
-CONFIGURE_TARGET:=	--build=${CONFIGURE_TARGET}
-CONFIGURE_ARGS=	--disable-jpeghdr --disable-matlab
+CONFIGURE_TARGET=	--build=${PFS_BUILD}
+CONFIGURE_ARGS=	--disable-jpeghdr --disable-matlab \
+		--with-bash=${LOCALBASE}/bin/bash
 CONFIGURE_ENV=	CPPFLAGS="${PFS_CPPFLAGS}" \
 		LDFLAGS="${PFS_LDFLAGS}" \
-		PKG_CONFIG_PATH="${LOCALBASE}/libdata/pkgconfig"
+		PKG_CONFIG_PATH=${X11BASE}/libdata/pkgconfig
 USE_AUTOTOOLS=	libtool:15
 USE_GMAKE=	yes
-USE_GL=		glut
-
 USE_LDCONFIG=	yes
 USE_GNOME=	pkgconfig
 
-OPTIONS=	+PPM "Compile programs that use PPM (NetPBM)" off \
+OPTIONS=	PPM "Compile programs that use PPM (NetPBM)" off \
 		EXR "Compile programs that use OpenEXR library" off \
 		TIFF "Compile programs that use TIFF library" on \
 		QT "Compile programs that use QT library" off \
 		IM "Compile programs that use ImageMagick library" off \
-		OCTAVE "Compile octave interface functioffs" off \
+		OCTAVE "Compile octave interface functions" off \
 		GL "Compile opengl code (pfsglview)" off
 
 MAN1=		pfsin.1 \
@@ -70,7 +71,6 @@
 		pfspad.1 \
 		pfscat.1 \
 		pfsabsolute.1
-
 MLINKS=		pfsoutppm.1 \
 		pfsouttiff.1 \
 		pfsoutppm.1 \
@@ -88,8 +88,6 @@
 .endif
 
 .if defined(WITH_EXR)
-PFS_CPPFLAGS+=	${PTHREAD_CFLAGS}
-PFS_LDFLAGS+=	${PTHREAD_LIBS}
 CONFIGURE_ARGS+=--enable-openexr --with-exrdir=${LOCALBASE}/include/OpenEXR
 LIB_DEPENDS+=	IlmImf:${PORTSDIR}/graphics/OpenEXR
 PLIST_SUB+=	EXR=""
@@ -133,9 +131,15 @@
 USE_FORTRAN=	yes
 BUILD_DEPENDS+=	mkoctfile:${PORTSDIR}/math/octave
 RUN_DEPENDS+=	octave:${PORTSDIR}/math/octave
+OCTAVE_BASE?=	${LOCALBASE}
+OCTAVE_VERSION!=${OCTAVE_BASE}/bin/octave-config -v
 PLIST_SUB+=	OCTAVE="" \
-		OCTAVE_VERSION="`${LOCALBASE}/bin/octave-config -v`" \
-		BUILD=${CONFIGURE_TARGET:S/--build//}
+		OCTAVE_VERSION=${OCTAVE_VERSION} \
+		OCTAVE_BASE=${OCTAVE_BASE} \
+		BUILD=${PFS_BUILD}
+.if (!empty(OCTAVE_VERSION:M[3-9].*))
+EXTRA_PATCHES+=	${PATCHDIR}/epatch-src-octave-pfsopen.cpp
+.endif
 MAN1+=		pfsoctavelum.1 \
 		pfsoctavergb.1 \
 		pfsstat.1
@@ -148,21 +152,16 @@
 PFS_CPPFLAGS+=	-I${X11BASE}/include
 PFS_LDFLAGS+=	-L${X11BASE}/lib
 CONFIGURE_ARGS+=--enable-opengl
-LIB_DEPENDS+=	glut.4:${PORTSDIR}/graphics/libglut
+USE_GL=		glut
 PLIST_SUB+=	GL=""
 .else
 CONFIGURE_ARGS+=--disable-opengl
 PLIST_SUB+=	GL="@comment "
 .endif
 
+
+.if defined(WITH_OCTAVE)
 pre-configure:
-	@${REINPLACE_CMD} -e "s,#!/bin/bash,#!${LOCALBASE}/bin/bash," \
-		${WRKSRC}/src/fileformat/pfsin \
-		${WRKSRC}/src/fileformat/pfsout \
-		${WRKSRC}/src/fileformat/pfsinmulti \
-		${WRKSRC}/src/fileformat/pfsindcraw \
-		${WRKSRC}/src/pfsview/pfsv
-.if defined(WITH_OCT)
 	@${REINPLACE_CMD} \
 		-e 's|/usr/bin/octave|${LOCALBASE}/bin/octave|' \
 		${WRKSRC}/src/octave/*
diff -ruN pfstools.orig/distinfo pfstools/distinfo
--- pfstools.orig/distinfo	2007-10-02 07:44:42.000000000 +0000
+++ pfstools/distinfo	2008-02-13 08:50:54.000000000 +0000
@@ -1,3 +1,3 @@
-MD5 (pfstools-1.6.2.tar.gz) = 6c39c0bfb72ff59787f4ed4396272297
-SHA256 (pfstools-1.6.2.tar.gz) = 9241d0cec09b20a5ac672adc4a58cf06d6f7a71d8787621e85195219a39af6ce
-SIZE (pfstools-1.6.2.tar.gz) = 569121
+MD5 (pfstools-1.6.4.tar.gz) = 5c465af4c7a1979d60d4992b0d554628
+SHA256 (pfstools-1.6.4.tar.gz) = 18d2d8fe64fd88ceda5b61cd7504f801c859989b6220965eb5c254e3d902dfe8
+SIZE (pfstools-1.6.4.tar.gz) = 588801
diff -ruN pfstools.orig/files/epatch-src-octave-pfsopen.cpp pfstools/files/epatch-src-octave-pfsopen.cpp
--- pfstools.orig/files/epatch-src-octave-pfsopen.cpp	1970-01-01 00:00:00.000000000 +0000
+++ pfstools/files/epatch-src-octave-pfsopen.cpp	2008-02-13 08:50:54.000000000 +0000
@@ -0,0 +1,23 @@
+--- src/octave/pfsopen.cpp.orig	2006-04-06 12:33:02.000000000 +0000
++++ src/octave/pfsopen.cpp	2008-02-12 10:59:44.000000000 +0000
+@@ -54,8 +54,9 @@
+     return retval;
+   }
+ 
+-  if( !args(0).is_string() && !args(0).is_stream() ) {
++  if( !args(0).is_string() && !args(0).is_real_scalar() ) {
+     error( SCRIPT_NAME ": expected file name or file descriptor as the first argument!");
++    // file descriptors are represented as integers (stored as doubles) in Octave 3.0
+     return retval;
+   }
+ 
+@@ -120,8 +121,7 @@
+     }
+   } else {
+     // File descriptor given
+-    octave_stream fid = args(0).stream_value();
+-    int fd = dup( fid.file_number() );
++    int fd = dup( (int) args(0).scalar_value() );
+     if( writeMode ) {
+       fh = fdopen( fd, "wb" );
+       if( fh == NULL ) {
diff -ruN pfstools.orig/files/patch-pkgconfig-install.diff pfstools/files/patch-pkgconfig-install.diff
--- pfstools.orig/files/patch-pkgconfig-install.diff	2007-10-02 07:44:42.000000000 +0000
+++ pfstools/files/patch-pkgconfig-install.diff	1970-01-01 00:00:00.000000000 +0000
@@ -1,11 +0,0 @@
---- src/pfs/Makefile.in.orig	2007-09-30 11:07:52.000000000 +0930
-+++ src/pfs/Makefile.in	2007-09-30 11:10:14.000000000 +0930
-@@ -183,7 +183,7 @@
- library_includedir = $(includedir)/pfs-1.2
- library_include_HEADERS = pfs.h array2d.h
- #INCLUDES = 
--pkgconfigdir = $(libdir)/pkgconfig
-+pkgconfigdir = $(prefix)/libdata/pkgconfig
- pkgconfig_DATA = pfs.pc
- subdir = src/pfs
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
diff -ruN pfstools.orig/files/patch-src-pfs-Makefile.in pfstools/files/patch-src-pfs-Makefile.in
--- pfstools.orig/files/patch-src-pfs-Makefile.in	1970-01-01 00:00:00.000000000 +0000
+++ pfstools/files/patch-src-pfs-Makefile.in	2008-02-13 08:50:54.000000000 +0000
@@ -0,0 +1,11 @@
+--- src/pfs/Makefile.in.orig	2008-01-01 14:27:14.000000000 +0000
++++ src/pfs/Makefile.in	2008-02-12 10:59:44.000000000 +0000
+@@ -243,7 +243,7 @@
+ library_includedir = $(includedir)/pfs-1.2
+ library_include_HEADERS = pfs.h array2d.h
+ #INCLUDES = 
+-pkgconfigdir = $(libdir)/pkgconfig
++pkgconfigdir = $(prefix)/libdata/pkgconfig
+ pkgconfig_DATA = pfs.pc
+ all: all-am
+ 
diff -ruN pfstools.orig/pkg-plist pfstools/pkg-plist
--- pfstools.orig/pkg-plist	2008-01-28 10:41:38.000000000 +0000
+++ pfstools/pkg-plist	2008-03-12 09:05:55.000000000 +0000
@@ -1,24 +1,24 @@
-bin/pfsabsolute
-bin/pfscat
-bin/pfsclamp
-bin/pfscut
-bin/pfsextractchannels
-bin/pfsflip
-bin/pfsgamma
-bin/pfsin
-bin/pfsindcraw
-bin/pfsinmulti
-bin/pfsinpfm
 bin/pfsinrgbe
+bin/pfsoutrgbe
+bin/pfsinpfm
+bin/pfsoutpfm
+bin/pfsin
 bin/pfsout
 bin/pfsoutffmpeg
-bin/pfsoutpfm
-bin/pfsoutrgbe
-bin/pfspad
+bin/pfsinmulti
+bin/pfsindcraw
+bin/pfsclamp
+bin/pfsgamma
+bin/pfstag
+bin/pfssize
+bin/pfsextractchannels
 bin/pfspanoramic
 bin/pfsrotate
-bin/pfssize
-bin/pfstag
+bin/pfsflip
+bin/pfscut
+bin/pfspad
+bin/pfscat
+bin/pfsabsolute
 %%PPM%%bin/pfsinppm
 %%PPM%%bin/pfsoutppm
 %%EXR%%bin/pfsinexr
@@ -27,19 +27,20 @@
 %%TIFF%%bin/pfsouttiff
 %%IM%%bin/pfsinimgmagick
 %%IM%%bin/pfsoutimgmagick
-%%QT%%bin/pfsv
 %%QT%%bin/pfsview
-%%GL%%bin/pfsglview
+%%QT%%bin/pfsv
 %%OCTAVE%%bin/pfsoctavelum
 %%OCTAVE%%bin/pfsoctavergb
 %%OCTAVE%%bin/pfsstat
-include/pfs-1.2/array2d.h
+%%GL%%bin/pfsglview
 include/pfs-1.2/pfs.h
-lib/libpfs-1.2.a
-lib/libpfs-1.2.la
-lib/libpfs-1.2.so
+include/pfs-1.2/array2d.h
 lib/libpfs-1.2.so.0
+lib/libpfs-1.2.so
+lib/libpfs-1.2.la
+lib/libpfs-1.2.a
 libdata/pkgconfig/pfs.pc
+%%OCTAVE%%@cwd %%OCTAVE_BASE%%
 %%OCTAVE%%libexec/octave/%%OCTAVE_VERSION%%/site/oct/%%BUILD%%/pfstools/pfsclose.oct
 %%OCTAVE%%libexec/octave/%%OCTAVE_VERSION%%/site/oct/%%BUILD%%/pfstools/pfsget.oct
 %%OCTAVE%%libexec/octave/%%OCTAVE_VERSION%%/site/oct/%%BUILD%%/pfstools/pfsopen.oct
@@ -57,12 +58,18 @@
 %%OCTAVE%%share/octave/%%OCTAVE_VERSION%%/site/m/pfstools/pfsview.m
 %%OCTAVE%%share/octave/%%OCTAVE_VERSION%%/site/m/pfstools/pfsview_list.m
 %%OCTAVE%%share/octave/%%OCTAVE_VERSION%%/site/m/pfstools/pfsview_rgb.m
-@dirrmtry include/pfs-1.2
+%%OCTAVE%%@cwd %%PFS_BASE%%
+@dirrm include/pfs-1.2
+%%OCTAVE%%@cwd %%OCTAVE_BASE%%
+%%OCTAVE%%@dirrm share/octave/%%OCTAVE_VERSION%%/site/m/pfstools
+%%OCTAVE%%@dirrmtry share/octave/%%OCTAVE_VERSION%%/site/m
+%%OCTAVE%%@dirrmtry share/octave/%%OCTAVE_VERSION%%/site
+%%OCTAVE%%@dirrmtry share/octave/%%OCTAVE_VERSION%%
+%%OCTAVE%%@dirrmtry share/octave
 %%OCTAVE%%@dirrm libexec/octave/%%OCTAVE_VERSION%%/site/oct/%%BUILD%%/pfstools
 %%OCTAVE%%@dirrmtry libexec/octave/%%OCTAVE_VERSION%%/site/oct/%%BUILD%%
 %%OCTAVE%%@dirrmtry libexec/octave/%%OCTAVE_VERSION%%/site/oct
 %%OCTAVE%%@dirrmtry libexec/octave/%%OCTAVE_VERSION%%/site
 %%OCTAVE%%@dirrmtry libexec/octave/%%OCTAVE_VERSION%%
 %%OCTAVE%%@dirrmtry libexec/octave
-%%OCTAVE%%@dirrm share/octave/%%OCTAVE_VERSION%%/site/m/pfstools
-%%OCTAVE%%@dirrmtry share/octave/%%OCTAVE_VERSION%%/site/m
+%%OCTAVE%%@cwd %%PFS_BASE%%
--- pfstools.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200803191315.m2JDFdoH004491>