Accepting request 980338 from openSUSE:Factory
does not build for all archs, let us revert OBS-URL: https://build.opensuse.org/request/show/980338 OBS-URL: https://build.opensuse.org/package/show/graphics/netpbm?expand=0&rev=136
This commit is contained in:
parent
4352ad5112
commit
b5299b229e
16
big-endian.patch
Normal file
16
big-endian.patch
Normal file
@ -0,0 +1,16 @@
|
||||
Index: netpbm-10.88.1/converter/pbm/pbmtozinc.c
|
||||
===================================================================
|
||||
--- netpbm-10.88.1.orig/converter/pbm/pbmtozinc.c 2019-12-20 12:48:08.981181384 +0100
|
||||
+++ netpbm-10.88.1/converter/pbm/pbmtozinc.c 2019-12-20 12:48:58.121462453 +0100
|
||||
@@ -110,7 +110,10 @@ packer_putitem(Packer * const packe
|
||||
|
||||
++packerP->itemsperline;
|
||||
|
||||
- printf ("0x%02x%02x", hi, lo);
|
||||
+ if (BYTE_ORDER == LITTLE_ENDIAN)
|
||||
+ printf ("0x%02x%02x", hi, lo);
|
||||
+ else
|
||||
+ printf ("0x%02x%02x", lo, hi);
|
||||
|
||||
}
|
||||
|
3
netpbm-10.96.4-documentation.tar.bz2
Normal file
3
netpbm-10.96.4-documentation.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ee4adb85045544aadf604069cf3ce0288447be56353bb0d27c1df46557957315
|
||||
size 923460
|
3
netpbm-10.96.4-nohpcdtoppm-noppmtompeg.tar.bz2
Normal file
3
netpbm-10.96.4-nohpcdtoppm-noppmtompeg.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:1b257d6f86f130708d8272e8517aca49f7901aedbba8985abbe0fdbd5a813d31
|
||||
size 1995092
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:edf670fe9475b8ace51ea66ecf03e54fe460e4bd766889b7566f41913cb7fb2e
|
||||
size 411947
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e8c9af0ed22aea8d55ea50493dc122a4560bff205c12797122efbaa74a6912c8
|
||||
size 1992862
|
File diff suppressed because it is too large
Load Diff
@ -1,135 +1,274 @@
|
||||
Index: netpbm-10.98.2/editor/ppmfade
|
||||
Index: netpbm-10.93.0/editor/ppmfade
|
||||
===================================================================
|
||||
--- netpbm-10.98.2.orig/editor/ppmfade
|
||||
+++ netpbm-10.98.2/editor/ppmfade
|
||||
--- netpbm-10.93.0.orig/editor/ppmfade 2020-12-29 11:04:15.768844529 +0100
|
||||
+++ netpbm-10.93.0/editor/ppmfade 2020-12-29 11:06:05.909522666 +0100
|
||||
@@ -40,6 +40,7 @@ exec perl -w -x -S -- "$0" "$@"
|
||||
#
|
||||
##############################################################################
|
||||
use strict;
|
||||
+use File::Temp "tempdir";
|
||||
|
||||
use File::Temp;
|
||||
sub doVersionHack($) {
|
||||
my ($argvR) = @_;
|
||||
@@ -149,20 +150,26 @@ if ($first_file ne "undefined") {
|
||||
|
||||
@@ -212,84 +213,84 @@ for ($i = 1; $i <= $nframes; $i++) {
|
||||
print("Frames are " . $width . "W x " . $height . "H\n");
|
||||
|
||||
+#
|
||||
+# We create a tmp-directory right here
|
||||
+#
|
||||
+my $tmpdir = tempdir("ppmfade.XXXXXX", CLEANUP => 1);
|
||||
+
|
||||
+
|
||||
if ($first_file eq "undefined") {
|
||||
print "Fading from black to ";
|
||||
- system("ppmmake \\#000 $width $height >junk1$$.ppm");
|
||||
+ system("ppmmake \\#000 $width $height >$tmpdir/junk1$$.ppm");
|
||||
} else {
|
||||
print "Fading from $first_file to ";
|
||||
- system("cp", $first_file, "junk1$$.ppm");
|
||||
+ system("cp", $first_file, "$tmpdir/junk1$$.ppm");
|
||||
}
|
||||
|
||||
if ($last_file eq "undefined") {
|
||||
print "black.\n";
|
||||
- system("ppmmake \\#000 $width $height >junk2$$.ppm");
|
||||
+ system("ppmmake \\#000 $width $height >$tmpdir/junk2$$.ppm");
|
||||
} else {
|
||||
print "$last_file\n";
|
||||
- system("cp", $last_file, "junk2$$.ppm");
|
||||
+ system("cp", $last_file, "$tmpdir/junk2$$.ppm");
|
||||
}
|
||||
|
||||
#
|
||||
@@ -170,14 +177,14 @@ if ($last_file eq "undefined") {
|
||||
#
|
||||
|
||||
# Here's what our temporary files are:
|
||||
-# junk1$$.ppm: The original (fade-from) image
|
||||
-# junk2$$.ppm: The target (fade-from) image
|
||||
-# junk3$$.ppm: The frame of the fade for the current iteration of the
|
||||
-# the for loop.
|
||||
-# junk1a$$.ppm: If the fade involves a ppmmix sequence from one intermediate
|
||||
-# image to another, this is the first frame of that
|
||||
-# sequence.
|
||||
-# junk2a$$.ppm: This is the last frame of the above-mentioned ppmmix sequence
|
||||
+# $tmpdir/junk1$$.ppm: The original (fade-from) image
|
||||
+# $tmpdir/junk2$$.ppm: The target (fade-from) image
|
||||
+# $tmpdir/junk3$$.ppm: The frame of the fade for the current iteration of the
|
||||
+# the for loop.
|
||||
+# $tmpdir/junk1a$$.ppm: If the fade involves a ppmmix sequence from one intermediate
|
||||
+# image to another, this is the first frame of that
|
||||
+# sequence.
|
||||
+# $tmpdir/junk2a$$.ppm: This is the last frame of the above-mentioned ppmmix sequence
|
||||
|
||||
my $i; # Frame number
|
||||
for ($i = 1; $i <= $nframes; $i++) {
|
||||
@@ -185,147 +192,147 @@ for ($i = 1; $i <= $nframes; $i++) {
|
||||
if ($mode eq $SPREAD) {
|
||||
if ($i <= 10) {
|
||||
my $n = $spline20[$i] * 100;
|
||||
- system("ppmspread $n junk1$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmspread $n $tmpdir/junk1$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} elsif ($i <= 20) {
|
||||
my $n;
|
||||
$n = $spline20[$i] * 100;
|
||||
system("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("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");
|
||||
- system("ppmmix $n junk1a$$.ppm junk2a$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk1a$$.ppm $tmpdir/junk2a$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} else {
|
||||
my $n = (1-$spline20[$i-10])*100;
|
||||
- system("ppmspread $n junk2$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmspread $n $tmpdir/junk2$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
}
|
||||
} elsif ($mode eq $SHIFT) {
|
||||
if ($i <= 10) {
|
||||
my $n = $spline20[$i] * 100;
|
||||
- system("ppmshift $n junk1$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmshift $n $tmpdir/junk1$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} elsif ($i <= 20) {
|
||||
my $n;
|
||||
$n = $spline20[$i] * 100;
|
||||
- system("ppmshift $n junk1$$.ppm >junk1a$$.ppm");
|
||||
+ system("ppmshift $n $tmpdir/junk1$$.ppm >$tmpdir/junk1a$$.ppm");
|
||||
$n = (1-$spline20[$i-10])*100;
|
||||
- system("ppmshift $n junk2$$.ppm >junk2a$$.ppm");
|
||||
+ system("ppmshift $n $tmpdir/junk2$$.ppm >$tmpdir/junk2a$$.ppm");
|
||||
$n = $spline10[$i-10];
|
||||
- system("ppmmix $n junk1a$$.ppm junk2a$$.ppm >junk3$$.ppm");
|
||||
+ system("ppmmix $n $tmpdir/junk1a$$.ppm $tmpdir/junk2a$$.ppm >$tmpdir/junk3$$.ppm");
|
||||
} else {
|
||||
my $n = (1-$spline20[$i-10]) * 100;
|
||||
- system("ppmshift $n junk2.ppm >junk3.ppm");
|
||||
+ system("ppmshift $n $tmpdir/junk2.ppm > $tmpdir/junk3.ppm");
|
||||
- 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 $tmpdir/junk2o.ppm $tmpdir/junk2.ppm " .
|
||||
Index: netpbm-10.98.2/editor/ppmshadow
|
||||
- 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);
|
||||
Index: netpbm-10.93.0/editor/ppmshadow
|
||||
===================================================================
|
||||
--- netpbm-10.98.2.orig/editor/ppmshadow
|
||||
+++ netpbm-10.98.2/editor/ppmshadow
|
||||
--- netpbm-10.93.0.orig/editor/ppmshadow 2020-12-29 11:04:15.768844529 +0100
|
||||
+++ netpbm-10.93.0/editor/ppmshadow 2020-12-29 11:06:05.909522666 +0100
|
||||
@@ -194,9 +194,10 @@ my $tmpdir = $ENV{TMPDIR} || "/tmp";
|
||||
my $ourtmp;
|
||||
|
||||
@ -142,5 +281,5 @@ Index: netpbm-10.98.2/editor/ppmshadow
|
||||
+ die "Can't create directory for temporary files";
|
||||
+ }
|
||||
} else {
|
||||
$ourtmp = File::Temp::tempdir("$tmpdir/ppmshadowXXXX", CLEANUP=>1);
|
||||
$ourtmp = File::Temp::tempdir("$tmpdir/ppmshadowXXXX", UNLINK=>1);
|
||||
}
|
||||
|
130
netpbm.changes
130
netpbm.changes
@ -1,133 +1,3 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon May 30 14:55:07 UTC 2022 - pgajdos@suse.com
|
||||
|
||||
- version update to 10.98.2
|
||||
palmtopnm: Fix failure with bogus claim of invalid input on
|
||||
architectures that do not use two's complement negative numbers.
|
||||
Always broken. (Ability to convert PackBits input was new in
|
||||
Netpbm 10.27 (March 2005).
|
||||
|
||||
pnmgamma -srgbtobt709, -bt709tosrgb: fix bug; incorrect output.
|
||||
Always broken (These options were new in Netpbm 10.32 (February
|
||||
2006)). Thanks Alexander Shpilkin <ashpilkin@gmail.com>.
|
||||
|
||||
pamdice: Fix incorrect output file name with PAM input. Always
|
||||
broken (pamdice was new in Netpbm 9.25 (March 2002).
|
||||
|
||||
|
||||
pamtopdbimg: Add -fixedtime.
|
||||
|
||||
ppmfade: Use temporary files securely.
|
||||
|
||||
pnmtosir: Set some possibly meaningless bits in output to zero
|
||||
so output is repeatable.
|
||||
|
||||
pamx: Fix bug: top-justifies image in all cases where it should
|
||||
bottom-justify. Always broken. (pamx was new in Netpbm 10.34
|
||||
(June 2006).
|
||||
|
||||
pnmtorle: Fix bug: -h works only on first image.
|
||||
|
||||
pamsistoaglyph: Fix invalid memory reference and incorrect
|
||||
output on depth 1 input. Always broken. (pamsistoaglyph was
|
||||
new in Netpbm 10.47 (June 2009). Thanks Scott Pakin.
|
||||
|
||||
|
||||
pambayer: Fix bogus colors at edges. Always Broken (pambayer
|
||||
was new in Release 10.30 (October 2005)).
|
||||
|
||||
libnetpbm, various programs: fix bug: bogus warning that a color
|
||||
specified on command line cannot be represented exactly with the
|
||||
maxval being used. Introduced in Netpbm 10.83 (June 2018).
|
||||
|
||||
pnmtopsnr: Fix typo in error message. Always broken (pnmpsnr
|
||||
was new in Netpbm 9.6 (July 2000).
|
||||
|
||||
ppmtoilbm: Remove -floyd (aka -fs) option, which hasn't worked
|
||||
in a long time if ever and is inappropriate function for this
|
||||
program. And the broken code is inconsistent with new random
|
||||
number logic elsewhere in the package.
|
||||
|
||||
ppmtoapplevol: Fix bug: reads from Standard Input even when you
|
||||
specify the input file argument. Always broken. (ppmtoapplevol
|
||||
was new in Netpbm 10.54 (March 2011).
|
||||
|
||||
ppmtoapplevol: Fix bug: produces garbage with input image wider
|
||||
than 255. Always broken. (ppmtoapplevol was new in Netpbm
|
||||
10.54 (March 2011).
|
||||
|
||||
pgmmedian: fix crash when median matrix is wider or higher than
|
||||
the input image.
|
||||
|
||||
picttoppm: Fix incorrect output for 32 bit per pixel images
|
||||
that have only 3 planes. Broken in Netpbm 10.34 (June 2006).
|
||||
|
||||
pamendian: fix bogus "sample exceeds maxval" failure.
|
||||
Introduced in Netpbm 10.66 (March 2014).
|
||||
|
||||
ppmtoilbm: Fix wild memory references and hangs with -map .
|
||||
Introduced in Netpbm 9.12 (March 2001).
|
||||
|
||||
pgmtexture: Fix incorrect output. Always broken. (Program was
|
||||
added in primordial Netpbm in 1991).
|
||||
|
||||
pgmabel: Fix incorrect output. Always broken. (Program was
|
||||
new in Netpbm 10.3 (July 2002).
|
||||
|
||||
Remove Floyd-Steinberg dithering functions (ppm_fs_*) from
|
||||
libnetpbm (libppmfloyd). No longer used. Floyd-Steinberg
|
||||
dithering logic can be found in pnmremap. libppmfloyd
|
||||
was previously used by ppmtoilbm.
|
||||
|
||||
Add pbnnoise.
|
||||
|
||||
pnmpad: Use -halign with -mwidth and default to centering the
|
||||
image instead of left-justifying when no other padding is being
|
||||
added. Same with -mheight, -valign, and top-justifying.
|
||||
|
||||
xwdtopnm: Add ability to process bit depth 32.
|
||||
|
||||
pgmtoppm: Add -black, -white.
|
||||
|
||||
ppmpat: Add -mesh.
|
||||
|
||||
pampaintspill: Add -near. Thanks Scott Pakin.
|
||||
|
||||
pamtogif: Fix bug: doesn't ignore the input alpha mask when user
|
||||
specified -transparent. Broken in Netpbm 10.37 (December 2006).
|
||||
|
||||
palmtopnm: Fix bug: fails with PackBits input on platform with
|
||||
default unsigned char, such as ppc64. Always broken. (Ability
|
||||
to convert PackBits input was new in Netpbm 10.27 (March 2005).
|
||||
|
||||
pamrubber: Fix bug: random behavior with -quad when you specify
|
||||
both points for source or target and the second one is lower in
|
||||
the image than the first. Always broken (Pamrubber was new in
|
||||
Netpbm 10.54 (March 2011)).
|
||||
|
||||
sunicontopnm, escp2topbm, mgrtopbm, ybmtopbm, pamcut, pbmpscale,
|
||||
pnmcat, pnmpad: Fix arithmetic overrun with ridiculously large
|
||||
image.
|
||||
|
||||
pbmclean: Fix overallocation of memory (waste).
|
||||
|
||||
libnetbm: Add pnm_writepamrowpart, pnm_formatPamtuples.
|
||||
|
||||
libnetpbm: When validating computable size of width and height,
|
||||
allow for adding up to 10 instead of 2, to account for rounding
|
||||
up to a multiple of 8 in processing bit maps.
|
||||
|
||||
Build: Don't attempt to build 'pamexec' on systems without
|
||||
Unix process management. Bug introduced in Netpbm 10.94
|
||||
(March 2021) and supposedly fixed in 10.95, but not really.
|
||||
|
||||
- modified patches
|
||||
% netpbm-security-code.patch (refreshed)
|
||||
% netpbm-security-scripts.patch (refreshed)
|
||||
- deleted patches
|
||||
- signed-char.patch (upstreamed)
|
||||
- big-endian.patch (upstreamed)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Dec 19 17:47:53 UTC 2021 - Andreas Schwab <schwab@suse.de>
|
||||
|
||||
|
25
netpbm.spec
25
netpbm.spec
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package netpbm
|
||||
#
|
||||
# Copyright (c) 2022 SUSE LLC
|
||||
# Copyright (c) 2021 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -20,10 +20,10 @@
|
||||
%define asan_build 0
|
||||
%define ubsan_build 0
|
||||
%define libmaj 11
|
||||
%define libmin 98
|
||||
%define libmin 96
|
||||
%define libver %{libmaj}.%{libmin}
|
||||
Name: netpbm
|
||||
Version: 10.98.2
|
||||
Version: 10.96.4
|
||||
Release: 0
|
||||
Summary: A Graphics Conversion Package
|
||||
License: BSD-3-Clause AND GPL-2.0-or-later AND IJG AND MIT AND SUSE-Public-Domain
|
||||
@ -37,10 +37,14 @@ Source3: prepare-src-tarball.sh
|
||||
Patch0: %{name}-make.patch
|
||||
# neccessary for running with ASAN
|
||||
Patch1: %{name}-tmpfile.patch
|
||||
#Patch2: %{name}-security-code.patch
|
||||
#Patch3: %{name}-security-scripts.patch
|
||||
#Patch4: %{name}-gcc-warnings.patch
|
||||
Patch2: %{name}-security-code.patch
|
||||
Patch3: %{name}-security-scripts.patch
|
||||
Patch4: %{name}-gcc-warnings.patch
|
||||
Patch5: makeman-py3.patch
|
||||
# PATCH-FIX-UPSTREAM fix bad use of plain char
|
||||
Patch6: signed-char.patch
|
||||
# PATCH-FIX-UPSTREAM fix dependency on byte order
|
||||
Patch7: big-endian.patch
|
||||
# bsc#1144255 disable jpeg2k support due to removal of jasper
|
||||
Patch8: netpbm-disable-jasper.patch
|
||||
BuildRequires: flex
|
||||
@ -155,12 +159,13 @@ sed -i '/all-in-place/d' test/Test-Order
|
||||
sed -i '/legacy-names/d' test/Test-Order
|
||||
# picttoppm.c: #error "Unfixable. Don't ship me"
|
||||
sed -i '/pict-roundtrip/d' test/Test-Order
|
||||
sed -i '/pict/d' test/stdin-ppm3.test
|
||||
sed -i '/pict/d' test/stdin-ppm3.ok
|
||||
# pstopnm is not shipped
|
||||
sed -i '/^l\?ps.*\.test/d' test/Test-Order
|
||||
# new stdin-pnm2.test failure reported to bryanh@giraffe-data.com on 2022-05-30
|
||||
sed -i 's/pstopnm -stdout : 0 0 0 1/pstopnm -stdout : 1 1 1 0/' test/stdin-pnm2.ok
|
||||
# new winicon-roundtrip2.test failure reported to bryanh@giraffe-data.com on 2020-12-29
|
||||
# $ LD_LIBRARY_PATH=lib PATH=package/bin pamtowinicon -pngthreshold=1 package-test-tmp/testimg1.pam
|
||||
# pamtowinicon: bad magic number 0xf0f - not a PAM, PPM, PGM, or PBM file
|
||||
# $
|
||||
sed -i '/winicon-roundtrip2.test/d' test/Test-Order
|
||||
mkdir package-test-{tmp,results}
|
||||
make pkgdir=`pwd`/package tmpdir=`pwd`/package-test-tmp RESULTDIR=`pwd`/package-test-results check-package
|
||||
|
||||
|
13
signed-char.patch
Normal file
13
signed-char.patch
Normal file
@ -0,0 +1,13 @@
|
||||
Index: netpbm-10.96.4/converter/other/pnmtopalm/palmtopnm.c
|
||||
===================================================================
|
||||
--- netpbm-10.96.4.orig/converter/other/pnmtopalm/palmtopnm.c
|
||||
+++ netpbm-10.96.4/converter/other/pnmtopalm/palmtopnm.c
|
||||
@@ -873,7 +873,7 @@ readPackBitsRow(FILE * const if
|
||||
pm_readcharu(ifP, &incountByte);
|
||||
if (incountByte & 0x80) {
|
||||
/* How do we handle incount == -128 ? */
|
||||
- int const signedIncount = (char)incountByte;
|
||||
+ int const signedIncount = (signed char)incountByte;
|
||||
unsigned int const runlength = -signedIncount + 1;
|
||||
unsigned char inval;
|
||||
pm_readcharu(ifP, &inval);
|
Loading…
Reference in New Issue
Block a user