Hello community,

here is the log from the commit of package netpbm for openSUSE:Factory checked 
in at 2012-09-17 16:58:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/netpbm (Old)
 and      /work/SRC/openSUSE:Factory/.netpbm.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "netpbm", Maintainer is "[email protected]"

Changes:
--------
--- /work/SRC/openSUSE:Factory/netpbm/netpbm.changes    2012-08-31 
09:52:31.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.netpbm.new/netpbm.changes       2012-09-17 
16:58:53.000000000 +0200
@@ -1,0 +2,24 @@
+Thu Sep  6 15:16:56 UTC 2012 - [email protected]
+
+- updated to 10.59.2:
+  * transition super-stable --> advanced branch
+  * builds with libpng15
+  * patches summary:
+    ->  dropped unneeded or upstreamed patches:
+       - fixes.patch
+       - libpng14.patch
+       - manpages.patch
+       - pamscale.patch
+       - pnmtopng-CAN-2978.patch
+    -> left patches
+       # make.patch (suse specific)
+       # no-build-time.patch (suse specific)
+       # missing-file-close.patch (should be upstreamed in newer 
+         versions)
+       # tmpfile.patch (rewritten) 
+       # security-code.patch (taken from fedora, replacement of 
+         former security.patch)
+       # security-scripts.patch (taken from fedora, replacement of
+         former security2.patch)
+
+-------------------------------------------------------------------

Old:
----
  netpbm-10.35.86-documentation.tar.bz2
  netpbm-10.35.86-nohpcdtoppm-nojbig.tar.bz2
  netpbm-fixes.patch
  netpbm-libpng14.patch
  netpbm-manpages.patch
  netpbm-pamscale.patch
  netpbm-pnmtopng-CAN-2978.patch
  netpbm-security.patch
  netpbm-security2.patch

New:
----
  netpbm-10.59.2-documentation.tar.bz2
  netpbm-10.59.2-nohpcdtoppm-noppmtompeg.tar.bz2
  netpbm-security-code.patch
  netpbm-security-scripts.patch

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

Other differences:
------------------
++++++ netpbm.spec ++++++
--- /var/tmp/diff_new_pack.qZVLkj/_old  2012-09-17 16:58:55.000000000 +0200
+++ /var/tmp/diff_new_pack.qZVLkj/_new  2012-09-17 16:58:55.000000000 +0200
@@ -17,7 +17,6 @@
 
 
 Name:           netpbm
-# regarding to libpng: netpbm is compatible with libpng14 from version 10.48
 BuildRequires:  flex
 BuildRequires:  libjasper-devel
 BuildRequires:  libpng-devel
@@ -29,41 +28,29 @@
 Obsoletes:      netpbm-64bit
 %endif
 #
-Version:        10.35.86
+%define libmaj  11
+%define libmin  59
+%define libver  %{libmaj}.%{libmin}
+Version:        10.59.2
 Release:        0
 Summary:        A Powerful Graphics Conversion Package
 License:        BSD-3-Clause and GPL-2.0+ and SUSE-IJG and MIT and 
SUSE-Public-Domain
 Group:          Productivity/Graphics/Convertors
-Source:         netpbm-%{version}-nohpcdtoppm-nojbig.tar.bz2
+Source:         netpbm-%{version}-nohpcdtoppm-noppmtompeg.tar.bz2
 Source1:        netpbm-%{version}-documentation.tar.bz2
 Source2:        baselibs.conf
 Source3:        prepare-src-tarball
 # SUSE specific
 Patch0:         %{name}-make.patch 
-# partially upstreamed in development version
-Patch1:         %{name}-manpages.patch 
-# refused by upstream
-Patch2:         %{name}-security.patch 
-# refused by upstream
-Patch3:         %{name}-security2.patch 
-# refused by upstream
-Patch4:         %{name}-pnmtopng-CAN-2978.patch 
-# don't know what it does so far
-Patch5:         %{name}-tmpfile.patch 
+# SUSE specific: no build date
+Patch1:         %{name}-no-build-date.patch 
 # upstreamed in development version
-Patch6:         %{name}-fixes.patch 
-# upstreamed in development version (another way)
-Patch7:         %{name}-pamscale.patch 
-# upstreamed in development version
-Patch8:         %{name}-missing-file-close.patch
-# no build date
-Patch9:         netpbm-no-build-date.patch 
-# new versions build against libpng14
-Patch10:        %{name}-libpng14.patch
-Url:            http://netpbm.sourceforge.net
-BuildRoot:      %{_tmppath}/%{name}-%{version}-build
+Patch2:         %{name}-missing-file-close.patch
+Patch3:         %{name}-tmpfile.patch 
+Patch4:         %{name}-security-code.patch 
+Patch5:         %{name}-security-scripts.patch 
 
-%package -n libnetpbm10
+%package -n libnetpbm%{libmaj}
 Summary:        Libraries for the NetPBM (NetPortableBitmap) Graphic Formats
 Group:          System/Libraries
 # bug437293
@@ -82,7 +69,7 @@
 Obsoletes:      libnetpbm-devel-64bit
 %endif
 #
-Requires:       libnetpbm10 = %{version}
+Requires:       libnetpbm%{libmaj} = %{version}
 Provides:       libnetpbm:/usr/include/pbm.h
 
 %description
@@ -96,7 +83,7 @@
 and uncompressed), Andrew Toolkit raster object, and many more. On top
 of that, man pages are included for all tools.
 
-%description -n libnetpbm10
+%description -n libnetpbm%{libmaj}
 These are the libs for the netpbm graphic formats. The tools can be
 found in the netpbm package. The sources are contained in the netpbm
 source package.
@@ -109,36 +96,20 @@
 %prep
 %setup
 %setup -D -q -a 1
-rm -rf libtiff
 %patch0
 %patch1
-%patch2 -p1
-%patch3 -p1
-%patch4
-%patch5
-%patch6
-%patch7
-%patch8
-%patch9
-%patch10 -p1
-rm -rf converter/other/jpeg2000/libjasper/include #make sure the internal 
libjasper is not used
-mkdir -p pnmtopalm
-cd pnmtopalm
-cp -v ../converter/other/pnmtopalm/LICENSE .
-cp -v ../converter/other/pnmtopalm/README .
+%patch2
+%patch3
+%patch4 -p1
+%patch5 -p1
+mkdir pnmtopalm # for %doc pnmtopalm
+cp -p converter/other/pnmtopalm/{LICENSE,README} pnmtopalm
 
 %build
-# fix build with newer glibc
-sed "s:getline:getline_nonlibc:" -i converter/ppm/xvminitoppm.c
-#
-cp  Makefile.config.in  Makefile.config
-CFLAGS="$RPM_OPT_FLAGS"
-%if %suse_version > 1030
-CFLAGS="$CFLAGS -flax-vector-conversions"
-%endif
-make CFLAGS="$CFLAGS" \
-     JASPERLIB=-ljasper \
-     JASPERHDR_DIR=/usr/include/jasper
+# netpbm has _interactive_ configure perl script
+cp config.mk.in config.mk # recomended by upstream, see doc/INSTALL
+export CFLAGS="$RPM_OPT_FLAGS -flax-vector-conversions"
+make CFLAGS="$CFLAGS" 
 rm doc/INSTALL
 #
 # convert html to man pages
@@ -150,29 +121,27 @@
 done
 
 %install
-mkdir -p $RPM_BUILD_ROOT/usr/{bin,include,%_lib,share/man}
+# netpbm has _interactive_ install perl script, see doc/INSTALL
 make pkgdir=`pwd`/package package STRIPFLAG=
-cp -prd package/bin $RPM_BUILD_ROOT/usr
-cp -pd package/{lib,link}/* $RPM_BUILD_ROOT/usr/%_lib
-ln -sf libnetpbm.so.10.35 $RPM_BUILD_ROOT/usr/%_lib/libnetpbm.so
-ln -sf libnetpbm.so      $RPM_BUILD_ROOT/usr/%_lib/libpbm.so
-ln -sf libnetpbm.so      $RPM_BUILD_ROOT/usr/%_lib/libpgm.so
-ln -sf libnetpbm.so      $RPM_BUILD_ROOT/usr/%_lib/libpnm.so
-ln -sf libnetpbm.so      $RPM_BUILD_ROOT/usr/%_lib/libppm.so
-cp -pd package/include/* $RPM_BUILD_ROOT/usr/include
-cp -prd man/* $RPM_BUILD_ROOT/usr/share/man
-rm $RPM_BUILD_ROOT/usr/%_lib/*.a
-mkdir -p $RPM_BUILD_ROOT/usr/share/netpbm
-install -m 644 converter/other/pnmtopalm/*.map $RPM_BUILD_ROOT/usr/share/netpbm
-rm $RPM_BUILD_ROOT/usr/bin/doc.url
-rm $RPM_BUILD_ROOT/usr/bin/g3topbm #conflict with g3utils
-
-%clean
-rm -rf $RPM_BUILD_ROOT
+rm package/bin/doc.url
+rm package/bin/g3topbm #conflict with g3utils
+#
+mkdir -p $RPM_BUILD_ROOT%{_prefix}/{bin,include,%_lib,share/man,share/%{name}}
+cp -pd  package/bin/*          $RPM_BUILD_ROOT%{_bindir}
+cp -pd  package/lib/*.so*      $RPM_BUILD_ROOT%{_libdir}
+ln -s   libnetpbm.so.%{libver}         $RPM_BUILD_ROOT%{_libdir}/libnetpbm.so
+ln -s   libnetpbm.so           $RPM_BUILD_ROOT%{_libdir}/libpbm.so
+ln -s   libnetpbm.so           $RPM_BUILD_ROOT%{_libdir}/libpgm.so
+ln -s   libnetpbm.so           $RPM_BUILD_ROOT%{_libdir}/libpnm.so
+ln -s   libnetpbm.so           $RPM_BUILD_ROOT%{_libdir}/libppm.so
+cp -prd package/include/netpbm         $RPM_BUILD_ROOT%{_includedir}
+cp -prd man/*                  $RPM_BUILD_ROOT%{_mandir}
+install -m 644 converter/other/pnmtopalm/*.map \
+                               $RPM_BUILD_ROOT%{_datadir}/%{name}
 
-%post -n libnetpbm10 -p /sbin/ldconfig
+%post   -n libnetpbm%{libmaj} -p /sbin/ldconfig
 
-%postun -n libnetpbm10 -p /sbin/ldconfig
+%postun -n libnetpbm%{libmaj} -p /sbin/ldconfig
 
 %files
 %defattr(-,root,root)
@@ -181,16 +150,16 @@
 %doc %{_mandir}/man1/*.gz
 %doc %{_mandir}/man3/*.gz
 %doc %{_mandir}/man5/*.gz
-/usr/bin/*
-/usr/share/netpbm
+%{_bindir}/*
+%{_datadir}/%{name}
 
-%files -n libnetpbm10
+%files -n libnetpbm%{libmaj}
 %defattr(-,root,root)
 %{_libdir}/lib*.so.*
 
 %files -n libnetpbm-devel
 %defattr(-,root,root)
-/usr/include/*
+%{_includedir}/%{name}
 %{_libdir}/lib*.so
 
 %changelog

++++++ baselibs.conf ++++++
--- /var/tmp/diff_new_pack.qZVLkj/_old  2012-09-17 16:58:55.000000000 +0200
+++ /var/tmp/diff_new_pack.qZVLkj/_new  2012-09-17 16:58:55.000000000 +0200
@@ -1 +1 @@
-libnetpbm10
+libnetpbm11

++++++ netpbm-10.35.86-documentation.tar.bz2 -> 
netpbm-10.59.2-documentation.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/netpbm.sourceforge.net/doc/pamstereogram.html 
new/netpbm.sourceforge.net/doc/pamstereogram.html
--- old/netpbm.sourceforge.net/doc/pamstereogram.html   2012-06-22 
04:22:19.000000000 +0200
+++ new/netpbm.sourceforge.net/doc/pamstereogram.html   2012-08-04 
21:15:37.000000000 +0200
@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml";>
 <head>
-<meta charset="UTF-8">
+<meta http-equiv="Content-type" content="text/html">
 <title>Pamstereogram User Manual</title>
 </head>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/netpbm.sourceforge.net/doc/pbmtoibm23xx.html 
new/netpbm.sourceforge.net/doc/pbmtoibm23xx.html
--- old/netpbm.sourceforge.net/doc/pbmtoibm23xx.html    1970-01-01 
01:00:00.000000000 +0100
+++ new/netpbm.sourceforge.net/doc/pbmtoibm23xx.html    2010-06-14 
04:19:01.000000000 +0200
@@ -0,0 +1,89 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML><HEAD><TITLE>Pbmtoibm23xx User Manual</TITLE></HEAD>
+<BODY>
+<H1>pbmtoibm23xx</H1>
+Updated: October 16, 2004
+<BR>
+<A HREF="#index">Table Of Contents</A>
+
+<H2>NAME</H2>
+
+pbmtoibm23xx - convert a PBM image to IBM 23XX printer stream
+
+<H2 id="synopsis">SYNOPSIS</H2>
+
+<B>pbmtoibm23xxx</B>
+[<b>-xres=</b><i>dpi</i>]
+[<b>-yres=</b><i>dpi</i>]
+[<I>pbmfile</I> ...]
+
+<p>Minimum unique abbreviation of option is acceptable.  You may use double
+hyphens instead of single hyphen to denote options.  You may use white
+space in place of the equals sign to separate an option name from its value.
+
+<H2 id="description">DESCRIPTION</H2>
+
+<p>This program is part of <a href="index.html">Netpbm</a>.
+
+<p><b>pbmtoibm23xx</b> reads one or more PBM files as input and
+writes an IBM 23XX printer command stream to generate all the images in
+all the files to Standard Output.
+
+<p>If you don't specify any file names, <b>pbmtoibm23xx</b> reads from
+Standard Input.
+
+<H2 id="options">OPTIONS</H2>
+<dl>
+<dt><b>-xres=</b><i>dpi</i>
+
+<dd>This option specifies the horizontal resolution in dots per inch.
+Valid values are 60, 120, and 240.
+
+<dt><b>-yres=</b><i>dpi</i>
+
+<dd>This option specifies the vertical resolution in dots per inch.
+Valid values are 60, 120, and 240.
+
+<dt><b>-slow</b>
+
+<dd>
+Use the slower printing mode where two modes with the same resolution
+are available.  This usually produces better quality prints.  This
+affects only modes with horizontal resolution 120, but might affect
+other modes in future versions of the program.
+     
+</dl>
+
+<h2 id="limitations">LIMITATIONS</h2>
+
+<p>There are probably better ways to control the IBM 23XX printers.  Let
+me know if you find any.
+
+<h2 id="history">HISTORY</h2>
+
+<p><b>pbmtoibm23xx</b> was new in Netpbm 10.25 (October 2004).
+
+<H2 id="seealso">SEE ALSO</H2>
+
+
+<A HREF="pbm.html">pbm</A>,
+Ghostscript (<b>gs</b>).
+
+<H2 id="author">AUTHOR</H2>
+
+<p>Copyright (C) 2004 Jorrit Fahlke &lt;[email protected]&gt;.  Copying
+policy: GNU GPL version 2
+
+<HR>
+<H2 id="index">Table Of Contents</H2>
+<UL>
+<LI><A HREF="#synopsis">SYNOPSIS</A>
+<LI><A HREF="#description">DESCRIPTION</A>
+<LI><A HREF="#options">OPTIONS</A>
+<LI><A HREF="#limitations">LIMITATIONS</A>
+<LI><A HREF="#seealso">SEE ALSO</A>
+<LI><A HREF="#history">HISTORY</A>
+<LI><A HREF="#author">AUTHOR</A>
+</UL>
+</BODY>
+</HTML>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/netpbm.sourceforge.net/getting_netpbm.php 
new/netpbm.sourceforge.net/getting_netpbm.php
--- old/netpbm.sourceforge.net/getting_netpbm.php       2012-08-07 
14:44:45.000000000 +0200
+++ new/netpbm.sourceforge.net/getting_netpbm.php       2012-09-06 
13:54:10.000000000 +0200
@@ -108,7 +108,7 @@
 <tr><th>Series</th><th>Number</th><th>Date</th></tr>
 <tr><td class="td1">Development</td><td class="td2"><a 
href="http://netpbm.svn.sourceforge.net/viewvc/netpbm/trunk/?view=tar";>unnumbered</a></td><td>unknown</td></tr>
 <tr><td class="td1">Advanced</td><td class="td2"><a 
href="http://netpbm.svn.sourceforge.net/viewvc/netpbm/advanced/?view=tar";>10.59.02</a></td><td>20
 Jul 2012</td></tr>
-<tr><td class="td1">Stable</td><td class="td2"><a 
href="http://netpbm.svn.sourceforge.net/viewvc/netpbm/stable/?view=tar";>10.47.39</a></td><td>04
 Jul 2012</td></tr>
+<tr><td class="td1">Stable</td><td class="td2"><a 
href="http://netpbm.svn.sourceforge.net/viewvc/netpbm/stable/?view=tar";>10.47.40</a></td><td>20
 Aug 2012</td></tr>
 <tr><td class="td1">Super Stable</td><td class="td2"><a 
href="http://netpbm.svn.sourceforge.net/viewvc/netpbm/super_stable/?view=tar";>10.35.86</a></td><td>23
 Jul 2012</td></tr>
 <tr><td colspan="3" class="td3"><a 
href="http://netpbm.svn.sourceforge.net/viewvc/netpbm/userguide/?view=tar";>User's
 Guide (HTML tree)</a></td></tr>
 <tr><td colspan="3" class="td3"><a 
href="http://netpbm.svn.sourceforge.net/viewvc/netpbm/";>Browse SVN repository 
to access additional releases</a></td></tr>
@@ -265,6 +265,6 @@
 </address>
 
 <p style="font-size:75%">
-This page was generated on 07 Aug 2012.
+This page was generated on 06 Sep 2012.
 
 </body> </html>

++++++ netpbm-make.patch ++++++
--- /var/tmp/diff_new_pack.qZVLkj/_old  2012-09-17 16:58:55.000000000 +0200
+++ /var/tmp/diff_new_pack.qZVLkj/_new  2012-09-17 16:58:55.000000000 +0200
@@ -1,6 +1,8 @@
---- Makefile.config.in
-+++ Makefile.config.in
-@@ -108,7 +108,7 @@
+Index: config.mk.in
+===================================================================
+--- config.mk.in.orig
++++ config.mk.in
+@@ -109,7 +109,7 @@ INSTALL = $(SRCDIR)/buildtools/install.s
  #OSF1:
  #INSTALL = $(SRCDIR)/buildtools/installosf
  #Red Hat Linux:
@@ -9,7 +11,7 @@
  
  # STRIPFLAG is the option you pass to the above install program to make it
  # strip unnecessary information out of binaries.
-@@ -283,7 +283,7 @@
+@@ -295,7 +295,7 @@ LDRELOC = NONE
  CFLAGS_SHLIB = 
  # Gcc:
  #CFLAGS_SHLIB = -fpic
@@ -18,7 +20,7 @@
  # Sun compiler:
  #CFLAGS_SHLIB = -Kpic
  #CFLAGS_SHLIB = -KPIC
-@@ -350,7 +350,7 @@
+@@ -362,7 +362,7 @@ NETPBMLIB_RUNTIME_PATH =
  # The TIFF library.  See above.  If you want to build the tiff
  # converters, you must have the tiff library already installed.
  
@@ -27,7 +29,7 @@
  TIFFHDR_DIR =
  
  #TIFFLIB = libtiff.so
-@@ -382,7 +382,7 @@
+@@ -393,7 +393,7 @@ TIFFLIB_NEEDS_Z = Y
  # JPEG stuff statically linked in, in which case you won't need 
  # JPEGLIB in order to build the Tiff converters.
  
@@ -36,7 +38,7 @@
  JPEGHDR_DIR =
  #JPEGLIB = libjpeg.so
  #JPEGHDR_DIR = /usr/include/jpeg
-@@ -432,7 +432,7 @@
+@@ -451,7 +451,7 @@ PNGVER =
  #
  # If you have 'libpng-config' (see above), these are irrelevant.
  
@@ -45,3 +47,14 @@
  ZHDR_DIR = 
  #ZLIB = libz.so
  
+@@ -461,8 +461,8 @@ JBIGLIB = $(BUILDDIR)/converter/other/jb
+ JBIGHDR_DIR = $(SRCDIR)/converter/other/jbig
+ 
+ # The Jasper JPEG-2000 image compression library (aka JasPer):
+-JASPERLIB = $(INTERNAL_JASPERLIB)
+-JASPERHDR_DIR = $(INTERNAL_JASPERHDR_DIR)
++JASPERLIB = -ljasper
++JASPERHDR_DIR = /usr/include/jasper
+ # JASPERDEPLIBS is the libraries (-l options or file names) on which
+ # The Jasper library depends -- i.e. what you have to link into any
+ # executable that links in the Jasper library.

++++++ netpbm-security-code.patch ++++++
++++ 1693 lines (skipped)

++++++ netpbm-security-scripts.patch ++++++
diff -up netpbm-10.47.05/converter/other/anytopnm.security-scripts 
netpbm-10.47.05/converter/other/anytopnm
--- netpbm-10.47.05/converter/other/anytopnm.security-scripts   2009-12-10 
08:34:36.000000000 +0100
+++ netpbm-10.47.05/converter/other/anytopnm    2010-03-16 21:28:09.000000000 
+0100
@@ -510,10 +510,7 @@ else
     inputFile="-"
 fi
 
-tempdir="${TMPDIR-/tmp}/anytopnm.$$"
-mkdir -m 0700 $tempdir || \
-  { echo "Could not create temporary file. Exiting."; exit 1;}
-trap 'rm -rf $tempdir' 0
+tempdir=$(mktemp -d -t anytopnm.XXXXXXXXXX) || exit 1
 
 # Take out all spaces
 # Find the filename extension for last-ditch efforts later
@@ -539,9 +536,17 @@ if [ "$filetype" = "unknown" ]; then
     echo "$progname: unknown file type.  " \
         "'file' says mime type is '$mimeType', " 1>&2
     echo "type description is '$typeDescription'" 1>&2
+    if [ -d "$tempdir" ] ; then
+        rm -rf "$tempdir"
+    fi
+
     exit 1
     fi
 
 convertIt $file $filetype
 
+if [ -d "$tempdir" ] ; then
+    rm -rf "$tempdir"
+fi
+
 exit 0
diff -up netpbm-10.47.05/editor/pamstretch-gen.security-scripts 
netpbm-10.47.05/editor/pamstretch-gen
--- netpbm-10.47.05/editor/pamstretch-gen.security-scripts      2009-12-10 
08:34:32.000000000 +0100
+++ netpbm-10.47.05/editor/pamstretch-gen       2010-03-16 21:28:47.000000000 
+0100
@@ -31,13 +31,9 @@ if [ "$1" = "" ]; then
   exit 1
 fi
 
-tempdir="${TMPDIR-/tmp}/pamstretch-gen.$$"
-mkdir -m 0700 $tempdir || \
-  { echo "Could not create temporary file. Exiting."; exit 1;}
+tempfile=$(mktemp /tmp/pnmig.XXXXXXXXXX) || exit 1
 trap 'rm -rf $tempdir' 0 1 3 15
 
-tempfile=$tempdir/pnmig
-
 if ! cat $2 >$tempfile 2>/dev/null; then
   echo 'pamstretch-gen: error reading file' 1>&2
   exit 1
diff -up netpbm-10.47.05/editor/pnmmargin.security-scripts 
netpbm-10.47.05/editor/pnmmargin
--- netpbm-10.47.05/editor/pnmmargin.security-scripts   2009-12-10 
08:34:32.000000000 +0100
+++ netpbm-10.47.05/editor/pnmmargin    2010-03-16 21:28:09.000000000 +0100
@@ -11,15 +11,11 @@
 # documentation.  This software is provided "as is" without express or
 # implied warranty.
 
-tempdir="${TMPDIR-/tmp}/pnmmargin.$$"
-mkdir -m 0700 $tempdir || \
-  { echo "Could not create temporary file. Exiting." 1>&2; exit 1;}
-trap 'rm -rf $tempdir' 0 1 3 15
-
-tmp1=$tempdir/pnmm1
-tmp2=$tempdir/pnmm2
-tmp3=$tempdir/pnmm3
-tmp4=$tempdir/pnmm4
+tmpdir=$(mktemp -d -t ppmmargin.XXXXXXX) || exit 1
+tmp1="$tmpdir/tmp1"
+tmp2="$tmpdir/tmp2"
+tmp3="$tmpdir/tmp3"
+tmp4="$tmpdir/tmp4"
 
 color="-gofigure"
 plainopt=""
@@ -90,6 +86,7 @@ else
         -white | -black )
         pnmpad $plainopt $color \
             -left=$size -right=$size -top=$size -bottom=$size $tmp1
+       rm -rf "$tmpdir"
         exit
         ;;
         * )
@@ -102,7 +99,4 @@ else
     pnmcat -lr $tmp2 $tmp1 $tmp2 > $tmp4
     pnmcat -tb $plainopt $tmp3 $tmp4 $tmp3
 fi
-
-
-
-
+rm -rf "$tmpdir"
diff -up netpbm-10.47.05/editor/ppmfade.security-scripts 
netpbm-10.47.05/editor/ppmfade
--- netpbm-10.47.05/editor/ppmfade.security-scripts     2009-12-10 
08:34:32.000000000 +0100
+++ netpbm-10.47.05/editor/ppmfade      2010-03-16 21:28:09.000000000 +0100
@@ -14,6 +14,7 @@
 #
 #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
 use strict;
+use File::Temp "tempdir";
 
 my $SPREAD =  1;
 my $SHIFT =   2;
@@ -111,20 +112,26 @@ if ($first_file ne "undefined") {
 
 print("Frames are " . $width . "W x " . $height . "H\n");
 
+#
+# We create a tmp-directory right here
+#
+my $tmpdir = tempdir("ppmfade.XXXXXX", CLEANUP => 1);
+
+
 if ($first_file eq "undefined") {
     print "Fading from black to ";
-    system("ppmmake \\#000 $width $height >junk1$$.ppm");
+    system("ppmmake \\#000 $width $height >$tmpdir/junk1$$.ppm");
 } else {
     print "Fading from $first_file to ";
-    system("cp", $first_file, "junk1$$.ppm");
+    system("cp", $first_file, "$tmpdir/junk1$$.ppm");
 }
 
 if ($last_file eq "undefined") {
     print "black.\n";
-    system("ppmmake \\#000 $width $height >junk2$$.ppm");
+    system("ppmmake \\#000 $width $height >$tmpdir/junk2$$.ppm");
 } else {
     print "$last_file\n";
-    system("cp", $last_file, "junk2$$.ppm");
+    system("cp", $last_file, "$tmpdir/junk2$$.ppm");
 }
 
 #
@@ -132,14 +139,14 @@ if ($last_file eq "undefined") {
 #
 
 # Here's what our temporary files are:
-#   junk1$$.ppm: The original (fade-from) image
-#   junk2$$.ppm: The target (fade-from) image
-#   junk3$$.ppm: The frame of the fade for the current iteration of the 
-#                the for loop.
-#   junk1a$$.ppm: If the fade involves a ppmmix sequence from one intermediate
-#                 image to another, this is the first frame of that 
-#                 sequence.
-#   junk2a$$.ppm: This is the last frame of the above-mentioned ppmmix sequence
+#   $tmpdir/junk1$$.ppm: The original (fade-from) image
+#   $tmpdir/junk2$$.ppm: The target (fade-from) image
+#   $tmpdir/junk3$$.ppm: The frame of the fade for the current iteration of 
the 
+#                       the for loop.
+#   $tmpdir/junk1a$$.ppm: If the fade involves a ppmmix sequence from one 
intermediate
+#                         image to another, this is the first frame of that 
+#                         sequence.
+#   $tmpdir/junk2a$$.ppm: This is the last frame of the above-mentioned ppmmix 
sequence
 
 my $i;    # Frame number
 for ($i = 1; $i <= $nframes; $i++) {
@@ -147,147 +154,147 @@ for ($i = 1; $i <= $nframes; $i++) {
     if ($mode eq $SPREAD) {
         if ($i <= 10) {
             my $n = $spline20[$i] * 100;
-            system("ppmspread $n junk1$$.ppm >junk3$$.ppm");
+            system("ppmspread $n $tmpdir/junk1$$.ppm >$tmpdir/junk3$$.ppm");
         } elsif ($i <= 20) {
             my $n;
             $n = $spline20[$i] * 100;
-            system("ppmspread $n junk1$$.ppm >junk1a$$.ppm");
+            system("ppmspread $n $tmpdir/junk1$$.ppm >$tmpdir/junk1a$$.ppm");
             $n = (1-$spline20[$i-10]) * 100;
-            system("ppmspread $n junk2$$.ppm >junk2a$$.ppm");
+            system("ppmspread $n $tmpdir/junk2$$.ppm >$tmpdir/junk2a$$.ppm");
             $n = $spline10[$i-10];
-            system("ppmmix $n junk1a$$.ppm junk2a$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk1a$$.ppm $tmpdir/junk2a$$.ppm 
>$tmpdir/junk3$$.ppm");
         } else {
             my $n = (1-$spline20[$i-10])*100;
-            system("ppmspread $n junk2$$.ppm >junk3$$.ppm");
+            system("ppmspread $n $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
         }
     } elsif ($mode eq $SHIFT) {
         if ($i <= 10) {
             my $n = $spline20[$i] * 100;
-            system("ppmshift $n junk1$$.ppm >junk3$$.ppm");
+            system("ppmshift $n $tmpdir/junk1$$.ppm >$tmpdir/junk3$$.ppm");
         } elsif ($i <= 20) {
             my $n;
             $n = $spline20[$i] * 100;
-            system("ppmshift $n junk1$$.ppm >junk1a$$.ppm");
+            system("ppmshift $n $tmpdir/junk1$$.ppm >$tmpdir/junk1a$$.ppm");
             $n = (1-$spline20[$i-10])*100;
-            system("ppmshift $n junk2$$.ppm >junk2a$$.ppm");
+            system("ppmshift $n $tmpdir/junk2$$.ppm >$tmpdir/junk2a$$.ppm");
             $n = $spline10[$i-10];
-            system("ppmmix $n junk1a$$.ppm junk2a$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk1a$$.ppm $tmpdir/junk2a$$.ppm 
>$tmpdir/junk3$$.ppm");
         } else {
             my $n = (1-$spline20[$i-10]) * 100;
-            system("ppmshift $n junk2$$.ppm >junk3$$.ppm");
+            system("ppmshift $n $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
         }
     } elsif ($mode eq $RELIEF) {
         if ($i == 1) {
-            system("ppmrelief junk1$$.ppm >junk1r$$.ppm");
+            system("ppmrelief $tmpdir/junk1$$.ppm >$tmpdir/junk1r$$.ppm");
         }
         if ($i <= 10) {
             my $n = $spline10[$i];
-            system("ppmmix $n junk1$$.ppm junk1r$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk1$$.ppm $tmpdir/junk1r$$.ppm 
>$tmpdir/junk3$$.ppm");
         } elsif ($i <= 20) {
             my $n = $spline10[$i-10];
-            system("ppmmix $n junk1r$$.ppm junk2r$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk1r$$.ppm $tmpdir/junk2r$$.ppm 
>$tmpdir/junk3$$.ppm");
         } else {
             my $n = $spline10[$i-20];
-            system("ppmmix $n junk2r$$.ppm junk2$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk2r$$.ppm $tmpdir/junk2$$.ppm 
>$tmpdir/junk3$$.ppm");
         }
         if ($i == 10) {
-            system("ppmrelief junk2$$.ppm >junk2r$$.ppm");
+            system("ppmrelief $tmpdir/junk2$$.ppm >$tmpdir/junk2r$$.ppm");
         }
     } elsif ($mode eq $OIL) {
         if ($i == 1) {
-            system("ppmtopgm junk1$$.ppm | pgmoil >junko$$.ppm");
-            system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
-                   ">junk1o$$.ppm");
+            system("ppmtopgm $tmpdir/junk1$$.ppm | pgmoil 
>$tmpdir/junko$$.ppm");
+            system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm 
$tmpdir/junko$$.ppm " .
+                   ">$tmpdir/junk1o$$.ppm");
         }
         if ($i <= 10) {
             my $n = $spline10[$i];
-            system("ppmmix $n junk1$$.ppm junk1o$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk1$$.ppm $tmpdir/junk1o$$.ppm 
>$tmpdir/junk3$$.ppm");
         } elsif ($i <= 20) {
             my $n = $spline10[$i-10];
-            system("ppmmix $n junk1o$$.ppm junk2o$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk1o$$.ppm $tmpdir/junk2o$$.ppm 
>$tmpdir/junk3$$.ppm");
         } else {
             my $n = $spline10[$i-20];
-            system("ppmmix $n junk2o$$.ppm junk2$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk2o$$.ppm $tmpdir/junk2$$.ppm 
>$tmpdir/junk3$$.ppm");
         }
         if ($i == 10) {
-            system("ppmtopgm junk2$$.ppm | pgmoil >junko$$.ppm");
-            system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
-                   ">junk2o$$.ppm");
+            system("ppmtopgm $tmpdir/junk2$$.ppm | pgmoil 
>$tmpdir/junko$$.ppm");
+            system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm 
$tmpdir/junko$$.ppm " .
+                   ">$tmpdir/junk2o$$.ppm");
         }
     } elsif ($mode eq $EDGE) {
         if ($i == 1) {
-            system("ppmtopgm junk1$$.ppm | pgmedge >junko$$.ppm");
-            system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
-                   ">junk1o$$.ppm");
+            system("ppmtopgm $tmpdir/junk1$$.ppm | pgmedge 
>$tmpdir/junko$$.ppm");
+            system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm 
$tmpdir/junko$$.ppm " .
+                   ">$tmpdir/junk1o$$.ppm");
         }
         if ($i <= 10) {
             my $n = $spline10[$i];
-            system("ppmmix $n junk1$$.ppm junk1o$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk1$$.ppm $tmpdir/junk1o$$.ppm 
>$tmpdir/junk3$$.ppm");
         } elsif ($i <= 20) {
             my $n = $spline10[$i-10];
-            system("ppmmix $n junk1o$$.ppm junk2o$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk1o$$.ppm $tmpdir/junk2o$$.ppm 
>$tmpdir/junk3$$.ppm");
         } else {
             my $n = $spline10[$i-20];
-            system("ppmmix $n junk2o$$.ppm junk2$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk2o$$.ppm $tmpdir/junk2$$.ppm 
>$tmpdir/junk3$$.ppm");
         }
         if ($i == 10) {
-            system("ppmtopgm junk2$$.ppm | pgmedge >junko$$.ppm");
-            system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
-                   ">junk2o$$.ppm");
+            system("ppmtopgm $tmpdir/junk2$$.ppm | pgmedge 
>$tmpdir/junko$$.ppm");
+            system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm 
$tmpdir/junko$$.ppm " .
+                   ">$tmpdir/junk2o$$.ppm");
         } 
     } elsif ($mode eq $BENTLEY) {
         if ($i == 1) {
-            system("ppmtopgm junk1$$.ppm | pgmbentley >junko$$.ppm");
-            system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
-                   ">junk1o$$.ppm");
+            system("ppmtopgm $tmpdir/junk1$$.ppm | pgmbentley 
>$tmpdir/junko$$.ppm");
+            system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm 
$tmpdir/junko$$.ppm " .
+                   ">$tmpdir/junk1o$$.ppm");
         }
         if ($i <= 10) {
             my $n = $spline10[$i];
-            system("ppmmix $n junk1$$.ppm junk1o$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk1$$.ppm $tmpdir/junk1o$$.ppm 
>$tmpdir/junk3$$.ppm");
         } elsif ($i <= 20) {
             my $n = $spline10[$i-10];
-            system("ppmmix $n junk1o$$.ppm junk2o$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk1o$$.ppm $tmpdir/junk2o$$.ppm 
>$tmpdir/junk3$$.ppm");
         } else {
             my $n = $spline10[$i-20];
-            system("ppmmix $n junk2o$$.ppm junk2$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk2o$$.ppm $tmpdir/junk2$$.ppm 
>$tmpdir/junk3$$.ppm");
         }
         if ($i == 10) {
-            system("ppmtopgm junk2$$.ppm | pgmbentley >junko$$.ppm");
-            system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
-                   ">junk2o$$.ppm");
+            system("ppmtopgm $tmpdir/junk2$$.ppm | pgmbentley 
>$tmpdir/junko$$.ppm");
+            system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm 
$tmpdir/junko$$.ppm " .
+                   ">$tmpdir/junk2o$$.ppm");
         }
     } elsif ($mode eq $BLOCK) {
         if ($i <= 10) {
             my $n = 1 - 1.9*$spline20[$i];
-            system("pamscale $n junk1$$.ppm | " .
-                   "pamscale -width $width -height $height >junk3$$.ppm");
+            system("pamscale $n $tmpdir/junk1$$.ppm | " .
+                   "pamscale -width $width -height $height 
>$tmpdir/junk3$$.ppm");
         } elsif ($i <= 20) {
             my $n = $spline10[$i-10];
-            system("ppmmix $n junk1a$$.ppm junk2a$$.ppm >junk3$$.ppm");
+            system("ppmmix $n $tmpdir/junk1a$$.ppm $tmpdir/junk2a$$.ppm 
>$tmpdir/junk3$$.ppm");
         } else {
             my $n = 1 - 1.9*$spline20[31-$i];
-            system("pamscale $n junk2$$.ppm | " .
-                   "pamscale -width $width -height $height >junk3$$.ppm");
+            system("pamscale $n $tmpdir/junk2$$.ppm | " .
+                   "pamscale -width $width -height $height 
>$tmpdir/junk3$$.ppm");
         }
         if ($i == 10) {
-            system("cp", "junk3$$.ppm", "junk1a$$.ppm");
-            system("pamscale $n junk2$$.ppm | " .
-                   "pamscale -width $width -height $height >junk2a$$.ppm");
+            system("cp", "$tmpdir/junk3$$.ppm", "$tmpdir/junk1a$$.ppm");
+            system("pamscale $n $tmpdir/junk2$$.ppm | " .
+                   "pamscale -width $width -height $height 
>$tmpdir/junk2a$$.ppm");
         }    
     } elsif ($mode eq $MIX) {
         my $fade_factor = sqrt(1/($nframes-$i+1));
-        system("ppmmix $fade_factor junk1$$.ppm junk2$$.ppm >junk3$$.ppm");
+        system("ppmmix $fade_factor $tmpdir/junk1$$.ppm $tmpdir/junk2$$.ppm 
>$tmpdir/junk3$$.ppm");
     } else {
         print("Internal error: impossible mode value '$mode'\n");
     }
 
     my $outfile = sprintf("%s.%04d.ppm", $base_name, $i);
-    system("cp", "junk3$$.ppm", $outfile);
+    system("cp", "$tmpdir/junk3$$.ppm", $outfile);
 }
 
 #
 #  Clean up shop.
 #
-system("rm junk*$$.ppm");
+system("rm $tmpdir/junk*$$.ppm");
 
 exit(0);
diff -up netpbm-10.47.05/editor/ppmshadow.security-scripts 
netpbm-10.47.05/editor/ppmshadow
--- netpbm-10.47.05/editor/ppmshadow.security-scripts   2009-12-10 
08:34:32.000000000 +0100
+++ netpbm-10.47.05/editor/ppmshadow    2010-03-16 21:28:09.000000000 +0100
@@ -72,9 +72,10 @@ sub makeConvolutionKernel($$) {
 
 
 my $tmpdir = $ENV{TMPDIR} || "/tmp";
-my $ourtmp = "$tmpdir/ppmshadow$$";
-mkdir($ourtmp, 0777) or
-    die("Unable to create directory for temporary files '$ourtmp");
+my $ourtmp; chomp($ourtmp = `mktemp -d -t PPMshadow.XXXXXX`);
+if ($? >> 8) {
+    die "Can't create directory for temporary files";
+}
 
 #   Process command line options
 
++++++ netpbm-tmpfile.patch ++++++
--- /var/tmp/diff_new_pack.qZVLkj/_old  2012-09-17 16:58:55.000000000 +0200
+++ /var/tmp/diff_new_pack.qZVLkj/_new  2012-09-17 16:58:55.000000000 +0200
@@ -1,6 +1,8 @@
---- editor/pnmindex.csh
+Index: editor/pnmindex.csh
+===================================================================
+--- editor/pnmindex.csh.orig
 +++ editor/pnmindex.csh
-@@ -88,7 +88,7 @@
+@@ -85,7 +85,7 @@ if ( $#argv == 0 ) then
      goto usage
  endif
  
@@ -9,39 +11,53 @@
  rm -f $tmpfile
  set maxformat=PBM
  
---- editor/ppmquantall.csh
-+++ editor/ppmquantall.csh
-@@ -34,8 +34,8 @@
-     set heights=( $heights `sed '1d; s/.* //; 2q' $i` )
- end
- 
--set all=/tmp/pqa.all.$$
--rm -f $all
-+set all=.pqa.all.$$
-+
- pnmcat -topbottom -jleft -white $files | ppmquant -quiet $newcolors > $all
- if ( $status != 0 ) exit $status
- 
---- generator/ppmrainbow
+Index: generator/ppmrainbow
+===================================================================
+--- generator/ppmrainbow.orig
 +++ generator/ppmrainbow
-@@ -47,7 +47,13 @@
+@@ -1,6 +1,7 @@
+ #!/usr/bin/perl -wl
+ use strict;
+ use Getopt::Long;
++use File::Temp qw{tempfile tempdir};
+ 
+ my ($FALSE, $TRUE) = (0,1);
+ 
+@@ -47,31 +48,25 @@ if (!$norepeat) {
      push @colorlist, $ARGV[0];
  }
  
--my $tmpprefix = $tmpdir . "/$myname.$$.";
-+my $mytmpdir;
-+chomp($mytmpdir = `mktemp -d  $tmpdir/ppmrainbow.XXXXXX`);
-+if ($? >> 8) {
-+        die "Can't create tmpdir";
-+}
-+
-+my $tmpprefix = $mytmpdir . "/file.";
- 
+-my $ourtmp = "$tmpdir/ppmrainbow$$";
+-mkdir($ourtmp, 0777) or
+-    die("Unable to create directory for temporary files '$ourtmp");
+-
+-
++my $ourtmp = tempdir("ppmrainbow.XXXX", DIR => $tmpdir, CLEANUP => 1);
  my $widthRemaining;
- my $n;
-@@ -79,4 +85,5 @@
+-my $n;
+ my @outlist;
  
- END {
-     unlink @outlist if @outlist;
-+    rmdir $mytmpdir if -d $mytmpdir;
+-$n = 0;
+ $widthRemaining = $Twid;
+ @outlist = ();
+ 
+ while (@colorlist >= 2) {
+-    my $outfile = sprintf("%s/file.%03u.ppm", $ourtmp, $n);
++    (my $tmpfh, my $outfile) = tempfile("file.XXXXXXXX", DIR => "$ourtmp", 
SUFFIX => '.ppm');
+     push(@outlist, $outfile);
+ 
+     my $w = int(($widthRemaining-1)/(@colorlist-1))+1;
+-    my $rc = system("$verboseCommand pgmramp -lr $w $Thgt | " .
+-                    "pgmtoppm \"$colorlist[0]-$colorlist[1]\" >$outfile");
+-    if ($rc != 0) {
++    my $content = qx{$verboseCommand pgmramp -lr $w $Thgt | 
++                     pgmtoppm "$colorlist[0]-$colorlist[1]"};
++    if (! "$content") {
+         fatal("pgmramp|pgmtoppm failed.");
+     }
++    print $tmpfh $content;
+     $widthRemaining -= $w;
+-    $n++;
+     shift @colorlist;
  }
+ 

++++++ prepare-src-tarball ++++++
--- /var/tmp/diff_new_pack.qZVLkj/_old  2012-09-17 16:58:55.000000000 +0200
+++ /var/tmp/diff_new_pack.qZVLkj/_new  2012-09-17 16:58:55.000000000 +0200
@@ -7,8 +7,8 @@
 rm -rf REMOVE
 mkdir REMOVE
 cd REMOVE
-svn checkout http://netpbm.svn.sourceforge.net/svnroot/netpbm/super_stable 
netpbm
-VER=`echo \`cut -f2 -d= netpbm*/Makefile.version \`|sed -e "s| |.|g"`
+svn checkout http://netpbm.svn.sourceforge.net/svnroot/netpbm/advanced netpbm
+VER=`echo \`cut -f2 -d= netpbm*/version.mk \`|sed -e "s| |.|g"`
 mv netpbm* netpbm-$VER
 
 find . -name ".svn" -exec rm -rf {} \;
@@ -22,15 +22,6 @@
 echo clean: >> Makefile
 cd ../../../..
 
-cd netpbm*/converter/other/jbig || exit 1
-rm -rf *
-echo all: >> Makefile
-echo install.bin: >> Makefile
-echo install.man: >> Makefile
-echo install.data: >> Makefile
-echo clean: >> Makefile
-cd ../../../..
-
 cd netpbm*/converter/ppm/ppmtompeg || exit 1
 rm -rf *
 echo all: >> Makefile
@@ -40,9 +31,8 @@
 echo clean: >> Makefile
 cd ../../../..
 
-tar cjf ../netpbm-$VER-nohpcdtoppm-nojbig.tar.bz2 *
+tar cjf ../netpbm-$VER-nohpcdtoppm-noppmtompeg.tar.bz2 *
 
 wget -m netpbm.sourceforge.net
-rm netpbm.sourceforge.net/bdffont.tgz
 tar cjf ../netpbm-$VER-documentation.tar.bz2 netpbm.sourceforge.net
 

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to