Compare commits
No commits in common. "c8s" and "c10s" have entirely different histories.
1
.fmf/version
Normal file
1
.fmf/version
Normal file
@ -0,0 +1 @@
|
||||
1
|
17
.gitignore
vendored
17
.gitignore
vendored
@ -9,3 +9,20 @@
|
||||
/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
|
||||
|
7
gating.yaml
Normal file
7
gating.yaml
Normal file
@ -0,0 +1,7 @@
|
||||
--- !Policy
|
||||
product_versions:
|
||||
- rhel-10
|
||||
decision_context: osci_compose_gate
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
|
||||
|
@ -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 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",
|
||||
"-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));
|
||||
|
@ -1,24 +0,0 @@
|
||||
diff -urNp a/buildtools/Makefile b/buildtools/Makefile
|
||||
--- a/buildtools/Makefile 2018-09-24 11:36:56.173535757 +0200
|
||||
+++ b/buildtools/Makefile 2018-09-24 11:40:09.537553859 +0200
|
||||
@@ -44,7 +44,7 @@ genfontc:%:%.o $(NETPBMLIB)
|
||||
$(LD_FOR_BUILD) -o $@ $(LDFLAGS_FOR_BUILD) $< $(NETPBMLIB)
|
||||
|
||||
$(BUILDPROGS):%:%.o
|
||||
- $(LD_FOR_BUILD) -o $@ $(LDFLAGS_FOR_BUILD) $<
|
||||
+ $(LD_FOR_BUILD) -o $@ $(LDFLAGSPRE) $<
|
||||
|
||||
distclean clean: cleanlocal
|
||||
.PHONY: cleanlocal
|
||||
diff -urNp a/test/Makefile b/test/Makefile
|
||||
--- a/test/Makefile 2018-09-24 11:36:56.211535549 +0200
|
||||
+++ b/test/Makefile 2018-09-24 12:40:56.440812065 +0200
|
||||
@@ -18,7 +18,7 @@ testrandom.o: testrandom.c
|
||||
$(CC_FOR_BUILD) -c -o $@ $(CFLAGS_FOR_BUILD) $<
|
||||
|
||||
testrandom: testrandom.o
|
||||
- $(LD_FOR_BUILD) -o $@ $(LDFLAGS_FOR_BUILD) $<
|
||||
+ $(LD_FOR_BUILD) -o $@ $(LDFLAGSPRE) $<
|
||||
|
||||
RAND_VARIETY ?= $(shell ./testrandom -x)
|
||||
|
@ -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-2.patch
Normal file
41
netpbm-c99-2.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
|
46
netpbm-c99.patch
Normal file
46
netpbm-c99.patch
Normal file
@ -0,0 +1,46 @@
|
||||
Include "pm.h" for the declaration of the overflow_add function. This
|
||||
avoids an implicit function declaration. Future C compilers will
|
||||
require that all functions are declared explicitly. Implicit function
|
||||
declarations are a language feature that was removed in 1999.
|
||||
|
||||
Likewise, include "pm.h" for the newly added declarations of realloc2.
|
||||
This fixes a pointer truncation bug in pjtoppm.
|
||||
|
||||
Both issues are specific to downstream patches.
|
||||
|
||||
diff --git a/converter/pbm/pbmtoppa/pbm.c b/converter/pbm/pbmtoppa/pbm.c
|
||||
index 1c8d236219b297e1..d63cab63b13f2051 100644
|
||||
--- a/converter/pbm/pbmtoppa/pbm.c
|
||||
+++ b/converter/pbm/pbmtoppa/pbm.c
|
||||
@@ -12,6 +12,7 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
+#include "pm.h"
|
||||
#include "ppapbm.h"
|
||||
|
||||
int make_pbm_stat(pbm_stat* pbm,FILE* fptr)
|
||||
diff --git a/converter/ppm/pjtoppm.c b/converter/ppm/pjtoppm.c
|
||||
index c458c06457c2b9bd..5e93a6acb8d6f198 100644
|
||||
--- a/converter/ppm/pjtoppm.c
|
||||
+++ b/converter/ppm/pjtoppm.c
|
||||
@@ -10,6 +10,7 @@
|
||||
** implied warranty.
|
||||
*/
|
||||
|
||||
+#include "pm.h"
|
||||
#include "ppm.h"
|
||||
#include "mallocvar.h"
|
||||
|
||||
diff --git a/lib/pm.h b/lib/pm.h
|
||||
index 5037c2519c565fbc..435445d5e7f52fbf 100644
|
||||
--- a/lib/pm.h
|
||||
+++ b/lib/pm.h
|
||||
@@ -457,6 +457,7 @@ pm_parse_height(const char * const arg);
|
||||
|
||||
void *malloc2(int, int);
|
||||
void *malloc3(int, int, int);
|
||||
+void *realloc2(void * a, int b, int c);
|
||||
#define overflow2(a,b) __overflow2(a,b)
|
||||
void __overflow2(int, int);
|
||||
void overflow3(int, int, int);
|
@ -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,351 +0,0 @@
|
||||
diff -urNp a/converter/other/fiasco/lib/error.c b/converter/other/fiasco/lib/error.c
|
||||
--- a/converter/other/fiasco/lib/error.c 2018-09-26 11:45:35.787418476 +0200
|
||||
+++ b/converter/other/fiasco/lib/error.c 2018-09-27 08:35:35.051707228 +0200
|
||||
@@ -89,8 +89,10 @@ set_error(const char *format, ...) {
|
||||
} else if (*str == 'c') {
|
||||
(void)va_arg(args, int);
|
||||
len += 1;
|
||||
- } else
|
||||
+ } else {
|
||||
+ va_end(args);
|
||||
return;
|
||||
+ }
|
||||
++str;
|
||||
}
|
||||
va_end(args);
|
||||
@@ -204,8 +206,10 @@ warning (const char *format, ...)
|
||||
|
||||
VA_START (args, format);
|
||||
|
||||
- if (verboselevel == FIASCO_NO_VERBOSITY)
|
||||
+ if (verboselevel == FIASCO_NO_VERBOSITY) {
|
||||
+ va_end (args);
|
||||
return;
|
||||
+ }
|
||||
|
||||
fprintf (stderr, "Warning: ");
|
||||
vfprintf (stderr, format, args);
|
||||
@@ -224,8 +228,10 @@ message (const char *format, ...)
|
||||
|
||||
VA_START (args, format);
|
||||
|
||||
- if (verboselevel == FIASCO_NO_VERBOSITY)
|
||||
+ if (verboselevel == FIASCO_NO_VERBOSITY) {
|
||||
+ va_end(args);
|
||||
return;
|
||||
+ }
|
||||
|
||||
vfprintf (stderr, format, args);
|
||||
fputc ('\n', stderr);
|
||||
@@ -242,8 +248,10 @@ debug_message (const char *format, ...)
|
||||
|
||||
VA_START (args, format);
|
||||
|
||||
- if (verboselevel < FIASCO_ULTIMATE_VERBOSITY)
|
||||
+ if (verboselevel < FIASCO_ULTIMATE_VERBOSITY) {
|
||||
+ va_end (args);
|
||||
return;
|
||||
+ }
|
||||
|
||||
fprintf (stderr, "*** ");
|
||||
vfprintf (stderr, format, args);
|
||||
@@ -261,8 +269,10 @@ info (const char *format, ...)
|
||||
|
||||
VA_START (args, format);
|
||||
|
||||
- if (verboselevel == FIASCO_NO_VERBOSITY)
|
||||
+ if (verboselevel == FIASCO_NO_VERBOSITY) {
|
||||
+ va_end (args);
|
||||
return;
|
||||
+ }
|
||||
|
||||
vfprintf (stderr, format, args);
|
||||
fflush (stderr);
|
||||
diff -urNp a/converter/other/gemtopnm.c b/converter/other/gemtopnm.c
|
||||
--- a/converter/other/gemtopnm.c 2018-09-26 11:45:35.791418469 +0200
|
||||
+++ b/converter/other/gemtopnm.c 2018-09-27 08:36:51.058648634 +0200
|
||||
@@ -101,10 +101,11 @@ main(argc, argv)
|
||||
|
||||
if (planes == 1)
|
||||
type = PBM_TYPE;
|
||||
- else
|
||||
+ else
|
||||
type = PPM_TYPE;
|
||||
|
||||
- pnm_writepnminit( stdout, cols, rows, MAXVAL, type, 0 );
|
||||
+ pnm_writepnminit( stdout, cols, rows, MAXVAL, type, 0 );
|
||||
+
|
||||
|
||||
overflow_add(cols, padright);
|
||||
{
|
||||
diff -urNp a/converter/other/jbig/jbigtopnm.c b/converter/other/jbig/jbigtopnm.c
|
||||
--- a/converter/other/jbig/jbigtopnm.c 2018-09-26 11:45:35.779418489 +0200
|
||||
+++ b/converter/other/jbig/jbigtopnm.c 2018-09-26 12:30:12.498686400 +0200
|
||||
@@ -279,6 +279,7 @@ int main (int argc, char **argv)
|
||||
}
|
||||
|
||||
pm_close(fout);
|
||||
+ pm_close(fin);
|
||||
|
||||
jbg_dec_free(&s);
|
||||
|
||||
diff -urNp a/converter/other/jbig/libjbig/jbig.c b/converter/other/jbig/libjbig/jbig.c
|
||||
--- a/converter/other/jbig/libjbig/jbig.c 2018-09-26 11:45:35.779418489 +0200
|
||||
+++ b/converter/other/jbig/libjbig/jbig.c 2018-09-26 12:32:47.179520102 +0200
|
||||
@@ -887,7 +887,7 @@ void jbg_enc_options(struct jbg_enc_stat
|
||||
if (order >= 0 && order <= 0x0f) s->order = order;
|
||||
if (options >= 0) s->options = options;
|
||||
if (l0 > 0) s->l0 = l0;
|
||||
- if (mx >= 0 && my < 128) s->mx = mx;
|
||||
+ if (mx >= 0 && mx < 128) s->mx = mx;
|
||||
if (my >= 0 && my < 256) s->my = my;
|
||||
|
||||
return;
|
||||
diff -urNp a/converter/other/jpeg2000/jpeg2ktopam.c b/converter/other/jpeg2000/jpeg2ktopam.c
|
||||
--- a/converter/other/jpeg2000/jpeg2ktopam.c 2018-09-26 11:45:35.774418498 +0200
|
||||
+++ b/converter/other/jpeg2000/jpeg2ktopam.c 2018-09-26 12:47:13.369571321 +0200
|
||||
@@ -135,11 +135,11 @@ readJ2k(const char * const inputFilena
|
||||
|
||||
jasperP = jas_image_decode(instreamP, jas_image_getfmt(instreamP),
|
||||
(char*)options);
|
||||
- if (jasperP == NULL)
|
||||
+ if (jasperP == NULL) {
|
||||
pm_error("Unable to interpret JPEG-2000 input. "
|
||||
"The Jasper library jas_image_decode() subroutine failed.");
|
||||
-
|
||||
- jas_stream_close(instreamP);
|
||||
+ }
|
||||
+ jas_stream_close(instreamP);
|
||||
|
||||
*jasperPP = jasperP;
|
||||
}
|
||||
diff -urNp a/converter/other/jpeg2000/libjasper/jpc/jpc_util.c b/converter/other/jpeg2000/libjasper/jpc/jpc_util.c
|
||||
--- a/converter/other/jpeg2000/libjasper/jpc/jpc_util.c 2018-09-26 11:45:35.774418498 +0200
|
||||
+++ b/converter/other/jpeg2000/libjasper/jpc/jpc_util.c 2018-09-26 12:50:30.121353853 +0200
|
||||
@@ -151,7 +151,7 @@ int jpc_atoaf(const char *s, int *numval
|
||||
if ((cp = strtok(buf, delim))) {
|
||||
++n;
|
||||
while ((cp = strtok(0, delim))) {
|
||||
- if (cp != '\0') {
|
||||
+ if (*cp != '\0') {
|
||||
++n;
|
||||
}
|
||||
}
|
||||
@@ -169,7 +169,7 @@ int jpc_atoaf(const char *s, int *numval
|
||||
vs[n] = atof(cp);
|
||||
++n;
|
||||
while ((cp = strtok(0, delim))) {
|
||||
- if (cp != '\0') {
|
||||
+ if (*cp != '\0') {
|
||||
vs[n] = atof(cp);
|
||||
++n;
|
||||
}
|
||||
diff -urNp a/converter/other/jpeg2000/pamtojpeg2k.c b/converter/other/jpeg2000/pamtojpeg2k.c
|
||||
--- a/converter/other/jpeg2000/pamtojpeg2k.c 2018-09-26 11:45:35.774418498 +0200
|
||||
+++ b/converter/other/jpeg2000/pamtojpeg2k.c 2018-09-26 12:52:06.202247510 +0200
|
||||
@@ -355,7 +355,7 @@ convertToJasperImage(struct pam * cons
|
||||
JAS_IMAGE_CT_COLOR(JAS_IMAGE_CT_RGB_B));
|
||||
}
|
||||
} else {
|
||||
- if (strncmp(inpamP->tuple_type, "GRAYSCALE", 9 == 0) ||
|
||||
+ if (strncmp(inpamP->tuple_type, "GRAYSCALE", 9) == 0 ||
|
||||
strncmp(inpamP->tuple_type, "BLACKANDWHITE", 13) == 0) {
|
||||
jas_image_setclrspc(jasperP, JAS_CLRSPC_GENGRAY);
|
||||
jas_image_setcmpttype(jasperP, 0,
|
||||
diff -urNp a/converter/pbm/pbmtoln03.c b/converter/pbm/pbmtoln03.c
|
||||
--- a/converter/pbm/pbmtoln03.c 2018-09-26 11:45:35.769418507 +0200
|
||||
+++ b/converter/pbm/pbmtoln03.c 2018-09-26 13:15:36.205121268 +0200
|
||||
@@ -80,22 +80,25 @@ output_sixel_record (unsigned char * rec
|
||||
/* Do an encoding */
|
||||
record[j++] = '!' ;
|
||||
sprintf (repeated_str, "%d", i - start_repeat) ;
|
||||
- for (p = repeated_str ; *p ; p++)
|
||||
+ for (p = repeated_str ; *p ; p++) {
|
||||
record[j++] = *p ;
|
||||
- record[j++] = last_char ; }
|
||||
+ }
|
||||
+ record[j++] = last_char ;
|
||||
|
||||
- else {
|
||||
+ } else {
|
||||
for (k = 0 ; k < repeated ; k++)
|
||||
- record[j++] = last_char ; }
|
||||
+ record[j++] = last_char ;
|
||||
+ }
|
||||
|
||||
start_repeat = i ;
|
||||
- last_char = record[i] ; }
|
||||
+ last_char = record[i] ;
|
||||
}
|
||||
+ }
|
||||
|
||||
fwrite ((char *) record, j, 1, stdout) ;
|
||||
putchar ('-') ; /* DECGNL (graphics new-line) */
|
||||
putchar ('\n') ;
|
||||
- }
|
||||
+}
|
||||
|
||||
|
||||
static void
|
||||
diff -urNp a/converter/pbm/pbmtomacp.c b/converter/pbm/pbmtomacp.c
|
||||
--- a/converter/pbm/pbmtomacp.c 2018-09-26 11:45:35.769418507 +0200
|
||||
+++ b/converter/pbm/pbmtomacp.c 2018-09-26 14:47:55.085913872 +0200
|
||||
@@ -177,7 +177,7 @@ calculateCropPad(struct CmdlineInfo
|
||||
pm_message("Specified -bottom value %u is beyond edge of "
|
||||
"input image", cmdline.bottom);
|
||||
|
||||
- bottom = MIN3(cmdline.bottom, rows - 1, top + MACP_ROWS - 1);
|
||||
+ bottom = MIN3(cmdline.bottom, rows - 1, top + MACP_ROWS - 1);
|
||||
} else
|
||||
bottom = MIN(rows - 1, top + MACP_ROWS - 1);
|
||||
|
||||
diff -urNp a/converter/pbm/pbmtoppa/pbm.c b/converter/pbm/pbmtoppa/pbm.c
|
||||
--- a/converter/pbm/pbmtoppa/pbm.c 2018-09-26 11:45:35.769418507 +0200
|
||||
+++ b/converter/pbm/pbmtoppa/pbm.c 2018-09-26 14:49:51.956959516 +0200
|
||||
@@ -12,6 +12,7 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
+#include "ppm.h"
|
||||
#include "ppapbm.h"
|
||||
|
||||
int make_pbm_stat(pbm_stat* pbm,FILE* fptr)
|
||||
diff -urNp a/converter/ppm/pjtoppm.c b/converter/ppm/pjtoppm.c
|
||||
--- a/converter/ppm/pjtoppm.c 2018-09-26 11:45:35.797418458 +0200
|
||||
+++ b/converter/ppm/pjtoppm.c 2018-09-26 14:52:41.300937179 +0200
|
||||
@@ -11,6 +11,7 @@
|
||||
*/
|
||||
|
||||
#include "ppm.h"
|
||||
+#include "pm.h"
|
||||
#include "mallocvar.h"
|
||||
|
||||
static char usage[] = "[paintjetfile]";
|
||||
diff -urNp a/converter/ppm/ppmtomitsu.c b/converter/ppm/ppmtomitsu.c
|
||||
--- a/converter/ppm/ppmtomitsu.c 2018-09-26 11:45:35.797418458 +0200
|
||||
+++ b/converter/ppm/ppmtomitsu.c 2018-09-26 14:56:09.837804961 +0200
|
||||
@@ -651,9 +651,10 @@ main(int argc, char * argv[]) {
|
||||
dpi300 = TRUE;
|
||||
else if (pm_keymatch(argv[argn], "-tiny", 2))
|
||||
tiny = TRUE;
|
||||
- else
|
||||
+ else
|
||||
pm_usage(usage);
|
||||
- ++argn;
|
||||
+
|
||||
+ ++argn;
|
||||
}
|
||||
|
||||
if (argn < argc) {
|
||||
diff -urNp a/converter/ppm/tgatoppm.c b/converter/ppm/tgatoppm.c
|
||||
--- a/converter/ppm/tgatoppm.c 2018-09-26 11:45:35.795418462 +0200
|
||||
+++ b/converter/ppm/tgatoppm.c 2018-09-26 15:03:12.084322787 +0200
|
||||
@@ -168,8 +168,8 @@ get_pixel(FILE * const ifP, pixel * dest
|
||||
Red = getbyte( ifP );
|
||||
if ( Size == 32 )
|
||||
Alpha = getbyte( ifP );
|
||||
- else
|
||||
- Alpha = 0;
|
||||
+ else
|
||||
+ Alpha = 0;
|
||||
l = 0;
|
||||
break;
|
||||
|
||||
diff -urNp a/converter/ppm/xpmtoppm.c b/converter/ppm/xpmtoppm.c
|
||||
--- a/converter/ppm/xpmtoppm.c 2018-09-26 11:45:35.795418462 +0200
|
||||
+++ b/converter/ppm/xpmtoppm.c 2018-09-26 15:09:39.763747185 +0200
|
||||
@@ -941,8 +941,8 @@ convertRaster(FILE * cons
|
||||
if (imageOutFileP)
|
||||
ppm_writeppmrow(imageOutFileP,
|
||||
pixrow, cols, PPM_MAXMAXVAL, 0);
|
||||
- if (alphaOutFileP)
|
||||
- pbm_writepbmrow(alphaOutFileP, alpharow, cols, 0);
|
||||
+ if (alphaOutFileP)
|
||||
+ pbm_writepbmrow(alphaOutFileP, alpharow, cols, 0);
|
||||
}
|
||||
|
||||
pbm_freerow(alpharow);
|
||||
diff -urNp a/editor/pnmconvol.c b/editor/pnmconvol.c
|
||||
--- a/editor/pnmconvol.c 2018-09-26 11:45:35.758418526 +0200
|
||||
+++ b/editor/pnmconvol.c 2018-09-26 15:25:06.963058646 +0200
|
||||
@@ -733,7 +733,7 @@ parsePlaneFileLine(const char * const
|
||||
"-matrix value is not a valid floating point "
|
||||
"number", colCt, line);
|
||||
|
||||
- ++colCt;
|
||||
+ ++colCt;
|
||||
}
|
||||
pm_strfree(token);
|
||||
}
|
||||
diff -urNp a/generator/pbmtext.c b/generator/pbmtext.c
|
||||
--- a/generator/pbmtext.c 2018-09-26 11:45:35.727418580 +0200
|
||||
+++ b/generator/pbmtext.c 2018-09-26 15:29:14.618407929 +0200
|
||||
@@ -404,7 +404,7 @@ fixControlChars(const PM_WCHAR * const
|
||||
output[outCursor++] = L' ';
|
||||
} else if (currentChar > fontP->maxglyph ||
|
||||
!fontP->glyph[currentChar]) {
|
||||
- if (currentChar > PM_FONT2_MAXGLYPH)
|
||||
+ if (currentChar > PM_FONT2_MAXGLYPH){
|
||||
pm_message("code point %X is beyond what this program "
|
||||
"can handle. Max=%X",
|
||||
(unsigned int)currentChar, PM_FONT2_MAXGLYPH);
|
||||
@@ -420,15 +420,15 @@ fixControlChars(const PM_WCHAR * const
|
||||
(unsigned int) currentChar );
|
||||
output[outCursor++] = ' ';
|
||||
}
|
||||
+ }
|
||||
} else
|
||||
output[outCursor++] = input[inCursor];
|
||||
-
|
||||
+
|
||||
assert(outCursor <= outputSize);
|
||||
}
|
||||
output[outCursor++] = L'\0';
|
||||
|
||||
assert(outCursor <= outputSize);
|
||||
-
|
||||
*outputP = output;
|
||||
}
|
||||
|
||||
diff -urNp a/lib/libpm.c b/lib/libpm.c
|
||||
--- a/lib/libpm.c 2018-09-26 11:45:35.768418509 +0200
|
||||
+++ b/lib/libpm.c 2018-09-27 08:20:50.933203723 +0200
|
||||
@@ -437,9 +437,10 @@ pm_maxvaltobits(int const maxval) {
|
||||
return 15;
|
||||
else if ( (long) maxval <= 65535L )
|
||||
return 16;
|
||||
- else
|
||||
+ else {
|
||||
pm_error( "maxval of %d is too large!", maxval );
|
||||
return -1; /* Should never come here */
|
||||
+ }
|
||||
}
|
||||
|
||||
int
|
||||
diff -urNp a/other/pamfix.c b/other/pamfix.c
|
||||
--- a/other/pamfix.c 2018-09-26 11:45:35.755418531 +0200
|
||||
+++ b/other/pamfix.c 2018-09-27 08:23:00.923166374 +0200
|
||||
@@ -184,7 +184,7 @@ clipPamRow(const struct pam * const pamP
|
||||
"image maxval of %lu",
|
||||
row, col, plane, tuplerow[col][plane],
|
||||
pamP->maxval);
|
||||
- tuplerow[col][plane] = pamP->maxval;
|
||||
+ tuplerow[col][plane] = pamP->maxval;
|
||||
}
|
||||
}
|
||||
}
|
||||
diff -urNp a/other/pnmcolormap.c b/other/pnmcolormap.c
|
||||
--- a/other/pnmcolormap.c 2018-09-26 11:45:35.756418529 +0200
|
||||
+++ b/other/pnmcolormap.c 2018-09-27 08:28:57.053986251 +0200
|
||||
@@ -838,9 +838,10 @@ colormapToSquare(struct pam * const pamP
|
||||
unsigned int const intsqrt = (int)sqrt((float)colormap.size);
|
||||
if (intsqrt * intsqrt == colormap.size)
|
||||
pamP->width = intsqrt;
|
||||
- else
|
||||
+ else {
|
||||
pamP->width = intsqrt + 1;
|
||||
overflow_add(intsqrt, 1);
|
||||
+ }
|
||||
}
|
||||
{
|
||||
unsigned int const intQuotient = colormap.size / pamP->width;
|
@ -1,7 +1,21 @@
|
||||
diff -urNp old/userguide/cameratopam.html new/userguide/cameratopam.html
|
||||
--- old/userguide/cameratopam.html 2017-09-05 09:05:16.000000000 +0200
|
||||
+++ new/userguide/cameratopam.html 2017-09-05 13:16:33.622352535 +0200
|
||||
@@ -25,10 +25,10 @@ cameratopam - convert raw camera image t
|
||||
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>]
|
||||
@ -14,7 +28,7 @@ diff -urNp old/userguide/cameratopam.html new/userguide/cameratopam.html
|
||||
[<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.
|
||||
|
||||
@ -23,7 +37,7 @@ diff -urNp old/userguide/cameratopam.html new/userguide/cameratopam.html
|
||||
|
||||
<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
|
||||
@ -40,47 +54,49 @@ diff -urNp old/userguide/cameratopam.html new/userguide/cameratopam.html
|
||||
|
||||
<dd>For cameras based on the Fuji Super CCD SR, this option causes
|
||||
<b>cameratopam</b> to use the secondary sensors, in effect
|
||||
diff -urNp old/userguide/fiascotopnm.html new/userguide/fiascotopnm.html
|
||||
--- old/userguide/fiascotopnm.html 2017-09-05 09:05:16.000000000 +0200
|
||||
+++ new/userguide/fiascotopnm.html 2017-09-05 13:32:51.810458154 +0200
|
||||
@@ -51,7 +51,7 @@ the output file(s) are written to the fi
|
||||
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.
|
||||
@@ -113,13 +113,8 @@ 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>
|
||||
-<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>
|
||||
+<dt><b>-h</b>, <b>--help</b>
|
||||
+Print help, then exit.
|
||||
|
||||
</DL>
|
||||
</dl>
|
||||
|
||||
diff -urNp old/userguide/pamperspective.html new/userguide/pamperspective.html
|
||||
--- old/userguide/pamperspective.html 2017-09-05 09:05:16.000000000 +0200
|
||||
+++ new/userguide/pamperspective.html 2017-09-05 13:23:15.869997105 +0200
|
||||
@@ -220,7 +220,7 @@ default rectangle as the "frame." The vi
|
||||
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
|
||||
@ -89,31 +105,20 @@ diff -urNp old/userguide/pamperspective.html new/userguide/pamperspective.html
|
||||
<b>--include</b> (or their defaults) are in the visible part. The
|
||||
visible part is the smallest possible rectangle that contains the
|
||||
parts specified those three ways.
|
||||
diff -urNp old/converter/pbm/pbmtoepson.c new/converter/pbm/pbmtoepson.c
|
||||
--- old/converter/pbm/pbmtoepson.c 2018-01-04 14:26:14.740024843 +0100
|
||||
+++ new/converter/pbm/pbmtoepson.c 2018-01-04 14:28:47.970518766 +0100
|
||||
@@ -75,7 +75,7 @@ parseCommandLine(int ar
|
||||
&dpiSpec, 0);
|
||||
OPTENT3(0, "adjacent", OPT_FLAG, NULL,
|
||||
&adjacentSpec, 0);
|
||||
- OPTENT3(0, "nonadjacent", OPT_FLAG, NULL,
|
||||
+ OPTENT3(0, "noadjacent", OPT_FLAG, NULL,
|
||||
&nonadjacentSpec, 0);
|
||||
|
||||
opt.opt_table = option_def;
|
||||
diff -urNp old/userguide/pbmtoepson.html new/userguide/pbmtoepson.html
|
||||
--- old/userguide/pbmtoepson.html 2018-01-04 14:26:14.586024719 +0100
|
||||
+++ new/userguide/pbmtoepson.html 2018-01-04 14:27:56.466847698 +0100
|
||||
@@ -18,7 +18,7 @@ pbmtoepson - convert a PBM image into Ep
|
||||
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>
|
||||
|
@ -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,33 +1,34 @@
|
||||
diff -urNp a/lib/Makefile b/lib/Makefile
|
||||
--- a/lib/Makefile 2021-12-06 10:55:43.832967143 +0100
|
||||
+++ b/lib/Makefile 2021-12-06 10:56:09.862162960 +0100
|
||||
@@ -220,7 +220,7 @@ libpm.o: compile.h
|
||||
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)/link
|
||||
-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/
|
||||
@@ -262,19 +262,19 @@ $(INTERFACE_HEADERS:%=%_installhdr): $(P
|
||||
@@ -263,27 +263,26 @@ $(INTERFACE_HEADERS:%=%_installhdr): $(PKGDIR)/include/netpbm
|
||||
$(SRCDIR)/lib/$(@:%_installhdr=%) $(PKGDIR)/include/netpbm/
|
||||
|
||||
.PHONY: install.staticlib
|
||||
-install.staticlib: $(PKGDIR)/link
|
||||
-install.staticlib: $(PKGDIR)/staticlink
|
||||
+install.staticlib: $(PKGDIR)/lib
|
||||
$(INSTALL) -c -m $(INSTALL_PERM_LIBS) libnetpbm.$(STATICLIBSUFFIX) \
|
||||
- $(PKGDIR)/link
|
||||
- $(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)/link
|
||||
-install.sharedlibstub: $(PKGDIR)/sharedlink
|
||||
+install.sharedlibstub: $(PKGDIR)/lib
|
||||
ifeq ($(NETPBMLIBTYPE),unixshared)
|
||||
# install the link-time (.so) links to the runtime libraries
|
||||
- cd $(PKGDIR)/link ; \
|
||||
- cd $(PKGDIR)/sharedlink ; \
|
||||
+ cd $(PKGDIR)/lib ; \
|
||||
rm -f libnetpbm.$(NETPBMLIBSUFFIX); \
|
||||
- $(SYMLINK) ../lib/libnetpbm.$(NETPBMLIBSUFFIX).$(MAJ) \
|
||||
@ -35,3 +36,13 @@ diff -urNp a/lib/Makefile b/lib/Makefile
|
||||
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,184 +1,540 @@
|
||||
diff -urNp old/userguide/avstopam.html new/userguide/avstopam.html
|
||||
--- old/userguide/avstopam.html 2017-09-05 13:58:08.338559550 +0200
|
||||
+++ new/userguide/avstopam.html 2017-09-05 14:00:27.371039472 +0200
|
||||
@@ -1,8 +1,7 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Avstopam User Manual</title>
|
||||
-<meta http-equiv="content-type" content="text/html; charset=us-ascii" />
|
||||
</head>
|
||||
|
||||
diff -urNp a/userguide/avstopam.html b/userguide/avstopam.html
|
||||
--- a/userguide/avstopam.html 2022-01-03 16:56:37.731614243 +0100
|
||||
+++ b/userguide/avstopam.html 2022-01-03 16:58:29.889416006 +0100
|
||||
@@ -2,12 +2,13 @@
|
||||
<html><head><title>Avstopam User Manual</title></head>
|
||||
<body>
|
||||
diff -urNp old/userguide/escp2topbm.html new/userguide/escp2topbm.html
|
||||
--- old/userguide/escp2topbm.html 2017-09-05 13:58:08.335559561 +0200
|
||||
+++ new/userguide/escp2topbm.html 2017-09-05 14:01:20.226842694 +0200
|
||||
@@ -6,6 +6,7 @@ Updated: 14 July 2015
|
||||
<BR>
|
||||
<A HREF="#index">Table Of Contents</A>
|
||||
<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
|
||||
+<p>avstopam - convert an AVS X image to a Netpbm image</p>
|
||||
|
||||
<H2 id="synopsis">SYNOPSIS</H2>
|
||||
diff -urNp old/userguide/faxformat.html new/userguide/faxformat.html
|
||||
--- old/userguide/faxformat.html 2017-09-05 13:58:08.337559553 +0200
|
||||
+++ new/userguide/faxformat.html 2017-09-05 14:02:33.322571279 +0200
|
||||
<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 2022-01-03 16:56:37.731614243 +0100
|
||||
+++ b/userguide/faxformat.html 2022-01-03 16:58:29.890416013 +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 -urNp old/userguide/pampaintspill.html new/userguide/pampaintspill.html
|
||||
--- old/userguide/pampaintspill.html 2017-09-05 13:58:08.338559550 +0200
|
||||
+++ new/userguide/pampaintspill.html 2017-09-05 14:03:32.625351620 +0200
|
||||
@@ -1,8 +1,7 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Pampaintspill User Manual</title>
|
||||
-<meta http-equiv="content-type" content="text/html; charset=us-ascii" />
|
||||
</head>
|
||||
diff -urNp a/userguide/libnetpbm_ug.html b/userguide/libnetpbm_ug.html
|
||||
--- a/userguide/libnetpbm_ug.html 2022-01-03 16:56:37.732614250 +0100
|
||||
+++ b/userguide/libnetpbm_ug.html 2022-01-03 16:58:29.891416020 +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 2022-01-03 16:56:37.730614236 +0100
|
||||
+++ b/userguide/pamfunc.html 2022-01-03 16:58:29.892416027 +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 2022-01-03 16:56:37.731614243 +0100
|
||||
+++ b/userguide/pammixmulti.html 2022-01-03 16:58:29.893416034 +0100
|
||||
@@ -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 2022-01-03 16:56:37.730614236 +0100
|
||||
+++ b/userguide/pampaintspill.html 2022-01-03 17:05:08.124277395 +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,17 +19,17 @@ 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
|
||||
@@ -40,27 +40,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>
|
||||
@@ -116,46 +116,46 @@ command line options:
|
||||
2.0) make the paint sources stand out in the output image by pushing the
|
||||
gradients away from them.</dd>
|
||||
|
||||
- <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>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 2022-01-03 16:56:37.731614243 +0100
|
||||
+++ b/userguide/pamrecolor.html 2022-01-03 16:58:29.894416041 +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 -urNp old/userguide/pamrecolor.html new/userguide/pamrecolor.html
|
||||
--- old/userguide/pamrecolor.html 2017-09-05 13:58:08.336559557 +0200
|
||||
+++ new/userguide/pamrecolor.html 2017-09-05 14:04:34.714122098 +0200
|
||||
@@ -1,8 +1,7 @@
|
||||
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
|
||||
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Pamrecolor User Manual</title>
|
||||
-<meta http-equiv="Content-type" content="text/html;charset=UTF-8">
|
||||
</head>
|
||||
<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 -urNp old/userguide/pamsistoaglyph.html new/userguide/pamsistoaglyph.html
|
||||
--- old/userguide/pamsistoaglyph.html 2017-09-05 13:58:08.334559565 +0200
|
||||
+++ new/userguide/pamsistoaglyph.html 2017-09-05 14:05:25.865944327 +0200
|
||||
@@ -1,8 +1,7 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Pamsistoaglyph User Manual</title>
|
||||
-<meta http-equiv="content-type" content="text/html; charset=us-ascii" />
|
||||
</head>
|
||||
<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 -urNp old/userguide/pamstereogram.html new/userguide/pamstereogram.html
|
||||
--- old/userguide/pamstereogram.html 2017-09-05 13:58:08.337559553 +0200
|
||||
+++ new/userguide/pamstereogram.html 2017-09-05 14:13:28.523959069 +0200
|
||||
@@ -1,5 +1,5 @@
|
||||
-<!DOCTYPE html>
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Pamstereogram User Manual</title>
|
||||
</head>
|
||||
@@ -10,7 +10,7 @@
|
||||
<dl>
|
||||
|
||||
<p>Updated: 19 June 2015</p>
|
||||
@@ -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><a href="#contents">Table Of Contents</a></p>
|
||||
+<p><a href="#index">Table Of Contents</a></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>
|
||||
|
||||
<h2 id="name">NAME</h2>
|
||||
diff -urNp old/userguide/pamtoavs.html new/userguide/pamtoavs.html
|
||||
--- old/userguide/pamtoavs.html 2017-09-05 13:58:08.329559583 +0200
|
||||
+++ new/userguide/pamtoavs.html 2017-09-05 14:05:49.299863901 +0200
|
||||
@@ -1,5 +1,5 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Pamtoavs User Manual</title>
|
||||
<meta http-equiv="content-type" content="text/html; charset=us-ascii" />
|
||||
diff -urNp old/userguide/pamtooctaveimg.html new/userguide/pamtooctaveimg.html
|
||||
--- old/userguide/pamtooctaveimg.html 2017-09-05 13:58:08.335559561 +0200
|
||||
+++ new/userguide/pamtooctaveimg.html 2017-09-05 14:06:21.825752356 +0200
|
||||
@@ -1,8 +1,7 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
||||
+<html>
|
||||
<head>
|
||||
<title>Pamtooctaveimg User Manual</title>
|
||||
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
</head>
|
||||
<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 2022-01-03 16:56:37.732614250 +0100
|
||||
+++ b/userguide/pbmtog3.html 2022-01-03 16:58:29.894416041 +0100
|
||||
@@ -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>
|
||||
|
||||
<body>
|
||||
diff -urNp old/userguide/pnmflip.html new/userguide/pnmflip.html
|
||||
--- old/userguide/pnmflip.html 2017-09-05 13:58:08.336559557 +0200
|
||||
+++ new/userguide/pnmflip.html 2017-09-05 14:07:15.065963977 +0200
|
||||
@@ -4,9 +4,11 @@
|
||||
<BODY>
|
||||
<H1>pnmflip</H1>
|
||||
<BR>
|
||||
+<H2>NAME</H2>
|
||||
<p><b>pnmflip</b> was replaced in Netpbm 10.13 (December 2002) by
|
||||
<b><a href="pamflip.html">pamflip</a></b>.
|
||||
<dl>
|
||||
<dt><b>-reversebits</b>
|
||||
@@ -80,7 +80,7 @@ You cannot specify both.
|
||||
<h2 id="history">HISTORY</h2>
|
||||
|
||||
+<H2>DESCRIPTION</H2>
|
||||
<P><B>pamflip</b> is mostly backward compatible with <b>pnmflip</b>,
|
||||
but works on PAM images too.
|
||||
<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 old/userguide/pnmmercator.html new/userguide/pnmmercator.html
|
||||
--- old/userguide/pnmmercator.html 2017-09-05 13:58:08.334559565 +0200
|
||||
+++ new/userguide/pnmmercator.html 2017-09-05 14:08:08.305214742 +0200
|
||||
@@ -1,7 +1,6 @@
|
||||
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||||
<html>
|
||||
<head>
|
||||
-<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
|
||||
<title>PnmMercator User Manual</title>
|
||||
</head>
|
||||
<body>
|
||||
diff -urNp old/userguide/ppmtogif.html new/userguide/ppmtogif.html
|
||||
--- old/userguide/ppmtogif.html 2017-09-05 13:58:08.337559553 +0200
|
||||
+++ new/userguide/ppmtogif.html 2017-09-05 14:09:51.450583126 +0200
|
||||
@@ -4,11 +4,14 @@
|
||||
<BODY>
|
||||
<H1>ppmtogif</H1>
|
||||
<BR>
|
||||
+<H2>NAME</H2>
|
||||
diff -urNp a/userguide/ppmtogif.html b/userguide/ppmtogif.html
|
||||
--- a/userguide/ppmtogif.html 2022-01-03 16:56:37.733614257 +0100
|
||||
+++ b/userguide/ppmtogif.html 2022-01-03 16:58:29.895416049 +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
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,13 +0,0 @@
|
||||
diff --git a/converter/ppm/Makefile b/converter/ppm/Makefile
|
||||
index b97349d..f68170f 100644
|
||||
--- a/converter/ppm/Makefile
|
||||
+++ b/converter/ppm/Makefile
|
||||
@@ -7,7 +7,7 @@ VPATH=.:$(SRCDIR)/$(SUBDIR)
|
||||
|
||||
include $(BUILDDIR)/config.mk
|
||||
|
||||
-SUBDIRS = hpcdtoppm ppmtompeg
|
||||
+SUBDIRS = hpcdtoppm
|
||||
|
||||
PORTBINARIES = 411toppm eyuvtoppm gouldtoppm ilbmtoppm imgtoppm \
|
||||
leaftoppm mtvtoppm neotoppm \
|
@ -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,9 +1,28 @@
|
||||
diff -urNp old/buildtools/makeman new/buildtools/makeman
|
||||
--- old/buildtools/makeman 2018-01-03 12:15:55.000000000 +0100
|
||||
+++ new/buildtools/makeman 2018-02-26 14:18:39.993760106 +0100
|
||||
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,335 +1,119 @@
|
||||
diff -urNp old/converter/other/anytopnm neew/converter/other/anytopnm
|
||||
--- old/converter/other/anytopnm 2017-09-05 12:58:26.795741945 +0200
|
||||
+++ neew/converter/other/anytopnm 2017-09-05 13:03:12.985472566 +0200
|
||||
@@ -537,9 +537,8 @@ else
|
||||
|
||||
fi
|
||||
|
||||
-tempdir=$(mktemp -d "${TMPDIR:-/tmp}/anytopnm.XXXXXXXX") ||
|
||||
+tempdir=$(mktemp -d -t anytopnm.XXXXXXXX) ||
|
||||
( echo "Could not create temporary file. Exiting." 1>&2; exit 1; )
|
||||
-trap 'rm -rf $tempdir' 0
|
||||
|
||||
# Take out all spaces
|
||||
# Find the filename extension for last-ditch efforts later
|
||||
@@ -565,9 +564,17 @@ if [ "$filetype" = "unknown" ]; then
|
||||
echo "$progname: unknown file type. " \
|
||||
"'file' says mime type is '$mimeType', " 1>&2
|
||||
echo "type description is '$typeDescription'" 1>&2
|
||||
+ if [ -d "$tempdir" ] ; then
|
||||
+ rm -rf "$tempdir"
|
||||
+ fi
|
||||
+
|
||||
exit 1
|
||||
fi
|
||||
|
||||
convertIt $file $filetype
|
||||
|
||||
+if [ -d "$tempdir" ] ; then
|
||||
+ rm -rf "$tempdir"
|
||||
+fi
|
||||
+
|
||||
exit 0
|
||||
diff -urNp old/editor/pamstretch-gen neew/editor/pamstretch-gen
|
||||
--- old/editor/pamstretch-gen 2017-09-05 12:58:26.763741946 +0200
|
||||
+++ neew/editor/pamstretch-gen 2017-09-05 13:03:12.985472566 +0200
|
||||
@@ -34,12 +34,10 @@ if [ "$1" = "" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
-tempdir=$(mktemp -d "${TMPDIR:-/tmp}/netpbm.XXXXXXXX") ||
|
||||
+tempfile=$(mktemp /tmp/pnmig.XXXXXXXX) ||
|
||||
( echo "Could not create temporary file. Exiting." 1>&2; exit 1; )
|
||||
trap 'rm -rf $tempdir' 0 1 3 15
|
||||
|
||||
-tempfile=$tempdir/pnmig
|
||||
-
|
||||
if ! cat $2 >$tempfile 2>/dev/null; then
|
||||
echo 'pamstretch-gen: error reading file' 1>&2
|
||||
exit 1
|
||||
diff -urNp old/editor/ppmfade neew/editor/ppmfade
|
||||
--- old/editor/ppmfade 2017-09-05 12:58:26.767741946 +0200
|
||||
+++ neew/editor/ppmfade 2017-09-05 12:59:14.556731156 +0200
|
||||
@@ -40,6 +40,7 @@ exec perl -w -x -S -- "$0" "$@"
|
||||
#
|
||||
##############################################################################
|
||||
use strict;
|
||||
+use File::Temp "tempdir";
|
||||
|
||||
sub doVersionHack($) {
|
||||
my ($argvR) = @_;
|
||||
@@ -149,20 +149,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 +176,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 +191,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;
|
||||
diff -urNp a/editor/ppmfade b/editor/ppmfade
|
||||
--- a/editor/ppmfade 2022-06-28 07:58:59.195317750 +0200
|
||||
+++ b/editor/ppmfade 2022-06-28 08:04:56.070643056 +0200
|
||||
@@ -215,84 +215,84 @@ for ($i = 1; $i <= $nframes; $i++) {
|
||||
$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");
|
||||
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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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");
|
||||
- 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 -urNp old/editor/ppmshadow neew/editor/ppmshadow
|
||||
--- old/editor/ppmshadow 2017-09-05 12:58:26.768741946 +0200
|
||||
+++ neew/editor/ppmshadow 2017-09-05 13:02:51.480507649 +0200
|
||||
@@ -171,11 +171,12 @@ my $tmpdir = $ENV{TMPDIR} || "/tmp";
|
||||
my $ourtmp;
|
||||
|
||||
if ($keeptemp) {
|
||||
- $ourtmp = "$tmpdir/ppmshadow$$";
|
||||
- mkdir($ourtmp, 0777) or
|
||||
- die("Unable to create directory for temporary files '$ourtmp");
|
||||
+ $ourtmp = chomp($ourtmp = `mktemp -d -t PPMshadow.XXXXXX`);
|
||||
+ if($? >> 8) {
|
||||
+ die "Can't create directory for temporary files";
|
||||
+ }
|
||||
} else {
|
||||
- $ourtmp = File::Temp::tempdir("$tmpdir/ppmshadowXXXX", UNLINK=>1);
|
||||
+ $ourtmp = File::Temp::tempdir("$tmpdir/PPMshadow.XXXXXX", UNLINK=>1);
|
||||
}
|
||||
|
||||
# Apply defaults for arguments not specified
|
||||
system("ppmmix $n $tmpdir/junk2o.ppm $tmpdir/junk2.ppm " .
|
||||
|
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.
|
237
netpbm.spec
237
netpbm.spec
@ -1,7 +1,7 @@
|
||||
Summary: A library for handling different graphics file formats
|
||||
Name: netpbm
|
||||
Version: 10.82.00
|
||||
Release: 7%{?dist}
|
||||
Version: 11.02.00
|
||||
Release: 10%{?dist}
|
||||
# See copyright_summary for details
|
||||
License: BSD and GPLv2 and IJG and MIT and Public Domain
|
||||
URL: http://netpbm.sourceforge.net/
|
||||
@ -10,13 +10,12 @@ URL: http://netpbm.sourceforge.net/
|
||||
# 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
|
||||
Patch0: netpbm-security-scripts.patch
|
||||
Patch1: netpbm-security-code.patch
|
||||
Patch2: netpbm-ppmfadeusage.patch
|
||||
Patch3: netpbm-noppmtompeg.patch
|
||||
Patch4: netpbm-CVE-2017-2587.patch
|
||||
Patch3: netpbm-CVE-2017-2587.patch
|
||||
Patch4: netpbm-python3.patch
|
||||
Patch5: netpbm-time.patch
|
||||
Patch6: netpbm-gcc4.patch
|
||||
Patch7: netpbm-bmptopnm.patch
|
||||
@ -25,19 +24,24 @@ Patch9: netpbm-xwdfix.patch
|
||||
Patch10: netpbm-multilib.patch
|
||||
Patch11: netpbm-glibc.patch
|
||||
Patch12: netpbm-docfix.patch
|
||||
Patch13: netpbm-fiasco-overflow.patch
|
||||
Patch14: netpbm-cmuwtopbm.patch
|
||||
Patch15: netpbm-pamtojpeg2k.patch
|
||||
Patch16: netpbm-manfix.patch
|
||||
Patch17: netpbm-manual-pages.patch
|
||||
Patch18: netpbm-annocheck.patch
|
||||
Patch19: netpbm-jasper.patch
|
||||
Patch20: netpbm-covscan.patch
|
||||
Patch21: netpbm-lib.patch
|
||||
Patch14: netpbm-pamtojpeg2k.patch
|
||||
Patch15: netpbm-manfix.patch
|
||||
Patch16: netpbm-jasper.patch
|
||||
Patch17: netpbm-libdir-so.patch
|
||||
Patch18: netpbm-c99.patch
|
||||
Patch19: netpbm-c99-2.patch
|
||||
Patch20: netpbm-shlib-ldflags.patch
|
||||
|
||||
BuildRequires: libjpeg-devel, libpng-devel, libtiff-devel, flex, jbigkit-devel
|
||||
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
|
||||
@ -86,11 +90,11 @@ netpbm-doc. You'll also need to install the netpbm-progs package.
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
sed -i 's|^#!/usr/bin/python|#!%{__python3}|' buildtools/makeman
|
||||
rm -rf converter/other/jpeg2000/libjasper/
|
||||
rm -rf converter/other/jbig/libjbig/
|
||||
|
||||
%build
|
||||
%set_build_flags
|
||||
./configure <<EOF
|
||||
|
||||
|
||||
@ -114,34 +118,27 @@ rm -rf converter/other/jbig/libjbig/
|
||||
EOF
|
||||
|
||||
TOP=`pwd`
|
||||
%ifarch %{ix86}
|
||||
CFLAGS="$RPM_OPT_FLAGS -fPIC -mstackrealign -fcf-protection=full -flax-vector-conversions -fstack-protector-strong -fno-strict-aliasing"
|
||||
%else
|
||||
CFLAGS="$RPM_OPT_FLAGS -fPIC -flax-vector-conversions -fstack-protector-strong -fno-strict-aliasing"
|
||||
%endif
|
||||
|
||||
|
||||
make \
|
||||
CC="%{__cc}" \
|
||||
LDFLAGSPRE="-L$TOP/pbm -L$TOP/pgm -L$TOP/pnm -L$TOP/ppm -Wl,-z,now" \
|
||||
LDFLAGS="-L$TOP/pbm -L$TOP/pgm -L$TOP/pnm -L$TOP/ppm -Wl,-z,now -pie" \
|
||||
CFLAGS="$CFLAGS" \
|
||||
LADD="-lm -Wl,-z,now" \
|
||||
JPEGINC_DIR=%{_includedir} \
|
||||
PNGINC_DIR=%{_includedir} \
|
||||
TIFFINC_DIR=%{_includedir} \
|
||||
JPEGLIB_DIR=%{_libdir} \
|
||||
JBIGLIB=%{_libdir}/libjbig.so.2.1 \
|
||||
PNGLIB_DIR=%{_libdir} \
|
||||
TIFFLIB_DIR=%{_libdir} \
|
||||
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=%{_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 \
|
||||
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
|
||||
@ -154,12 +151,12 @@ done
|
||||
|
||||
|
||||
%install
|
||||
make package pkgdir=%{buildroot}/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 %{buildroot}%{_libdir}
|
||||
if [ "%{_libdir}" != "/usr/lib" ]; then
|
||||
mv %{buildroot}/usr/lib/lib* %{buildroot}%{_libdir}
|
||||
if [ "%{_lib}" != "lib" ]; then
|
||||
mv %{buildroot}%{_prefix}/lib/lib* %{buildroot}%{_libdir}
|
||||
fi
|
||||
|
||||
cp -af lib/libnetpbm.a %{buildroot}%{_libdir}/libnetpbm.a
|
||||
@ -175,22 +172,22 @@ for i in hpcdtoppm \
|
||||
ppmsvgalib vidtoppm picttoppm \
|
||||
directory error extendedopacity \
|
||||
pam pbm pgm pnm ppm index libnetpbm_dir \
|
||||
liberror; do
|
||||
liberror ppmtotga; do
|
||||
rm -f %{buildroot}%{_mandir}/man1/${i}.1
|
||||
done
|
||||
rm -f %{buildroot}%{_mandir}/man5/extendedopacity.5
|
||||
|
||||
mkdir -p %{buildroot}%{_datadir}/netpbm
|
||||
mv %{buildroot}/usr/misc/*.map %{buildroot}%{_datadir}/netpbm/
|
||||
mv %{buildroot}/usr/misc/rgb.txt %{buildroot}%{_datadir}/netpbm/
|
||||
rm -rf %{buildroot}/usr/README
|
||||
rm -rf %{buildroot}/usr/VERSION
|
||||
rm -rf %{buildroot}/usr/link
|
||||
rm -rf %{buildroot}/usr/misc
|
||||
rm -rf %{buildroot}/usr/man
|
||||
rm -rf %{buildroot}/usr/pkginfo
|
||||
rm -rf %{buildroot}/usr/config_template
|
||||
rm -rf %{buildroot}/usr/pkgconfig_template
|
||||
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 %{buildroot}%{_libdir}/lib*.a
|
||||
@ -234,23 +231,141 @@ popd
|
||||
%doc userguide/*
|
||||
|
||||
%changelog
|
||||
* Thu Jan 27 2022 Josef Ridky <jridky@redhat.com> - 10.82.00-7
|
||||
- fix libnetpbm library issue (#2029118)
|
||||
* Wed Dec 11 2024 Lukáš Zaoral <lzaoral@redhat.com> - 11.02.00-10
|
||||
- build netpbm with correct LDFLAGS (RHEL-70899)
|
||||
|
||||
* Tue Dec 04 2018 Josef Ridky <jridky@redhat.com> - 10.82.00-6
|
||||
- fix covscan issues (#1602629)
|
||||
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 11.02.00-9
|
||||
- Bump release for October 2024 mass rebuild:
|
||||
Resolves: RHEL-64018
|
||||
|
||||
* Mon Nov 26 2018 Josef Ridky <jridky@redhat.com> - 10.82.00-5
|
||||
- Use system version of jasper and jbigkit library (#1651586)
|
||||
* Wed Jun 26 2024 Josef Ridky <jridky@redhat.com> - 11.02.00-8
|
||||
- Add gating.yaml file
|
||||
|
||||
* Mon Sep 24 2018 Josef Ridky <jridky@redhat.com> - 10.82.00-4
|
||||
- fix annocheck distro flag (#1624150)
|
||||
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 11.02.00-7
|
||||
- Bump release for June 2024 mass rebuild
|
||||
|
||||
* Mon Aug 13 2018 Josef Ridky <jridky@redhat.com> - 10.82.00-3
|
||||
- fix python3 invocation in patches (#1615314)
|
||||
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 11.02.00-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Mon Jun 04 2018 Josef Ridky <jridky@redhat.com> - 10.82.00-2
|
||||
- backport missing patches from RHEL-7 (#1584724)
|
||||
* 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)
|
||||
|
@ -1,11 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 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/ )
|
||||
|
||||
VERSION=$1
|
||||
if [[ -z $VERSION ]]; then
|
||||
@ -17,11 +16,10 @@ TEMP_DIR="/var/tmp/netpbm"
|
||||
TARBALL="$TEMP_DIR/$NETPBM_NAME.tar.xz"
|
||||
mkdir -p $TEMP_DIR
|
||||
pushd $TEMP_DIR
|
||||
svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/advanced $NETPBM_NAME
|
||||
svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/userguide $NETPBM_NAME/userguide
|
||||
svn checkout https://netpbm.svn.sourceforge.net/svnroot/netpbm/trunk/test $NETPBM_NAME/test
|
||||
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
|
||||
rm -rf $NETPBM_NAME/converter/ppm/ppmtompeg/
|
||||
tar -cJvf $NETPBM_NAME.tar.xz $NETPBM_NAME
|
||||
rm -rf $NETPBM_NAME/
|
||||
popd
|
||||
|
37
plans/tier1.fmf
Normal file
37
plans/tier1.fmf
Normal file
@ -0,0 +1,37 @@
|
||||
---
|
||||
|
||||
summary: Tier1 plan for netpbm
|
||||
|
||||
discover:
|
||||
how: fmf
|
||||
url: https://pkgs.devel.redhat.com/git/tests/netpbm
|
||||
ref: master
|
||||
filter: tier:1
|
||||
|
||||
prepare:
|
||||
# Enable beaker-tasks repository
|
||||
- how: shell
|
||||
script: |
|
||||
set -euxo pipefail
|
||||
|
||||
ENABLE_REPO_CMD="yum-config-manager --enable"
|
||||
if command -v dnf >/dev/null 2>&1; then
|
||||
ENABLE_REPO_CMD="dnf config-manager --set-enabled"
|
||||
fi
|
||||
|
||||
${ENABLE_REPO_CMD} beaker-tasks || :
|
||||
|
||||
# Enable buildroot repository
|
||||
- how: shell
|
||||
script: |
|
||||
set -exuo pipefail
|
||||
|
||||
if [[ -f /etc/os-release ]]; then
|
||||
. /etc/os-release
|
||||
if [[ "${ID:-}" == "rhel" && "${VERSION_ID%%.*}" -ge 8 ]]; then
|
||||
dnf config-manager --enable rhel-CRB
|
||||
fi
|
||||
fi
|
||||
|
||||
execute:
|
||||
how: tmt
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (netpbm-10.82.00.tar.xz) = 8f233e00a9467c55e6b679c5e5bd9b955197eedfa16aa661afb65c186834d7da17fb6674d0b98a0e0027b31c19b642139f8b908121ad77f39bfce1c8f984294f
|
||||
SHA512 (netpbm-11.02.00.tar.xz) = 499cb8fb3897025b25842bd3408f91d08270ce912a9003e7ae4e6c16b7bb0a5c15372aa375ba464255bb4f005c213627b7e7c9749e37087cd0a895ba199899ae
|
||||
|
Loading…
Reference in New Issue
Block a user