Compare commits
88 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3aba1ce9e6 | ||
|
|
4a456f6428 | ||
|
|
0ffda149d6 | ||
|
|
5c0b4b11d1 | ||
|
|
a90024f3a2 | ||
|
|
ebbabc0361 | ||
|
|
2924ab513e | ||
|
|
d84b9c5e41 | ||
|
|
9dac6ff0f1 |
||
|
|
b605872ecb | ||
|
|
4342590717 | ||
|
|
39e95cb9e0 | ||
|
|
2b6ee3cbff | ||
|
|
8d07cd0c64 | ||
|
|
4a35bcd065 | ||
|
|
a5280fda99 | ||
|
|
428d12c737 | ||
|
|
75a7fd8929 | ||
|
|
04107c7817 | ||
|
|
5795887f4a | ||
|
|
fa99cfecf1 | ||
|
|
b221824812 | ||
|
|
7d1f2ca58a | ||
|
|
8784b08765 | ||
|
|
5c37322a57 | ||
|
|
cb344eef86 | ||
|
|
4b52b63f21 | ||
|
|
a752d63751 | ||
|
|
d9737875b1 | ||
|
|
7c5f7224b2 | ||
|
|
24c2d52183 | ||
|
|
4957f6da7b | ||
|
|
fba46faae3 | ||
|
|
0df44fd48f | ||
|
|
c30242c9d5 | ||
|
|
4e68eb43f2 | ||
|
|
03a989cc4b | ||
|
|
8db855745f | ||
|
|
a23721174b | ||
|
|
e8ffa03477 | ||
|
|
6520ba94f7 | ||
|
|
2ac4933a6a | ||
|
|
b36ace5a14 | ||
|
|
2d486a7846 | ||
|
|
6c4c7de994 | ||
|
|
df169fb121 | ||
|
|
bb2a8932c0 | ||
|
|
cbbfb19878 | ||
|
|
f06cc1676e | ||
|
|
ad2fc40b06 | ||
|
|
11ddd979a6 | ||
|
|
5ad902a1cb | ||
|
|
4c6e5b409d | ||
|
|
d9e6b50bf7 | ||
|
|
406adea3ff | ||
|
|
4754916413 | ||
|
|
e59c8cc27e | ||
|
|
22d9bc2e79 | ||
|
|
5d379c2dc8 | ||
|
|
a512e578f3 | ||
|
|
f6655d3bd0 | ||
|
|
8aa4679153 | ||
|
|
7028f05272 | ||
|
|
003c73f4f9 | ||
|
|
803e506a1f |
||
|
|
176e815470 | ||
|
|
8f3159cd24 | ||
|
|
3beebf8d6c | ||
|
|
0964137717 | ||
|
|
9ee75c7c75 | ||
|
|
29747196d4 | ||
|
|
cd19a42c8d | ||
|
|
5b1d6df1a0 | ||
|
|
2256bb9d4f | ||
|
|
a66d53ca30 | ||
|
|
c16a8b893e | ||
|
|
ab917a4b73 | ||
|
|
8071b3216c | ||
|
|
c6abdb6bcd | ||
|
|
1c95e42580 | ||
|
|
9ec28379f3 | ||
|
|
c3f49ed66f | ||
|
|
fa57dc3cbd | ||
|
|
d776db3079 | ||
|
|
8a165220d2 | ||
|
|
19b62c0cf6 | ||
|
|
10a133169c | ||
|
|
06b519f1f6 |
31 changed files with 3319 additions and 2432 deletions
30
.gitignore
vendored
30
.gitignore
vendored
|
|
@ -1,2 +1,32 @@
|
|||
/netpbm-10.61.02.tar.xz
|
||||
/netpbm-10.66.02.tar.xz
|
||||
/netpbm-10.71.02.tar.xz
|
||||
/netpbm-10.75.99.tar.xz
|
||||
/netpbm-10.76.00.tar.xz
|
||||
/netpbm-10.77.00.tar.xz
|
||||
/netpbm-10.78.00.tar.xz
|
||||
/netpbm-10.79.00.tar.xz
|
||||
/netpbm-10.80.00.tar.xz
|
||||
/netpbm-10.81.00.tar.xz
|
||||
/netpbm-10.82.00.tar.xz
|
||||
/netpbm-10.83.01.tar.xz
|
||||
/netpbm-10.84.03.tar.xz
|
||||
/netpbm-10.86.00.tar.xz
|
||||
/netpbm-10.87.00.tar.xz
|
||||
/netpbm-10.88.00.tar.xz
|
||||
/netpbm-10.89.00.tar.xz
|
||||
/netpbm-10.90.00.tar.xz
|
||||
/netpbm-10.92.00.tar.xz
|
||||
/netpbm-10.93.00.tar.xz
|
||||
/netpbm-10.94.05.tar.xz
|
||||
/netpbm-10.95.00.tar.xz
|
||||
/netpbm-10.96.00.tar.xz
|
||||
/netpbm-10.97.00.tar.xz
|
||||
/netpbm-10.99.00.tar.xz
|
||||
/netpbm-11.00.00.tar.xz
|
||||
/netpbm-11.01.00.tar.xz
|
||||
/netpbm-11.02.00.tar.xz
|
||||
/netpbm-11.09.00.tar.xz
|
||||
/netpbm-11.10.00.tar.xz
|
||||
/netpbm-11.12.00.tar.xz
|
||||
/netpbm-11.13.00.tar.xz
|
||||
|
|
|
|||
|
|
@ -1,17 +1,17 @@
|
|||
diff -up netpbm-10.56.03/converter/other/pstopnm.c.CAN-2005-2471 netpbm-10.56.03/converter/other/pstopnm.c
|
||||
--- netpbm-10.56.03/converter/other/pstopnm.c.CAN-2005-2471 2011-11-09 09:18:00.000000000 +0100
|
||||
+++ netpbm-10.56.03/converter/other/pstopnm.c 2011-11-11 11:43:51.827409226 +0100
|
||||
@@ -747,11 +747,11 @@ execGhostscript(int const input
|
||||
diff -urNp a/converter/other/pstopnm.c b/converter/other/pstopnm.c
|
||||
--- a/converter/other/pstopnm.c 2025-02-04 10:47:27.857451432 +0100
|
||||
+++ b/converter/other/pstopnm.c 2025-02-04 10:55:56.430470597 +0100
|
||||
@@ -896,11 +896,11 @@ execGhostscript(int const
|
||||
ghostscriptProg, arg0,
|
||||
deviceopt, outfileopt, gopt, ropt, textalphabitsopt,
|
||||
"-q", "-dNOPAUSE",
|
||||
"-q", "-dNOPAUSE",
|
||||
- "-dSAFER", "-");
|
||||
+ "-dPARANOIDSAFER", "-");
|
||||
}
|
||||
|
||||
execl(ghostscriptProg, arg0, deviceopt, outfileopt, gopt, ropt, "-q",
|
||||
- "-dNOPAUSE", "-dSAFER", "-", NULL);
|
||||
+ "-dNOPAUSE", "-dPARANOIDSAFER", "-", NULL);
|
||||
|
||||
execl(ghostscriptProg, arg0, deviceopt, outfileopt, gopt, ropt,
|
||||
- textalphabitsopt, "-q", "-dNOPAUSE", "-dSAFER", "-", NULL);
|
||||
+ "-q", "-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;
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -1,7 +1,9 @@
|
|||
--- 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,
|
||||
diff --git a/converter/other/bmptopnm.c b/converter/other/bmptopnm.c
|
||||
index 3f66634..ca4f944 100644
|
||||
--- a/converter/other/bmptopnm.c
|
||||
+++ b/converter/other/bmptopnm.c
|
||||
@@ -1494,7 +1494,7 @@ readBmp(FILE * const ifP,
|
||||
unsigned int * const cmapSizeP,
|
||||
bool const verbose) {
|
||||
|
||||
- xel * colormap; /* malloc'ed */
|
||||
|
|
|
|||
41
netpbm-c99.patch
Normal file
41
netpbm-c99.patch
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
Remove the contents of libjasper_compat.c. The assignment
|
||||
|
||||
*errorP = errorP;
|
||||
|
||||
is bogus because it creates a non-null value in *errorP even on
|
||||
success, and the caller expects a null pointer int his case.
|
||||
|
||||
The source file is compiled, but not actually linked in, so this is
|
||||
only a problem because of the type error that fails the build.
|
||||
|
||||
diff --git a/converter/other/jpeg2000/libjasper_compat.c b/converter/other/jpeg2000/libjasper_compat.c
|
||||
index 101820a321212dc6..e69de29bb2d1d643 100644
|
||||
--- a/converter/other/jpeg2000/libjasper_compat.c
|
||||
+++ b/converter/other/jpeg2000/libjasper_compat.c
|
||||
@@ -1,26 +0,0 @@
|
||||
-#include "netpbm/nstring.h"
|
||||
-
|
||||
-#include "jasper/jasper.h"
|
||||
-#include "jasper/jas_image.h"
|
||||
-
|
||||
-#ifndef JAS_HAVE_PMJAS_IMAGE_DECODE
|
||||
-
|
||||
-void
|
||||
-pmjas_image_decode(jas_stream_t * const in,
|
||||
- int const fmtArg,
|
||||
- const char * const optstr,
|
||||
- jas_image_t ** const imagePP,
|
||||
- const char ** const errorP) {
|
||||
-
|
||||
- jas_image_t * const jasperP = jas_image_decode(in, fmtArg, optstr);
|
||||
-
|
||||
- if (jasperP) {
|
||||
- *imagePP = jasperP;
|
||||
- *errorP = errorP;
|
||||
- } else {
|
||||
- pm_asprintf(errorP, "Failed. Details may have been written to "
|
||||
- "Standard Error");
|
||||
- }
|
||||
-}
|
||||
-
|
||||
-#endif
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
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;
|
||||
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
diff --git a/test/Test-Order b/test/Test-Order
|
||||
index ff4b985..7ef1d97 100644
|
||||
--- a/test/Test-Order
|
||||
+++ b/test/Test-Order
|
||||
@@ -74,7 +74,7 @@ symmetry.test
|
||||
|
||||
# Format converter tests
|
||||
|
||||
-pbmtog3.test
|
||||
+#pbmtog3.test
|
||||
411toppm.test
|
||||
eyuvtoppm.test
|
||||
|
||||
|
|
@ -1,19 +1,21 @@
|
|||
diff -up netpbm-10.35.58/converter/pbm/pbmtoepson.c.docfix netpbm-10.35.58/converter/pbm/pbmtoepson.c
|
||||
--- netpbm-10.35.58/converter/pbm/pbmtoepson.c.docfix 2009-01-19 09:24:03.000000000 +0100
|
||||
+++ netpbm-10.35.58/converter/pbm/pbmtoepson.c 2009-04-15 09:10:52.000000000 +0200
|
||||
@@ -74,7 +74,7 @@ parseCommandLine(int arg
|
||||
&dpiSpec, 0);
|
||||
OPTENT3(0, "adjacent", OPT_FLAG, NULL,
|
||||
diff --git a/converter/pbm/pbmtoepson.c b/converter/pbm/pbmtoepson.c
|
||||
index 122a438..5d67746 100644
|
||||
--- a/converter/pbm/pbmtoepson.c
|
||||
+++ b/converter/pbm/pbmtoepson.c
|
||||
@@ -75,7 +75,7 @@ parseCommandLine(int argc,
|
||||
&dpiSpec, 0);
|
||||
OPTENT3(0, "adjacent", OPT_FLAG, NULL,
|
||||
&adjacentSpec, 0);
|
||||
- OPTENT3(0, "nonadjacent", OPT_FLAG, NULL,
|
||||
+ OPTENT3(0, "noadjacent", OPT_FLAG, NULL,
|
||||
&nonadjacentSpec, 0);
|
||||
- OPTENT3(0, "nonadjacent", OPT_FLAG, NULL,
|
||||
+ OPTENT3(0, "noadjacent", OPT_FLAG, NULL,
|
||||
&nonadjacentSpec, 0);
|
||||
|
||||
opt.opt_table = option_def;
|
||||
diff -up netpbm-10.35.58/userguide/cameratopam.html.docfix netpbm-10.35.58/userguide/cameratopam.html
|
||||
--- netpbm-10.35.58/userguide/cameratopam.html.docfix 2009-01-19 09:24:18.000000000 +0100
|
||||
+++ netpbm-10.35.58/userguide/cameratopam.html 2009-04-15 09:16:16.000000000 +0200
|
||||
@@ -25,10 +25,10 @@ cameratopam - convert raw camera image t
|
||||
diff --git a/userguide/cameratopam.html b/userguide/cameratopam.html
|
||||
index b50bfeb..3af9008 100644
|
||||
--- a/userguide/cameratopam.html
|
||||
+++ b/userguide/cameratopam.html
|
||||
@@ -24,10 +24,10 @@ cameratopam - convert raw camera image to PAM
|
||||
[<b>-balance_camera</b>]
|
||||
[<b>-red_scale=</b><i>float</i>]
|
||||
[<b>-blue_scale=</b><i>float</i>]
|
||||
|
|
@ -26,7 +28,7 @@ diff -up netpbm-10.35.58/userguide/cameratopam.html.docfix netpbm-10.35.58/userg
|
|||
[<b>-linear</b>]
|
||||
[<b>-verbose</b>]
|
||||
|
||||
@@ -106,7 +106,7 @@ the default.
|
||||
@@ -110,7 +110,7 @@ the default.
|
||||
<dd>Further adjust the color balance by multiplying the red and blue
|
||||
channels by these values. Both default to 1.0.
|
||||
|
||||
|
|
@ -35,7 +37,7 @@ diff -up netpbm-10.35.58/userguide/cameratopam.html.docfix netpbm-10.35.58/userg
|
|||
|
||||
<dd>Change the output brightness. Default is 1.0.
|
||||
|
||||
@@ -114,14 +114,14 @@ channels by these values. Both default
|
||||
@@ -118,14 +118,14 @@ channels by these values. Both default to 1.0.
|
||||
|
||||
<dd>By default, <b>cameratoapm</b> clips all colors to prevent pink
|
||||
hues in the highlights. Combine this option with
|
||||
|
|
@ -52,47 +54,49 @@ diff -up netpbm-10.35.58/userguide/cameratopam.html.docfix netpbm-10.35.58/userg
|
|||
|
||||
<dd>For cameras based on the Fuji Super CCD SR, this option causes
|
||||
<b>cameratopam</b> to use the secondary sensors, in effect
|
||||
diff -up netpbm-10.35.58/userguide/fiascotopnm.html.docfix netpbm-10.35.58/userguide/fiascotopnm.html
|
||||
--- netpbm-10.35.58/userguide/fiascotopnm.html.docfix 2009-01-19 09:24:18.000000000 +0100
|
||||
+++ netpbm-10.35.58/userguide/fiascotopnm.html 2009-04-15 09:10:52.000000000 +0200
|
||||
@@ -51,7 +51,7 @@ the output file(s) are written to the fi
|
||||
diff --git a/userguide/fiascotopnm.html b/userguide/fiascotopnm.html
|
||||
index c33f701..fa84441 100644
|
||||
--- a/userguide/fiascotopnm.html
|
||||
+++ b/userguide/fiascotopnm.html
|
||||
@@ -56,7 +56,7 @@ the output file(s) are written to the first (writable) directory of
|
||||
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>
|
||||
-<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
|
||||
@@ -88,7 +88,7 @@ given amount <i>N</i>. <i>N</i> is 1 (minimum) to 100 (maximum); default
|
||||
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,
|
||||
-<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.
|
||||
@@ -109,13 +109,9 @@ following methods (in the specified orde
|
||||
<LI>--config=<I>name</I>
|
||||
</OL>
|
||||
@@ -118,13 +118,8 @@ following methods (in the specified order):
|
||||
<li>--config=<i>name</i>
|
||||
</ol>
|
||||
|
||||
-<DT><B>-h</B>, <B>--info</B>
|
||||
+<DT><B>-h</B>, <B>--help</B>
|
||||
<DD>
|
||||
-<dt><b>-h</b>, <b>--info</b>
|
||||
-<dd>
|
||||
-Print brief help, then exit.
|
||||
-
|
||||
-<DT><B>-H</B>, <B>--help</B>
|
||||
-<DD>
|
||||
-<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>
|
||||
</dl>
|
||||
|
||||
diff -up netpbm-10.47.12/userguide/pamperspective.html.docfix netpbm-10.47.12/userguide/pamperspective.html
|
||||
--- netpbm-10.47.12/userguide/pamperspective.html.docfix 2010-04-27 15:48:09.000000000 +0200
|
||||
+++ netpbm-10.47.12/userguide/pamperspective.html 2010-05-03 14:16:26.064266675 +0200
|
||||
@@ -220,7 +220,7 @@ default rectangle as the "frame.&qu
|
||||
diff --git a/userguide/pamperspective.html b/userguide/pamperspective.html
|
||||
index 018f18a..13073d2 100644
|
||||
--- a/userguide/pamperspective.html
|
||||
+++ b/userguide/pamperspective.html
|
||||
@@ -223,7 +223,7 @@ default rectangle as the "frame." The visible part is always
|
||||
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
|
||||
|
|
@ -101,24 +105,25 @@ diff -up netpbm-10.47.12/userguide/pamperspective.html.docfix netpbm-10.47.12/us
|
|||
<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 -up netpbm-10.47.12/userguide/pbmtoepson.html.docfix netpbm-10.47.12/userguide/pbmtoepson.html
|
||||
--- netpbm-10.47.12/userguide/pbmtoepson.html.docfix 2010-04-27 15:48:09.000000000 +0200
|
||||
+++ netpbm-10.47.12/userguide/pbmtoepson.html 2010-05-03 14:34:03.571141020 +0200
|
||||
@@ -18,7 +18,7 @@ pbmtoepson - convert a PBM image into Ep
|
||||
diff --git a/userguide/pbmtoepson.html b/userguide/pbmtoepson.html
|
||||
index baacf7b..e74a7fe 100644
|
||||
--- a/userguide/pbmtoepson.html
|
||||
+++ b/userguide/pbmtoepson.html
|
||||
@@ -16,7 +16,7 @@ pbmtoepson - convert a PBM image into Epson printer graphics
|
||||
[<b>-dpi=</b><i>n</i>]
|
||||
[<b>-protocol=</b>{<b>escp9</b>|<B>escp</B>}]
|
||||
[<b>-protocol=</b>{<b>escp9</b>|<b>escp</b>}]
|
||||
[<b>-adjacent</b>]
|
||||
-[<b>-nonadjacent</b>]
|
||||
+[<b>-noadjacent</b>]
|
||||
|
||||
[<I>pbmfile</I>]
|
||||
[<i>pbmfile</i>]
|
||||
|
||||
@@ -74,7 +74,7 @@ print density for you consistent with yo
|
||||
@@ -75,7 +75,7 @@ print density for you consistent with your other options.
|
||||
<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.
|
||||
<dd>These options determine whether the output uses "adjacent dot
|
||||
printing" or not, whatever that is.
|
||||
|
|
|
|||
|
|
@ -1,12 +0,0 @@
|
|||
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 */
|
||||
|
|
@ -1,81 +0,0 @@
|
|||
diff -Naur netpbm-10.61.02.orig/converter/pbm/cmuwmtopbm.c netpbm-10.61.02/converter/pbm/cmuwmtopbm.c
|
||||
--- netpbm-10.61.02.orig/converter/pbm/cmuwmtopbm.c 2014-04-14 16:25:31.000000000 +0200
|
||||
+++ netpbm-10.61.02/converter/pbm/cmuwmtopbm.c 2014-04-14 17:05:23.049000000 +0200
|
||||
@@ -48,20 +48,20 @@
|
||||
|
||||
rc = pm_readbiglong(ifP, &l);
|
||||
if (rc == -1 )
|
||||
- pm_error(initReadError);
|
||||
+ pm_error("%s", initReadError);
|
||||
if ((uint32_t)l != cmuwmMagic)
|
||||
pm_error("bad magic number in CMU window manager file");
|
||||
rc = pm_readbiglong(ifP, &l);
|
||||
if (rc == -1)
|
||||
- pm_error(initReadError);
|
||||
+ pm_error("%s", initReadError);
|
||||
*colsP = l;
|
||||
rc = pm_readbiglong(ifP, &l);
|
||||
if (rc == -1 )
|
||||
- pm_error(initReadError);
|
||||
+ pm_error("%s", initReadError);
|
||||
*rowsP = l;
|
||||
rc = pm_readbigshort(ifP, &s);
|
||||
if (rc == -1)
|
||||
- pm_error(initReadError);
|
||||
+ pm_error("%s", initReadError);
|
||||
*depthP = s;
|
||||
}
|
||||
|
||||
diff -Naur netpbm-10.61.02.orig/converter/other/tifftopnm.c netpbm-10.61.02/converter/other/tifftopnm.c
|
||||
--- netpbm-10.61.02.orig/converter/other/tifftopnm.c 2014-04-14 17:06:26.000000000 +0200
|
||||
+++ netpbm-10.61.02/converter/other/tifftopnm.c 2014-04-14 17:09:55.731000000 +0200
|
||||
@@ -1459,7 +1459,7 @@
|
||||
int ok;
|
||||
ok = TIFFRGBAImageOK(tif, emsg);
|
||||
if (!ok) {
|
||||
- pm_message(emsg);
|
||||
+ pm_message("%s", emsg);
|
||||
*statusP = CONV_UNABLE;
|
||||
} else {
|
||||
uint32 * raster;
|
||||
@@ -1479,14 +1479,14 @@
|
||||
|
||||
ok = TIFFRGBAImageBegin(&img, tif, stopOnErrorFalse, emsg);
|
||||
if (!ok) {
|
||||
- pm_message(emsg);
|
||||
+ pm_message("%s", emsg);
|
||||
*statusP = CONV_FAILED;
|
||||
} else {
|
||||
int ok;
|
||||
ok = TIFFRGBAImageGet(&img, raster, cols, rows);
|
||||
TIFFRGBAImageEnd(&img) ;
|
||||
if (!ok) {
|
||||
- pm_message(emsg);
|
||||
+ pm_message("%s", emsg);
|
||||
*statusP = CONV_FAILED;
|
||||
} else {
|
||||
*statusP = CONV_DONE;
|
||||
diff -Naur netpbm-10.61.02.orig/converter/other/fiasco/pnmtofiasco.c netpbm-10.61.02/converter/other/fiasco/pnmtofiasco.c
|
||||
--- netpbm-10.61.02.orig/converter/other/fiasco/pnmtofiasco.c 2013-02-20 07:31:32.000000000 +0100
|
||||
+++ netpbm-10.61.02/converter/other/fiasco/pnmtofiasco.c 2014-04-14 17:12:14.995000000 +0200
|
||||
@@ -170,7 +170,7 @@
|
||||
return 0;
|
||||
else
|
||||
{
|
||||
- fprintf (stderr, fiasco_get_error_message ());
|
||||
+ fprintf (stderr, "%s", fiasco_get_error_message ());
|
||||
fprintf (stderr, "\n");
|
||||
return 1;
|
||||
}
|
||||
diff -Naur netpbm-10.61.02.orig/converter/other/fiasco/params.c netpbm-10.61.02/converter/other/fiasco/params.c
|
||||
--- netpbm-10.61.02.orig/converter/other/fiasco/params.c 2013-02-20 07:31:32.000000000 +0100
|
||||
+++ netpbm-10.61.02/converter/other/fiasco/params.c 2014-04-14 17:15:00.067000000 +0200
|
||||
@@ -656,7 +656,7 @@
|
||||
fprintf (stderr, "Usage: %s [OPTION]...%s\n", progname,
|
||||
non_opt_string ? non_opt_string : " ");
|
||||
if (synopsis != NULL)
|
||||
- fprintf (stderr, synopsis);
|
||||
+ fprintf (stderr, "%s", synopsis);
|
||||
fprintf (stderr, "\n\n");
|
||||
fprintf (stderr, "Mandatory or optional arguments to long options "
|
||||
"are mandatory or optional\nfor short options too. "
|
||||
|
|
@ -1,9 +1,10 @@
|
|||
--- 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 ) {
|
||||
diff -urNp a/converter/other/pnmtotiffcmyk.c b/converter/other/pnmtotiffcmyk.c
|
||||
--- a/converter/other/pnmtotiffcmyk.c 2025-02-04 10:47:27.858451429 +0100
|
||||
+++ b/converter/other/pnmtotiffcmyk.c 2025-02-04 11:04:46.118394226 +0100
|
||||
@@ -989,8 +989,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 ;
|
||||
|
|
|
|||
62
netpbm-jasper.patch
Normal file
62
netpbm-jasper.patch
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
diff -urNp a/config.mk.in b/config.mk.in
|
||||
--- a/config.mk.in 2018-11-21 12:46:22.044790058 +0100
|
||||
+++ b/config.mk.in 2018-11-22 13:13:10.260123268 +0100
|
||||
@@ -128,7 +128,7 @@ INSTALL = $(SRCDIR)/buildtools/install.s
|
||||
|
||||
# STRIPFLAG is the option you pass to the above install program to make it
|
||||
# strip unnecessary information out of binaries.
|
||||
-STRIPFLAG = -s
|
||||
+STRIPFLAG =
|
||||
# If you don't want to strip the binaries, just leave it null:
|
||||
#STRIPFLAG =
|
||||
|
||||
@@ -482,12 +482,12 @@ JBIGLIB = $(INTERNAL_JBIGLIB)
|
||||
JBIGHDR_DIR = $(INTERNAL_JBIGHDR_DIR)
|
||||
|
||||
# The Jasper JPEG-2000 image compression library (aka JasPer):
|
||||
-JASPERLIB = $(INTERNAL_JASPERLIB)
|
||||
-JASPERHDR_DIR = $(INTERNAL_JASPERHDR_DIR)
|
||||
+JASPERLIB = ""
|
||||
+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.
|
||||
-JASPERDEPLIBS =
|
||||
+JASPERDEPLIBS = -ljasper
|
||||
#JASPERDEPLIBS = -ljpeg
|
||||
|
||||
# And the Utah Raster Toolkit (aka URT aka RLE) library:
|
||||
diff -urNp a/converter/other/jbig/Makefile b/converter/other/jbig/Makefile
|
||||
--- a/converter/other/jbig/Makefile 2018-11-21 12:46:22.075789920 +0100
|
||||
+++ b/converter/other/jbig/Makefile 2018-11-22 13:13:40.837969056 +0100
|
||||
@@ -11,8 +11,9 @@ include $(BUILDDIR)/config.mk
|
||||
|
||||
# INTERNAL_JBIGLIB must be relative to the current directory, because it
|
||||
# may end up in MERGE_OBJECTS, which must be relative.
|
||||
-INTERNAL_JBIGLIB = libjbig/libjbig.a
|
||||
-INTERNAL_JBIGHDR_DIR = $(SRCDIR)/$(SUBDIR)/libjbig/include
|
||||
+INTERNAL_JBIGLIB =
|
||||
+INTERNAL_JBIGHDR_DIR = /usr/include
|
||||
+#INTERNAL_JBIGHDR_DIR = $(SRCDIR)/$(SUBDIR)/libjbig/include
|
||||
|
||||
EXTERN_INCLUDES =
|
||||
ifneq ($(JBIGHDR_DIR),NONE)
|
||||
@@ -35,7 +36,6 @@ SCRIPTS =
|
||||
|
||||
ifeq ($(JBIGLIB),$(INTERNAL_JBIGLIB))
|
||||
JBIGLIB_DEP = $(JBIGLIB)
|
||||
- SUBDIRS += libjbig
|
||||
else
|
||||
# It's not our internal version; user's on his own to make sure it's built
|
||||
endif
|
||||
@@ -49,10 +49,3 @@ include $(SRCDIR)/common.mk
|
||||
|
||||
$(BINARIES): %: %.o $(JBIGLIB_DEP) $(LIBOPT)
|
||||
$(BINARIES): LDFLAGS_TARGET = $(shell $(LIBOPT) $(JBIGLIB))
|
||||
-
|
||||
-$(INTERNAL_JBIGLIB): $(BUILDDIR)/$(SUBDIR)/libjbig FORCE
|
||||
- $(MAKE) -f $(SRCDIR)/$(SUBDIR)/libjbig/Makefile \
|
||||
- -C $(dir $@) $(notdir $@)
|
||||
-
|
||||
-.PHONY: FORCE
|
||||
-FORCE:
|
||||
48
netpbm-libdir-so.patch
Normal file
48
netpbm-libdir-so.patch
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
diff --git a/lib/Makefile b/lib/Makefile
|
||||
index bc758df..7f51b41 100644
|
||||
--- a/lib/Makefile
|
||||
+++ b/lib/Makefile
|
||||
@@ -221,7 +221,7 @@ libpm.o: compile.h
|
||||
.PHONY: install.lib
|
||||
ifeq ($(NETPBMLIBTYPE),unixshared)
|
||||
# install a Unix-style shared library
|
||||
-install.lib: $(PKGDIR)/lib $(PKGDIR)/sharedlink
|
||||
+install.lib: $(PKGDIR)/lib
|
||||
cd $(PKGDIR)/lib ; rm -f libnetpbm.$(NETPBMLIBSUFFIX).$(MAJ).*
|
||||
$(INSTALL) -c -m $(INSTALL_PERM_LIBD) \
|
||||
libnetpbm.$(NETPBMLIBSUFFIX).$(MAJ).$(MIN) $(PKGDIR)/lib/
|
||||
@@ -263,27 +263,26 @@ $(INTERFACE_HEADERS:%=%_installhdr): $(PKGDIR)/include/netpbm
|
||||
$(SRCDIR)/lib/$(@:%_installhdr=%) $(PKGDIR)/include/netpbm/
|
||||
|
||||
.PHONY: install.staticlib
|
||||
-install.staticlib: $(PKGDIR)/staticlink
|
||||
+install.staticlib: $(PKGDIR)/lib
|
||||
$(INSTALL) -c -m $(INSTALL_PERM_LIBS) libnetpbm.$(STATICLIBSUFFIX) \
|
||||
- $(PKGDIR)/staticlink
|
||||
+ $(PKGDIR)/lib
|
||||
|
||||
# Install a shared library stub -- the ".so" file used at link time to
|
||||
# prepare a program for dynamically linking a library at run time
|
||||
.PHONY: install.sharedlibstub
|
||||
-install.sharedlibstub: $(PKGDIR)/sharedlink
|
||||
+install.sharedlibstub: $(PKGDIR)/lib
|
||||
ifeq ($(NETPBMLIBTYPE),unixshared)
|
||||
# install the link-time (.so) links to the runtime libraries
|
||||
- cd $(PKGDIR)/sharedlink ; \
|
||||
+ cd $(PKGDIR)/lib ; \
|
||||
rm -f libnetpbm.$(NETPBMLIBSUFFIX); \
|
||||
- $(SYMLINK) ../lib/libnetpbm.$(NETPBMLIBSUFFIX).$(MAJ) \
|
||||
+ $(SYMLINK) libnetpbm.$(NETPBMLIBSUFFIX).$(MAJ) \
|
||||
libnetpbm.$(NETPBMLIBSUFFIX)
|
||||
endif
|
||||
ifeq ($(NETPBMLIBTYPE),dll)
|
||||
- $(INSTALL) -c -m $(INSTALL_PERM_LIBS) libnetpbm.dll.a \
|
||||
- $(PKGDIR)/sharedlink
|
||||
+ $(INSTALL) -c -m $(INSTALL_PERM_LIBS) libnetpbm.dll.a $(PKGDIR)/link
|
||||
endif
|
||||
ifeq ($(NETPBMLIBTYPE),dylib)
|
||||
- cd $(PKGDIR)/sharedlink/ ; \
|
||||
+ cd $(PKGDIR)/link/ ; \
|
||||
rm -f libnetpbm.dylib; \
|
||||
$(SYMLINK) ../lib/libnetpbm.$(MAJ).$(MIN).dylib libnetpbm.dylib
|
||||
endif
|
||||
|
|
@ -1,205 +1,709 @@
|
|||
diff -up netpbm-10.59.03/userguide/avstopam.html.manfix netpbm-10.59.03/userguide/avstopam.html
|
||||
--- netpbm-10.59.03/userguide/avstopam.html.manfix 2012-09-22 03:46:15.000000000 +0200
|
||||
+++ netpbm-10.59.03/userguide/avstopam.html 2012-09-25 10:47:22.756174816 +0200
|
||||
@@ -1,8 +1,7 @@
|
||||
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
||||
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Avstopam User Manual</title>
|
||||
-<meta http-equiv="content-type" content="text/html; charset=us-ascii" />
|
||||
</head>
|
||||
|
||||
diff -urNp a/userguide/avstopam.html b/userguide/avstopam.html
|
||||
--- a/userguide/avstopam.html 2025-02-04 10:47:27.823451565 +0100
|
||||
+++ b/userguide/avstopam.html 2025-02-04 17:49:34.981978989 +0100
|
||||
@@ -2,9 +2,9 @@
|
||||
<html><head><title>Avstopam User Manual</title></head>
|
||||
<body>
|
||||
diff -up netpbm-10.59.03/userguide/escp2topbm.html.manfix netpbm-10.59.03/userguide/escp2topbm.html
|
||||
--- netpbm-10.59.03/userguide/escp2topbm.html.manfix 2012-09-22 03:46:15.000000000 +0200
|
||||
+++ netpbm-10.59.03/userguide/escp2topbm.html 2012-09-25 10:47:22.756174816 +0200
|
||||
@@ -2,10 +2,11 @@
|
||||
<HTML><HEAD><TITLE>Escp2topbm User Manual</TITLE></HEAD>
|
||||
<BODY>
|
||||
<H1>escp2topbm</H1>
|
||||
-Created: 1 August 2003
|
||||
+Updated: 1 August 2003
|
||||
<BR>
|
||||
<A HREF="#index">Table Of Contents</A>
|
||||
<h1>avstopam</h1>
|
||||
-Updated: 07 February 2010
|
||||
-<br>
|
||||
-<a href="#index">Table Of Contents</a>
|
||||
+<p>Updated: 07 February 2010</p>
|
||||
+
|
||||
+<p><a href="#index">Table Of Contents</a></p>
|
||||
<h2>NAME</h2>
|
||||
|
||||
+<H2>NAME</H2>
|
||||
escp2topbm - convert an ESC/P2 printer file to a PBM image
|
||||
<p>avstopam - convert an AVS X image to a Netpbm image
|
||||
@@ -16,40 +16,40 @@ Updated: 07 February 2010
|
||||
|
||||
<H2 id="synopsis">SYNOPSIS</H2>
|
||||
diff -up netpbm-10.59.03/userguide/faxformat.html.manfix netpbm-10.59.03/userguide/faxformat.html
|
||||
--- netpbm-10.59.03/userguide/faxformat.html.manfix 2012-09-22 03:46:15.000000000 +0200
|
||||
+++ netpbm-10.59.03/userguide/faxformat.html 2012-09-25 10:47:22.756174816 +0200
|
||||
@@ -5,10 +5,12 @@
|
||||
<h2 id="description">DESCRIPTION</h2>
|
||||
|
||||
-<p>This program is part of <a href="index.html">Netpbm</a>.
|
||||
+<p>This program is part of <a href="index.html">Netpbm</a>.</p>
|
||||
|
||||
<p><b>avstopam</b> reads a Stardent <abbr title="Application
|
||||
Visualization System">AVS</abbr> X image as input and produces a Netpbm
|
||||
-image as output.
|
||||
+image as output.</p>
|
||||
|
||||
<p><i>avsfile</i> is the input file, which defaults to Standard Input.
|
||||
-Output is always on Standard Output.
|
||||
+Output is always on Standard Output.</p>
|
||||
|
||||
<h2 id="options">OPTIONS</h2>
|
||||
|
||||
<p>There are no command line options defined specifically
|
||||
for <b>avstopam</b>, but it recognizes the options common to all
|
||||
programs based on libnetpbm (See <a href="index.html#commonoptions">
|
||||
-Common Options</a>.)
|
||||
+Common Options</a>.)</p>
|
||||
|
||||
<h2 id="author">AUTHOR</h2>
|
||||
|
||||
<p>Copyright © 2010 Scott Pakin,
|
||||
-<a href="mailto:scott+pbm@pakin.org">scott+pbm@pakin.org</a>
|
||||
+<a href="mailto:scott+pbm@pakin.org">scott+pbm@pakin.org</a></p>
|
||||
|
||||
<h2 id="seealso">SEE ALSO</h2>
|
||||
|
||||
-<p><a href="pamtoavs.html">pamtoavs</a>, <a href="pam.html">pam</a>
|
||||
+<p><a href="pamtoavs.html">pamtoavs</a>, <a href="pam.html">pam</a></p>
|
||||
|
||||
<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="#author">AUTHOR</a>
|
||||
-<li><a href="#seealso">SEE ALSO</a>
|
||||
+<li><a href="#synopsis">SYNOPSIS</a></li>
|
||||
+<li><a href="#description">DESCRIPTION</a></li>
|
||||
+<li><a href="#options">OPTIONS</a></li>
|
||||
+<li><a href="#author">AUTHOR</a></li>
|
||||
+<li><a href="#seealso">SEE ALSO</a></li>
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
||||
diff -urNp a/userguide/faxformat.html b/userguide/faxformat.html
|
||||
--- a/userguide/faxformat.html 2025-02-04 10:47:27.824451560 +0100
|
||||
+++ b/userguide/faxformat.html 2025-02-04 17:50:41.300631089 +0100
|
||||
@@ -5,10 +5,11 @@
|
||||
Updated: 03 December 2008
|
||||
<BR>
|
||||
<br>
|
||||
|
||||
+<H2>SYNOPSIS</H2>
|
||||
+<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>
|
||||
-
|
||||
+<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 -up netpbm-10.59.03/userguide/pampaintspill.html.manfix netpbm-10.59.03/userguide/pampaintspill.html
|
||||
--- netpbm-10.59.03/userguide/pampaintspill.html.manfix 2012-09-22 03:46:15.000000000 +0200
|
||||
+++ netpbm-10.59.03/userguide/pampaintspill.html 2012-09-25 10:47:22.757174803 +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>
|
||||
diff -urNp a/userguide/libnetpbm_ug.html b/userguide/libnetpbm_ug.html
|
||||
--- a/userguide/libnetpbm_ug.html 2025-02-04 10:47:27.824451560 +0100
|
||||
+++ b/userguide/libnetpbm_ug.html 2025-02-04 17:52:02.045207328 +0100
|
||||
@@ -374,7 +374,7 @@ plain format.
|
||||
<h2 id="reference">Reference</h2>
|
||||
|
||||
<p>The <a href="libnetpbm_image.html">Libnetpbm Netpbm Image
|
||||
-Processing Manual</a> describes the the <b>libnetpbm</b> functions for
|
||||
+Processing Manual</a> describes the <b>libnetpbm</b> functions for
|
||||
processing image data.
|
||||
|
||||
<p>The <a href="libpm.html">Libnetpbm Utility Manual</a>
|
||||
diff -urNp a/userguide/pamfunc.html b/userguide/pamfunc.html
|
||||
--- a/userguide/pamfunc.html 2025-02-04 10:47:27.823451565 +0100
|
||||
+++ b/userguide/pamfunc.html 2025-02-04 17:52:19.661114878 +0100
|
||||
@@ -60,7 +60,7 @@ output image.
|
||||
and bit string (such as and with 01001000). For the arithmetic functions, the
|
||||
function arguments and results are the fraction that a sample is of the
|
||||
maxval, i.e. normal interpretation of PAM tuples. But for the bit string
|
||||
-functions, the value is the the bit string whose value as a binary cipher is
|
||||
+functions, the value is the bit string whose value as a binary cipher is
|
||||
the sample value, and the maxval indicates the width of the bit string.
|
||||
|
||||
<h4>Arithmetic functions</h4>
|
||||
diff -urNp a/userguide/pammixmulti.html b/userguide/pammixmulti.html
|
||||
--- a/userguide/pammixmulti.html 2025-02-04 10:47:27.820451577 +0100
|
||||
+++ b/userguide/pammixmulti.html 2025-02-04 17:56:58.538651212 +0100
|
||||
@@ -7,8 +7,8 @@ Updated: 18 December 2024
|
||||
<a href="#index">Table Of Contents</a>
|
||||
|
||||
|
||||
-<h2>NAME</h2>
|
||||
-<p>pammixmulti - blend together multiple PAM images
|
||||
+<h2 id="name">NAME</h2>
|
||||
+<p>pammixmulti - blend together multiple PAM images</p>
|
||||
|
||||
|
||||
<h2 id="synopsis">SYNOPSIS</h2>
|
||||
@@ -17,19 +17,19 @@ Updated: 18 December 2024
|
||||
[<b>-maskfile</b>=<i>filename</i>]
|
||||
[<b>-stdev</b>=<i>number</i>]
|
||||
[<b>-randomseed</b> <i>integer</i>]
|
||||
- <i>filename</i> ...
|
||||
+ <i>filename</i> ...</p>
|
||||
|
||||
<p>Minimum unique abbreviation of an option is acceptable. You can use double
|
||||
hyphen instead of a single hyphen to denote options. You can use white
|
||||
space in place of the equals sign to separate an option name from its
|
||||
-value.
|
||||
+value.</p>
|
||||
|
||||
|
||||
<h2 id="description">DESCRIPTION</h2>
|
||||
-<p>This file is part of <a href="index.html">Netpbm</a>.
|
||||
+<p>This file is part of <a href="index.html">Netpbm</a>.</p>
|
||||
|
||||
<p><b>pammixmulti</b> mixes two or more images to produce a new image. The
|
||||
-program provides multiple ways to interpret "mix."
|
||||
+program provides multiple ways to interpret "mix."</p>
|
||||
|
||||
|
||||
<h2 id="options">OPTIONS</h2>
|
||||
@@ -37,7 +37,7 @@ program provides multiple ways to interp
|
||||
<p>In addition to the options common to all programs based on libnetpbm
|
||||
(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
|
||||
Common Options</a>), <b>pammixmulti</b> recognizes the following
|
||||
-command line options:
|
||||
+command line options:</p>
|
||||
|
||||
<dl compact>
|
||||
<dt><b>-blend</b>=average|alpha-weighted|random|mask</dt>
|
||||
@@ -55,8 +55,8 @@ of the input images, chosen at random on
|
||||
With <b>-blend</b>=<code>mask</code>, each pixel in the output is
|
||||
produced by a weighted average of the corresponding pixels from all
|
||||
the input images based on the grayscale level of an additional mask
|
||||
-image.
|
||||
-<p><b>-alpha-weighted</b> was new in Netpbm 11.09 (December 2024).
|
||||
+image.</p>
|
||||
+<p><b>-alpha-weighted</b> was new in Netpbm 11.09 (December 2024).</p>
|
||||
</dd>
|
||||
|
||||
<dt><b>-maskfile</b>=<i>filename</i></dt>
|
||||
@@ -66,7 +66,7 @@ grayscale mask file to control the blend
|
||||
not grayscale, the first channel is treated as gray). Where the mask file is
|
||||
black, the first image is selected. Where the mask file is white, the last
|
||||
image is selected. Intermediate levels of gray select intermediate
|
||||
-images.
|
||||
+images.</p>
|
||||
</dd>
|
||||
|
||||
<dt><b>-stdev</b>=<i>number</i></dt>
|
||||
@@ -83,7 +83,7 @@ that includes roughly equal amounts of t
|
||||
and 2 but less of the corresponding pixel from image 3. As <i>number</i>
|
||||
tends towards the number of input images (going beyond that has diminishing
|
||||
impact), the output tends to look more
|
||||
-like <b>-blend</b>=average. <i>number</i> defaults to 0.25.
|
||||
+like <b>-blend</b>=average. <i>number</i> defaults to 0.25.</p>
|
||||
</dd>
|
||||
|
||||
<dt><b>-randomseed</b> <i>integer</i>
|
||||
@@ -91,45 +91,45 @@ like <b>-blend</b>=average. <i>number</i
|
||||
<dd>This is the seed for the random number generator used with
|
||||
<b>-blend=random</b>
|
||||
|
||||
-<p>Use this to ensure you get the same image on separate invocations.
|
||||
+<p>Use this to ensure you get the same image on separate invocations.</p>
|
||||
|
||||
</dl>
|
||||
|
||||
<h2 id="arguments">ARGUMENTS</h2>
|
||||
|
||||
-<p>You supply the names of the files to mix as non-option arguments.
|
||||
+<p>You supply the names of the files to mix as non-option arguments.</p>
|
||||
|
||||
|
||||
<h2 id="examples">EXAMPLES</h2>
|
||||
|
||||
-<p>Average a bunch of PPM images to produce a new PAM image:
|
||||
+<p>Average a bunch of PPM images to produce a new PAM image:</p>
|
||||
<pre><code>
|
||||
pammixmulti input*.ppm >output.ppm
|
||||
</code></pre>
|
||||
|
||||
<p>Mix these same images by taking each pixel from a randomly selected input
|
||||
-image:
|
||||
+image:</p>
|
||||
|
||||
<pre><code>
|
||||
pammixmulti -blend=random input*.ppm >output.ppm
|
||||
</code></pre>
|
||||
|
||||
<p>Use a mask image to control the fading among input images on a
|
||||
-pixel-by-pixel basis:
|
||||
+pixel-by-pixel basis:</p>
|
||||
|
||||
<pre><code>
|
||||
pammixmulti -blend=mask -maskfile=mask.pgm >output.pam \
|
||||
one.pam two.pam three.pam four.pam
|
||||
</code></pre>
|
||||
|
||||
-<p>Do the same but with more abrupt transitions:
|
||||
+<p>Do the same but with more abrupt transitions:</p>
|
||||
|
||||
<pre><code>
|
||||
pammixmulti -blend=mask -maskfile=mask.pgm -stdev=0.0 >output.pam \
|
||||
one.pam two.pam three.pam four.pam
|
||||
</code></pre>
|
||||
|
||||
-<p>and now with more gradual transitions:
|
||||
+<p>and now with more gradual transitions:</p>
|
||||
|
||||
<pre><code>
|
||||
pammixmulti -blend=mask -maskfile=mask.pgm -stdev=1.0 >output.pam \
|
||||
@@ -139,12 +139,12 @@ pixel-by-pixel basis:
|
||||
|
||||
<h2 id="history">HISTORY</h2>
|
||||
|
||||
-<p><b>pammixmulti</b> was new in Netpbm 10.85 (December 2018).
|
||||
+<p><b>pammixmulti</b> was new in Netpbm 10.85 (December 2018).</p>
|
||||
|
||||
|
||||
<h2 id="author">AUTHOR</h2>
|
||||
|
||||
-<p>Copyright 2018–2024 Scott Pakin, scott+pbm@pakin.org.
|
||||
+<p>Copyright 2018–2024 Scott Pakin, scott+pbm@pakin.org.</p>
|
||||
|
||||
<h2 id="seealso">SEE ALSO</h2>
|
||||
|
||||
@@ -152,20 +152,20 @@ pixel-by-pixel basis:
|
||||
<a href="ppmmix.html">ppmmix</a>,
|
||||
<a href="pamarith.html">pamarith</a>,
|
||||
<a href="pnm.html">pnm</a>,
|
||||
-<a href="pam.html">pam</a>
|
||||
+<a href="pam.html">pam</a></p>
|
||||
|
||||
|
||||
<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="#arguments">ARGUMENTS</a>
|
||||
-<li><a href="#examples">EXAMPLES</a>
|
||||
-<li><a href="#history">HISTORY</a>
|
||||
-<li><a href="#author">AUTHOR</a>
|
||||
-<li><a href="#seealso">SEE ALSO</a>
|
||||
+<li><a href="#synopsis">SYNOPSIS</a></li>
|
||||
+<li><a href="#description">DESCRIPTION</a></li>
|
||||
+<li><a href="#options">OPTIONS</a></li>
|
||||
+<li><a href="#arguments">ARGUMENTS</a></li>
|
||||
+<li><a href="#examples">EXAMPLES</a></li>
|
||||
+<li><a href="#history">HISTORY</a></li>
|
||||
+<li><a href="#author">AUTHOR</a></li>
|
||||
+<li><a href="#seealso">SEE ALSO</a></li>
|
||||
</ul>
|
||||
|
||||
</body>
|
||||
diff -urNp a/userguide/pampaintspill.html b/userguide/pampaintspill.html
|
||||
--- a/userguide/pampaintspill.html 2025-02-04 10:47:27.823451565 +0100
|
||||
+++ b/userguide/pampaintspill.html 2025-02-04 18:01:50.746117598 +0100
|
||||
@@ -7,7 +7,7 @@ Updated: 02 November 2021
|
||||
<a href="#index">Table Of Contents</a>
|
||||
|
||||
<h2>NAME</h2>
|
||||
-pampaintspill - smoothly spill colors into the background
|
||||
+<p>pampaintspill - smoothly spill colors into the background</p>
|
||||
|
||||
<h2 id="synopsis">SYNOPSIS</h2>
|
||||
|
||||
@@ -19,48 +19,48 @@ pampaintspill - smoothly spill colors in
|
||||
[<b>--downsample</b>=<i>number</i>]
|
||||
[<b>--near</b>=<i>number</i>]
|
||||
[<b>--power</b>=<i>number</i>] [<i>filename</i>]
|
||||
-[<b>-randomseed=</b><i>integer</i>]
|
||||
+[<b>-randomseed=</b><i>integer</i>]</p>
|
||||
|
||||
|
||||
<p>Minimum unique abbreviations of option are 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.
|
||||
+from its value.</p>
|
||||
|
||||
<h2 id="description">DESCRIPTION</h2>
|
||||
|
||||
-<p>This program is part of <a href="index.html">Netpbm</a>.
|
||||
+<p>This program is part of <a href="index.html">Netpbm</a>.</p>
|
||||
|
||||
<p><b>pampaintspill</b> produces a smooth color gradient from all of the
|
||||
non-background-colored pixels in an input image, effectively "spilling
|
||||
paint" onto the background. <b>pampaintspill</b> is similar to
|
||||
-<b>pamgradient</b> but differs in the following characteristics:
|
||||
+<b>pamgradient</b> but differs in the following characteristics:</p>
|
||||
|
||||
<ul>
|
||||
<li><b>pampaintspill</b> accepts any number of paint
|
||||
sources (non-background-colored pixels), which can lie anywhere
|
||||
on the canvas. <b>pamgradient</b> accepts exactly
|
||||
- four paint sources, one in each corner of the image.
|
||||
+ four paint sources, one in each corner of the image.</li>
|
||||
|
||||
<li><b>pampaintspill</b> requires an input image while
|
||||
<b>pamgradient</b> generates a new image from
|
||||
- scratch.
|
||||
+ scratch.</li>
|
||||
|
||||
<li><b>pampaintspill</b> can produce tileable output and
|
||||
can control how tightly the gradient colors bind to their source
|
||||
- pixels.
|
||||
+ pixels.</li>
|
||||
</ul>
|
||||
|
||||
<p>Results are generally best when the input image contains just a few, crisp
|
||||
spots of color. Use your drawing program's pencil tool — as opposed to a
|
||||
-paintbrush or airbrush tool — with a small nib.
|
||||
+paintbrush or airbrush tool — with a small nib.</p>
|
||||
|
||||
<h2 id="options">OPTIONS</h2>
|
||||
|
||||
<p>In addition to the options common to all programs based on libnetpbm
|
||||
(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
|
||||
Common Options</a>), <b>pampaintspill</b> recognizes the following
|
||||
-command line options:
|
||||
+command line options:</p>
|
||||
|
||||
<dl>
|
||||
<dt><b>--bgcolor</b>=<i>color</i></dt>
|
||||
@@ -117,45 +117,45 @@ command line options:
|
||||
gradients away from them.</dd>
|
||||
|
||||
<dt><b>-randomseed=</b><i>integer</i>
|
||||
- <dd>This is the seed for the random number generator that generates the
|
||||
- pixels.
|
||||
+ <dd>This is the seed fodr the random number generator that generates the
|
||||
+ pixels.</dd>
|
||||
|
||||
- <p>Use this to ensure you get the same image on separate invocations.
|
||||
+ <p>Use this to ensure you get the same image on separate invocations.</p>
|
||||
|
||||
- <p>This option was new in Netpbm 10.94 (March 2021).</dd>
|
||||
+ <p>This option was new in Netpbm 10.94 (March 2021).</p>
|
||||
</dl>
|
||||
|
||||
|
||||
<h2 id="seealso">SEE ALSO</h2>
|
||||
|
||||
<ul>
|
||||
-<li><a href="pamgradient.html"><b>pamgradient</b></a>
|
||||
-<li><a href="ppmmake.html"><b>ppmmake</b></a>,
|
||||
-<li><a href="ppmrainbow.html"><b>ppmrainbow</b></a>,
|
||||
-<li><a href="pgmramp.html"><b>pgmramp</b></a>,
|
||||
-<li><a href="ppmpat.html"><b>ppmpat</b></a>,
|
||||
-<li><a href="pam.html"><b>pam</b></a>
|
||||
+<li><a href="pamgradient.html"><b>pamgradient</b></a></li>
|
||||
+<li><a href="ppmmake.html"><b>ppmmake</b></a>,</li>
|
||||
+<li><a href="ppmrainbow.html"><b>ppmrainbow</b></a>,</li>
|
||||
+<li><a href="pgmramp.html"><b>pgmramp</b></a>,</li>
|
||||
+<li><a href="ppmpat.html"><b>ppmpat</b></a>,</li>
|
||||
+<li><a href="pam.html"><b>pam</b></a></li>
|
||||
</ul>
|
||||
|
||||
<h2 id="history">HISTORY</h2>
|
||||
|
||||
-<p><b>pampaintspill</b> was new in Netpbm 10.50 (March 2010).
|
||||
+<p><b>pampaintspill</b> was new in Netpbm 10.50 (March 2010).</p>
|
||||
|
||||
|
||||
<h2 id="copyright">COPYRIGHT</h2>
|
||||
|
||||
<p>Copyright © 2010–2021 Scott Pakin,
|
||||
-<a href="mailto:scott+pbm@pakin.org"><i>scott+pbm@pakin.org</i></a>.
|
||||
+<a href="mailto:scott+pbm@pakin.org"><i>scott+pbm@pakin.org</i></a>.</p>
|
||||
|
||||
<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="#seealso">SEE ALSO</a>
|
||||
-<li><a href="#history">HISTORY</a>
|
||||
-<li><a href="#copyright">COPYRIGHT</a>
|
||||
+<li><a href="#synopsis">SYNOPSIS</a></li>
|
||||
+<li><a href="#description">DESCRIPTION</a></li>
|
||||
+<li><a href="#options">OPTIONS</a></li>
|
||||
+<li><a href="#seealso">SEE ALSO</a></li>
|
||||
+<li><a href="#history">HISTORY</a></li>
|
||||
+<li><a href="#copyright">COPYRIGHT</a></li>
|
||||
</ul>
|
||||
|
||||
</body>
|
||||
diff -urNp a/userguide/pamrecolor.html b/userguide/pamrecolor.html
|
||||
--- a/userguide/pamrecolor.html 2025-02-04 10:47:27.823451565 +0100
|
||||
+++ b/userguide/pamrecolor.html 2025-02-04 18:10:00.968545076 +0100
|
||||
@@ -2,9 +2,9 @@
|
||||
<html><head><title>Pamrecolor User Manual</title></head>
|
||||
<body>
|
||||
@@ -11,6 +10,7 @@
|
||||
<h1>pamrecolor</h1>
|
||||
-Updated: 31 July 2010
|
||||
+<p>Updated: 31 July 2010
|
||||
<br>
|
||||
-<a href="#index">Table Of Contents</a>
|
||||
+<a href="#index">Table Of Contents</a></p>
|
||||
|
||||
<p><a href="#index">Table Of Contents</a></p>
|
||||
<h2>NAME</h2>
|
||||
pamrecolor - alter colors without affecting luminance
|
||||
@@ -22,15 +22,15 @@ pamrecolor - alter colors without affect
|
||||
[<b>-randomseed=</b><i>integer</i>]
|
||||
|
||||
+<H2>NAME</H2>
|
||||
<p>pampaintspill - smoothly spill colors into the background</p>
|
||||
[<i>infile</i>]
|
||||
-
|
||||
+</p>
|
||||
|
||||
<h2><a name="synopsis">SYNOPSIS</a></h2>
|
||||
diff -up netpbm-10.59.03/userguide/pamrecolor.html.manfix netpbm-10.59.03/userguide/pamrecolor.html
|
||||
--- netpbm-10.59.03/userguide/pamrecolor.html.manfix 2012-09-22 03:46:15.000000000 +0200
|
||||
+++ netpbm-10.59.03/userguide/pamrecolor.html 2012-09-25 10:47:22.757174803 +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>
|
||||
<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.
|
||||
+space in place of the equals sign to separate an option name from its value.</p>
|
||||
|
||||
<body>
|
||||
@@ -11,7 +10,7 @@
|
||||
<h2 id="description">DESCRIPTION</h2>
|
||||
|
||||
<p>Updated: 31 July 2010</p>
|
||||
-<p>This program is part of <a href="index.html">Netpbm</a>.
|
||||
+<p>This program is part of <a href="index.html">Netpbm</a>.</p>
|
||||
|
||||
-<p><a href="#contents">Table Of Contents</a></p>
|
||||
+<p><a href="#index">Table Of Contents</a></p>
|
||||
<p><b>pamrecolor</b> changes an image's colors to be as close as
|
||||
possible to given target colors but with the constraint that the
|
||||
@@ -39,17 +39,17 @@ image will look identical if both are co
|
||||
(e.g. with
|
||||
<a href="ppmtopgm.html">ppmtopgm</a>). You can have <b>pamrecolor</b> select
|
||||
target colors randomly, specify a single hue for the entire image, or take the
|
||||
-target colors from a target image.
|
||||
+target colors from a target image.</p>
|
||||
|
||||
<p>In addition to real Netpbm images, <b>pamrecolor</b> works on pseudo-Netpbm
|
||||
images based on arbitrary color spaces. You can define the color space
|
||||
-explicitly or choose one of many that <b>pamrecolor</b> knows by name.
|
||||
+explicitly or choose one of many that <b>pamrecolor</b> knows by name.</p>
|
||||
|
||||
<p>The output is a PAM image on standard output. Options control the
|
||||
exact format of the PAM. If you want a PNM (PBM, PGM, or PPM) image,
|
||||
use <a href="pamtopnm.html">pamtopnm</a> on the output. There is no
|
||||
need to convert if you will use the image as input to a current Netpbm
|
||||
-program, but many other programs don't know what a PAM is.
|
||||
+program, but many other programs don't know what a PAM is.</p>
|
||||
|
||||
|
||||
<h2 id="name">NAME</h2>
|
||||
diff -up netpbm-10.59.03/userguide/pamsistoaglyph.html.manfix netpbm-10.59.03/userguide/pamsistoaglyph.html
|
||||
--- netpbm-10.59.03/userguide/pamsistoaglyph.html.manfix 2012-09-22 03:46:15.000000000 +0200
|
||||
+++ netpbm-10.59.03/userguide/pamsistoaglyph.html 2012-09-25 10:47:22.758174790 +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>
|
||||
<h2 id="options">OPTIONS</h2>
|
||||
@@ -57,7 +57,7 @@ program, but many other programs don't k
|
||||
<p>In addition to the options common to all programs based on libnetpbm
|
||||
(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
|
||||
Common Options</a>), <b>pamrecolor</b> recognizes the following
|
||||
-command line options:
|
||||
+command line options:</p>
|
||||
|
||||
<body>
|
||||
diff -up netpbm-10.59.03/userguide/pamtoavs.html.manfix netpbm-10.59.03/userguide/pamtoavs.html
|
||||
--- netpbm-10.59.03/userguide/pamtoavs.html.manfix 2012-09-22 03:46:15.000000000 +0200
|
||||
+++ netpbm-10.59.03/userguide/pamtoavs.html 2012-09-25 10:47:22.759174777 +0200
|
||||
@@ -1,8 +1,7 @@
|
||||
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
||||
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Pamtoavs User Manual</title>
|
||||
-<meta http-equiv="content-type" content="text/html; charset=us-ascii" />
|
||||
</head>
|
||||
<dl>
|
||||
|
||||
<body>
|
||||
diff -up netpbm-10.59.03/userguide/pamtooctaveimg.html.manfix netpbm-10.59.03/userguide/pamtooctaveimg.html
|
||||
--- netpbm-10.59.03/userguide/pamtooctaveimg.html.manfix 2012-09-22 03:46:15.000000000 +0200
|
||||
+++ netpbm-10.59.03/userguide/pamtooctaveimg.html 2012-09-25 10:47:22.759174777 +0200
|
||||
@@ -1,8 +1,7 @@
|
||||
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
||||
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Pamtooctaveimg User Manual</title>
|
||||
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
</head>
|
||||
@@ -67,7 +67,7 @@ to luminance of each of the red, green,
|
||||
example, in the SMPTE-C color space an RGB color is converted to
|
||||
grayscale by multiplying the red channel by 0.2124132, the green
|
||||
channel by 0.7010437, and the blue channel by 0.0865432 and summing
|
||||
-the resulting three products.
|
||||
+the resulting three products.</dd>
|
||||
|
||||
<body>
|
||||
diff -up netpbm-10.59.03/userguide/pnmflip.html.manfix netpbm-10.59.03/userguide/pnmflip.html
|
||||
--- netpbm-10.59.03/userguide/pnmflip.html.manfix 2012-09-22 03:46:15.000000000 +0200
|
||||
+++ netpbm-10.59.03/userguide/pnmflip.html 2012-09-25 10:47:22.760174765 +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>.
|
||||
<p>When you use this option, the input and output images are not true Netpbm
|
||||
images, because the Netpbm image format specifies a particular color space.
|
||||
@@ -76,9 +76,9 @@ the raster have different meaning. Many
|
||||
images actually use a variation with a different color space. For example,
|
||||
<a href="http://www.gimp.org/">GIMP</a> uses sRGB internally and if you
|
||||
have GIMP generate a Netpbm image file, it really generates a variation of
|
||||
-the format that uses sRGB.
|
||||
+the format that uses sRGB.</p>
|
||||
|
||||
+<H2>DESCRIPTION</H2>
|
||||
<P><B>pamflip</b> is mostly backward compatible with <b>pnmflip</b>,
|
||||
but works on PAM images too.
|
||||
-<p><b>pamrecolor</b> knows the following color spaces (<i>name</i> values):
|
||||
+<p><b>pamrecolor</b> knows the following color spaces (<i>name</i> values):</p>
|
||||
|
||||
diff -up netpbm-10.59.03/userguide/pnmmercator.html.manfix netpbm-10.59.03/userguide/pnmmercator.html
|
||||
--- netpbm-10.59.03/userguide/pnmmercator.html.manfix 2012-09-22 03:46:15.000000000 +0200
|
||||
+++ netpbm-10.59.03/userguide/pnmmercator.html 2012-09-25 10:47:22.760174765 +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 -up netpbm-10.59.03/userguide/pnmtotiff.html.manfix netpbm-10.59.03/userguide/pnmtotiff.html
|
||||
--- netpbm-10.59.03/userguide/pnmtotiff.html.manfix 2012-09-22 03:46:15.000000000 +0200
|
||||
+++ netpbm-10.59.03/userguide/pnmtotiff.html 2012-09-25 10:47:22.760174765 +0200
|
||||
@@ -1,5 +1,4 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
-<!>
|
||||
<html><head>
|
||||
<title>pnmtotiff</title>
|
||||
</head><body>
|
||||
diff -up netpbm-10.59.03/userguide/ppmtogif.html.manfix netpbm-10.59.03/userguide/ppmtogif.html
|
||||
--- netpbm-10.59.03/userguide/ppmtogif.html.manfix 2012-09-22 03:46:15.000000000 +0200
|
||||
+++ netpbm-10.59.03/userguide/ppmtogif.html 2012-09-25 10:47:22.761174753 +0200
|
||||
@@ -4,11 +4,14 @@
|
||||
<BODY>
|
||||
<H1>ppmtogif</H1>
|
||||
<BR>
|
||||
+<H2>NAME</H2>
|
||||
<dl>
|
||||
<dt>adobe</dt>
|
||||
@@ -109,12 +109,12 @@ the format that uses sRGB.
|
||||
<p>The default is "ntsc" because this is the color space that the Netpbm
|
||||
formats and many graphics utilities use. As a counterexample,
|
||||
<a href="http://www.gimp.org/">GIMP</a> uses sRGB as its native color
|
||||
-space.
|
||||
+space.</p>
|
||||
|
||||
<p>The luminance values <b>pamrecolor</b> uses for each of the above come from
|
||||
Bruce Lindbloom's
|
||||
<a href="http://www.brucelindbloom.com/index.html?Eqn_RGB_XYZ_Matrix.html">
|
||||
-Computing RGB-to-XYZ and XYZ-to-RGB matrices</a> page.</dd>
|
||||
+Computing RGB-to-XYZ and XYZ-to-RGB matrices</a> page.</p>
|
||||
|
||||
<dt><b>--rmult</b>=<i>fraction</i></dt>
|
||||
<dt><b>--gmult</b>=<i>fraction</i></dt>
|
||||
@@ -133,15 +133,13 @@ image. <b>pamrecolor</b> will make each
|
||||
to <i>color</i> subject to the constraint that the luminance must stay the
|
||||
same as in the original image. Specify <i>color</i> as in
|
||||
the <a href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
|
||||
-library routine</a> (e.g., "hotpink" or "#ff69b4").
|
||||
+library routine</a> (e.g., "hotpink" or "#ff69b4").</dd>
|
||||
|
||||
<p>If you specify neither <b>--targetcolor</b> nor
|
||||
<b>--colorfile</b>, <b>pamrecolor</b> will randomly select a target color for
|
||||
-each pixel of the input image.
|
||||
-
|
||||
-<p>You may not specify both <b>-targetcolor</b> and <b>-colorfile</b>.
|
||||
+each pixel of the input image.</p>
|
||||
|
||||
-</dd>
|
||||
+<p>You may not specify both <b>-targetcolor</b> and <b>-colorfile</b>.</p>
|
||||
|
||||
<dt><b>--colorfile</b>=<i>file</i></dt>
|
||||
<dd>Take per-pixel target colors from Netpbm file <i>file</i> instead
|
||||
@@ -150,40 +148,38 @@ of using a single target color for the e
|
||||
If the image in the file wider or taller than the input image,
|
||||
<b>pamrecolor</b> uses only the left and top part of it.
|
||||
If the image is narrower or shorter, <b>pamrecolor</b> considers the
|
||||
-image to be repeated in a tile pattern.
|
||||
+image to be repeated in a tile pattern.</dd>
|
||||
|
||||
<p>If you specify neither <b>--targetcolor</b> nor
|
||||
<b>--colorfile</b>, <b>pamrecolor</b> will randomly select a target color for
|
||||
-each pixel of the input image.
|
||||
+each pixel of the input image.</p>
|
||||
|
||||
-<p>You may not specify both <b>-targetcolor</b> and <b>-colorfile</b>.
|
||||
+<p>You may not specify both <b>-targetcolor</b> and <b>-colorfile</b>.</p>
|
||||
|
||||
-<dt><b>-randomseed=</b><i>integer</i>
|
||||
+<dt><b>-randomseed=</b><i>integer</i></dt>
|
||||
|
||||
<dd>This is the seed for the random number generator that generates the
|
||||
-pixels.
|
||||
+pixels.</dd>
|
||||
|
||||
-<p>Use this to ensure you get the same image on separate invocations.
|
||||
+<p>Use this to ensure you get the same image on separate invocations.</p>
|
||||
|
||||
<p>By default, <b>pamrecolor</b> uses a seed derived from the time of day
|
||||
and process ID, which gives you fairly uncorrelated results in multiple
|
||||
-invocations.
|
||||
-
|
||||
-<p>This option was new in Netpbm 10.61 (December 2012).
|
||||
+invocations.</p>
|
||||
|
||||
-</dl>
|
||||
+<p>This option was new in Netpbm 10.61 (December 2012).</p>
|
||||
|
||||
|
||||
<h2 id="examples">EXAMPLES</h2>
|
||||
|
||||
-<p>This command tints an image yellow:
|
||||
+<p>This command tints an image yellow:</p>
|
||||
|
||||
<pre>
|
||||
pamrecolor --targetcolor=yellow colorpic.pam > yellowpic.pam
|
||||
</pre>
|
||||
|
||||
<p>This command takes the colors from <b>colorpicture.ppm</b> and applies
|
||||
-them to <b>graypicture.pgm</b>:
|
||||
+them to <b>graypicture.pgm</b>:</p>
|
||||
|
||||
<pre>
|
||||
pamrecolor --colorfile=colorpic.ppm graypic.pgm > colorizedpic.pam
|
||||
@@ -192,52 +188,52 @@ them to <b>graypicture.pgm</b>:
|
||||
<p>The grayscale version of <b>colorizedpic.pam</b> will look just like
|
||||
graypic.pgm. Note that if you use a non-Netpbm tool to do the conversion to
|
||||
grayscale, you may additionally need to specify an
|
||||
-appropriate <b>--colorspace</b> value for your conversion tool.
|
||||
+appropriate <b>--colorspace</b> value for your conversion tool.</p>
|
||||
|
||||
|
||||
<h2 id="notes">NOTES</h2>
|
||||
|
||||
<p>Here are a couple of fun special effects you can produce with
|
||||
-<b>pamrecolor</b>:
|
||||
+<b>pamrecolor</b>:</p>
|
||||
|
||||
<ul>
|
||||
<li>Specify a color file that is identical to the input image but with
|
||||
some large, colored text added to it. The text will "magically"
|
||||
-vanish when the image is converted to grayscale.
|
||||
+vanish when the image is converted to grayscale.</li>
|
||||
|
||||
<li>Provide a low-contrast grayscale image — perhaps a secret
|
||||
message written in similar shades of gray — as the input file and
|
||||
a colorful but completely different image as the color file. If done
|
||||
carefully, the grayscale image can be hidden by the colorful image.
|
||||
Only people who know to convert the result to grayscale can recover
|
||||
-the original grayscale image.
|
||||
+the original grayscale image.</li>
|
||||
|
||||
<li>Use <b>--targetcolor</b>=tan to make an image look like an
|
||||
old-timey photograph (or, more precisely, a
|
||||
<a href="http://en.wikipedia.org/wiki/Photographic_print_toning">sepia-toned
|
||||
-photograph</a> of the late 1800s).
|
||||
+photograph</a> of the late 1800s).</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h2 id="history">HISTORY</h2>
|
||||
|
||||
-<p>Scott Pakin wrote <b>pamrecolor</b> in July 2010.
|
||||
+<p>Scott Pakin wrote <b>pamrecolor</b> in July 2010.</p>
|
||||
|
||||
-<p><b>pamrecolor</b> was new in Netpbm 10.52 (September 2010).
|
||||
+<p><b>pamrecolor</b> was new in Netpbm 10.52 (September 2010).</p>
|
||||
|
||||
|
||||
<h2 id="author">AUTHOR</h2>
|
||||
|
||||
<p>Copyright (C) 2010 Scott
|
||||
-Pakin, <a href="mailto:scott+pbm@pakin.org">scott+pbm@pakin.org</a>
|
||||
+Pakin, <a href="mailto:scott+pbm@pakin.org">scott+pbm@pakin.org</a></p>
|
||||
|
||||
|
||||
<h2 id="seealso">SEE ALSO</h2>
|
||||
|
||||
<ul>
|
||||
-<li><a href="ppmtopgm.html"><b>ppmtopgm</b></a>
|
||||
-<li><a href="ppmchange.html"><b>ppmchange</b></a>
|
||||
-<li><a href="pnmremap.html"><b>pnmremap</b></a>
|
||||
+<li><a href="ppmtopgm.html"><b>ppmtopgm</b></a></li>
|
||||
+<li><a href="ppmchange.html"><b>ppmchange</b></a></li>
|
||||
+<li><a href="pnmremap.html"><b>pnmremap</b></a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
@@ -246,14 +242,14 @@ Pakin, <a href="mailto:scott+pbm@pakin.o
|
||||
<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="#examples">EXAMPLES</a>
|
||||
-<li><a href="#notes">NOTES</a>
|
||||
-<li><a href="#history">HISTORY</a>
|
||||
-<li><a href="#author">AUTHOR</a>
|
||||
-<li><a href="#seealso">SEE ALSO</a>
|
||||
+<li><a href="#synopsis">SYNOPSIS</a></li>
|
||||
+<li><a href="#description">DESCRIPTION</a></li>
|
||||
+<li><a href="#options">OPTIONS</a></li>
|
||||
+<li><a href="#examples">EXAMPLES</a></li>
|
||||
+<li><a href="#notes">NOTES</a></li>
|
||||
+<li><a href="#history">HISTORY</a></li>
|
||||
+<li><a href="#author">AUTHOR</a></li>
|
||||
+<li><a href="#seealso">SEE ALSO</a></li>
|
||||
</ul>
|
||||
|
||||
</body>
|
||||
diff -urNp a/userguide/pbmtog3.html b/userguide/pbmtog3.html
|
||||
--- a/userguide/pbmtog3.html 2025-02-04 10:47:27.827451549 +0100
|
||||
+++ b/userguide/pbmtog3.html 2025-02-04 18:10:55.328259786 +0100
|
||||
@@ -80,7 +80,7 @@ You cannot specify both.
|
||||
<h2 id="history">HISTORY</h2>
|
||||
|
||||
<p>Before Netpbm 10.79 (June 2017), there was a different program by the same
|
||||
-name in Netpbm, which was written by by Paul Haeberli
|
||||
+name in Netpbm, which was written by Paul Haeberli
|
||||
<<a href="mailto:paul@manray.sgi.com">paul@manray.sgi.com</a>> in 1989
|
||||
and then modified extensively by others.
|
||||
|
||||
diff -urNp a/userguide/ppmtogif.html b/userguide/ppmtogif.html
|
||||
--- a/userguide/ppmtogif.html 2025-02-04 10:47:27.828451545 +0100
|
||||
+++ b/userguide/ppmtogif.html 2025-02-04 18:12:39.950710820 +0100
|
||||
@@ -5,17 +5,17 @@
|
||||
|
||||
<h2>NAME</h2>
|
||||
|
||||
-ppmtogif - replaced by pamtogif
|
||||
-
|
||||
-<h2>DESCRIPTION</h2>
|
||||
+<p>ppmtogif - replaced by pamtogif</p>
|
||||
|
||||
<p>This program is part of <a href="index.html">Netpbm</a>.
|
||||
|
||||
+<h2>SYNOPSIS</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>.
|
||||
<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>
|
||||
+<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
|
||||
diff -up netpbm-10.61.02/userguide/pamstereogram.html.manfix netpbm-10.61.02/userguide/pamstereogram.html
|
||||
--- netpbm-10.61.02/userguide/pamstereogram.html.manfix 2013-02-20 07:32:26.000000000 +0100
|
||||
+++ netpbm-10.61.02/userguide/pamstereogram.html 2013-02-20 07:40:35.071099535 +0100
|
||||
@@ -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,8 +10,7 @@
|
||||
|
||||
<p>Updated:30 December 2012</p>
|
||||
|
||||
-<p><a href="#contents">Table Of Contents</a></p>
|
||||
-
|
||||
+<p><a href="#index">Table Of Contents</a></p>
|
||||
|
||||
<h2 id="name">NAME</h2>
|
||||
|
||||
|
|
|
|||
|
|
@ -1,12 +0,0 @@
|
|||
diff -up netpbm-10.59.01/converter/other/giftopnm.c.message netpbm-10.59.01/converter/other/giftopnm.c
|
||||
--- netpbm-10.59.01/converter/other/giftopnm.c.message 2012-07-11 05:54:52.000000000 +0200
|
||||
+++ netpbm-10.59.01/converter/other/giftopnm.c 2012-07-11 05:57:57.745246980 +0200
|
||||
@@ -2038,7 +2038,7 @@ convertImages(FILE * const ifP,
|
||||
imageSeq, imageSeq > 1 ? "s" : "");
|
||||
} else {
|
||||
if (verbose)
|
||||
- pm_message("Reading Image Sequence %u", imageSeq);
|
||||
+ pm_message("Reading Image Sequence %u", imageSeq+1);
|
||||
|
||||
convertImage(ifP, !allImages && (imageSeq != requestedImageSeq),
|
||||
imageOutFileP, alphaFileP, gifScreen, gif89,
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
diff --git a/GNUmakefile b/GNUmakefile
|
||||
index b0b7f00..a46329d 100644
|
||||
--- a/GNUmakefile
|
||||
+++ b/GNUmakefile
|
||||
@@ -369,7 +369,7 @@ install.lib:
|
||||
endif
|
||||
|
||||
.PHONY: install.manwebmain
|
||||
-install.manwebmain: $(PKGDIR)/man/web/netpbm.url $(PKGDIR)/bin/doc.url
|
||||
+install.manwebmain: $(PKGDIR)/man/web/netpbm.url
|
||||
|
||||
$(PKGDIR)/man/web/netpbm.url: $(PKGDIR)/man/web
|
||||
echo "$(NETPBM_DOCURL)" > $@
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
diff -up netpbm-10.47.12/buildtools/manpage.mk.noppmtompeg netpbm-10.47.12/buildtools/manpage.mk
|
||||
--- netpbm-10.47.12/buildtools/manpage.mk.noppmtompeg 2010-04-27 09:54:52.121522491 -0400
|
||||
+++ netpbm-10.47.12/buildtools/manpage.mk 2010-04-27 09:55:10.337642487 -0400
|
||||
@@ -251,7 +251,6 @@ MAN1 = \
|
||||
ppmtolj.1 \
|
||||
ppmtomap.1 \
|
||||
ppmtomitsu.1 \
|
||||
- ppmtompeg.1 \
|
||||
ppmtoneo.1 \
|
||||
ppmtopcx.1 \
|
||||
ppmtopgm.1 \
|
||||
diff -up netpbm-10.47.12/converter/ppm/Makefile.noppmtompeg netpbm-10.47.12/converter/ppm/Makefile
|
||||
--- netpbm-10.47.12/converter/ppm/Makefile.noppmtompeg 2010-04-27 09:55:20.293517254 -0400
|
||||
+++ netpbm-10.47.12/converter/ppm/Makefile 2010-04-27 09:55:41.534642567 -0400
|
||||
@@ -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 \
|
||||
|
|
@ -1,11 +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)
|
||||
@@ -532,7 +532,5 @@ main(int argc, char **argv)
|
||||
|
||||
pm_close(ifP);
|
||||
|
||||
- pm_close(stdout);
|
||||
-
|
||||
-
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,16 +0,0 @@
|
|||
diff -up netpbm-10.58.01/converter/other/pnmtopclxl.c.pnmtopclxl netpbm-10.58.01/converter/other/pnmtopclxl.c
|
||||
--- netpbm-10.58.01/converter/other/pnmtopclxl.c.pnmtopclxl 2012-04-09 15:31:42.000000000 +0200
|
||||
+++ netpbm-10.58.01/converter/other/pnmtopclxl.c 2012-06-13 15:39:17.566141565 +0200
|
||||
@@ -269,10 +269,10 @@ XY_RLEnew(size_t const size) {
|
||||
|
||||
MALLOCVAR(rleP);
|
||||
if (rleP) {
|
||||
- rleP->fbuf = malloc(size);
|
||||
+ rleP->fbufsize = MAX(1024, size);
|
||||
+ rleP->fbuf = malloc(rleP->fbufsize);
|
||||
|
||||
if (rleP->fbuf) {
|
||||
- rleP->fbufsize = MAX(1024, size);
|
||||
retval = rleP;
|
||||
} else
|
||||
retval = NULL;
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
diff --git a/converter/other/Makefile b/converter/other/Makefile
|
||||
index 7aefda1..0d998f6 100644
|
||||
--- a/converter/other/Makefile
|
||||
+++ b/converter/other/Makefile
|
||||
@@ -121,7 +121,7 @@ PORTBINARIES = avstopam bmptopnm fitstopnm \
|
||||
pamtowinicon pamtoxvmini \
|
||||
pbmtopgm pdbimgtopam pfmtopam \
|
||||
pgmtopbm pgmtoppm ppmtopgm pnmtoddif \
|
||||
- pnmtopclxl pnmtorast \
|
||||
+ pnmtopclxl pnmtops pnmtorast \
|
||||
pnmtosgi pnmtosir pamtotga pnmtoxwd \
|
||||
rasttopnm rlatopam sgitopnm sirtopnm srftopam sunicontopnm \
|
||||
winicontopam xwdtopnm zeisstopnm
|
||||
|
|
@ -1,67 +1,62 @@
|
|||
diff -up netpbm-10.47.09/editor/ppmfade.ppmfadeusage netpbm-10.47.09/editor/ppmfade
|
||||
--- netpbm-10.47.09/editor/ppmfade.ppmfadeusage 2010-02-17 11:22:02.000000000 +0100
|
||||
+++ netpbm-10.47.09/editor/ppmfade 2010-02-17 11:27:29.000000000 +0100
|
||||
@@ -34,7 +34,6 @@ my $base_name = "fade"; # default base
|
||||
my $image = "ppm"; # default output storage format
|
||||
my $mode = $SPREAD; # default fading mode
|
||||
|
||||
-
|
||||
my $n; # argument number
|
||||
|
||||
for ($n = 0; $n < @ARGV; $n++) {
|
||||
@@ -44,7 +43,7 @@ for ($n = 0; $n < @ARGV; $n++) {
|
||||
if (-e $first_file) {
|
||||
diff -urNp a/editor/ppmfade b/editor/ppmfade
|
||||
--- a/editor/ppmfade 2025-02-04 10:47:27.812451607 +0100
|
||||
+++ b/editor/ppmfade 2025-02-04 10:52:14.233336029 +0100
|
||||
@@ -99,6 +99,9 @@ sub commandLineArgs() {
|
||||
$mode = 'BLOCK';
|
||||
} elsif ($arg eq "-mix") {
|
||||
$mode = 'MIX';
|
||||
+ } elsif ($arg eq "-help" || $arg eq "--help" || $arg eq "-h") {
|
||||
+ print STDERR ("ppmfade: Use 'man ppmfade' for help.\n");
|
||||
+ exit 1;
|
||||
} else {
|
||||
print "I can't find first file '$first_file'\n";
|
||||
- exit 20;
|
||||
if (substr($arg, 0, 1) eq '-') {
|
||||
print STDERR ("Unknown option '$arg'. " .
|
||||
@@ -109,13 +112,13 @@ sub commandLineArgs() {
|
||||
print STDERR ("There are no non-option arguments possible. " .
|
||||
"You specified '$arg'\n");
|
||||
}
|
||||
- exit 100;
|
||||
+ exit 1;
|
||||
}
|
||||
} elsif ($ARGV[$n] eq "-l") {
|
||||
$n++;
|
||||
@@ -52,7 +51,7 @@ for ($n = 0; $n < @ARGV; $n++) {
|
||||
if (-e $last_file) {
|
||||
}
|
||||
|
||||
if (!defined($firstFileNm) && !defined($lastFileNm)) {
|
||||
print STDERR ("You must specify -f or -l (or both)\n");
|
||||
- exit 90;
|
||||
+ exit 1
|
||||
}
|
||||
|
||||
if (!defined($mode)) {
|
||||
@@ -142,7 +145,7 @@ sub imageDimensions($$) {
|
||||
} else {
|
||||
print "I can't find last file '$last_file'\n";
|
||||
- exit 20;
|
||||
+ exit 1;
|
||||
print STDERR
|
||||
("Unrecognized results from pnmfile on $firstFileNm.\n");
|
||||
- exit(50);
|
||||
+ exit(1);
|
||||
}
|
||||
} elsif ($ARGV[$n] eq "-base") {
|
||||
$n++;
|
||||
@@ -73,11 +72,12 @@ for ($n = 0; $n < @ARGV; $n++) {
|
||||
$mode = $BLOCK;
|
||||
} elsif ("$ARGV[$n]" eq "-mix") {
|
||||
$mode = $MIX;
|
||||
- } elsif ($ARGV[$n] eq "-help" || $ARGV[$n] eq "-h") {
|
||||
- usage();
|
||||
+ } 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;
|
||||
}
|
||||
}
|
||||
#
|
||||
@@ -96,18 +96,18 @@ if ($first_file ne "undefined") {
|
||||
$width = $1; $height = $2;
|
||||
} else {
|
||||
print("Unrecognized results from pnmfile on $first_file.\n");
|
||||
- exit(50);
|
||||
+ exit 1;
|
||||
# $lastFileNm is defined
|
||||
@@ -151,7 +154,7 @@ sub imageDimensions($$) {
|
||||
} else {
|
||||
print STDERR
|
||||
("Unrecognized results from pnmfile on $firstFileNm.\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);
|
||||
return $width, $height;
|
||||
@@ -436,12 +439,12 @@ my ($mode, $firstFileNm, $lastFileNm, $b
|
||||
|
||||
if (defined($firstFileNm) && !-e($firstFileNm)) {
|
||||
print STDERR ("First file '$firstFileNm' does not exist\n");
|
||||
- exit 20;
|
||||
+ exit 1;
|
||||
}
|
||||
|
||||
print("Frames are " . $width . "W x " . $height . "H\n");
|
||||
if (defined($lastFileNm) && !-e($lastFileNm)) {
|
||||
print STDERR ("Last file '$lastFileNm' does not exist\n");
|
||||
- exit 20;
|
||||
+ exit 1;
|
||||
}
|
||||
|
||||
my ($width, $height) = imageDimensions($firstFileNm, $lastFileNm);
|
||||
|
|
|
|||
|
|
@ -1,12 +0,0 @@
|
|||
diff -up netpbm-10.58.01/converter/ppm/ppmtopict.c.ppmtopict netpbm-10.58.01/converter/ppm/ppmtopict.c
|
||||
--- netpbm-10.58.01/converter/ppm/ppmtopict.c.ppmtopict 2012-06-13 09:52:42.000000000 +0200
|
||||
+++ netpbm-10.58.01/converter/ppm/ppmtopict.c 2012-06-13 11:33:11.134747363 +0200
|
||||
@@ -200,7 +200,7 @@ putRow(FILE * const ifP,
|
||||
pixel * const rowpixels,
|
||||
char * const packed) {
|
||||
|
||||
- unsigned int i;
|
||||
+ int i;
|
||||
unsigned int count;
|
||||
unsigned int run;
|
||||
unsigned int rep;
|
||||
28
netpbm-python3.patch
Normal file
28
netpbm-python3.patch
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
diff --git a/buildtools/makeman b/buildtools/makeman
|
||||
index 196dbd0..d73ab76 100755
|
||||
--- a/buildtools/makeman
|
||||
+++ b/buildtools/makeman
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/python
|
||||
+#!/usr/bin/python3
|
||||
#
|
||||
# makeman -- compile netpbm's stereotyped HTML to troff markup
|
||||
#
|
||||
diff --git a/buildtools/manpage.mk b/buildtools/manpage.mk
|
||||
index ef1a103..c1badb8 100644
|
||||
--- a/buildtools/manpage.mk
|
||||
+++ b/buildtools/manpage.mk
|
||||
@@ -126,11 +126,11 @@ reportman:
|
||||
# to standard error.
|
||||
%.1 %.3 %.5: $(USERGUIDE)/%.html
|
||||
@echo Converting $< to $@
|
||||
- @python $(MAKEMAN) -d $(USERGUIDE) $(<F)
|
||||
+ @python3 $(MAKEMAN) -d $(USERGUIDE) $(<F)
|
||||
|
||||
netpbm.1: $(USERGUIDE)/index.html
|
||||
@echo Converting $< to $@
|
||||
- @python $(MAKEMAN) -d $(USERGUIDE) index.html
|
||||
+ @python3 $(MAKEMAN) -d $(USERGUIDE) index.html
|
||||
@mv index.1 netpbm.1
|
||||
|
||||
# Generate man pages
|
||||
File diff suppressed because it is too large
Load diff
|
|
@ -1,368 +0,0 @@
|
|||
diff --git a/converter/other/anytopnm b/converter/other/anytopnm
|
||||
index acf8813..335312a 100755
|
||||
--- a/converter/other/anytopnm
|
||||
+++ b/converter/other/anytopnm
|
||||
@@ -511,10 +511,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
|
||||
@@ -537,12 +534,17 @@ typeDescription=`file "$file" | cut -d: -f2- | cut -c2-`
|
||||
determineType "$file" "$mimeType" "$typeDescription" "$fileExtension"
|
||||
|
||||
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 --git a/editor/pamstretch-gen b/editor/pamstretch-gen
|
||||
index ba0e818..250fca0 100755
|
||||
--- a/editor/pamstretch-gen
|
||||
+++ b/editor/pamstretch-gen
|
||||
@@ -31,9 +31,7 @@ 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
|
||||
diff --git a/editor/pnmmargin b/editor/pnmmargin
|
||||
index 0f57d1d..e0d3625 100755
|
||||
--- a/editor/pnmmargin
|
||||
+++ b/editor/pnmmargin
|
||||
@@ -11,11 +11,7 @@
|
||||
# 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
|
||||
-
|
||||
+tempdir=$(mktemp -d -t ppmmargin.XXXXXXX) || exit 1
|
||||
tmp1=$tempdir/pnmm1
|
||||
tmp2=$tempdir/pnmm2
|
||||
tmp3=$tempdir/pnmm3
|
||||
@@ -90,6 +86,7 @@ else
|
||||
-white | -black )
|
||||
pnmpad $plainopt $color \
|
||||
-left=$size -right=$size -top=$size -bottom=$size $tmp1
|
||||
+ rm -rf "$tempdir"
|
||||
exit
|
||||
;;
|
||||
* )
|
||||
@@ -103,4 +100,4 @@ else
|
||||
pnmcat -tb $plainopt $tmp3 $tmp4 $tmp3
|
||||
fi
|
||||
|
||||
-
|
||||
+rm -rf "$tempdir"
|
||||
diff --git a/editor/ppmfade b/editor/ppmfade
|
||||
index 027fc79..8eb094f 100755
|
||||
--- a/editor/ppmfade
|
||||
+++ b/editor/ppmfade
|
||||
@@ -40,6 +40,7 @@ exec perl -w -x -S -- "$0" "$@"
|
||||
#
|
||||
##############################################################################
|
||||
use strict;
|
||||
+use File::Temp "tempdir";
|
||||
|
||||
my $SPREAD = 1;
|
||||
my $SHIFT = 2;
|
||||
@@ -137,20 +138,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");
|
||||
}
|
||||
|
||||
#
|
||||
@@ -158,14 +165,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++) {
|
||||
@@ -173,147 +180,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 --git a/editor/ppmshadow b/editor/ppmshadow
|
||||
index 62cdf8b..72e1b22 100755
|
||||
--- a/editor/ppmshadow
|
||||
+++ b/editor/ppmshadow
|
||||
@@ -97,9 +97,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
|
||||
|
||||
13
netpbm-shlib-ldflags.patch
Normal file
13
netpbm-shlib-ldflags.patch
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
diff --git a/config.mk.in b/config.mk.in
|
||||
index 50687ba..d35c982 100644
|
||||
--- a/config.mk.in
|
||||
+++ b/config.mk.in
|
||||
@@ -250,7 +250,7 @@ EXE =
|
||||
|
||||
# Here, $(SONAME) resolves to the soname for the shared library being created.
|
||||
# The following are gcc options. This works on GNU libc systems.
|
||||
-LDSHLIB = -shared -Wl,-soname,$(SONAME)
|
||||
+LDSHLIB = $(LDFLAGS) -shared -Wl,-soname,$(SONAME)
|
||||
# You need -nostart instead of -shared on BeOS. Though the BeOS compiler is
|
||||
# ostensibly gcc, it has the -nostart option, which is not mentioned in gcc
|
||||
# documentation and doesn't exist in at least one non-BeOS installation.
|
||||
|
|
@ -1,102 +0,0 @@
|
|||
diff --git a/converter/pbm/cmuwmtopbm.c b/converter/pbm/cmuwmtopbm.c
|
||||
index 5c138c1..1f9bc6c 100644
|
||||
--- a/converter/pbm/cmuwmtopbm.c
|
||||
+++ b/converter/pbm/cmuwmtopbm.c
|
||||
@@ -48,20 +48,20 @@ readCmuwmHeader(FILE * const ifP,
|
||||
|
||||
rc = pm_readbiglong(ifP, &l);
|
||||
if (rc == -1 )
|
||||
- pm_error(initReadError);
|
||||
+ pm_error("%s", initReadError);
|
||||
if ((uint32_t)l != cmuwmMagic)
|
||||
pm_error("bad magic number in CMU window manager file");
|
||||
rc = pm_readbiglong(ifP, &l);
|
||||
if (rc == -1)
|
||||
- pm_error(initReadError);
|
||||
+ pm_error("%s", initReadError);
|
||||
*colsP = l;
|
||||
rc = pm_readbiglong(ifP, &l);
|
||||
if (rc == -1 )
|
||||
- pm_error(initReadError);
|
||||
+ pm_error("%s", initReadError);
|
||||
*rowsP = l;
|
||||
rc = pm_readbigshort(ifP, &s);
|
||||
if (rc == -1)
|
||||
- pm_error(initReadError);
|
||||
+ pm_error("%s", initReadError);
|
||||
*depthP = s;
|
||||
}
|
||||
|
||||
diff --git a/converter/other/tifftopnm.c b/converter/other/tifftopnm.c
|
||||
index 3aa2e43..b8ebf39 100644
|
||||
--- a/converter/other/tifftopnm.c
|
||||
+++ b/converter/other/tifftopnm.c
|
||||
@@ -1459,7 +1459,7 @@ convertRasterInMemory(pnmOut * const pnmOutP,
|
||||
int ok;
|
||||
ok = TIFFRGBAImageOK(tif, emsg);
|
||||
if (!ok) {
|
||||
- pm_message(emsg);
|
||||
+ pm_message("%s", emsg);
|
||||
*statusP = CONV_UNABLE;
|
||||
} else {
|
||||
uint32 * raster;
|
||||
@@ -1479,14 +1479,14 @@ convertRasterInMemory(pnmOut * const pnmOutP,
|
||||
|
||||
ok = TIFFRGBAImageBegin(&img, tif, stopOnErrorFalse, emsg);
|
||||
if (!ok) {
|
||||
- pm_message(emsg);
|
||||
+ pm_message("%s", emsg);
|
||||
*statusP = CONV_FAILED;
|
||||
} else {
|
||||
int ok;
|
||||
ok = TIFFRGBAImageGet(&img, raster, cols, rows);
|
||||
TIFFRGBAImageEnd(&img) ;
|
||||
if (!ok) {
|
||||
- pm_message(emsg);
|
||||
+ pm_message("%s", emsg);
|
||||
*statusP = CONV_FAILED;
|
||||
} else {
|
||||
*statusP = CONV_DONE;
|
||||
diff --git a/lib/util/pm_c_util.h b/lib/util/pm_c_util.h
|
||||
index 01a0765..8f5aa01 100644
|
||||
--- a/lib/util/pm_c_util.h
|
||||
+++ b/lib/util/pm_c_util.h
|
||||
@@ -80,10 +80,10 @@
|
||||
#endif
|
||||
|
||||
#ifndef TRUE
|
||||
- #define TRUE true
|
||||
+ #define TRUE 1
|
||||
#endif
|
||||
#ifndef FALSE
|
||||
- #define FALSE false
|
||||
+ #define FALSE 0
|
||||
#endif
|
||||
|
||||
#define ARRAY_SIZE(x) (sizeof(x)/sizeof(x[0]))
|
||||
diff --git a/converter/other/fiasco/pnmtofiasco.c b/converter/other/fiasco/pnmtofiasco.c
|
||||
index d78ff6b..761dac5 100644
|
||||
--- a/converter/other/fiasco/pnmtofiasco.c
|
||||
+++ b/converter/other/fiasco/pnmtofiasco.c
|
||||
@@ -170,7 +170,7 @@ main (int argc, char **argv)
|
||||
return 0;
|
||||
else
|
||||
{
|
||||
- fprintf (stderr, fiasco_get_error_message ());
|
||||
+ fprintf (stderr, "%s", fiasco_get_error_message ());
|
||||
fprintf (stderr, "\n");
|
||||
return 1;
|
||||
}
|
||||
diff --git a/converter/other/fiasco/params.c b/converter/other/fiasco/params.c
|
||||
index a4d843a..9659e9f 100644
|
||||
--- a/converter/other/fiasco/params.c
|
||||
+++ b/converter/other/fiasco/params.c
|
||||
@@ -656,7 +656,7 @@ usage (const param_t *params, const char *progname, const char *synopsis,
|
||||
fprintf (stderr, "Usage: %s [OPTION]...%s\n", progname,
|
||||
non_opt_string ? non_opt_string : " ");
|
||||
if (synopsis != NULL)
|
||||
- fprintf (stderr, synopsis);
|
||||
+ fprintf (stderr, "%s\n", synopsis);
|
||||
fprintf (stderr, "\n\n");
|
||||
fprintf (stderr, "Mandatory or optional arguments to long options "
|
||||
"are mandatory or optional\nfor short options too. "
|
||||
445
netpbm.spec
445
netpbm.spec
|
|
@ -1,44 +1,45 @@
|
|||
Summary: A library for handling different graphics file formats
|
||||
Name: netpbm
|
||||
Version: 10.66.02
|
||||
Release: 5%{?dist}
|
||||
Summary: A library for handling different graphics file formats
|
||||
Name: netpbm
|
||||
Version: 11.13.00
|
||||
Release: 1%{?dist}
|
||||
# See copyright_summary for details
|
||||
License: BSD and GPLv2 and IJG and MIT and Public Domain
|
||||
Group: System Environment/Libraries
|
||||
License: BSD-3-Clause AND GPL-2.0-only AND LGPL-2.1-or-later AND GPL-3.0-or-later AND IJG AND MIT AND NTP AND PostgreSQL AND LicenseRef-MIT-CRL-Xim AND LicenseRef-Fedora-Public-Domain
|
||||
URL: http://netpbm.sourceforge.net/
|
||||
# Source0 is prepared by
|
||||
# svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/advanced netpbm-%{version}
|
||||
# svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/userguide netpbm-%{version}/userguide
|
||||
# svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/trunk/test netpbm-%{version}/test
|
||||
# svn checkout https://svn.code.sf.net/p/netpbm/code/advanced netpbm-%%{version}
|
||||
# svn checkout https://svn.code.sf.net/p/netpbm/code/userguide netpbm-%%{version}/userguide
|
||||
# svn checkout https://svn.code.sf.net/p/netpbm/code/trunk/test netpbm-%%{version}/test
|
||||
# and removing the .svn directories ( find -name "\.svn" -type d -print0 | xargs -0 rm -rf )
|
||||
# and removing the ppmtompeg code, due to patents ( rm -rf netpbm-%{version}/converter/ppm/ppmtompeg/ )
|
||||
Source0: netpbm-%{version}.tar.xz
|
||||
Patch1: netpbm-time.patch
|
||||
Patch2: netpbm-message.patch
|
||||
Patch3: netpbm-security-scripts.patch
|
||||
Patch4: netpbm-security-code.patch
|
||||
Patch5: netpbm-nodoc.patch
|
||||
Patch6: netpbm-gcc4.patch
|
||||
Patch7: netpbm-bmptopnm.patch
|
||||
Patch8: netpbm-CAN-2005-2471.patch
|
||||
Patch9: netpbm-xwdfix.patch
|
||||
Patch11: netpbm-multilib.patch
|
||||
Patch13: netpbm-glibc.patch
|
||||
Patch15: netpbm-docfix.patch
|
||||
Patch16: netpbm-ppmfadeusage.patch
|
||||
Patch17: netpbm-fiasco-overflow.patch
|
||||
Patch20: netpbm-noppmtompeg.patch
|
||||
Patch21: netpbm-cmuwtopbm.patch
|
||||
Patch22: netpbm-pamtojpeg2k.patch
|
||||
Patch23: netpbm-manfix.patch
|
||||
Patch24: netpbm-ppmtopict.patch
|
||||
Patch25: netpbm-pnmtopclxl.patch
|
||||
Patch26: netpbm-werror.patch
|
||||
Patch27: netpbm-disable-pbmtog3.patch
|
||||
Patch28: netpbm-pnmtops.patch
|
||||
BuildRequires: libjpeg-devel, libpng-devel, libtiff-devel, flex
|
||||
BuildRequires: libX11-devel, python, jasper-devel, libxml2-devel
|
||||
BuildRequires: ghostscript-core
|
||||
Source0: netpbm-%{version}.tar.xz
|
||||
Patch1: netpbm-security-code.patch
|
||||
Patch2: netpbm-ppmfadeusage.patch
|
||||
Patch3: netpbm-CVE-2017-2587.patch
|
||||
Patch4: netpbm-python3.patch
|
||||
Patch5: netpbm-time.patch
|
||||
Patch6: netpbm-gcc4.patch
|
||||
Patch7: netpbm-bmptopnm.patch
|
||||
Patch8: netpbm-CAN-2005-2471.patch
|
||||
Patch9: netpbm-xwdfix.patch
|
||||
Patch10: netpbm-multilib.patch
|
||||
Patch11: netpbm-glibc.patch
|
||||
Patch12: netpbm-docfix.patch
|
||||
Patch13: netpbm-pamtojpeg2k.patch
|
||||
Patch14: netpbm-manfix.patch
|
||||
Patch15: netpbm-jasper.patch
|
||||
Patch16: netpbm-libdir-so.patch
|
||||
Patch17: netpbm-c99.patch
|
||||
Patch18: netpbm-shlib-ldflags.patch
|
||||
|
||||
BuildRequires: make
|
||||
BuildRequires: libjpeg-devel, libpng-devel, libtiff-devel, flex, gcc, jbigkit-devel
|
||||
BuildRequires: libX11-devel, perl-generators, python3, jasper-devel, libxml2-devel
|
||||
BuildRequires: perl(Config), perl(Cwd), perl(English), perl(Fcntl), perl(File::Basename)
|
||||
BuildRequires: perl(strict)
|
||||
%if (0%{?fedora} && 0%{?fedora} < 28) || (0%{?rhel} || 0%{?rhel} <= 7)
|
||||
BuildRequires: ghostscript-core
|
||||
%else
|
||||
BuildRequires: ghostscript
|
||||
%endif
|
||||
|
||||
%description
|
||||
The netpbm package contains a library of functions which support
|
||||
|
|
@ -47,9 +48,8 @@ programs for handling various graphics file formats, including .pbm
|
|||
.ppm (portable pixmaps) and others.
|
||||
|
||||
%package devel
|
||||
Summary: Development tools for programs which will use the netpbm libraries
|
||||
Group: Development/Libraries
|
||||
Requires: netpbm = %{version}-%{release}
|
||||
Summary: Development tools for programs which will use the netpbm libraries
|
||||
Requires: netpbm = %{version}-%{release}
|
||||
|
||||
%description devel
|
||||
The netpbm-devel package contains the header files and static libraries,
|
||||
|
|
@ -61,10 +61,9 @@ graphics file formats supported by the netpbm libraries. You'll also need
|
|||
to have the netpbm package installed.
|
||||
|
||||
%package progs
|
||||
Summary: Tools for manipulating graphics files in netpbm supported formats
|
||||
Group: Applications/Multimedia
|
||||
Requires: ghostscript
|
||||
Requires: netpbm = %{version}-%{release}
|
||||
Summary: Tools for manipulating graphics files in netpbm supported formats
|
||||
Requires: ghostscript
|
||||
Requires: netpbm = %{version}-%{release}
|
||||
|
||||
%description progs
|
||||
The netpbm-progs package contains a group of scripts for manipulating the
|
||||
|
|
@ -77,9 +76,8 @@ If you need to use these conversion scripts, you should install
|
|||
netpbm-progs. You'll also need to install the netpbm package.
|
||||
|
||||
%package doc
|
||||
Summary: Documentation for tools manipulating graphics files in netpbm supported formats
|
||||
Group: Applications/Multimedia
|
||||
Requires: netpbm-progs = %{version}-%{release}
|
||||
Summary: Documentation for tools manipulating graphics files in netpbm supported formats
|
||||
Requires: netpbm-progs = %{version}-%{release}
|
||||
|
||||
%description doc
|
||||
The netpbm-doc package contains a documentation in HTML format for utilities
|
||||
|
|
@ -89,36 +87,12 @@ If you need to look into the HTML documentation, you should install
|
|||
netpbm-doc. You'll also need to install the netpbm-progs package.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch1 -p1 -b .time
|
||||
%patch2 -p1 -b .message
|
||||
%patch3 -p1 -b .security-scripts
|
||||
%patch4 -p1 -b .security-code
|
||||
%patch5 -p1 -b .nodoc
|
||||
%patch6 -p1 -b .gcc4
|
||||
%patch7 -p1 -b .bmptopnm
|
||||
%patch8 -p1 -b .CAN-2005-2471
|
||||
%patch9 -p1 -b .xwdfix
|
||||
%patch11 -p1 -b .multilib
|
||||
%patch13 -p1 -b .glibc
|
||||
%patch15 -p1 -b .docfix
|
||||
%patch16 -p1 -b .ppmfadeusage
|
||||
%patch17 -p1 -b .fiasco-overflow
|
||||
%patch20 -p1 -b .noppmtompeg
|
||||
%patch21 -p1 -b .cmuwtopbmfix
|
||||
%patch22 -p1 -b .pamtojpeg2kfix
|
||||
%patch23 -p1 -b .manfix
|
||||
%patch24 -p1 -b .ppmtopict
|
||||
%patch25 -p1 -b .pnmtopclxl
|
||||
%patch26 -p1 -b .werror
|
||||
%patch27 -p1 -b .disable-pbmtog3
|
||||
%patch28 -p1 -b .pnmtops
|
||||
|
||||
sed -i 's/STRIPFLAG = -s/STRIPFLAG =/g' config.mk.in
|
||||
%autosetup -p1
|
||||
rm -rf converter/other/jpeg2000/libjasper/
|
||||
sed -i -e 's/^SUBDIRS = libjasper/SUBDIRS =/' converter/other/jpeg2000/Makefile
|
||||
rm -rf converter/other/jbig/libjbig/
|
||||
|
||||
%build
|
||||
%set_build_flags
|
||||
./configure <<EOF
|
||||
|
||||
|
||||
|
|
@ -145,26 +119,24 @@ TOP=`pwd`
|
|||
|
||||
make \
|
||||
CC="%{__cc}" \
|
||||
LDFLAGS="-L$TOP/pbm -L$TOP/pgm -L$TOP/pnm -L$TOP/ppm" \
|
||||
CFLAGS="$RPM_OPT_FLAGS -fPIC -flax-vector-conversions -fno-strict-aliasing" \
|
||||
LDFLAGS="$LDFLAGS -L$TOP/pbm -L$TOP/pgm -L$TOP/pnm -L$TOP/ppm" \
|
||||
CFLAGS="$CFLAGS -fPIC -flax-vector-conversions -fno-strict-aliasing" \
|
||||
CFLAGS_CONFIG="$CFLAGS" \
|
||||
LADD="-lm" \
|
||||
JPEGINC_DIR=%{_includedir} \
|
||||
PNGINC_DIR=%{_includedir} \
|
||||
TIFFINC_DIR=%{_includedir} \
|
||||
JPEGLIB_DIR=%{_libdir} \
|
||||
PNGLIB_DIR=%{_libdir} \
|
||||
TIFFLIB_DIR=%{_libdir} \
|
||||
JPEGINC_DIR=%{_usr}/include \
|
||||
PNGINC_DIR=%{_usr}/include \
|
||||
TIFFINC_DIR=%{_usr}/include \
|
||||
JPEGLIB_DIR=%{_usr}/%{_lib} \
|
||||
JBIGLIB=%{_usr}/%{_lib}/libjbig.so.2.1 \
|
||||
PNGLIB_DIR=%{_usr}/%{_lib} \
|
||||
TIFFLIB_DIR=%{_usr}/%{_lib} \
|
||||
LINUXSVGALIB="NONE" \
|
||||
X11LIB=%{_libdir}/libX11.so \
|
||||
XML2LIBS="NONE" \
|
||||
JASPERLIB="" \
|
||||
JASPERDEPLIBS="-ljasper" \
|
||||
JASPERHDR_DIR="/usr/include/jasper"
|
||||
X11LIB=%{_usr}/%{_lib}/libX11.so \
|
||||
XML2LIBS="NONE"
|
||||
|
||||
# prepare man files
|
||||
cd userguide
|
||||
# BZ 948531
|
||||
rm -f ppmtompeg*
|
||||
rm -f *.manual-pages
|
||||
rm -f *.manfix
|
||||
for i in *.html ; do
|
||||
|
|
@ -177,25 +149,21 @@ done
|
|||
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
mkdir -p $RPM_BUILD_ROOT
|
||||
make package pkgdir=$RPM_BUILD_ROOT/usr LINUXSVGALIB="NONE" XML2LIBS="NONE"
|
||||
make package pkgdir=%{buildroot}%{_prefix} LINUXSVGALIB="NONE" XML2LIBS="NONE"
|
||||
|
||||
# Ugly hack to have libs in correct dir on 64bit archs.
|
||||
mkdir -p $RPM_BUILD_ROOT%{_libdir}
|
||||
if [ "%{_libdir}" != "/usr/lib" ]; then
|
||||
mv $RPM_BUILD_ROOT/usr/lib/lib* $RPM_BUILD_ROOT%{_libdir}
|
||||
mkdir -p %{buildroot}%{_libdir}
|
||||
if [ "%{_lib}" != "lib" ]; then
|
||||
mv %{buildroot}%{_prefix}/lib/lib* %{buildroot}%{_libdir}
|
||||
fi
|
||||
|
||||
cp -af lib/libnetpbm.a $RPM_BUILD_ROOT%{_libdir}/libnetpbm.a
|
||||
cp -l $RPM_BUILD_ROOT%{_libdir}/libnetpbm.so.?? $RPM_BUILD_ROOT%{_libdir}/libnetpbm.so
|
||||
cp -af lib/libnetpbm.a %{buildroot}%{_libdir}/libnetpbm.a
|
||||
|
||||
mkdir -p $RPM_BUILD_ROOT%{_datadir}
|
||||
mv userguide/man $RPM_BUILD_ROOT%{_mandir}
|
||||
mkdir -p %{buildroot}%{_datadir}
|
||||
mv userguide/man %{buildroot}%{_mandir}
|
||||
|
||||
# Get rid of the useless non-ascii character in pgmminkowski.1
|
||||
sed -i 's/\xa0//' $RPM_BUILD_ROOT%{_mandir}/man1/pgmminkowski.1
|
||||
sed -i 's/\xa0//' %{buildroot}%{_mandir}/man1/pgmminkowski.1
|
||||
|
||||
# Don't ship man pages for non-existent binaries and bogus ones
|
||||
for i in hpcdtoppm \
|
||||
|
|
@ -203,71 +171,284 @@ for i in hpcdtoppm \
|
|||
directory error extendedopacity \
|
||||
pam pbm pgm pnm ppm index libnetpbm_dir \
|
||||
liberror ppmtotga; do
|
||||
rm -f $RPM_BUILD_ROOT%{_mandir}/man1/${i}.1
|
||||
rm -f %{buildroot}%{_mandir}/man1/${i}.1
|
||||
done
|
||||
rm -f $RPM_BUILD_ROOT%{_mandir}/man5/extendedopacity.5
|
||||
rm -f %{buildroot}%{_mandir}/man5/extendedopacity.5
|
||||
|
||||
mkdir -p $RPM_BUILD_ROOT%{_datadir}/netpbm
|
||||
mv $RPM_BUILD_ROOT/usr/misc/*.map $RPM_BUILD_ROOT%{_datadir}/netpbm/
|
||||
mv $RPM_BUILD_ROOT/usr/misc/rgb.txt $RPM_BUILD_ROOT%{_datadir}/netpbm/
|
||||
rm -rf $RPM_BUILD_ROOT/usr/README
|
||||
rm -rf $RPM_BUILD_ROOT/usr/VERSION
|
||||
rm -rf $RPM_BUILD_ROOT/usr/link
|
||||
rm -rf $RPM_BUILD_ROOT/usr/misc
|
||||
rm -rf $RPM_BUILD_ROOT/usr/man
|
||||
rm -rf $RPM_BUILD_ROOT/usr/pkginfo
|
||||
rm -rf $RPM_BUILD_ROOT/usr/config_template
|
||||
rm -rf $RPM_BUILD_ROOT/usr/pkgconfig_template
|
||||
mkdir -p %{buildroot}%{_datadir}/netpbm
|
||||
mv %{buildroot}%{_prefix}/misc/*.map %{buildroot}%{_datadir}/netpbm/
|
||||
mv %{buildroot}%{_prefix}/misc/rgb.txt %{buildroot}%{_datadir}/netpbm/
|
||||
rm -rf %{buildroot}%{_prefix}/README
|
||||
rm -rf %{buildroot}%{_prefix}/VERSION
|
||||
rm -rf %{buildroot}%{_prefix}/link
|
||||
rm -rf %{buildroot}%{_prefix}/misc
|
||||
rm -rf %{buildroot}%{_prefix}/man
|
||||
rm -rf %{buildroot}%{_prefix}/pkginfo
|
||||
rm -rf %{buildroot}%{_prefix}/config_template
|
||||
rm -rf %{buildroot}%{_prefix}/pkgconfig_template
|
||||
|
||||
# Don't ship the static library
|
||||
rm -f $RPM_BUILD_ROOT/%{_libdir}/lib*.a
|
||||
rm -f %{buildroot}%{_libdir}/lib*.a
|
||||
|
||||
# remove/symlink/substitute obsolete utilities
|
||||
pushd $RPM_BUILD_ROOT%{_bindir}
|
||||
pushd %{buildroot}%{_bindir}
|
||||
rm -f pgmtopbm pnmcomp
|
||||
ln -s pamcomp pnmcomp
|
||||
echo -e '#!/bin/sh\npamditherbw $@ | pamtopnm\n' > pgmtopbm
|
||||
chmod 0755 pgmtopbm
|
||||
popd
|
||||
|
||||
%ldconfig_scriptlets
|
||||
|
||||
%check
|
||||
pushd test
|
||||
export LD_LIBRARY_PATH=$RPM_BUILD_ROOT%{_libdir}
|
||||
export PBM_TESTPREFIX=$RPM_BUILD_ROOT%{_bindir}
|
||||
export PBM_BINPREFIX=$RPM_BUILD_ROOT%{_bindir}
|
||||
export LD_LIBRARY_PATH=%{buildroot}%{_libdir}
|
||||
export PBM_TESTPREFIX=%{buildroot}%{_bindir}
|
||||
export PBM_BINPREFIX=%{buildroot}%{_bindir}
|
||||
./Execute-Tests && exit 0
|
||||
popd
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc doc/copyright_summary doc/COPYRIGHT.PATENT doc/GPL_LICENSE.txt doc/HISTORY README
|
||||
%{_libdir}/lib*.so*
|
||||
%doc doc/copyright_summary doc/COPYRIGHT.PATENT doc/HISTORY README
|
||||
%license doc/GPL_LICENSE.txt
|
||||
%{_libdir}/lib*.so.*
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root)
|
||||
%dir %{_includedir}/netpbm
|
||||
%{_includedir}/netpbm/*.h
|
||||
%{_mandir}/man3/*
|
||||
%{_libdir}/lib*.so
|
||||
|
||||
%files progs
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/*
|
||||
%{_mandir}/man1/*
|
||||
%{_mandir}/man5/*
|
||||
%{_datadir}/netpbm/
|
||||
|
||||
%files doc
|
||||
%defattr(-,root,root)
|
||||
%doc userguide/*
|
||||
|
||||
%changelog
|
||||
* Thu Jan 08 2026 Josef Ridky <jridky@redhat.com> - 11.13.00-1
|
||||
- New upstream release 11.13.00
|
||||
|
||||
* Tue Oct 14 2025 Josef Ridky <jridky@redhat.com> - 11.12.00-1
|
||||
- New upstream release 11.12.00
|
||||
|
||||
* Thu Jul 24 2025 Fedora Release Engineering <releng@fedoraproject.org> - 11.10.00-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
||||
|
||||
* Tue Apr 08 2025 Josef Ridky <jridky@redhat.com> - 11.10.00-1
|
||||
- New upstream release 11.10.00 (#2355869)
|
||||
|
||||
* Thu Feb 06 2025 Josef Ridky <jridky@redhat.com> - 11.09.00-2
|
||||
- add LDFLAGS patch (RHEL-70899)
|
||||
|
||||
* Tue Jan 28 2025 Josef Ridky <jridky@redhat.com> - 11.09.00-1
|
||||
- New upstream release 11.09.00 (#2218312)
|
||||
- Review and update license field
|
||||
|
||||
* Fri Jan 17 2025 Fedora Release Engineering <releng@fedoraproject.org> - 11.02.00-10
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
||||
|
||||
* Fri Dec 13 2024 Lukáš Zaoral <lzaoral@redhat.com> - 11.02.00-9
|
||||
- build netpbm with correct LDFLAGS (RHEL-70899)
|
||||
|
||||
* Mon Sep 02 2024 Miroslav Suchý <msuchy@redhat.com> - 11.02.00-8
|
||||
- convert license to SPDX
|
||||
|
||||
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 11.02.00-7
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
||||
|
||||
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 11.02.00-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Sun Jan 21 2024 Florian Weimer <fweimer@redhat.com> - 11.02.00-5
|
||||
- GCC 14 compatibility fixes:
|
||||
Drop netpbm-cmuwtopbm.patch to fix an out-of-bounds stack write (#2259450)
|
||||
Stub out unused converter/other/jpeg2000/libjasper_compat.c (#2259448)
|
||||
|
||||
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 11.02.00-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Tue Nov 28 2023 Orion Poplawski <orion@nwra.com> - 11.02.00-3
|
||||
- Rebuild for jasper 4.1
|
||||
|
||||
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 11.02.00-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Mon Mar 27 2023 Josef Ridky <jridky@redhat.com> - 11.02.00-1
|
||||
- New upstream release 11.02.00 (#2157125)
|
||||
|
||||
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 11.01.00-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Mon Jan 02 2023 Josef Ridky <jridky@redhat.com> - 11.01.00-1
|
||||
- New upstream release 11.01.00 (#2157125)
|
||||
|
||||
* Fri Dec 02 2022 Florian Weimer <fweimer@redhat.com> - 11.00.00-2
|
||||
- Port downstream-specific patches to C99
|
||||
|
||||
* Tue Oct 04 2022 Josef Ridky <jridky@redhat.com> - 11.00.00-1
|
||||
- New upstream release 11.00.00 (#2130384)
|
||||
|
||||
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 10.99.00-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Tue Jun 28 2022 Josef Ridky <jridky@redhat.com> - 10.99.00-1
|
||||
- New upstream release 10.99.00 (#2068865)
|
||||
- Use %%set_build_flags to set environment variables
|
||||
|
||||
* Sun Feb 13 2022 Josef Ridky <jridky@redhat.com> - 10.97.00-4
|
||||
- Bump spec for new jasper
|
||||
|
||||
* Fri Feb 11 2022 Josef Ridky <jridky@redhat.com> - 10.97.00-3
|
||||
- Rebuild for new jasper
|
||||
|
||||
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 10.97.00-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Mon Jan 03 2022 Josef Ridky <jridky@redhat.com> - 10.97.00-1
|
||||
- New upstream release 10.97.00 (#2035806)
|
||||
|
||||
* Mon Oct 04 2021 Josef Ridky <jridky@redhat.com> - 10.96.00-1
|
||||
- New upstream release 10.96.00 (#2007871)
|
||||
|
||||
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 10.95.00-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Thu Jul 15 2021 Josef Ridky <jridky@redhat.com> - 10.95.00-1
|
||||
- New upstream release 10.95.00 (#1977974)
|
||||
|
||||
* Wed Mar 31 2021 Josef Ridky <jridky@redhat.com> - 10.94.05-1
|
||||
- New upstream release 10.94.05 (#1943837)
|
||||
|
||||
* Mon Jan 25 2021 Josef Ridky <jridky@redhat.com> - 10.93.00-1
|
||||
- New upstream release 10.93.00 (#1911159)
|
||||
|
||||
* Wed Oct 07 2020 Josef Ridky <jridky@redhat.com> - 10.92.00-1
|
||||
- New upstream release 10.92.00 (#1851753)
|
||||
|
||||
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 10.90.00-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Thu Mar 26 2020 Josef Ridky <jridky@redhat.com> - 10.90.00-1
|
||||
- New upstream release 10.90.00 (#1817279)
|
||||
|
||||
* Wed Mar 25 2020 Jitka Plesnikova <jplesnik@redhat.com> - 10.89.00-3
|
||||
- Add perl dependencies for build
|
||||
|
||||
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 10.89.00-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Mon Jan 06 2020 Josef Ridky <jridky@redhat.com> - 10.89.00-1
|
||||
- New upstream release 10.89.00 (#1787801)
|
||||
|
||||
* Mon Dec 09 2019 Josef Ridky <jridky@redhat.com> - 10.88.00-1
|
||||
- New upstream release (#1756647)
|
||||
|
||||
* Wed Aug 21 2019 Josef Ridky <jridky@redhat.com> - 10.87.00-1
|
||||
- New upstream release (#1725280)
|
||||
|
||||
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 10.86.00-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Wed Apr 17 2019 Josef Ridky <jridky@redhat.com> - 10.86.00-2
|
||||
- Enable MPEG and MPEG-2 support (#1700164)
|
||||
|
||||
* Mon Apr 01 2019 Josef Ridky <jridky@redhat.com> - 10.86.00-1
|
||||
- New upstream release (#1694351)
|
||||
|
||||
* Tue Feb 12 2019 Ralf Corsépius <corsepiu@fedoraproject.org> - 10.84.03-3
|
||||
- Package %%{_libdir}/*.so (RHBZ#1676370).
|
||||
|
||||
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 10.84.03-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Fri Nov 23 2018 Josef Ridky <jridky@redhat.com> - 10.84.03-1
|
||||
- New upstream release (#1634256)
|
||||
|
||||
* Wed Nov 21 2018 Josef Ridky <jridky@redhat.com> - 10.83.01-2
|
||||
- Use system version of jasper and jbigkit library (#1651965)
|
||||
|
||||
* Mon Jul 23 2018 Josef Ridky <jridky@redhat.com> - 10.83.01-1
|
||||
- New upstream release 10.83.01 (#1596970)
|
||||
|
||||
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 10.82.00-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||
|
||||
* Mon Jun 04 2018 Josef Ridky <jridky@redhat.com> - 10.82.00-3
|
||||
- Backport unimplemented fixes from 10.79.00 (#1585695)
|
||||
|
||||
* Wed Apr 11 2018 Rafael Santos <rdossant@redhat.com> - 10.82.00-2
|
||||
- Use standard Fedora build and linker flags (bug #1543858)
|
||||
|
||||
* Tue Mar 27 2018 Josef Ridky <jridky@redhat.com> - 10.82.00-1
|
||||
- New upstream release 10.82.00 (#1560330)
|
||||
|
||||
* Mon Feb 26 2018 Josef Ridky <jridky@redhat.com> - 10.81.00-4
|
||||
- spec clean up
|
||||
- build against Python3
|
||||
|
||||
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 10.81.00-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||
|
||||
* Mon Jan 22 2018 Josef Ridky <jridky@redhat.com> - 10.81.00-2
|
||||
- change ghostscript requirement
|
||||
|
||||
* Wed Jan 03 2018 Josef Ridky <jridky@redhat.com> - 10.81.00-1
|
||||
- New upstream release 10.81.00 (#1529904)
|
||||
- update spec file
|
||||
|
||||
* Thu Oct 19 2017 Josef Ridky <jridky@redhat.com> - 10.80.00-2
|
||||
- Rebuilt for python package
|
||||
|
||||
* Mon Oct 02 2017 Josef Ridky <jridky@redhat.com> - 10.80.00-1
|
||||
- New upstream release 10.80.00 (#1496797)
|
||||
|
||||
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 10.79.00-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
||||
|
||||
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 10.79.00-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
|
||||
|
||||
* Mon Jul 03 2017 Josef Ridky <jridky@redhat.com> - 10.79.00-1
|
||||
- New upstream release 10.79.00 (#1466772)
|
||||
|
||||
* Wed Mar 29 2017 Josef Ridky <jridky@redhat.com> - 10.78.00-1
|
||||
- New upstream release 10.78.00
|
||||
|
||||
* Wed Feb 08 2017 Josef Ridky <jridky@redhat.com> - 10.77.00-3
|
||||
- fix CVE-2017-2586, CVE-2017-2587 (#1419545)
|
||||
- fix CVE-2017-5849 (#1419650)
|
||||
|
||||
* Mon Jan 23 2017 Josef Ridky <jridky@redhat.com> - 10.77.00-2
|
||||
- fix #1404757 - add copyright_summary to doc section
|
||||
|
||||
* Mon Jan 23 2017 Josef Ridky <jridky@redhat.com> - 10.77.00-1
|
||||
- New upstream release 10.77.00 (#1408611)
|
||||
|
||||
* Mon Dec 5 2016 Josef Ridky <jridky@redhat.com> - 10.76.00-2
|
||||
- set Provides: bundled for jasper and jbigkit library (#1395716)
|
||||
|
||||
* Thu Nov 10 2016 Josef Ridky <jridky@redhat.com> - 10.76.00-1
|
||||
- Update to the latest upstream release 10.76.00 (#1393713)
|
||||
|
||||
* Thu Jul 28 2016 Josef Ridky <jridky@redhat.com> - 10.75.99-1
|
||||
- Update to the latest upstream release 10.75.99 (#1361103)
|
||||
|
||||
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 10.71.02-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
||||
|
||||
* Mon Aug 10 2015 Petr Hracek <phracek@redhat.com> - 10.71.02-1
|
||||
- Update to the latest upstream release (#1252352)
|
||||
|
||||
* Thu Aug 06 2015 Petr Hracek <phracek@redhat.com> - 10.66.02-7
|
||||
- remove doc/copyright_summary (#1219743)
|
||||
|
||||
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 10.66.02-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
||||
|
||||
* Tue Jan 20 2015 Petr Hracek <phracek@redhat.com> - 10.66.02-5
|
||||
- Moving libnetpbm.so from netpbm-devel to netpbm (#1180811)
|
||||
|
||||
|
|
@ -849,7 +1030,7 @@ rm -rf $RPM_BUILD_ROOT
|
|||
- fix segfault in ppmtompeg when encoding jpeg images (#185970)
|
||||
|
||||
* Mon Apr 3 2006 Jindrich Novy <jnovy@redhat.com> 10.32-2
|
||||
- fix broken symlink in upstream: pnmsdepth -> pamdepth (#187667)
|
||||
- fix broken symlink in upstream: pnmsdepth -> pamdepth (#187667)
|
||||
|
||||
* Tue Feb 28 2006 Jindrich Novy <jnovy@redhat.com> 10.32-1
|
||||
- update to 10.32
|
||||
|
|
|
|||
30
netpbm2tar.sh
Executable file
30
netpbm2tar.sh
Executable file
|
|
@ -0,0 +1,30 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Source0 is prepared by
|
||||
# svn checkout https://svn.code.sf.net/p/netpbm/code/advanced netpbm-%{version}
|
||||
# svn checkout https://svn.code.sf.net/p/netpbm/code/userguide netpbm-%{version}/userguide
|
||||
# svn checkout https://svn.code.sf.net/p/netpbm/code/trunk/test netpbm-%{version}/test
|
||||
# and removing the .svn directories ( find -name "\.svn" -type d -print0 | xargs -0 rm -rf )
|
||||
|
||||
VERSION=$1
|
||||
if [[ -z $VERSION ]]; then
|
||||
echo "Version is missing as argument"
|
||||
exit 1
|
||||
fi
|
||||
NETPBM_NAME="netpbm-$VERSION"
|
||||
TEMP_DIR="/var/tmp/netpbm"
|
||||
TARBALL="$TEMP_DIR/$NETPBM_NAME.tar.xz"
|
||||
mkdir -p $TEMP_DIR
|
||||
pushd $TEMP_DIR
|
||||
svn checkout https://svn.code.sf.net/p/netpbm/code/advanced $NETPBM_NAME
|
||||
svn checkout https://svn.code.sf.net/p/netpbm/code/userguide $NETPBM_NAME/userguide
|
||||
svn checkout https://svn.code.sf.net/p/netpbm/code/trunk/test $NETPBM_NAME/test
|
||||
find -name '\.svn' -type d -print0 | xargs -0 rm -rf
|
||||
tar -cJvf $NETPBM_NAME.tar.xz $NETPBM_NAME
|
||||
rm -rf $NETPBM_NAME/
|
||||
popd
|
||||
if [[ -f "$TARBALL" ]]; then
|
||||
cp $TARBALL .
|
||||
rm $TARBALL
|
||||
fi
|
||||
exit 0
|
||||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
dcb7de91384d630eb399e48c71158f3d netpbm-10.66.02.tar.xz
|
||||
SHA512 (netpbm-11.13.00.tar.xz) = 0914061c7c8d638147afb76cbf23609b3ae43aca4120e4297fd5db6887d5381469d6944cdbdc1c66d26f54ec68d62355693c08b830dde823061e37c51480b678
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue