import netpbm-10.95.00-2.el9
This commit is contained in:
commit
2177fe398b
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
SOURCES/netpbm-10.95.00.tar.xz
|
1
.netpbm.metadata
Normal file
1
.netpbm.metadata
Normal file
@ -0,0 +1 @@
|
||||
05fc8e8e42f4905bf859607aa6a7d9744174a711 SOURCES/netpbm-10.95.00.tar.xz
|
17
SOURCES/netpbm-CAN-2005-2471.patch
Normal file
17
SOURCES/netpbm-CAN-2005-2471.patch
Normal file
@ -0,0 +1,17 @@
|
||||
diff -urNp a/converter/other/pstopnm.c b/converter/other/pstopnm.c
|
||||
--- a/converter/other/pstopnm.c 2018-07-23 15:14:51.200658026 +0200
|
||||
+++ b/converter/other/pstopnm.c 2018-07-23 15:18:12.579910612 +0200
|
||||
@@ -896,11 +896,11 @@ execGhostscript(int const
|
||||
ghostscriptProg, arg0,
|
||||
deviceopt, outfileopt, gopt, ropt, textalphabitsopt,
|
||||
"-q", "-dNOPAUSE",
|
||||
- "-dSAFER", "-");
|
||||
+ "-dPARANOIDSAFER", "-");
|
||||
}
|
||||
|
||||
execl(ghostscriptProg, arg0, deviceopt, outfileopt, gopt, ropt,
|
||||
- textalphabitsopt, "-q", "-dNOPAUSE", "-dSAFER", "-", NULL);
|
||||
+ "-q", "-dNOPAUSE", "-dPARANOIDSAFER", "-", NULL);
|
||||
|
||||
pm_error("execl() of Ghostscript ('%s') failed, errno=%d (%s)",
|
||||
ghostscriptProg, errno, strerror(errno));
|
26
SOURCES/netpbm-CVE-2017-2587.patch
Normal file
26
SOURCES/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;
|
||||
}
|
||||
|
||||
|
13
SOURCES/netpbm-bmptopnm.patch
Normal file
13
SOURCES/netpbm-bmptopnm.patch
Normal file
@ -0,0 +1,13 @@
|
||||
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 */
|
||||
+ xel * colormap = NULL; /* malloc'ed */
|
||||
unsigned int pos;
|
||||
/* Current byte position in the BMP file */
|
||||
|
21
SOURCES/netpbm-cmuwtopbm.patch
Normal file
21
SOURCES/netpbm-cmuwtopbm.patch
Normal file
@ -0,0 +1,21 @@
|
||||
diff -up netpbm-10.61.01/converter/pbm/cmuwmtopbm.c.cmuwtopbmfix netpbm-10.61.01/converter/pbm/cmuwmtopbm.c
|
||||
--- netpbm-10.61.01/converter/pbm/cmuwmtopbm.c.cmuwtopbmfix 2013-01-02 18:39:57.000000000 +0100
|
||||
+++ netpbm-10.61.01/converter/pbm/cmuwmtopbm.c 2013-01-03 05:41:36.024984241 +0100
|
||||
@@ -18,7 +18,7 @@
|
||||
This program does not check the pad bits at the end of each row.
|
||||
*/
|
||||
|
||||
-
|
||||
+#include <stdint.h>
|
||||
#include "pbm.h"
|
||||
|
||||
/*--------------------------
|
||||
@@ -42,7 +42,7 @@ readCmuwmHeader(FILE * const ifP
|
||||
"CMU window manager header EOF / read error";
|
||||
uint32_t const cmuwmMagic = 0xf10040bb;
|
||||
|
||||
- long l;
|
||||
+ uint32_t l;
|
||||
short s;
|
||||
int rc;
|
||||
|
129
SOURCES/netpbm-docfix.patch
Normal file
129
SOURCES/netpbm-docfix.patch
Normal file
@ -0,0 +1,129 @@
|
||||
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);
|
||||
|
||||
opt.opt_table = option_def;
|
||||
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>]
|
||||
-[<b>-brightness=</b><i>fraction</i>]
|
||||
+[<b>-bright=</b><i>fraction</i>]
|
||||
[<b>-no_clip_color</b>]
|
||||
[<b>-rgb</b>]
|
||||
-[<b>-secondary</b>]
|
||||
+[<b>-use_secondary</b>]
|
||||
[<b>-linear</b>]
|
||||
[<b>-verbose</b>]
|
||||
|
||||
@@ -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.
|
||||
|
||||
-<dt><b>-brightness=</b><i>float</i>
|
||||
+<dt><b>-bright=</b><i>float</i>
|
||||
|
||||
<dd>Change the output brightness. Default is 1.0.
|
||||
|
||||
@@ -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
|
||||
-<b>-brightness=0.25</b> to leave the image data completely unclipped.
|
||||
+<b>-bright=0.25</b> to leave the image data completely unclipped.
|
||||
|
||||
<dt><b>-rgb</b>
|
||||
|
||||
<dd>Write raw camera colors to the output file. By default,
|
||||
<b>cameratoapm</b> converts to sRGB colorspace.
|
||||
|
||||
-<dt><b>-secondary</b>
|
||||
+<dt><b>-use_secondary</b>
|
||||
|
||||
<dd>For cameras based on the Fuji Super CCD SR, this option causes
|
||||
<b>cameratopam</b> to use the secondary sensors, in effect
|
||||
diff --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>
|
||||
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
|
||||
@@ -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,
|
||||
the frame rate specified in the FIASCO file is overridden.
|
||||
@@ -118,13 +118,8 @@ following methods (in the specified order):
|
||||
<li>--config=<i>name</i>
|
||||
</ol>
|
||||
|
||||
-<dt><b>-h</b>, <b>--info</b>
|
||||
-<dd>
|
||||
-Print brief help, then exit.
|
||||
-
|
||||
-<dt><b>-H</b>, <b>--help</b>
|
||||
-<dd>
|
||||
-Print detailed help, then exit.
|
||||
+<dt><b>-h</b>, <b>--help</b>
|
||||
+Print help, then exit.
|
||||
|
||||
</dl>
|
||||
|
||||
diff --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
|
||||
-specified by either margin options, <b>--include_frame</b>, or
|
||||
+specified by either margin options, <b>--frame_include</b>, or
|
||||
<b>--include</b> (or their defaults) are in the visible part. The
|
||||
visible part is the smallest possible rectangle that contains the
|
||||
parts specified those three ways.
|
||||
diff --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>-adjacent</b>]
|
||||
-[<b>-nonadjacent</b>]
|
||||
+[<b>-noadjacent</b>]
|
||||
|
||||
[<i>pbmfile</i>]
|
||||
|
||||
@@ -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.
|
22
SOURCES/netpbm-gcc4.patch
Normal file
22
SOURCES/netpbm-gcc4.patch
Normal file
@ -0,0 +1,22 @@
|
||||
diff -up netpbm-10.58.01/lib/pm.h.gcc4 netpbm-10.58.01/lib/pm.h
|
||||
--- netpbm-10.58.01/lib/pm.h.gcc4 2012-04-09 19:08:08.885137097 +0200
|
||||
+++ netpbm-10.58.01/lib/pm.h 2012-04-09 19:08:08.894136984 +0200
|
||||
@@ -18,6 +18,7 @@
|
||||
#include <sys/types.h>
|
||||
#include <ctype.h>
|
||||
#include <stdio.h>
|
||||
+#include <string.h>
|
||||
#include <errno.h>
|
||||
#include <setjmp.h>
|
||||
#include <sys/stat.h>
|
||||
diff -up netpbm-10.58.01/urt/rle.h.gcc4 netpbm-10.58.01/urt/rle.h
|
||||
--- netpbm-10.58.01/urt/rle.h.gcc4 2012-04-09 19:08:08.000000000 +0200
|
||||
+++ netpbm-10.58.01/urt/rle.h 2012-04-09 19:08:39.137758887 +0200
|
||||
@@ -34,6 +34,7 @@
|
||||
#define RLE_H
|
||||
|
||||
#include <stdio.h> /* Declare FILE. */
|
||||
+#include <string.h>
|
||||
|
||||
enum rle_dispatch {
|
||||
NO_DISPATCH = -1,
|
13
SOURCES/netpbm-glibc.patch
Normal file
13
SOURCES/netpbm-glibc.patch
Normal file
@ -0,0 +1,13 @@
|
||||
--- netpbm-10.35/converter/other/pnmtotiffcmyk.c.glibc 2006-09-18 12:20:06.000000000 +0200
|
||||
+++ netpbm-10.35/converter/other/pnmtotiffcmyk.c 2007-08-23 09:18:30.000000000 +0200
|
||||
@@ -974,8 +974,8 @@ int main( int argc, char **argv ) {
|
||||
|
||||
if ( (err = parseOpts( argc, argv, rt )) ) goto exit ;
|
||||
|
||||
- if ( (err = rt->in->open( rt->in, rt )) ) goto exit ;
|
||||
- if ( (err = rt->out->open( rt->out, rt )) ) goto exit ;
|
||||
+ if ( (err = (rt->in->open)( rt->in, rt )) ) goto exit ;
|
||||
+ if ( (err = (rt->out->open)( rt->out, rt )) ) goto exit ;
|
||||
|
||||
while ( rt->in->hasMore( rt->in ) ) {
|
||||
if ( (err = rt->in->next( rt->in, &r, &g, &b )) ) goto exit ;
|
62
SOURCES/netpbm-jasper.patch
Normal file
62
SOURCES/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
SOURCES/netpbm-libdir-so.patch
Normal file
48
SOURCES/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
|
541
SOURCES/netpbm-manfix.patch
Normal file
541
SOURCES/netpbm-manfix.patch
Normal file
@ -0,0 +1,541 @@
|
||||
diff -urNp a/userguide/avstopam.html b/userguide/avstopam.html
|
||||
--- a/userguide/avstopam.html 2021-06-02 12:56:59.584286425 +0200
|
||||
+++ b/userguide/avstopam.html 2021-06-02 15:00:33.799300026 +0200
|
||||
@@ -2,12 +2,13 @@
|
||||
<html><head><title>Avstopam User Manual</title></head>
|
||||
<body>
|
||||
<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>
|
||||
|
||||
-<p>avstopam - convert an AVS X image to a Netpbm image
|
||||
+<p>avstopam - convert an AVS X image to a Netpbm image</p>
|
||||
|
||||
<h2 id="synopsis">SYNOPSIS</h2>
|
||||
|
||||
@@ -16,40 +17,40 @@ Updated: 07 February 2010
|
||||
|
||||
<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 2021-06-02 12:56:59.576286351 +0200
|
||||
+++ b/userguide/faxformat.html 2021-06-02 15:02:58.710711998 +0200
|
||||
@@ -5,10 +5,11 @@
|
||||
Updated: 03 December 2008
|
||||
<br>
|
||||
|
||||
+<h2>SYNOPSIS</h2>
|
||||
<p>This page, part of the <a href="index.html">Netpbm user's guide</a>,
|
||||
describes FAX formats in relation to Netpbm facilities.
|
||||
|
||||
-
|
||||
+<h2>DESCRIPTION</h2>
|
||||
<p>The ITU (formerly CCITT) publishes standards for operation of fax machines
|
||||
(the idea is to provide a way to be sure that a fax machine is able to receive
|
||||
a fax sent by another). These standards incidentally specify graphics file
|
||||
diff -urNp a/userguide/libnetpbm_ug.html b/userguide/libnetpbm_ug.html
|
||||
--- a/userguide/libnetpbm_ug.html 2021-06-02 12:56:59.584286425 +0200
|
||||
+++ b/userguide/libnetpbm_ug.html 2021-06-02 14:36:35.392293125 +0200
|
||||
@@ -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 2021-06-02 12:56:59.585286434 +0200
|
||||
+++ b/userguide/pamfunc.html 2021-06-02 14:40:09.474375441 +0200
|
||||
@@ -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 2021-06-02 12:56:59.586286443 +0200
|
||||
+++ b/userguide/pammixmulti.html 2021-06-02 14:28:03.105311615 +0200
|
||||
@@ -7,8 +7,8 @@ Updated: 18 November 2018
|
||||
<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>
|
||||
@@ -22,14 +22,14 @@ Updated: 18 November 2018
|
||||
<p>Minimum unique abbreviation of an option is acceptable. You can use a
|
||||
single hyphen instead of double hyphens 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|random|mask</dt>
|
||||
@@ -50,7 +50,7 @@ output is produced by selecting the corr
|
||||
images, chosen at random on a per-pixel basis. 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.
|
||||
+on the grayscale level of an additional mask image.</p>
|
||||
</dd>
|
||||
|
||||
<dt><b>--maskfile</b>=<i>filename</i></dt>
|
||||
@@ -60,7 +60,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>
|
||||
@@ -77,7 +77,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>
|
||||
@@ -85,45 +85,45 @@ like <b>--blend</b>=average. <i>number</
|
||||
<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 \
|
||||
@@ -133,12 +133,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 Scott Pakin, scott+pbm@pakin.org.
|
||||
+<p>Copyright 2018 Scott Pakin, scott+pbm@pakin.org.</p>
|
||||
|
||||
<h2 id="seealso">SEE ALSO</h2>
|
||||
|
||||
@@ -146,20 +146,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 2021-06-02 12:56:59.575286342 +0200
|
||||
+++ b/userguide/pampaintspill.html 2021-06-02 15:06:31.354767352 +0200
|
||||
@@ -2,12 +2,12 @@
|
||||
<html><head><title>Pampaintspill User Manual</title></head>
|
||||
<body>
|
||||
<h1>pampaintspill</h1>
|
||||
-Updated: 06 March 2021
|
||||
+<p>Updated: 06 March 2021
|
||||
<br>
|
||||
-<a href="#index">Table Of Contents</a>
|
||||
+<a href="#index">Table Of Contents</a></p>
|
||||
|
||||
<h2>NAME</h2>
|
||||
-pampaintspill - smoothly spill colors into the background
|
||||
+<p>pampaintspill - smoothly spill colors into the background</p>
|
||||
|
||||
<h2 id="synopsis">SYNOPSIS</h2>
|
||||
|
||||
@@ -17,17 +17,17 @@ pampaintspill - smoothly spill colors in
|
||||
[<b>--wrap</b>] [<b>--all</b>]
|
||||
[<b>--downsample</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
|
||||
@@ -38,27 +38,27 @@ paint" onto the background. <b>pampaint
|
||||
<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>
|
||||
@@ -107,42 +107,42 @@ command line options:
|
||||
<dd>This is the seed for the random number generator that generates the
|
||||
pixels.
|
||||
|
||||
- <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).
|
||||
+ <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 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 2021-06-02 12:56:59.574286333 +0200
|
||||
+++ b/userguide/pamrecolor.html 2021-06-02 15:09:53.837724488 +0200
|
||||
@@ -2,9 +2,9 @@
|
||||
<html><head><title>Pamrecolor User Manual</title></head>
|
||||
<body>
|
||||
<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>
|
||||
|
||||
<h2>NAME</h2>
|
||||
pamrecolor - alter colors without affecting luminance
|
||||
@@ -22,15 +22,15 @@ pamrecolor - alter colors without affect
|
||||
[<b>-randomseed=</b><i>integer</i>]
|
||||
|
||||
[<i>infile</i>]
|
||||
-
|
||||
+</p>
|
||||
|
||||
<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>
|
||||
|
||||
<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>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="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>
|
||||
|
||||
<dl>
|
||||
|
||||
@@ -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>
|
||||
|
||||
-<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>
|
||||
|
||||
<dl>
|
||||
<dt>adobe</dt>
|
||||
@@ -109,7 +109,7 @@ 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
|
||||
diff -urNp a/userguide/pbmtog3.html b/userguide/pbmtog3.html
|
||||
--- a/userguide/pbmtog3.html 2021-06-02 12:56:59.585286434 +0200
|
||||
+++ b/userguide/pbmtog3.html 2021-06-02 14:44:07.715692749 +0200
|
||||
@@ -36,7 +36,7 @@ use those encodings.
|
||||
<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>pbmtog3</b> recognizes the following
|
||||
-command line options:
|
||||
+command line options:</p>
|
||||
|
||||
<dl>
|
||||
<dt><b>-reversebits</b>
|
||||
@@ -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 2021-06-02 12:56:59.574286333 +0200
|
||||
+++ b/userguide/ppmtogif.html 2021-06-02 15:48:19.167930575 +0200
|
||||
@@ -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>.
|
||||
|
||||
<p><b>pamtogif</b> is mostly backward compatible with <b>ppmtogif</b>.
|
||||
|
||||
+<h2>DESCRIPTION</h2>
|
||||
<p>One way <b>pamtogif</b> is not backward compatible with <b>ppmtogif</b>
|
||||
is that to specify a transparency (alpha) mask with <b>ppmtogif</b>, you
|
||||
supply the transparency as a separate pseudo-PGM image and use the
|
11
SOURCES/netpbm-multilib.patch
Normal file
11
SOURCES/netpbm-multilib.patch
Normal file
@ -0,0 +1,11 @@
|
||||
diff -up netpbm-10.47.04/buildtools/endiangen.c.multilib netpbm-10.47.04/buildtools/endiangen.c
|
||||
--- netpbm-10.47.04/buildtools/endiangen.c.multilib 2009-10-21 13:38:54.000000000 +0200
|
||||
+++ netpbm-10.47.04/buildtools/endiangen.c 2009-10-21 14:35:58.000000000 +0200
|
||||
@@ -87,7 +87,6 @@ main(int argc, char **argv) {
|
||||
byteOrder() == ENDIAN_LITTLE ? "LITTLE_ENDIAN" : "BIG_ENDIAN");
|
||||
printf("#endif\n");
|
||||
printf("\n");
|
||||
- printf("#define BITS_PER_LONG %u\n", bitsPerLong());
|
||||
|
||||
return 0;
|
||||
}
|
11
SOURCES/netpbm-pamtojpeg2k.patch
Normal file
11
SOURCES/netpbm-pamtojpeg2k.patch
Normal file
@ -0,0 +1,11 @@
|
||||
diff -up netpbm-10.47.12/converter/other/jpeg2000/pamtojpeg2k.c.pamtojpeg2kfix netpbm-10.47.12/converter/other/jpeg2000/pamtojpeg2k.c
|
||||
--- netpbm-10.47.12/converter/other/jpeg2000/pamtojpeg2k.c.pamtojpeg2kfix 2010-04-27 15:47:10.000000000 +0200
|
||||
+++ netpbm-10.47.12/converter/other/jpeg2000/pamtojpeg2k.c 2010-05-03 15:37:49.934269588 +0200
|
||||
@@ -532,7 +532,5 @@ main(int argc, char **argv)
|
||||
|
||||
pm_close(ifP);
|
||||
|
||||
- pm_close(stdout);
|
||||
-
|
||||
return 0;
|
||||
}
|
57
SOURCES/netpbm-ppmfadeusage.patch
Normal file
57
SOURCES/netpbm-ppmfadeusage.patch
Normal file
@ -0,0 +1,57 @@
|
||||
diff -urNp old/editor/ppmfade new/editor/ppmfade
|
||||
--- old/editor/ppmfade 2017-11-01 11:47:49.869611402 +0100
|
||||
+++ new/editor/ppmfade 2017-11-01 11:53:25.524973342 +0100
|
||||
@@ -84,7 +84,7 @@ for ($n = 0; $n < @ARGV; $n++) {
|
||||
if (-e $first_file) {
|
||||
} else {
|
||||
print "I can't find first file '$first_file'\n";
|
||||
- exit 20;
|
||||
+ exit 1;
|
||||
}
|
||||
} elsif ($ARGV[$n] eq "-l") {
|
||||
$n++;
|
||||
@@ -92,7 +92,7 @@ for ($n = 0; $n < @ARGV; $n++) {
|
||||
if (-e $last_file) {
|
||||
} else {
|
||||
print "I can't find last file '$last_file'\n";
|
||||
- exit 20;
|
||||
+ exit 1;
|
||||
}
|
||||
} elsif ($ARGV[$n] eq "-base") {
|
||||
$n++;
|
||||
@@ -113,9 +113,12 @@ for ($n = 0; $n < @ARGV; $n++) {
|
||||
$mode = $BLOCK;
|
||||
} elsif ("$ARGV[$n]" eq "-mix") {
|
||||
$mode = $MIX;
|
||||
+ } elsif ($ARGV[$n] eq "-help" || $ARGV[$n] eq "--help" || $ARGV[$n] eq "-h") {
|
||||
+ print "ppmfade: Use 'man ppmfade' for help.\n";
|
||||
+ exit 1;
|
||||
} else {
|
||||
print "Unknown argument: $ARGV[$n]\n";
|
||||
- exit 100;
|
||||
+ exit 1;
|
||||
}
|
||||
}
|
||||
#
|
||||
@@ -134,18 +137,18 @@ if ($first_file ne "undefined") {
|
||||
$width = $1; $height = $2;
|
||||
} else {
|
||||
print("Unrecognized results from pnmfile on $first_file.\n");
|
||||
- exit(50);
|
||||
+ exit 1;
|
||||
}
|
||||
} elsif ($last_file ne "undefined") {
|
||||
if ((`pnmfile $last_file` =~ m{\b(\d+)\sby\s(\d+)} )) {
|
||||
$width = $1; $height = $2;
|
||||
} else {
|
||||
print("Unrecognized results from pnmfile on $first_file.\n");
|
||||
- exit(50);
|
||||
+ exit 1;
|
||||
}
|
||||
} else {
|
||||
print("ppmfade: You must specify -f or -l (or both)\n");
|
||||
- exit(90);
|
||||
+ exit 1;
|
||||
}
|
||||
|
||||
print("Frames are " . $width . "W x " . $height . "H\n");
|
28
SOURCES/netpbm-python3.patch
Normal file
28
SOURCES/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
|
3016
SOURCES/netpbm-security-code.patch
Normal file
3016
SOURCES/netpbm-security-code.patch
Normal file
File diff suppressed because it is too large
Load Diff
267
SOURCES/netpbm-security-scripts.patch
Normal file
267
SOURCES/netpbm-security-scripts.patch
Normal file
@ -0,0 +1,267 @@
|
||||
diff --git a/editor/ppmfade b/editor/ppmfade
|
||||
index dcd7bf2..5091651 100755
|
||||
--- a/editor/ppmfade
|
||||
+++ b/editor/ppmfade
|
||||
@@ -40,6 +40,7 @@ exec perl -w -x -S -- "$0" "$@"
|
||||
#
|
||||
##############################################################################
|
||||
use strict;
|
||||
+use File::Temp "tempdir";
|
||||
|
||||
sub doVersionHack($) {
|
||||
my ($argvR) = @_;
|
||||
@@ -149,20 +150,26 @@ if ($first_file ne "undefined") {
|
||||
|
||||
print("Frames are " . $width . "W x " . $height . "H\n");
|
||||
|
||||
+#
|
||||
+# We create a tmp-directory right here
|
||||
+#
|
||||
+my $tmpdir = tempdir("ppmfade.XXXXXX", CLEANUP => 1);
|
||||
+
|
||||
+
|
||||
if ($first_file eq "undefined") {
|
||||
print "Fading from black to ";
|
||||
- system("ppmmake \\#000 $width $height >junk1$$.ppm");
|
||||
+ system("ppmmake \\#000 $width $height >$tmpdir/junk1$$.ppm");
|
||||
} else {
|
||||
print "Fading from $first_file to ";
|
||||
- system("cp", $first_file, "junk1$$.ppm");
|
||||
+ system("cp", $first_file, "$tmpdir/junk1$$.ppm");
|
||||
}
|
||||
|
||||
if ($last_file eq "undefined") {
|
||||
print "black.\n";
|
||||
- system("ppmmake \\#000 $width $height >junk2$$.ppm");
|
||||
+ system("ppmmake \\#000 $width $height >$tmpdir/junk2$$.ppm");
|
||||
} else {
|
||||
print "$last_file\n";
|
||||
- system("cp", $last_file, "junk2$$.ppm");
|
||||
+ system("cp", $last_file, "$tmpdir/junk2$$.ppm");
|
||||
}
|
||||
|
||||
#
|
||||
@@ -170,14 +177,14 @@ if ($last_file eq "undefined") {
|
||||
#
|
||||
|
||||
# Here's what our temporary files are:
|
||||
-# junk1$$.ppm: The original (fade-from) image
|
||||
-# junk2$$.ppm: The target (fade-from) image
|
||||
-# junk3$$.ppm: The frame of the fade for the current iteration of the
|
||||
-# the for loop.
|
||||
-# junk1a$$.ppm: If the fade involves a ppmmix sequence from one intermediate
|
||||
-# image to another, this is the first frame of that
|
||||
-# sequence.
|
||||
-# junk2a$$.ppm: This is the last frame of the above-mentioned ppmmix sequence
|
||||
+# $tmpdir/junk1$$.ppm: The original (fade-from) image
|
||||
+# $tmpdir/junk2$$.ppm: The target (fade-from) image
|
||||
+# $tmpdir/junk3$$.ppm: The frame of the fade for the current iteration of the
|
||||
+# the for loop.
|
||||
+# $tmpdir/junk1a$$.ppm: If the fade involves a ppmmix sequence from one intermediate
|
||||
+# image to another, this is the first frame of that
|
||||
+# sequence.
|
||||
+# $tmpdir/junk2a$$.ppm: This is the last frame of the above-mentioned ppmmix sequence
|
||||
|
||||
my $i; # Frame number
|
||||
for ($i = 1; $i <= $nframes; $i++) {
|
||||
@@ -185,147 +192,147 @@ for ($i = 1; $i <= $nframes; $i++) {
|
||||
if ($mode eq $SPREAD) {
|
||||
if ($i <= 10) {
|
||||
my $n = $spline20[$i] * 100;
|
||||
- system("ppmspread $n junk1$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmspread $n $tmpdir/junk1$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} elsif ($i <= 20) {
|
||||
my $n;
|
||||
$n = $spline20[$i] * 100;
|
||||
- system("ppmspread $n junk1$$.ppm >junk1a$$.ppm");
|
||||
+ system("ppmspread $n $tmpdir/junk1$$.ppm >$tmpdir/junk1a$$.ppm");
|
||||
$n = (1-$spline20[$i-10]) * 100;
|
||||
- system("ppmspread $n junk2$$.ppm >junk2a$$.ppm");
|
||||
+ system("ppmspread $n $tmpdir/junk2$$.ppm >$tmpdir/junk2a$$.ppm");
|
||||
$n = $spline10[$i-10];
|
||||
- system("ppmmix $n junk1a$$.ppm junk2a$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk1a$$.ppm $tmpdir/junk2a$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} else {
|
||||
my $n = (1-$spline20[$i-10])*100;
|
||||
- system("ppmspread $n junk2$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmspread $n $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
}
|
||||
} elsif ($mode eq $SHIFT) {
|
||||
if ($i <= 10) {
|
||||
my $n = $spline20[$i] * 100;
|
||||
- system("ppmshift $n junk1$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmshift $n $tmpdir/junk1$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} elsif ($i <= 20) {
|
||||
my $n;
|
||||
$n = $spline20[$i] * 100;
|
||||
- system("ppmshift $n junk1$$.ppm >junk1a$$.ppm");
|
||||
+ system("ppmshift $n $tmpdir/junk1$$.ppm >$tmpdir/junk1a$$.ppm");
|
||||
$n = (1-$spline20[$i-10])*100;
|
||||
- system("ppmshift $n junk2$$.ppm >junk2a$$.ppm");
|
||||
+ system("ppmshift $n $tmpdir/junk2$$.ppm >$tmpdir/junk2a$$.ppm");
|
||||
$n = $spline10[$i-10];
|
||||
- system("ppmmix $n junk1a$$.ppm junk2a$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk1a$$.ppm $tmpdir/junk2a$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} else {
|
||||
my $n = (1-$spline20[$i-10]) * 100;
|
||||
- system("ppmshift $n junk2$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmshift $n $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
}
|
||||
} elsif ($mode eq $RELIEF) {
|
||||
if ($i == 1) {
|
||||
- system("ppmrelief junk1$$.ppm >junk1r$$.ppm");
|
||||
+ system("ppmrelief $tmpdir/junk1$$.ppm >$tmpdir/junk1r$$.ppm");
|
||||
}
|
||||
if ($i <= 10) {
|
||||
my $n = $spline10[$i];
|
||||
- system("ppmmix $n junk1$$.ppm junk1r$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk1$$.ppm $tmpdir/junk1r$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} elsif ($i <= 20) {
|
||||
my $n = $spline10[$i-10];
|
||||
- system("ppmmix $n junk1r$$.ppm junk2r$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk1r$$.ppm $tmpdir/junk2r$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} else {
|
||||
my $n = $spline10[$i-20];
|
||||
- system("ppmmix $n junk2r$$.ppm junk2$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk2r$$.ppm $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
}
|
||||
if ($i == 10) {
|
||||
- system("ppmrelief junk2$$.ppm >junk2r$$.ppm");
|
||||
+ system("ppmrelief $tmpdir/junk2$$.ppm >$tmpdir/junk2r$$.ppm");
|
||||
}
|
||||
} elsif ($mode eq $OIL) {
|
||||
if ($i == 1) {
|
||||
- system("ppmtopgm junk1$$.ppm | pgmoil >junko$$.ppm");
|
||||
- system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
|
||||
- ">junk1o$$.ppm");
|
||||
+ system("ppmtopgm $tmpdir/junk1$$.ppm | pgmoil >$tmpdir/junko$$.ppm");
|
||||
+ system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm " .
|
||||
+ ">$tmpdir/junk1o$$.ppm");
|
||||
}
|
||||
if ($i <= 10) {
|
||||
my $n = $spline10[$i];
|
||||
- system("ppmmix $n junk1$$.ppm junk1o$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk1$$.ppm $tmpdir/junk1o$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} elsif ($i <= 20) {
|
||||
my $n = $spline10[$i-10];
|
||||
- system("ppmmix $n junk1o$$.ppm junk2o$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk1o$$.ppm $tmpdir/junk2o$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} else {
|
||||
my $n = $spline10[$i-20];
|
||||
- system("ppmmix $n junk2o$$.ppm junk2$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk2o$$.ppm $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
}
|
||||
if ($i == 10) {
|
||||
- system("ppmtopgm junk2$$.ppm | pgmoil >junko$$.ppm");
|
||||
- system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
|
||||
- ">junk2o$$.ppm");
|
||||
+ system("ppmtopgm $tmpdir/junk2$$.ppm | pgmoil >$tmpdir/junko$$.ppm");
|
||||
+ system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm " .
|
||||
+ ">$tmpdir/junk2o$$.ppm");
|
||||
}
|
||||
} elsif ($mode eq $EDGE) {
|
||||
if ($i == 1) {
|
||||
- system("ppmtopgm junk1$$.ppm | pgmedge >junko$$.ppm");
|
||||
- system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
|
||||
- ">junk1o$$.ppm");
|
||||
+ system("ppmtopgm $tmpdir/junk1$$.ppm | pgmedge >$tmpdir/junko$$.ppm");
|
||||
+ system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm " .
|
||||
+ ">$tmpdir/junk1o$$.ppm");
|
||||
}
|
||||
if ($i <= 10) {
|
||||
my $n = $spline10[$i];
|
||||
- system("ppmmix $n junk1$$.ppm junk1o$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk1$$.ppm $tmpdir/junk1o$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} elsif ($i <= 20) {
|
||||
my $n = $spline10[$i-10];
|
||||
- system("ppmmix $n junk1o$$.ppm junk2o$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk1o$$.ppm $tmpdir/junk2o$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} else {
|
||||
my $n = $spline10[$i-20];
|
||||
- system("ppmmix $n junk2o$$.ppm junk2$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk2o$$.ppm $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
}
|
||||
if ($i == 10) {
|
||||
- system("ppmtopgm junk2$$.ppm | pgmedge >junko$$.ppm");
|
||||
- system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
|
||||
- ">junk2o$$.ppm");
|
||||
+ system("ppmtopgm $tmpdir/junk2$$.ppm | pgmedge >$tmpdir/junko$$.ppm");
|
||||
+ system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm " .
|
||||
+ ">$tmpdir/junk2o$$.ppm");
|
||||
}
|
||||
} elsif ($mode eq $BENTLEY) {
|
||||
if ($i == 1) {
|
||||
- system("ppmtopgm junk1$$.ppm | pgmbentley >junko$$.ppm");
|
||||
- system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
|
||||
- ">junk1o$$.ppm");
|
||||
+ system("ppmtopgm $tmpdir/junk1$$.ppm | pgmbentley >$tmpdir/junko$$.ppm");
|
||||
+ system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm " .
|
||||
+ ">$tmpdir/junk1o$$.ppm");
|
||||
}
|
||||
if ($i <= 10) {
|
||||
my $n = $spline10[$i];
|
||||
- system("ppmmix $n junk1$$.ppm junk1o$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk1$$.ppm $tmpdir/junk1o$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} elsif ($i <= 20) {
|
||||
my $n = $spline10[$i-10];
|
||||
- system("ppmmix $n junk1o$$.ppm junk2o$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk1o$$.ppm $tmpdir/junk2o$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} else {
|
||||
my $n = $spline10[$i-20];
|
||||
- system("ppmmix $n junk2o$$.ppm junk2$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk2o$$.ppm $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
}
|
||||
if ($i == 10) {
|
||||
- system("ppmtopgm junk2$$.ppm | pgmbentley >junko$$.ppm");
|
||||
- system("rgb3toppm junko$$.ppm junko$$.ppm junko$$.ppm " .
|
||||
- ">junk2o$$.ppm");
|
||||
+ system("ppmtopgm $tmpdir/junk2$$.ppm | pgmbentley >$tmpdir/junko$$.ppm");
|
||||
+ system("rgb3toppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm $tmpdir/junko$$.ppm " .
|
||||
+ ">$tmpdir/junk2o$$.ppm");
|
||||
}
|
||||
} elsif ($mode eq $BLOCK) {
|
||||
if ($i <= 10) {
|
||||
my $n = 1 - 1.9*$spline20[$i];
|
||||
- system("pamscale $n junk1$$.ppm | " .
|
||||
- "pamscale -width $width -height $height >junk3$$.ppm");
|
||||
+ system("pamscale $n $tmpdir/junk1$$.ppm | " .
|
||||
+ "pamscale -width $width -height $height >$tmpdir/junk3$$.ppm");
|
||||
} elsif ($i <= 20) {
|
||||
my $n = $spline10[$i-10];
|
||||
- system("ppmmix $n junk1a$$.ppm junk2a$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk1a$$.ppm $tmpdir/junk2a$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} else {
|
||||
my $n = 1 - 1.9*$spline20[31-$i];
|
||||
- system("pamscale $n junk2$$.ppm | " .
|
||||
- "pamscale -width $width -height $height >junk3$$.ppm");
|
||||
+ system("pamscale $n $tmpdir/junk2$$.ppm | " .
|
||||
+ "pamscale -width $width -height $height >$tmpdir/junk3$$.ppm");
|
||||
}
|
||||
if ($i == 10) {
|
||||
- system("cp", "junk3$$.ppm", "junk1a$$.ppm");
|
||||
- system("pamscale $n junk2$$.ppm | " .
|
||||
- "pamscale -width $width -height $height >junk2a$$.ppm");
|
||||
+ system("cp", "$tmpdir/junk3$$.ppm", "$tmpdir/junk1a$$.ppm");
|
||||
+ system("pamscale $n $tmpdir/junk2$$.ppm | " .
|
||||
+ "pamscale -width $width -height $height >$tmpdir/junk2a$$.ppm");
|
||||
}
|
||||
} elsif ($mode eq $MIX) {
|
||||
my $fade_factor = sqrt(1/($nframes-$i+1));
|
||||
- system("ppmmix $fade_factor junk1$$.ppm junk2$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $fade_factor $tmpdir/junk1$$.ppm $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} else {
|
||||
print("Internal error: impossible mode value '$mode'\n");
|
||||
}
|
||||
|
||||
my $outfile = sprintf("%s.%04d.ppm", $base_name, $i);
|
||||
- system("cp", "junk3$$.ppm", $outfile);
|
||||
+ system("cp", "$tmpdir/junk3$$.ppm", $outfile);
|
||||
}
|
||||
|
||||
#
|
||||
# Clean up shop.
|
||||
#
|
||||
-system("rm junk*$$.ppm");
|
||||
+system("rm $tmpdir/junk*$$.ppm");
|
||||
|
||||
exit(0);
|
19
SOURCES/netpbm-test.patch
Normal file
19
SOURCES/netpbm-test.patch
Normal file
@ -0,0 +1,19 @@
|
||||
diff -urNp a/converter/ppm/winicontoppm.c b/converter/ppm/winicontoppm.c
|
||||
--- a/converter/ppm/winicontoppm.c 2021-08-16 15:01:10.340119568 +0200
|
||||
+++ b/converter/ppm/winicontoppm.c 2021-08-16 15:02:02.414864550 +0200
|
||||
@@ -180,13 +180,13 @@ readU1String (FILE * const ifP,
|
||||
pm_error("out of memory");
|
||||
|
||||
rc = fread(string, sizeof(u1), length, ifP);
|
||||
- if (rc < length) {
|
||||
+ /* if (rc < length) {
|
||||
if (feof(ifP))
|
||||
pm_error("File read failed. Premature end of file");
|
||||
else
|
||||
pm_error("File read failed. Errno=%d (%s)",
|
||||
errno, strerror(errno));
|
||||
- }
|
||||
+ }*/
|
||||
|
||||
string[length] = 0;
|
||||
fileOffset += length * sizeof(u1);
|
21
SOURCES/netpbm-time.patch
Normal file
21
SOURCES/netpbm-time.patch
Normal file
@ -0,0 +1,21 @@
|
||||
diff -up netpbm-10.47.05/converter/other/fiasco/config.h.time netpbm-10.47.05/converter/other/fiasco/config.h
|
||||
--- netpbm-10.47.05/converter/other/fiasco/config.h.time 2009-12-10 08:34:36.000000000 +0100
|
||||
+++ netpbm-10.47.05/converter/other/fiasco/config.h 2009-12-10 08:43:54.000000000 +0100
|
||||
@@ -19,7 +19,7 @@
|
||||
#define STDC_HEADERS 1
|
||||
|
||||
/* Define if you can safely include both <sys/time.h> and <time.h>. */
|
||||
-#define TIME_WITH_SYS_TIME 1
|
||||
+/* #undef TIME_WITH_SYS_TIME */
|
||||
|
||||
/* Define if the X Window System is missing or not being used. */
|
||||
#define X_DISPLAY_MISSING 1
|
||||
@@ -75,7 +75,7 @@
|
||||
#define HAVE_STRING_H 1
|
||||
|
||||
/* Define if you have the <sys/time.h> header file. */
|
||||
-#define HAVE_SYS_TIME_H 1
|
||||
+/* #undef HAVE_SYS_TIME_H */
|
||||
|
||||
/* Define if you have the <unistd.h> header file. */
|
||||
#define HAVE_UNISTD_H 1
|
11
SOURCES/netpbm-xwdfix.patch
Normal file
11
SOURCES/netpbm-xwdfix.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- netpbm-10.35/converter/other/xwdtopnm.c.xwdfix 2006-09-18 13:24:50.000000000 +0200
|
||||
+++ netpbm-10.35/converter/other/xwdtopnm.c 2006-09-18 13:27:26.000000000 +0200
|
||||
@@ -945,7 +945,7 @@ getpix(pixelReader * const rdrP) {
|
||||
unsigned long const bitsToTakeMask = lsbmask[nBitsToTake];
|
||||
/* E.g. if nbitsToTake is 4, this is 0x0000000F */
|
||||
|
||||
- unsigned long bitsToTake;
|
||||
+ unsigned int bitsToTake;
|
||||
/* The actual bits we take, in the 'nBitsToTake' low bits */
|
||||
|
||||
assert(nBitsToTake <= 32);
|
1338
SPECS/netpbm.spec
Normal file
1338
SPECS/netpbm.spec
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user