package init
This commit is contained in:
commit
4d7edb4ce3
BIN
netpbm-10.83.01.tar.xz
Normal file
BIN
netpbm-10.83.01.tar.xz
Normal file
Binary file not shown.
17
netpbm-CAN-2005-2471.patch
Normal file
17
netpbm-CAN-2005-2471.patch
Normal file
@ -0,0 +1,17 @@
|
||||
diff -urNp a/converter/other/pstopnm.c b/converter/other/pstopnm.c
|
||||
--- a/converter/other/pstopnm.c 2018-07-23 15:14:51.200658026 +0200
|
||||
+++ b/converter/other/pstopnm.c 2018-07-23 15:18:12.579910612 +0200
|
||||
@@ -896,11 +896,11 @@ execGhostscript(int const
|
||||
ghostscriptProg, arg0,
|
||||
deviceopt, outfileopt, gopt, ropt, textalphabitsopt,
|
||||
"-q", "-dNOPAUSE",
|
||||
- "-dSAFER", "-");
|
||||
+ "-dPARANOIDSAFER", "-");
|
||||
}
|
||||
|
||||
execl(ghostscriptProg, arg0, deviceopt, outfileopt, gopt, ropt, "-q",
|
||||
- "-dNOPAUSE", "-dSAFER", "-", NULL);
|
||||
+ "-dNOPAUSE", "-dPARANOIDSAFER", "-", NULL);
|
||||
|
||||
pm_error("execl() of Ghostscript ('%s') failed, errno=%d (%s)",
|
||||
ghostscriptProg, errno, strerror(errno));
|
||||
26
netpbm-CVE-2017-2587.patch
Normal file
26
netpbm-CVE-2017-2587.patch
Normal file
@ -0,0 +1,26 @@
|
||||
diff -urNp old/converter/other/svgtopam.c new/converter/other/svgtopam.c
|
||||
--- old/converter/other/svgtopam.c 2017-02-08 12:11:02.593690917 +0100
|
||||
+++ new/converter/other/svgtopam.c 2017-02-08 13:49:38.319029371 +0100
|
||||
@@ -771,12 +771,17 @@ createCanvas(unsigned int const width,
|
||||
|
||||
MALLOCVAR_NOFAIL(canvasP);
|
||||
|
||||
- canvasP->width = width;
|
||||
- canvasP->height = height;
|
||||
- canvasP->pixels = ppm_allocarray(width, height);
|
||||
- canvasP->maxval = maxval;
|
||||
+ if(canvasP != NULL){
|
||||
+ canvasP->width = width;
|
||||
+ canvasP->height = height;
|
||||
+ canvasP->pixels = ppm_allocarray(width, height);
|
||||
+ canvasP->maxval = maxval;
|
||||
+
|
||||
+ *canvasPP = canvasP;
|
||||
+ } else {
|
||||
+ pm_error("can't allocate memory for canvas");
|
||||
+ }
|
||||
|
||||
- *canvasPP = canvasP;
|
||||
}
|
||||
|
||||
|
||||
11
netpbm-bmptopnm.patch
Normal file
11
netpbm-bmptopnm.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- netpbm-10.35/converter/other/bmptopnm.c.bmptopnm 2007-01-29 13:08:46.000000000 +0100
|
||||
+++ netpbm-10.35/converter/other/bmptopnm.c 2007-01-29 13:32:21.000000000 +0100
|
||||
@@ -1262,7 +1262,7 @@ readBmp(FILE * const ifP,
|
||||
xel ** const colormapP,
|
||||
bool const verbose) {
|
||||
|
||||
- xel * colormap; /* malloc'ed */
|
||||
+ xel * colormap = NULL; /* malloc'ed */
|
||||
unsigned int pos;
|
||||
/* Current byte position in the BMP file */
|
||||
|
||||
21
netpbm-cmuwtopbm.patch
Normal file
21
netpbm-cmuwtopbm.patch
Normal file
@ -0,0 +1,21 @@
|
||||
diff -up netpbm-10.61.01/converter/pbm/cmuwmtopbm.c.cmuwtopbmfix netpbm-10.61.01/converter/pbm/cmuwmtopbm.c
|
||||
--- netpbm-10.61.01/converter/pbm/cmuwmtopbm.c.cmuwtopbmfix 2013-01-02 18:39:57.000000000 +0100
|
||||
+++ netpbm-10.61.01/converter/pbm/cmuwmtopbm.c 2013-01-03 05:41:36.024984241 +0100
|
||||
@@ -18,7 +18,7 @@
|
||||
This program does not check the pad bits at the end of each row.
|
||||
*/
|
||||
|
||||
-
|
||||
+#include <stdint.h>
|
||||
#include "pbm.h"
|
||||
|
||||
/*--------------------------
|
||||
@@ -42,7 +42,7 @@ readCmuwmHeader(FILE * const ifP
|
||||
"CMU window manager header EOF / read error";
|
||||
uint32_t const cmuwmMagic = 0xf10040bb;
|
||||
|
||||
- long l;
|
||||
+ uint32_t l;
|
||||
short s;
|
||||
int rc;
|
||||
|
||||
124
netpbm-docfix.patch
Normal file
124
netpbm-docfix.patch
Normal file
@ -0,0 +1,124 @@
|
||||
diff -urNp old/userguide/cameratopam.html new/userguide/cameratopam.html
|
||||
--- old/userguide/cameratopam.html 2017-09-05 09:05:16.000000000 +0200
|
||||
+++ new/userguide/cameratopam.html 2017-09-05 13:16:33.622352535 +0200
|
||||
@@ -25,10 +25,10 @@ cameratopam - convert raw camera image t
|
||||
[<b>-balance_camera</b>]
|
||||
[<b>-red_scale=</b><i>float</i>]
|
||||
[<b>-blue_scale=</b><i>float</i>]
|
||||
-[<b>-brightness=</b><i>fraction</i>]
|
||||
+[<b>-bright=</b><i>fraction</i>]
|
||||
[<b>-no_clip_color</b>]
|
||||
[<b>-rgb</b>]
|
||||
-[<b>-secondary</b>]
|
||||
+[<b>-use_secondary</b>]
|
||||
[<b>-linear</b>]
|
||||
[<b>-verbose</b>]
|
||||
|
||||
@@ -106,7 +106,7 @@ the default.
|
||||
<dd>Further adjust the color balance by multiplying the red and blue
|
||||
channels by these values. Both default to 1.0.
|
||||
|
||||
-<dt><b>-brightness=</b><i>float</i>
|
||||
+<dt><b>-bright=</b><i>float</i>
|
||||
|
||||
<dd>Change the output brightness. Default is 1.0.
|
||||
|
||||
@@ -114,14 +114,14 @@ channels by these values. Both default
|
||||
|
||||
<dd>By default, <b>cameratoapm</b> clips all colors to prevent pink
|
||||
hues in the highlights. Combine this option with
|
||||
-<b>-brightness=0.25</b> to leave the image data completely unclipped.
|
||||
+<b>-bright=0.25</b> to leave the image data completely unclipped.
|
||||
|
||||
<dt><b>-rgb</b>
|
||||
|
||||
<dd>Write raw camera colors to the output file. By default,
|
||||
<b>cameratoapm</b> converts to sRGB colorspace.
|
||||
|
||||
-<dt><b>-secondary</b>
|
||||
+<dt><b>-use_secondary</b>
|
||||
|
||||
<dd>For cameras based on the Fuji Super CCD SR, this option causes
|
||||
<b>cameratopam</b> to use the secondary sensors, in effect
|
||||
diff -urNp old/userguide/fiascotopnm.html new/userguide/fiascotopnm.html
|
||||
--- old/userguide/fiascotopnm.html 2017-09-05 09:05:16.000000000 +0200
|
||||
+++ new/userguide/fiascotopnm.html 2017-09-05 13:32:51.810458154 +0200
|
||||
@@ -51,7 +51,7 @@ the output file(s) are written to the fi
|
||||
this list. Otherwise, the current directory is used to store the
|
||||
output file(s).
|
||||
|
||||
-<DT><B>-z</B>, <B>--fast</B>
|
||||
+<DT><B>-r</B>, <B>--fast</B>
|
||||
<DD>
|
||||
Decompress images in the 4:2:0 format; i.e., each chroma channel is
|
||||
decompressed to an image of halved width and height. Use this option
|
||||
@@ -83,7 +83,7 @@ given amount <I>N</I>. <I>N</I> is 1 (mi
|
||||
is 70. When <I>N</I>=0, then the smoothing amount specified in the
|
||||
FIASCO file is used (defined by the FIASCO coder).
|
||||
|
||||
-<DT><B>-F</B> <I>N</I>, <B>--fps=</B><I>N</I>
|
||||
+<DT><B>-F</B> <I>N</I>, <B>--framerate=</B><I>N</I>
|
||||
<DD>
|
||||
Set number of frames per second to <I>N</I>. When using this option,
|
||||
the frame rate specified in the FIASCO file is overridden.
|
||||
@@ -113,13 +113,8 @@ following methods (in the specified orde
|
||||
<LI>--config=<I>name</I>
|
||||
</OL>
|
||||
|
||||
-<DT><B>-h</B>, <B>--info</B>
|
||||
-<DD>
|
||||
-Print brief help, then exit.
|
||||
-
|
||||
-<DT><B>-H</B>, <B>--help</B>
|
||||
-<DD>
|
||||
-Print detailed help, then exit.
|
||||
+<DT><B>-h</B>, <B>--help</B>
|
||||
+Print help, then exit.
|
||||
|
||||
</DL>
|
||||
|
||||
diff -urNp old/userguide/pamperspective.html new/userguide/pamperspective.html
|
||||
--- old/userguide/pamperspective.html 2017-09-05 09:05:16.000000000 +0200
|
||||
+++ new/userguide/pamperspective.html 2017-09-05 13:23:15.869997105 +0200
|
||||
@@ -220,7 +220,7 @@ default rectangle as the "frame." The vi
|
||||
a rectangle the axes of which are parallel to those of the frame.
|
||||
|
||||
<p>The frame options are additive. All the parts of the image
|
||||
-specified by either margin options, <b>--include_frame</b>, or
|
||||
+specified by either margin options, <b>--frame_include</b>, or
|
||||
<b>--include</b> (or their defaults) are in the visible part. The
|
||||
visible part is the smallest possible rectangle that contains the
|
||||
parts specified those three ways.
|
||||
diff -urNp old/converter/pbm/pbmtoepson.c new/converter/pbm/pbmtoepson.c
|
||||
--- old/converter/pbm/pbmtoepson.c 2018-01-04 14:26:14.740024843 +0100
|
||||
+++ new/converter/pbm/pbmtoepson.c 2018-01-04 14:28:47.970518766 +0100
|
||||
@@ -75,7 +75,7 @@ parseCommandLine(int ar
|
||||
&dpiSpec, 0);
|
||||
OPTENT3(0, "adjacent", OPT_FLAG, NULL,
|
||||
&adjacentSpec, 0);
|
||||
- OPTENT3(0, "nonadjacent", OPT_FLAG, NULL,
|
||||
+ OPTENT3(0, "noadjacent", OPT_FLAG, NULL,
|
||||
&nonadjacentSpec, 0);
|
||||
|
||||
opt.opt_table = option_def;
|
||||
diff -urNp old/userguide/pbmtoepson.html new/userguide/pbmtoepson.html
|
||||
--- old/userguide/pbmtoepson.html 2018-01-04 14:26:14.586024719 +0100
|
||||
+++ new/userguide/pbmtoepson.html 2018-01-04 14:27:56.466847698 +0100
|
||||
@@ -18,7 +18,7 @@ pbmtoepson - convert a PBM image into Ep
|
||||
[<b>-dpi=</b><i>n</i>]
|
||||
[<b>-protocol=</b>{<b>escp9</b>|<B>escp</B>}]
|
||||
[<b>-adjacent</b>]
|
||||
-[<b>-nonadjacent</b>]
|
||||
+[<b>-noadjacent</b>]
|
||||
|
||||
[<I>pbmfile</I>]
|
||||
|
||||
@@ -74,7 +74,7 @@ print density for you consistent with yo
|
||||
<p>This option was new in Netpbm 10.23 (July 2004).
|
||||
|
||||
<dt><b>-adjacent</b>
|
||||
-<dt><b>-nonadjacent</b>
|
||||
+<dt><b>-noadjacent</b>
|
||||
|
||||
<dd>These options determine whether the output uses "adjacent dot
|
||||
printing" or not, whatever that is.
|
||||
12
netpbm-fiasco-overflow.patch
Normal file
12
netpbm-fiasco-overflow.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -up netpbm-10.47.09/converter/other/fiasco/lib/image.h.fiasco-overflow netpbm-10.47.09/converter/other/fiasco/lib/image.h
|
||||
--- netpbm-10.47.09/converter/other/fiasco/lib/image.h.fiasco-overflow 2010-01-25 09:00:48.000000000 +0100
|
||||
+++ netpbm-10.47.09/converter/other/fiasco/lib/image.h 2010-01-27 10:29:48.000000000 +0100
|
||||
@@ -29,7 +29,7 @@ typedef struct image
|
||||
* Image data
|
||||
*/
|
||||
{
|
||||
- char id [7];
|
||||
+ char id [8];
|
||||
unsigned reference_count;
|
||||
unsigned width; /* Width of the image */
|
||||
unsigned height; /* Height of the image */
|
||||
22
netpbm-gcc4.patch
Normal file
22
netpbm-gcc4.patch
Normal file
@ -0,0 +1,22 @@
|
||||
diff -up netpbm-10.58.01/lib/pm.h.gcc4 netpbm-10.58.01/lib/pm.h
|
||||
--- netpbm-10.58.01/lib/pm.h.gcc4 2012-04-09 19:08:08.885137097 +0200
|
||||
+++ netpbm-10.58.01/lib/pm.h 2012-04-09 19:08:08.894136984 +0200
|
||||
@@ -18,6 +18,7 @@
|
||||
#include <sys/types.h>
|
||||
#include <ctype.h>
|
||||
#include <stdio.h>
|
||||
+#include <string.h>
|
||||
#include <errno.h>
|
||||
#include <setjmp.h>
|
||||
#include <sys/stat.h>
|
||||
diff -up netpbm-10.58.01/urt/rle.h.gcc4 netpbm-10.58.01/urt/rle.h
|
||||
--- netpbm-10.58.01/urt/rle.h.gcc4 2012-04-09 19:08:08.000000000 +0200
|
||||
+++ netpbm-10.58.01/urt/rle.h 2012-04-09 19:08:39.137758887 +0200
|
||||
@@ -34,6 +34,7 @@
|
||||
#define RLE_H
|
||||
|
||||
#include <stdio.h> /* Declare FILE. */
|
||||
+#include <string.h>
|
||||
|
||||
enum rle_dispatch {
|
||||
NO_DISPATCH = -1,
|
||||
13
netpbm-glibc.patch
Normal file
13
netpbm-glibc.patch
Normal file
@ -0,0 +1,13 @@
|
||||
--- netpbm-10.35/converter/other/pnmtotiffcmyk.c.glibc 2006-09-18 12:20:06.000000000 +0200
|
||||
+++ netpbm-10.35/converter/other/pnmtotiffcmyk.c 2007-08-23 09:18:30.000000000 +0200
|
||||
@@ -974,8 +974,8 @@ int main( int argc, char **argv ) {
|
||||
|
||||
if ( (err = parseOpts( argc, argv, rt )) ) goto exit ;
|
||||
|
||||
- if ( (err = rt->in->open( rt->in, rt )) ) goto exit ;
|
||||
- if ( (err = rt->out->open( rt->out, rt )) ) goto exit ;
|
||||
+ if ( (err = (rt->in->open)( rt->in, rt )) ) goto exit ;
|
||||
+ if ( (err = (rt->out->open)( rt->out, rt )) ) goto exit ;
|
||||
|
||||
while ( rt->in->hasMore( rt->in ) ) {
|
||||
if ( (err = rt->in->next( rt->in, &r, &g, &b )) ) goto exit ;
|
||||
184
netpbm-manfix.patch
Normal file
184
netpbm-manfix.patch
Normal file
@ -0,0 +1,184 @@
|
||||
diff -urNp old/userguide/avstopam.html new/userguide/avstopam.html
|
||||
--- old/userguide/avstopam.html 2017-09-05 13:58:08.338559550 +0200
|
||||
+++ new/userguide/avstopam.html 2017-09-05 14:00:27.371039472 +0200
|
||||
@@ -1,8 +1,7 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Avstopam User Manual</title>
|
||||
-<meta http-equiv="content-type" content="text/html; charset=us-ascii" />
|
||||
</head>
|
||||
|
||||
<body>
|
||||
diff -urNp old/userguide/escp2topbm.html new/userguide/escp2topbm.html
|
||||
--- old/userguide/escp2topbm.html 2017-09-05 13:58:08.335559561 +0200
|
||||
+++ new/userguide/escp2topbm.html 2017-09-05 14:01:20.226842694 +0200
|
||||
@@ -6,6 +6,7 @@ Updated: 14 July 2015
|
||||
<BR>
|
||||
<A HREF="#index">Table Of Contents</A>
|
||||
|
||||
+<H2>NAME</H2>
|
||||
escp2topbm - convert an ESC/P2 printer file to a PBM image
|
||||
|
||||
<H2 id="synopsis">SYNOPSIS</H2>
|
||||
diff -urNp old/userguide/faxformat.html new/userguide/faxformat.html
|
||||
--- old/userguide/faxformat.html 2017-09-05 13:58:08.337559553 +0200
|
||||
+++ new/userguide/faxformat.html 2017-09-05 14:02:33.322571279 +0200
|
||||
@@ -5,10 +5,11 @@
|
||||
Updated: 03 December 2008
|
||||
<BR>
|
||||
|
||||
+<H2>SYNOPSIS</H2>
|
||||
<p>This page, part of the <a href="index.html">Netpbm user's guide</a>,
|
||||
describes FAX formats in relation to Netpbm facilities.
|
||||
|
||||
-
|
||||
+<H2>DESCRIPTION</H2>
|
||||
<p>The ITU (formerly CCITT) publishes standards for operation of fax machines
|
||||
(the idea is to provide a way to be sure that a fax machine is able to receive
|
||||
a fax sent by another). These standards incidentally specify graphics file
|
||||
diff -urNp old/userguide/pampaintspill.html new/userguide/pampaintspill.html
|
||||
--- old/userguide/pampaintspill.html 2017-09-05 13:58:08.338559550 +0200
|
||||
+++ new/userguide/pampaintspill.html 2017-09-05 14:03:32.625351620 +0200
|
||||
@@ -1,8 +1,7 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Pampaintspill User Manual</title>
|
||||
-<meta http-equiv="content-type" content="text/html; charset=us-ascii" />
|
||||
</head>
|
||||
|
||||
<body>
|
||||
@@ -11,6 +10,7 @@
|
||||
|
||||
<p><a href="#index">Table Of Contents</a></p>
|
||||
|
||||
+<H2>NAME</H2>
|
||||
<p>pampaintspill - smoothly spill colors into the background</p>
|
||||
|
||||
<h2><a name="synopsis">SYNOPSIS</a></h2>
|
||||
diff -urNp old/userguide/pamrecolor.html new/userguide/pamrecolor.html
|
||||
--- old/userguide/pamrecolor.html 2017-09-05 13:58:08.336559557 +0200
|
||||
+++ new/userguide/pamrecolor.html 2017-09-05 14:04:34.714122098 +0200
|
||||
@@ -1,8 +1,7 @@
|
||||
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
|
||||
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Pamrecolor User Manual</title>
|
||||
-<meta http-equiv="Content-type" content="text/html;charset=UTF-8">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
@@ -11,7 +10,7 @@
|
||||
|
||||
<p>Updated: 31 July 2010</p>
|
||||
|
||||
-<p><a href="#contents">Table Of Contents</a></p>
|
||||
+<p><a href="#index">Table Of Contents</a></p>
|
||||
|
||||
|
||||
<h2 id="name">NAME</h2>
|
||||
diff -urNp old/userguide/pamsistoaglyph.html new/userguide/pamsistoaglyph.html
|
||||
--- old/userguide/pamsistoaglyph.html 2017-09-05 13:58:08.334559565 +0200
|
||||
+++ new/userguide/pamsistoaglyph.html 2017-09-05 14:05:25.865944327 +0200
|
||||
@@ -1,8 +1,7 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Pamsistoaglyph User Manual</title>
|
||||
-<meta http-equiv="content-type" content="text/html; charset=us-ascii" />
|
||||
</head>
|
||||
|
||||
<body>
|
||||
diff -urNp old/userguide/pamstereogram.html new/userguide/pamstereogram.html
|
||||
--- old/userguide/pamstereogram.html 2017-09-05 13:58:08.337559553 +0200
|
||||
+++ new/userguide/pamstereogram.html 2017-09-05 14:13:28.523959069 +0200
|
||||
@@ -1,5 +1,5 @@
|
||||
-<!DOCTYPE html>
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Pamstereogram User Manual</title>
|
||||
</head>
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
<p>Updated: 19 June 2015</p>
|
||||
|
||||
-<p><a href="#contents">Table Of Contents</a></p>
|
||||
+<p><a href="#index">Table Of Contents</a></p>
|
||||
|
||||
|
||||
<h2 id="name">NAME</h2>
|
||||
diff -urNp old/userguide/pamtoavs.html new/userguide/pamtoavs.html
|
||||
--- old/userguide/pamtoavs.html 2017-09-05 13:58:08.329559583 +0200
|
||||
+++ new/userguide/pamtoavs.html 2017-09-05 14:05:49.299863901 +0200
|
||||
@@ -1,5 +1,5 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Pamtoavs User Manual</title>
|
||||
<meta http-equiv="content-type" content="text/html; charset=us-ascii" />
|
||||
diff -urNp old/userguide/pamtooctaveimg.html new/userguide/pamtooctaveimg.html
|
||||
--- old/userguide/pamtooctaveimg.html 2017-09-05 13:58:08.335559561 +0200
|
||||
+++ new/userguide/pamtooctaveimg.html 2017-09-05 14:06:21.825752356 +0200
|
||||
@@ -1,8 +1,7 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Pamtooctaveimg User Manual</title>
|
||||
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
</head>
|
||||
|
||||
<body>
|
||||
diff -urNp old/userguide/pnmflip.html new/userguide/pnmflip.html
|
||||
--- old/userguide/pnmflip.html 2017-09-05 13:58:08.336559557 +0200
|
||||
+++ new/userguide/pnmflip.html 2017-09-05 14:07:15.065963977 +0200
|
||||
@@ -4,9 +4,11 @@
|
||||
<BODY>
|
||||
<H1>pnmflip</H1>
|
||||
<BR>
|
||||
+<H2>NAME</H2>
|
||||
<p><b>pnmflip</b> was replaced in Netpbm 10.13 (December 2002) by
|
||||
<b><a href="pamflip.html">pamflip</a></b>.
|
||||
|
||||
+<H2>DESCRIPTION</H2>
|
||||
<P><B>pamflip</b> is mostly backward compatible with <b>pnmflip</b>,
|
||||
but works on PAM images too.
|
||||
|
||||
diff -urNp old/userguide/pnmmercator.html new/userguide/pnmmercator.html
|
||||
--- old/userguide/pnmmercator.html 2017-09-05 13:58:08.334559565 +0200
|
||||
+++ new/userguide/pnmmercator.html 2017-09-05 14:08:08.305214742 +0200
|
||||
@@ -1,7 +1,6 @@
|
||||
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
<html>
|
||||
<head>
|
||||
-<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
|
||||
<title>PnmMercator User Manual</title>
|
||||
</head>
|
||||
<body>
|
||||
diff -urNp old/userguide/ppmtogif.html new/userguide/ppmtogif.html
|
||||
--- old/userguide/ppmtogif.html 2017-09-05 13:58:08.337559553 +0200
|
||||
+++ new/userguide/ppmtogif.html 2017-09-05 14:09:51.450583126 +0200
|
||||
@@ -4,11 +4,14 @@
|
||||
<BODY>
|
||||
<H1>ppmtogif</H1>
|
||||
<BR>
|
||||
+<H2>NAME</H2>
|
||||
<p><b>ppmtogif</b> was replaced in Netpbm 10.37 (December 2006) by
|
||||
<b><a href="pamtogif.html">pamtogif</a></b>.
|
||||
|
||||
+<H2>SYNOPSIS</H2>
|
||||
<P><B>pamtogif</b> is mostly backward compatible with <b>ppmtogif</b>.
|
||||
|
||||
+<H2>DESCRIPTION</H2>
|
||||
<P>One way <b>pamtogif</b> is not backward compatible with <b>ppmtogif</b>
|
||||
is that to specify a transparency (alpha) mask with <b>ppmtogif</b>, you
|
||||
supply the transparency as a separate pseudo-PGM image and use the
|
||||
1343
netpbm-manual-pages.patch
Normal file
1343
netpbm-manual-pages.patch
Normal file
File diff suppressed because it is too large
Load Diff
11
netpbm-multilib.patch
Normal file
11
netpbm-multilib.patch
Normal file
@ -0,0 +1,11 @@
|
||||
diff -up netpbm-10.47.04/buildtools/endiangen.c.multilib netpbm-10.47.04/buildtools/endiangen.c
|
||||
--- netpbm-10.47.04/buildtools/endiangen.c.multilib 2009-10-21 13:38:54.000000000 +0200
|
||||
+++ netpbm-10.47.04/buildtools/endiangen.c 2009-10-21 14:35:58.000000000 +0200
|
||||
@@ -87,7 +87,6 @@ main(int argc, char **argv) {
|
||||
byteOrder() == ENDIAN_LITTLE ? "LITTLE_ENDIAN" : "BIG_ENDIAN");
|
||||
printf("#endif\n");
|
||||
printf("\n");
|
||||
- printf("#define BITS_PER_LONG %u\n", bitsPerLong());
|
||||
|
||||
return 0;
|
||||
}
|
||||
13
netpbm-noppmtompeg.patch
Normal file
13
netpbm-noppmtompeg.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/converter/ppm/Makefile b/converter/ppm/Makefile
|
||||
index b97349d..f68170f 100644
|
||||
--- a/converter/ppm/Makefile
|
||||
+++ b/converter/ppm/Makefile
|
||||
@@ -7,7 +7,7 @@ VPATH=.:$(SRCDIR)/$(SUBDIR)
|
||||
|
||||
include $(BUILDDIR)/config.mk
|
||||
|
||||
-SUBDIRS = hpcdtoppm ppmtompeg
|
||||
+SUBDIRS = hpcdtoppm
|
||||
|
||||
PORTBINARIES = 411toppm eyuvtoppm gouldtoppm ilbmtoppm imgtoppm \
|
||||
leaftoppm mtvtoppm neotoppm \
|
||||
11
netpbm-pamtojpeg2k.patch
Normal file
11
netpbm-pamtojpeg2k.patch
Normal file
@ -0,0 +1,11 @@
|
||||
diff -up netpbm-10.47.12/converter/other/jpeg2000/pamtojpeg2k.c.pamtojpeg2kfix netpbm-10.47.12/converter/other/jpeg2000/pamtojpeg2k.c
|
||||
--- netpbm-10.47.12/converter/other/jpeg2000/pamtojpeg2k.c.pamtojpeg2kfix 2010-04-27 15:47:10.000000000 +0200
|
||||
+++ netpbm-10.47.12/converter/other/jpeg2000/pamtojpeg2k.c 2010-05-03 15:37:49.934269588 +0200
|
||||
@@ -518,7 +518,5 @@ main(int argc, char **argv)
|
||||
|
||||
pm_close(ifP);
|
||||
|
||||
- pm_close(stdout);
|
||||
-
|
||||
return 0;
|
||||
}
|
||||
57
netpbm-ppmfadeusage.patch
Normal file
57
netpbm-ppmfadeusage.patch
Normal file
@ -0,0 +1,57 @@
|
||||
diff -urNp old/editor/ppmfade new/editor/ppmfade
|
||||
--- old/editor/ppmfade 2017-11-01 11:47:49.869611402 +0100
|
||||
+++ new/editor/ppmfade 2017-11-01 11:53:25.524973342 +0100
|
||||
@@ -84,7 +84,7 @@ for ($n = 0; $n < @ARGV; $n++) {
|
||||
if (-e $first_file) {
|
||||
} else {
|
||||
print "I can't find first file '$first_file'\n";
|
||||
- exit 20;
|
||||
+ exit 1;
|
||||
}
|
||||
} elsif ($ARGV[$n] eq "-l") {
|
||||
$n++;
|
||||
@@ -92,7 +92,7 @@ for ($n = 0; $n < @ARGV; $n++) {
|
||||
if (-e $last_file) {
|
||||
} else {
|
||||
print "I can't find last file '$last_file'\n";
|
||||
- exit 20;
|
||||
+ exit 1;
|
||||
}
|
||||
} elsif ($ARGV[$n] eq "-base") {
|
||||
$n++;
|
||||
@@ -113,9 +113,12 @@ for ($n = 0; $n < @ARGV; $n++) {
|
||||
$mode = $BLOCK;
|
||||
} elsif ("$ARGV[$n]" eq "-mix") {
|
||||
$mode = $MIX;
|
||||
+ } elsif ($ARGV[$n] eq "-help" || $ARGV[$n] eq "--help" || $ARGV[$n] eq "-h") {
|
||||
+ print "ppmfade: Use 'man ppmfade' for help.\n";
|
||||
+ exit 1;
|
||||
} else {
|
||||
print "Unknown argument: $ARGV[$n]\n";
|
||||
- exit 100;
|
||||
+ exit 1;
|
||||
}
|
||||
}
|
||||
#
|
||||
@@ -134,18 +137,18 @@ if ($first_file ne "undefined") {
|
||||
$width = $1; $height = $2;
|
||||
} else {
|
||||
print("Unrecognized results from pnmfile on $first_file.\n");
|
||||
- exit(50);
|
||||
+ exit 1;
|
||||
}
|
||||
} elsif ($last_file ne "undefined") {
|
||||
if ((`pnmfile $last_file` =~ m{\b(\d+)\sby\s(\d+)} )) {
|
||||
$width = $1; $height = $2;
|
||||
} else {
|
||||
print("Unrecognized results from pnmfile on $first_file.\n");
|
||||
- exit(50);
|
||||
+ exit 1;
|
||||
}
|
||||
} else {
|
||||
print("ppmfade: You must specify -f or -l (or both)\n");
|
||||
- exit(90);
|
||||
+ exit 1;
|
||||
}
|
||||
|
||||
print("Frames are " . $width . "W x " . $height . "H\n");
|
||||
9
netpbm-python3.patch
Normal file
9
netpbm-python3.patch
Normal file
@ -0,0 +1,9 @@
|
||||
diff -urNp old/buildtools/makeman new/buildtools/makeman
|
||||
--- old/buildtools/makeman 2018-01-03 12:15:55.000000000 +0100
|
||||
+++ new/buildtools/makeman 2018-02-26 14:18:39.993760106 +0100
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/python
|
||||
+#!/usr/bin/python3
|
||||
#
|
||||
# makeman -- compile netpbm's stereotyped HTML to troff markup
|
||||
#
|
||||
1601
netpbm-security-code.patch
Normal file
1601
netpbm-security-code.patch
Normal file
File diff suppressed because it is too large
Load Diff
267
netpbm-security-scripts.patch
Normal file
267
netpbm-security-scripts.patch
Normal file
@ -0,0 +1,267 @@
|
||||
diff --git a/editor/ppmfade b/editor/ppmfade
|
||||
index dcd7bf2..5091651 100755
|
||||
--- a/editor/ppmfade
|
||||
+++ b/editor/ppmfade
|
||||
@@ -40,6 +40,7 @@ exec perl -w -x -S -- "$0" "$@"
|
||||
#
|
||||
##############################################################################
|
||||
use strict;
|
||||
+use File::Temp "tempdir";
|
||||
|
||||
sub doVersionHack($) {
|
||||
my ($argvR) = @_;
|
||||
@@ -149,20 +150,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");
|
||||
}
|
||||
|
||||
#
|
||||
@@ -170,14 +177,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++) {
|
||||
@@ -185,147 +192,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);
|
||||
21
netpbm-time.patch
Normal file
21
netpbm-time.patch
Normal file
@ -0,0 +1,21 @@
|
||||
diff -up netpbm-10.47.05/converter/other/fiasco/config.h.time netpbm-10.47.05/converter/other/fiasco/config.h
|
||||
--- netpbm-10.47.05/converter/other/fiasco/config.h.time 2009-12-10 08:34:36.000000000 +0100
|
||||
+++ netpbm-10.47.05/converter/other/fiasco/config.h 2009-12-10 08:43:54.000000000 +0100
|
||||
@@ -19,7 +19,7 @@
|
||||
#define STDC_HEADERS 1
|
||||
|
||||
/* Define if you can safely include both <sys/time.h> and <time.h>. */
|
||||
-#define TIME_WITH_SYS_TIME 1
|
||||
+/* #undef TIME_WITH_SYS_TIME */
|
||||
|
||||
/* Define if the X Window System is missing or not being used. */
|
||||
#define X_DISPLAY_MISSING 1
|
||||
@@ -75,7 +75,7 @@
|
||||
#define HAVE_STRING_H 1
|
||||
|
||||
/* Define if you have the <sys/time.h> header file. */
|
||||
-#define HAVE_SYS_TIME_H 1
|
||||
+/* #undef HAVE_SYS_TIME_H */
|
||||
|
||||
/* Define if you have the <unistd.h> header file. */
|
||||
#define HAVE_UNISTD_H 1
|
||||
11
netpbm-xwdfix.patch
Normal file
11
netpbm-xwdfix.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- netpbm-10.35/converter/other/xwdtopnm.c.xwdfix 2006-09-18 13:24:50.000000000 +0200
|
||||
+++ netpbm-10.35/converter/other/xwdtopnm.c 2006-09-18 13:27:26.000000000 +0200
|
||||
@@ -945,7 +945,7 @@ getpix(pixelReader * const rdrP) {
|
||||
unsigned long const bitsToTakeMask = lsbmask[nBitsToTake];
|
||||
/* E.g. if nbitsToTake is 4, this is 0x0000000F */
|
||||
|
||||
- unsigned long bitsToTake;
|
||||
+ unsigned int bitsToTake;
|
||||
/* The actual bits we take, in the 'nBitsToTake' low bits */
|
||||
|
||||
assert(nBitsToTake <= 32);
|
||||
159
netpbm.spec
Normal file
159
netpbm.spec
Normal file
@ -0,0 +1,159 @@
|
||||
Name: netpbm
|
||||
Version: 10.83.01
|
||||
Release: 2
|
||||
Summary: A library for handling different graphics file formats
|
||||
License: BSD and GPLv2 and IJG and MIT and Public Domain
|
||||
URL: http://netpbm.sourceforge.net/
|
||||
|
||||
Source0: netpbm-%{version}.tar.xz
|
||||
|
||||
Patch0000: netpbm-security-scripts.patch
|
||||
Patch0001: netpbm-security-code.patch
|
||||
Patch0002: netpbm-ppmfadeusage.patch
|
||||
Patch0003: netpbm-noppmtompeg.patch
|
||||
Patch0004: netpbm-CVE-2017-2587.patch
|
||||
Patch0005: netpbm-python3.patch
|
||||
Patch0006: netpbm-time.patch
|
||||
Patch0007: netpbm-gcc4.patch
|
||||
Patch0008: netpbm-bmptopnm.patch
|
||||
Patch0009: netpbm-CAN-2005-2471.patch
|
||||
Patch0010: netpbm-xwdfix.patch
|
||||
Patch0011: netpbm-multilib.patch
|
||||
Patch0012: netpbm-glibc.patch
|
||||
Patch0013: netpbm-docfix.patch
|
||||
Patch0014: netpbm-fiasco-overflow.patch
|
||||
Patch0015: netpbm-cmuwtopbm.patch
|
||||
Patch0016: netpbm-pamtojpeg2k.patch
|
||||
Patch0017: netpbm-manfix.patch
|
||||
Patch0018: netpbm-manual-pages.patch
|
||||
|
||||
BuildRequires: libjpeg-devel, libpng-devel, libtiff-devel, flex
|
||||
BuildRequires: libX11-devel perl-generators python3 jasper-devel libxml2-devel ghostscript-core
|
||||
Requires: ghostscript
|
||||
Provides: bundled(jasper) bundled(jbigkit) netpbm-progs = %{version}-%{release}
|
||||
Obsoletes: netpbm-progs < %{version}-%{release}
|
||||
|
||||
%description
|
||||
The netpbm package contains a library of functions that support the following features:
|
||||
Program for handling various graphic file formats and so on.
|
||||
|
||||
%package devel
|
||||
Summary: Provides development tools for programs
|
||||
Requires: netpbm = %{version}-%{release}
|
||||
|
||||
%description devel
|
||||
The netpbm-devel package provides tools for developing programs which will use the netpbm libraries.
|
||||
|
||||
%package help
|
||||
Summary: Help document for the netpbm package
|
||||
Requires: netpbm-progs = %{version}-%{release}
|
||||
Provides: netpbm-doc = %{version}-%{release}
|
||||
Obsoletes: netpbm-doc < %{version}-%{release}
|
||||
|
||||
%description help
|
||||
Help document for the netpbm package.
|
||||
|
||||
%prep
|
||||
%autosetup -n %{name}-%{version} -p1
|
||||
|
||||
%build
|
||||
./configure <<EOF
|
||||
|
||||
gnu
|
||||
regular
|
||||
shared
|
||||
y
|
||||
|
||||
n
|
||||
libjpeg.so
|
||||
default
|
||||
libtiff.so
|
||||
default
|
||||
libz.so
|
||||
default
|
||||
none
|
||||
http://netpbm.sourceforge.net/doc/
|
||||
EOF
|
||||
|
||||
TOP=`pwd`
|
||||
|
||||
make \
|
||||
CC="%{__cc}" LDFLAGS="$RPM_LD_FLAGS -L$TOP/pbm -L$TOP/pgm -L$TOP/pnm -L$TOP/ppm" \
|
||||
CFLAGS="$RPM_OPT_FLAGS -fPIC -flax-vector-conversions -fno-strict-aliasing" \
|
||||
CFLAGS_CONFIG="$RPM_OPT_FLAGS" LADD="-lm" JPEGINC_DIR=%{_includedir} PNGINC_DIR=%{_includedir} \
|
||||
TIFFINC_DIR=%{_includedir} JPEGLIB_DIR=%{_libdir} PNGLIB_DIR=%{_libdir} TIFFLIB_DIR=%{_libdir} \
|
||||
LINUXSVGALIB="NONE" X11LIB=%{_libdir}/libX11.so XML2LIBS="NONE"
|
||||
|
||||
cd userguide
|
||||
rm -f ppmtompeg* *.manual-pages *.manfix
|
||||
|
||||
for i in *.html ; do
|
||||
../buildtools/makeman ${i}
|
||||
done
|
||||
|
||||
mkdir -p man/{man1,man3,man5}
|
||||
mv *.1 man/man1
|
||||
mv *.3 man/man3
|
||||
mv *5 man/man5
|
||||
|
||||
%install
|
||||
make package pkgdir=%{buildroot}/usr LINUXSVGALIB="NONE" XML2LIBS="NONE"
|
||||
|
||||
install -d %{buildroot}%{_libdir}
|
||||
if [ "%{_libdir}" != "/usr/lib" ]; then
|
||||
mv %{buildroot}/usr/lib/lib* %{buildroot}%{_libdir}
|
||||
fi
|
||||
|
||||
cp -af lib/libnetpbm.a %{buildroot}%{_libdir}/libnetpbm.a
|
||||
cp -l %{buildroot}%{_libdir}/libnetpbm.so.?? %{buildroot}%{_libdir}/libnetpbm.so
|
||||
|
||||
install -d %{buildroot}%{_datadir}
|
||||
mv userguide/man %{buildroot}%{_mandir}
|
||||
|
||||
sed -i 's/\xa0//' %{buildroot}%{_mandir}/man1/pgmminkowski.1
|
||||
|
||||
for i in hpcdtoppm ppmsvgalib vidtoppm picttoppm directory error extendedopacity \
|
||||
pam pbm pgm pnm ppm index libnetpbm_dir liberror ppmtotga; do
|
||||
rm -f %{buildroot}%{_mandir}/man1/${i}.1
|
||||
done
|
||||
|
||||
install -d %{buildroot}%{_datadir}/netpbm
|
||||
mv %{buildroot}/usr/misc/{*.map,rgb.txt} %{buildroot}%{_datadir}/netpbm/
|
||||
|
||||
cd %{buildroot}%{_bindir}
|
||||
rm -f pgmtopbm pnmcomp
|
||||
ln -s pamcomp pnmcomp
|
||||
echo -e '#!/bin/sh\npamditherbw $@ | pamtopnm\n' > pgmtopbm
|
||||
chmod 0755 pgmtopbm
|
||||
cd -
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%check
|
||||
cd test
|
||||
export LD_LIBRARY_PATH=%{buildroot}%{_libdir} PBM_TESTPREFIX=%{buildroot}%{_bindir} PBM_BINPREFIX=%{buildroot}%{_bindir}
|
||||
./Execute-Tests && exit 0
|
||||
cd -
|
||||
|
||||
%files
|
||||
%doc doc/copyright_summary doc/COPYRIGHT.PATENT README doc/GPL_LICENSE.txt
|
||||
%{_libdir}/lib*.so*
|
||||
%{_bindir}/*
|
||||
%{_datadir}/netpbm/
|
||||
%exclude %{_mandir}/man5/extendedopacity.5
|
||||
%exclude %{_libdir}/lib*.a
|
||||
|
||||
%files devel
|
||||
%{_includedir}/netpbm/*.h
|
||||
%exclude /usr/{README,VERSION,link,misc,man,pkginfo,config_template,pkgconfig_template}
|
||||
|
||||
%files help
|
||||
%doc userguide/* doc/HISTORY
|
||||
%{_mandir}/man1/*
|
||||
%{_mandir}/man3/*
|
||||
%{_mandir}/man5/*
|
||||
|
||||
%changelog
|
||||
* Tue Nov 26 2019 wangzhishun <wangzhishun1@huawei.com> - 10.83.01-2
|
||||
- Package init
|
||||
Loading…
x
Reference in New Issue
Block a user