Accepting request 134223 from home:pgajdos:libpng15
- updated to 10.59.2: * transition super-stable --> advanced branch * builds with libpng15 * patches summary: -> dropped unneeded or upstreamed patches: - fixes.patch - libpng14.patch - manpages.patch - pamscale.patch - pnmtopng-CAN-2978.patch -> left patches # make.patch (suse specific) # no-build-time.patch (suse specific) # missing-file-close.patch (should be upstreamed in newer versions) # tmpfile.patch (rewritten) # security-code.patch (taken from fedora, replacement of former security.patch) # security-scripts.patch (taken from fedora, replacement of former security2.patch) OBS-URL: https://build.opensuse.org/request/show/134223 OBS-URL: https://build.opensuse.org/package/show/graphics/netpbm?expand=0&rev=39
This commit is contained in:
parent
a3a8972712
commit
ab3fe00e48
@ -1 +1 @@
|
||||
libnetpbm10
|
||||
libnetpbm11
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:cf130302f7742cd7d794246b33bb86feb6391098ef9cb063f23df717b5f1afa9
|
||||
size 573221
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:7ace07f24063e5d22bbeb109dca376b2494c8f4b374ea1b8adfc5a009d9b03a8
|
||||
size 1618158
|
3
netpbm-10.59.2-documentation.tar.bz2
Normal file
3
netpbm-10.59.2-documentation.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:05430821e11c51ec6bf7b1b4ef5be564db51cecd45c6b669ad655d6fefd5f8e2
|
||||
size 573489
|
3
netpbm-10.59.2-nohpcdtoppm-noppmtompeg.tar.bz2
Normal file
3
netpbm-10.59.2-nohpcdtoppm-noppmtompeg.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5db40b9b72218330e226b20076d5120b5f19c621e71c82c240bc43f2332c7003
|
||||
size 1705720
|
@ -1,294 +0,0 @@
|
||||
Index: buildtools/Makefile
|
||||
===================================================================
|
||||
--- buildtools/Makefile.orig
|
||||
+++ buildtools/Makefile
|
||||
@@ -34,10 +34,10 @@ libopt.o: libopt.c
|
||||
-o $@ $<
|
||||
|
||||
typegen.o endiangen.o:%.o:%.c
|
||||
- $(CC_FOR_BUILD) -c $(CFLAGS_FOR_BUILD) -o $@ $<
|
||||
+ $(CC_FOR_BUILD) $(CFLAGS) -c $(CFLAGS_FOR_BUILD) -o $@ $<
|
||||
|
||||
$(PROGS):%:%.o
|
||||
- $(LD_FOR_BUILD) -o $@ $<
|
||||
+ $(LD_FOR_BUILD) $(LDFLAGS) -o $@ $<
|
||||
|
||||
distclean clean: cleanlocal
|
||||
.PHONY: cleanlocal
|
||||
Index: converter/other/fiasco/codec/dfiasco.c
|
||||
===================================================================
|
||||
--- converter/other/fiasco/codec/dfiasco.c.orig
|
||||
+++ converter/other/fiasco/codec/dfiasco.c
|
||||
@@ -15,6 +15,7 @@
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
+#include <stdlib.h>
|
||||
|
||||
#include "config.h"
|
||||
|
||||
Index: converter/other/fiasco/input/basis.c
|
||||
===================================================================
|
||||
--- converter/other/fiasco/input/basis.c.orig
|
||||
+++ converter/other/fiasco/input/basis.c
|
||||
@@ -14,6 +14,7 @@
|
||||
* $State: Exp $
|
||||
*/
|
||||
|
||||
+#include <string.h>
|
||||
#include "config.h"
|
||||
|
||||
#include "types.h"
|
||||
Index: converter/other/fitstopnm.c
|
||||
===================================================================
|
||||
--- converter/other/fitstopnm.c.orig
|
||||
+++ converter/other/fitstopnm.c
|
||||
@@ -444,7 +444,7 @@ read_val (fp, bitpix, vp)
|
||||
c[i] = ich;
|
||||
}
|
||||
swapbytes(c, 4);
|
||||
- *vp = *( (float *) c);
|
||||
+ memcpy(vp, c, 4);
|
||||
break;
|
||||
|
||||
case -64:
|
||||
@@ -455,7 +455,7 @@ read_val (fp, bitpix, vp)
|
||||
c[i] = ich;
|
||||
}
|
||||
swapbytes(c, 8);
|
||||
- *vp = *( (double *) c);
|
||||
+ memcpy(vp, c, 8);
|
||||
break;
|
||||
|
||||
default:
|
||||
Index: converter/other/jpegtopnm.c
|
||||
===================================================================
|
||||
--- converter/other/jpegtopnm.c.orig
|
||||
+++ converter/other/jpegtopnm.c
|
||||
@@ -511,6 +511,7 @@ set_color_spaces(const J_COLOR_SPACE jpe
|
||||
pm_error("Input JPEG image has 'unknown' color space "
|
||||
"(JCS_UNKNOWN).\n"
|
||||
"We cannot interpret this image.");
|
||||
+ *output_type_p = PPM_TYPE; /* not reached */
|
||||
break;
|
||||
case JCS_GRAYSCALE:
|
||||
*output_type_p = PGM_TYPE;
|
||||
@@ -538,6 +539,7 @@ set_color_spaces(const J_COLOR_SPACE jpe
|
||||
default:
|
||||
pm_error("Internal error: unknown color space code %d passed "
|
||||
"to set_color_spaces().", jpeg_color_space);
|
||||
+ *output_type_p = PPM_TYPE; /* not reached */
|
||||
}
|
||||
pm_message("WRITING %s FILE",
|
||||
*output_type_p == PPM_TYPE ? "PPM" : "PGM");
|
||||
Index: converter/other/pamtopfm.c
|
||||
===================================================================
|
||||
--- converter/other/pamtopfm.c.orig
|
||||
+++ converter/other/pamtopfm.c
|
||||
@@ -149,12 +149,12 @@ floatToPfmSample(float const input
|
||||
Type converter
|
||||
-----------------------------------------------------------------------------*/
|
||||
if (machineEndianness == pfmEndianness) {
|
||||
- *(float *)outputP->bytes = input;
|
||||
+ memcpy(outputP->bytes, &input, sizeof(float));
|
||||
} else {
|
||||
unsigned char reversed[sizeof(pfmSample)];
|
||||
unsigned int i, j;
|
||||
|
||||
- *(float *)reversed = input;
|
||||
+ memcpy(reversed, &input, sizeof(float));
|
||||
|
||||
for (i = 0, j = sizeof(pfmSample)-1;
|
||||
i < sizeof(pfmSample);
|
||||
@@ -239,6 +239,7 @@ makePfmHeader(const struct pam * const p
|
||||
enum endian const endian) {
|
||||
|
||||
struct pfmHeader pfmHeader;
|
||||
+ memset(&pfmHeader, 0, sizeof(pfmHeader));
|
||||
|
||||
pfmHeader.width = pamP->width;
|
||||
pfmHeader.height = pamP->height;
|
||||
Index: converter/other/pamtosvg/curve.c
|
||||
===================================================================
|
||||
--- converter/other/pamtosvg/curve.c.orig
|
||||
+++ converter/other/pamtosvg/curve.c
|
||||
@@ -222,9 +222,7 @@ curve_list_type
|
||||
new_curve_list (void)
|
||||
{
|
||||
curve_list_type curve_list;
|
||||
-
|
||||
- curve_list.length = 0;
|
||||
- curve_list.data = NULL;
|
||||
+ memset(&curve_list, 0, sizeof(curve_list));
|
||||
|
||||
return curve_list;
|
||||
}
|
||||
Index: converter/other/pamtosvg/pxl-outline.c
|
||||
===================================================================
|
||||
--- converter/other/pamtosvg/pxl-outline.c.orig
|
||||
+++ converter/other/pamtosvg/pxl-outline.c
|
||||
@@ -262,6 +262,9 @@ find_one_centerline(bitmap_type const
|
||||
outline.open = false;
|
||||
outline.color = getBitmapColor(bitmap, original_row, original_col);
|
||||
|
||||
+ search_dir = original_dir; /* initial value */
|
||||
+ row = original_row; /* initial value */
|
||||
+ col = original_col; /* initial values */
|
||||
/* Add the starting pixel to the output list, changing from bitmap
|
||||
to Cartesian coordinates and specifying the left edge so that
|
||||
the coordinates won't be adjusted.
|
||||
@@ -272,9 +275,6 @@ find_one_centerline(bitmap_type const
|
||||
LOG2(" (%d,%d)", pos.col, pos.row);
|
||||
append_outline_pixel(&outline, pos);
|
||||
}
|
||||
- search_dir = original_dir; /* initial value */
|
||||
- row = original_row; /* initial value */
|
||||
- col = original_col; /* initial values */
|
||||
|
||||
for ( ; ; ) {
|
||||
unsigned int const prev_row = row;
|
||||
@@ -527,6 +527,7 @@ new_pixel_outline (void)
|
||||
{
|
||||
pixel_outline_type pixel_outline;
|
||||
|
||||
+ memset(&pixel_outline, 0, sizeof(pixel_outline));
|
||||
O_LENGTH (pixel_outline) = 0;
|
||||
pixel_outline.data = NULL;
|
||||
pixel_outline.open = false;
|
||||
Index: converter/other/pamtosvg/spline.c
|
||||
===================================================================
|
||||
--- converter/other/pamtosvg/spline.c.orig
|
||||
+++ converter/other/pamtosvg/spline.c
|
||||
@@ -80,6 +80,7 @@ spline_list_type
|
||||
empty_spline_list (void)
|
||||
{
|
||||
spline_list_type answer;
|
||||
+ memset(&answer, 0, sizeof(answer));
|
||||
SPLINE_LIST_DATA (answer) = NULL;
|
||||
SPLINE_LIST_LENGTH (answer) = 0;
|
||||
return answer;
|
||||
@@ -153,6 +154,7 @@ spline_list_array_type
|
||||
new_spline_list_array (void)
|
||||
{
|
||||
spline_list_array_type answer;
|
||||
+ memset(&answer, 0, sizeof(answer));
|
||||
|
||||
SPLINE_LIST_ARRAY_DATA (answer) = NULL;
|
||||
SPLINE_LIST_ARRAY_LENGTH (answer) = 0;
|
||||
Index: converter/other/pamtouil.c
|
||||
===================================================================
|
||||
--- converter/other/pamtouil.c.orig
|
||||
+++ converter/other/pamtouil.c
|
||||
@@ -376,11 +376,15 @@ freeCmap(cixel_map cmap[], unsigned int
|
||||
int i;
|
||||
|
||||
for (i = 0; i < ncolors; ++i) {
|
||||
- cixel_map const cmapEntry = cmap[i];
|
||||
- if (cmapEntry.uilname)
|
||||
+ cixel_map cmapEntry = cmap[i];
|
||||
+ if (cmapEntry.uilname) {
|
||||
freeString(cmapEntry.uilname);
|
||||
- if (cmapEntry.rgbname)
|
||||
+ cmapEntry.uilname = NULL;
|
||||
+ }
|
||||
+ if (cmapEntry.rgbname) {
|
||||
freeString(cmapEntry.rgbname);
|
||||
+ cmapEntry.rgbname = NULL;
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
||||
Index: converter/other/pgmtopbm.c
|
||||
===================================================================
|
||||
--- converter/other/pgmtopbm.c.orig
|
||||
+++ converter/other/pgmtopbm.c
|
||||
@@ -549,6 +549,8 @@ createDither8Converter(unsigned int cons
|
||||
converter.cols = cols;
|
||||
converter.convertRow = &dither8ConvertRow;
|
||||
converter.destroy = NULL;
|
||||
+ converter.stateP = NULL;
|
||||
+ converter.maxval = 0;
|
||||
|
||||
/* Scale dither matrix. */
|
||||
for (row = 0; row < 16; ++row) {
|
||||
@@ -622,6 +624,7 @@ createClusterConverter(unsigned int cons
|
||||
converter.cols = cols;
|
||||
converter.convertRow = &clusterConvertRow;
|
||||
converter.destroy = &clusterDestroy;
|
||||
+ converter.maxval = 0;
|
||||
|
||||
MALLOCVAR_NOFAIL(stateP);
|
||||
|
||||
Index: converter/other/pnmtopng.c
|
||||
===================================================================
|
||||
--- converter/other/pnmtopng.c.orig
|
||||
+++ converter/other/pnmtopng.c
|
||||
@@ -513,6 +513,7 @@ xelToPngColor_16(xel const input,
|
||||
retval.green = PPM_GETG(scaled);
|
||||
retval.blue = PPM_GETB(scaled);
|
||||
retval.gray = PNM_GET1(scaled);
|
||||
+ retval.index = 0;
|
||||
|
||||
return retval;
|
||||
}
|
||||
Index: converter/other/rletopnm.c
|
||||
===================================================================
|
||||
--- converter/other/rletopnm.c.orig
|
||||
+++ converter/other/rletopnm.c
|
||||
@@ -101,7 +101,7 @@ parseCommandLine(int argc, char ** argv,
|
||||
optStruct3 opt;
|
||||
unsigned int option_def_index;
|
||||
|
||||
- unsigned int alphaoutSpec;
|
||||
+ unsigned int alphaoutSpec = 0;
|
||||
|
||||
MALLOCARRAY(option_def, 100);
|
||||
|
||||
Index: converter/ppm/ximtoppm.c
|
||||
===================================================================
|
||||
--- converter/ppm/ximtoppm.c.orig
|
||||
+++ converter/ppm/ximtoppm.c
|
||||
@@ -44,7 +44,7 @@ parseCommandLine(int argc, char ** argv,
|
||||
|
||||
unsigned int option_def_index;
|
||||
|
||||
- unsigned int alphaoutSpec;
|
||||
+ unsigned int alphaoutSpec = 0;
|
||||
|
||||
option_def_index = 0; /* incremented by OPTENT3 */
|
||||
OPTENT3(0, "alphaout", OPT_STRING,
|
||||
Index: lib/pm.h
|
||||
===================================================================
|
||||
--- lib/pm.h.orig
|
||||
+++ lib/pm.h
|
||||
@@ -21,6 +21,7 @@
|
||||
#include <errno.h>
|
||||
#include <setjmp.h>
|
||||
#include <sys/stat.h>
|
||||
+#include <string.h>
|
||||
|
||||
#ifdef VMS
|
||||
#include <perror.h>
|
||||
Index: lib/util/wordaccess_64_le.h
|
||||
===================================================================
|
||||
--- lib/util/wordaccess_64_le.h.orig
|
||||
+++ lib/util/wordaccess_64_le.h
|
||||
@@ -49,4 +49,5 @@ wordintClz(wordint const x){
|
||||
return (__builtin_clzll((long long int)x << (s - 8) * 8));
|
||||
else
|
||||
pm_error("Long long int is less than 64 bits on this machine");
|
||||
+ return 0; /* unreached */
|
||||
}
|
||||
Index: converter/other/fiasco/lib/image.c
|
||||
===================================================================
|
||||
--- converter/other/fiasco/lib/image.c.orig
|
||||
+++ converter/other/fiasco/lib/image.c
|
||||
@@ -239,7 +239,7 @@ alloc_image (unsigned width, unsigned he
|
||||
image->format = format;
|
||||
image->reference_count = 1;
|
||||
|
||||
- strcpy (image->id, "IFIASCO");
|
||||
+ strncpy (image->id, "IFIASCO", 7);
|
||||
|
||||
for (band = first_band (color); band <= last_band (color); band++)
|
||||
if (format == FORMAT_4_2_0 && band != Y)
|
@ -1,115 +0,0 @@
|
||||
Index: netpbm-10.35.80/converter/other/pngtopnm.c
|
||||
===================================================================
|
||||
--- netpbm-10.35.80.orig/converter/other/pngtopnm.c
|
||||
+++ netpbm-10.35.80/converter/other/pngtopnm.c
|
||||
@@ -44,12 +44,6 @@
|
||||
#include "nstring.h"
|
||||
#include "shhopt.h"
|
||||
|
||||
-#if PNG_LIBPNG_VER >= 10400
|
||||
-#error Your PNG library (<png.h>) is incompatible with this Netpbm source code.
|
||||
-#error You need either an older PNG library (older than 1.4)
|
||||
-#error newer Netpbm source code (at least 10.48)
|
||||
-#endif
|
||||
-
|
||||
typedef struct _jmpbuf_wrapper {
|
||||
jmp_buf jmpbuf;
|
||||
} jmpbuf_wrapper;
|
||||
@@ -482,7 +476,7 @@ isTransparentColor(pngcolor const colo
|
||||
bool retval;
|
||||
|
||||
if (info_ptr->valid & PNG_INFO_tRNS) {
|
||||
- const png_color_16 * const transColorP = &info_ptr->trans_values;
|
||||
+ const png_color_16 * const transColorP = &info_ptr->trans_color;
|
||||
|
||||
|
||||
/* There seems to be a problem here: you can't compare real
|
||||
@@ -575,8 +569,8 @@ paletteHasPartialTransparency(png_info *
|
||||
for (i = 0, foundGray = FALSE;
|
||||
i < info_ptr->num_trans && !foundGray;
|
||||
++i) {
|
||||
- if (info_ptr->trans[i] != 0 &&
|
||||
- info_ptr->trans[i] != maxval) {
|
||||
+ if (info_ptr->trans_alpha[i] != 0 &&
|
||||
+ info_ptr->trans_alpha[i] != maxval) {
|
||||
foundGray = TRUE;
|
||||
}
|
||||
}
|
||||
@@ -647,7 +641,7 @@ setupSignificantBits(png_struct *
|
||||
unsigned int i;
|
||||
trans_mix = TRUE;
|
||||
for (i = 0; i < info_ptr->num_trans; ++i)
|
||||
- if (info_ptr->trans[i] != 0 && info_ptr->trans[i] != 255) {
|
||||
+ if (info_ptr->trans_alpha[i] != 0 && info_ptr->trans_alpha[i] != 255) {
|
||||
trans_mix = FALSE;
|
||||
break;
|
||||
}
|
||||
@@ -885,7 +879,7 @@ writePnm(FILE * const ofP,
|
||||
setXel(&xelrow[col], fgColor, bgColor, alpha_handling,
|
||||
((info_ptr->valid & PNG_INFO_tRNS) &&
|
||||
(fgColor.r ==
|
||||
- gamma_correct(info_ptr->trans_values.gray,
|
||||
+ gamma_correct(info_ptr->trans_color.gray,
|
||||
totalgamma))) ?
|
||||
0 : maxval);
|
||||
}
|
||||
@@ -914,7 +908,7 @@ writePnm(FILE * const ofP,
|
||||
setXel(&xelrow[col], fgColor, bgColor, alpha_handling,
|
||||
(info_ptr->valid & PNG_INFO_tRNS) &&
|
||||
index < info_ptr->num_trans ?
|
||||
- info_ptr->trans[index] : maxval);
|
||||
+ info_ptr->trans_alpha[index] : maxval);
|
||||
}
|
||||
break;
|
||||
|
||||
Index: netpbm-10.35.80/converter/other/pnmtopng.c
|
||||
===================================================================
|
||||
--- netpbm-10.35.80.orig/converter/other/pnmtopng.c
|
||||
+++ netpbm-10.35.80/converter/other/pnmtopng.c
|
||||
@@ -69,13 +69,6 @@
|
||||
#include "nstring.h"
|
||||
#include "version.h"
|
||||
|
||||
-#if PNG_LIBPNG_VER >= 10400
|
||||
-#error Your PNG library (<png.h>) is incompatible with this Netpbm source code.
|
||||
-#error You need either an older PNG library (older than 1.4)
|
||||
-#error newer Netpbm source code (at least 10.47.04)
|
||||
-#endif
|
||||
-
|
||||
-
|
||||
struct zlibCompression {
|
||||
/* These are parameters that describe a form of zlib compression.
|
||||
Values have the same meaning as the similarly named arguments to
|
||||
@@ -2612,7 +2605,7 @@ convertpnm(struct cmdlineInfo const cmdl
|
||||
info_ptr->num_palette = palette_size;
|
||||
if (trans_size > 0) {
|
||||
info_ptr->valid |= PNG_INFO_tRNS;
|
||||
- info_ptr->trans = trans;
|
||||
+ info_ptr->trans_alpha = trans;
|
||||
info_ptr->num_trans = trans_size; /* omit opaque values */
|
||||
}
|
||||
/* creating hIST chunk */
|
||||
@@ -2649,7 +2642,7 @@ convertpnm(struct cmdlineInfo const cmdl
|
||||
info_ptr->color_type == PNG_COLOR_TYPE_RGB) {
|
||||
if (transparent > 0) {
|
||||
info_ptr->valid |= PNG_INFO_tRNS;
|
||||
- info_ptr->trans_values =
|
||||
+ info_ptr->trans_color =
|
||||
xelToPngColor_16(transcolor, maxval, png_maxval);
|
||||
}
|
||||
} else {
|
||||
@@ -2661,10 +2654,10 @@ convertpnm(struct cmdlineInfo const cmdl
|
||||
if (info_ptr->valid && PNG_INFO_tRNS)
|
||||
pm_message("Transparent color {gray, red, green, blue} = "
|
||||
"{%d, %d, %d, %d}",
|
||||
- info_ptr->trans_values.gray,
|
||||
- info_ptr->trans_values.red,
|
||||
- info_ptr->trans_values.green,
|
||||
- info_ptr->trans_values.blue);
|
||||
+ info_ptr->trans_color.gray,
|
||||
+ info_ptr->trans_color.red,
|
||||
+ info_ptr->trans_color.green,
|
||||
+ info_ptr->trans_color.blue);
|
||||
else
|
||||
pm_message("No transparent color");
|
||||
}
|
@ -1,6 +1,8 @@
|
||||
--- Makefile.config.in
|
||||
+++ Makefile.config.in
|
||||
@@ -108,7 +108,7 @@
|
||||
Index: config.mk.in
|
||||
===================================================================
|
||||
--- config.mk.in.orig
|
||||
+++ config.mk.in
|
||||
@@ -109,7 +109,7 @@ INSTALL = $(SRCDIR)/buildtools/install.s
|
||||
#OSF1:
|
||||
#INSTALL = $(SRCDIR)/buildtools/installosf
|
||||
#Red Hat Linux:
|
||||
@ -9,7 +11,7 @@
|
||||
|
||||
# STRIPFLAG is the option you pass to the above install program to make it
|
||||
# strip unnecessary information out of binaries.
|
||||
@@ -283,7 +283,7 @@
|
||||
@@ -295,7 +295,7 @@ LDRELOC = NONE
|
||||
CFLAGS_SHLIB =
|
||||
# Gcc:
|
||||
#CFLAGS_SHLIB = -fpic
|
||||
@ -18,7 +20,7 @@
|
||||
# Sun compiler:
|
||||
#CFLAGS_SHLIB = -Kpic
|
||||
#CFLAGS_SHLIB = -KPIC
|
||||
@@ -350,7 +350,7 @@
|
||||
@@ -362,7 +362,7 @@ NETPBMLIB_RUNTIME_PATH =
|
||||
# The TIFF library. See above. If you want to build the tiff
|
||||
# converters, you must have the tiff library already installed.
|
||||
|
||||
@ -27,7 +29,7 @@
|
||||
TIFFHDR_DIR =
|
||||
|
||||
#TIFFLIB = libtiff.so
|
||||
@@ -382,7 +382,7 @@
|
||||
@@ -393,7 +393,7 @@ TIFFLIB_NEEDS_Z = Y
|
||||
# JPEG stuff statically linked in, in which case you won't need
|
||||
# JPEGLIB in order to build the Tiff converters.
|
||||
|
||||
@ -36,7 +38,7 @@
|
||||
JPEGHDR_DIR =
|
||||
#JPEGLIB = libjpeg.so
|
||||
#JPEGHDR_DIR = /usr/include/jpeg
|
||||
@@ -432,7 +432,7 @@
|
||||
@@ -451,7 +451,7 @@ PNGVER =
|
||||
#
|
||||
# If you have 'libpng-config' (see above), these are irrelevant.
|
||||
|
||||
@ -45,3 +47,14 @@
|
||||
ZHDR_DIR =
|
||||
#ZLIB = libz.so
|
||||
|
||||
@@ -461,8 +461,8 @@ JBIGLIB = $(BUILDDIR)/converter/other/jb
|
||||
JBIGHDR_DIR = $(SRCDIR)/converter/other/jbig
|
||||
|
||||
# The Jasper JPEG-2000 image compression library (aka JasPer):
|
||||
-JASPERLIB = $(INTERNAL_JASPERLIB)
|
||||
-JASPERHDR_DIR = $(INTERNAL_JASPERHDR_DIR)
|
||||
+JASPERLIB = -ljasper
|
||||
+JASPERHDR_DIR = /usr/include/jasper
|
||||
# JASPERDEPLIBS is the libraries (-l options or file names) on which
|
||||
# The Jasper library depends -- i.e. what you have to link into any
|
||||
# executable that links in the Jasper library.
|
||||
|
@ -1,80 +0,0 @@
|
||||
--- buildtools/makeman
|
||||
+++ buildtools/makeman
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/bin/env python
|
||||
+#!/usr/bin/python
|
||||
#
|
||||
# makeman -- compile netpbm's stereotyped HTML to troff markup
|
||||
#
|
||||
@@ -95,6 +95,8 @@
|
||||
indoc = re.sub("(?i)\n *</PRE>", "\n.fi", indoc)
|
||||
indoc = re.sub("(?i)\n *<BLOCKQUOTE>", "\n.nf", indoc)
|
||||
indoc = re.sub("(?i)\n *</BLOCKQUOTE>", "\n.fi", indoc)
|
||||
+ indoc = re.sub("(?i)\n *<code>", "\n.nf", indoc)
|
||||
+ indoc = re.sub("(?i)\n *</code>", "\n.fi", indoc)
|
||||
# Highlight processing
|
||||
indoc = re.sub("(?i)<B>", r"\\fB", indoc)
|
||||
indoc = re.sub("(?i)</B>", r"\\fP", indoc)
|
||||
@@ -114,7 +116,10 @@
|
||||
indoc = re.sub("(?i)</SUP>", r"\\d", indoc)
|
||||
# Paragraph handling
|
||||
indoc = re.sub("(?i)\n*<P>\n*", r"\n.PP\n", indoc)
|
||||
+ indoc = re.sub("(?i)<br */>", r"\n.PP\n", indoc)
|
||||
indoc = re.sub("(?i)</P>", "", indoc)
|
||||
+ indoc = re.sub("(?i)<!--[^>]*-->", "", indoc)
|
||||
+ indoc = re.sub("(?i)<meta[^>]*>", "", indoc)
|
||||
lines = indoc.split("\n")
|
||||
listdepth = 0
|
||||
for i in range(len(lines)):
|
||||
@@ -131,13 +136,14 @@
|
||||
indoc = re.sub('(?i)<A[ \n]+HREF="mailto:[^>]+">([^<]+)</A>', r'\\fI\1\\fP', indoc)
|
||||
# Format manual crossreferences
|
||||
def xrefmatch(match):
|
||||
- xrefto = match.group(1)
|
||||
- xrefsection = sectmap.get(xrefto, 1)
|
||||
+ xrefto = match.group(2)
|
||||
+ xrefurl = match.group(1)
|
||||
+ xrefsection = sectmap.get(xrefurl, 1)
|
||||
if xrefsection == 0:
|
||||
return "\n.I " + xrefto
|
||||
else:
|
||||
- return "\n.BR %s (%d)" % (xrefto, xrefsection)
|
||||
- indoc = re.sub(r'(?i)\n* *(?:\\fB)?<A[ \n]+HREF="[^>]+.html">([^<]+)</A>(?:\\fP)?',
|
||||
+ return "\n.BR %s (%d)\n" % (xrefto, xrefsection)
|
||||
+ indoc = re.sub(r'(?i)\n* *(?:\\fB)?<A[ \n]+HREF="?([^>]+.html)"?>([^<]+)</A>(?:\\fP)?',
|
||||
xrefmatch, indoc)
|
||||
# Format URLs
|
||||
def urlmatch(match):
|
||||
@@ -151,7 +157,7 @@
|
||||
indoc = indoc.replace("×", r"\(mu")
|
||||
indoc = indoc.replace("®", r"\*R")
|
||||
# Turn anchors into .UN tags
|
||||
- indoc = re.sub('(?i)<A NAME *= *"#?([a-zA-Z][a-zA-Z0-9.-]+)">(?: )*</A>\s*', ".UN \\1\n", indoc)
|
||||
+ indoc = re.sub('(?i)<A NAME *= *"#?([a-zA-Z_][a-zA-Z_0-9.-]+)">(?: )*</A>\s*', ".UN \\1\n", indoc)
|
||||
# Strip off the index trailer
|
||||
trailer = re.compile('<HR */*>.*', re.DOTALL | re.IGNORECASE)
|
||||
indoc = re.sub(trailer, "", indoc)
|
||||
@@ -159,17 +165,17 @@
|
||||
indoc = indoc.replace("</BODY>", "").replace("</HTML>", "")
|
||||
indoc = indoc.replace("</body>", "").replace("</html>", "")
|
||||
# Recognize sections with IDs
|
||||
- indoc = re.sub('(?i)<H2><A (?:ID|NAME)="([a-zA-Z]+)">([^><]*)</A></H2>',
|
||||
+ indoc = re.sub('(?i)<H2><A (?:ID|NAME)="([a-zA-Z_0-9]+)">([^><]*)</A></H2>',
|
||||
".UN \\1\n.SH \\2", indoc)
|
||||
- indoc = re.sub('(?i)<H3><A (?:ID|NAME)="([a-zA-Z]+)">([^><]*)</A></H3>',
|
||||
+ indoc = re.sub('(?i)<H3><A (?:ID|NAME)="([a-zA-Z_0-9]+)">([^><]*)</A></H3>',
|
||||
".UN \\1\n.SS \\2", indoc)
|
||||
- indoc = re.sub('(?i)<H4><A (?:ID|NAME)="([a-zA-Z]+)">([^><]*)</A></H4>',
|
||||
+ indoc = re.sub('(?i)<H4><A (?:ID|NAME)="([a-zA-Z_0-9]+)">([^><]*)</A></H4>',
|
||||
".UN \\1\n.B \\2", indoc)
|
||||
- indoc = re.sub('(?i)<H2 (?:ID|NAME)="([a-zA-Z]+)">([^><]*)</H2>',
|
||||
+ indoc = re.sub('(?i)<H2 (?:ID|NAME)="([a-zA-Z_0-9]+)">([^><]*)</H2>',
|
||||
".UN \\1\n.SH \\2", indoc)
|
||||
- indoc = re.sub('(?i)<H3 (?:ID|NAME)="([a-zA-Z]+)">([^><]*)</H3>',
|
||||
+ indoc = re.sub('(?i)<H3 (?:ID|NAME)="([a-zA-Z_0-9]+)">([^><]*)</H3>',
|
||||
".UN \\1\n.SS \\2", indoc)
|
||||
- indoc = re.sub('(?i)<H4 (?:ID|NAME)="([a-zA-Z]+)">([^><]*)</H4>',
|
||||
+ indoc = re.sub('(?i)<H4 (?:ID|NAME)="([a-zA-Z_0-9]+)">([^><]*)</H4>',
|
||||
".UN \\1\n.B \\2", indoc)
|
||||
# Sections without IDs
|
||||
indoc = re.sub('(?i)<H2>([^><]*)</H2>', ".SH \\1", indoc)
|
@ -1,11 +0,0 @@
|
||||
--- editor/pamscale.c
|
||||
+++ editor/pamscale.c
|
||||
@@ -595,6 +595,8 @@
|
||||
const char *filterOpt, *window;
|
||||
unsigned int filterSpec, windowSpec;
|
||||
|
||||
+ memset(cmdlineP, 0, sizeof(struct cmdlineInfo));
|
||||
+
|
||||
MALLOCARRAY_NOFAIL(option_def, 100);
|
||||
|
||||
option_def_index = 0; /* incremented by OPTENT3 */
|
@ -1,20 +0,0 @@
|
||||
--- converter/other/pnmtopng.c
|
||||
+++ converter/other/pnmtopng.c
|
||||
@@ -521,7 +521,7 @@
|
||||
unsigned int * const bestMatchP) {
|
||||
|
||||
unsigned int paletteIndex;
|
||||
- unsigned int bestIndex;
|
||||
+ unsigned int bestIndex = 0;
|
||||
unsigned int bestMatch;
|
||||
|
||||
assert(paletteSize > 0);
|
||||
@@ -2342,7 +2342,7 @@
|
||||
/* The color part of the color/alpha palette passed to the PNG
|
||||
compressor
|
||||
*/
|
||||
- unsigned int palette_size;
|
||||
+ unsigned int palette_size = MAXCOLORS;
|
||||
|
||||
gray trans_pnm[MAXCOLORS];
|
||||
png_byte trans[MAXCOLORS];
|
File diff suppressed because it is too large
Load Diff
@ -1,19 +1,19 @@
|
||||
--- netpbm-10.35.64/converter/other/anytopnm
|
||||
+++ netpbm-10.35.64/converter/other/anytopnm
|
||||
@@ -506,11 +506,7 @@
|
||||
diff -up netpbm-10.47.05/converter/other/anytopnm.security-scripts netpbm-10.47.05/converter/other/anytopnm
|
||||
--- netpbm-10.47.05/converter/other/anytopnm.security-scripts 2009-12-10 08:34:36.000000000 +0100
|
||||
+++ netpbm-10.47.05/converter/other/anytopnm 2010-03-16 21:28:09.000000000 +0100
|
||||
@@ -510,10 +510,7 @@ else
|
||||
inputFile="-"
|
||||
fi
|
||||
|
||||
-tempdir="${TMPDIR-/tmp}/anytopnm.$$"
|
||||
-mkdir $tempdir || { echo "Could not create temporary file. Exiting."; exit 1;}
|
||||
-chmod 700 $tempdir
|
||||
-
|
||||
-mkdir -m 0700 $tempdir || \
|
||||
- { echo "Could not create temporary file. Exiting."; exit 1;}
|
||||
-trap 'rm -rf $tempdir' 0
|
||||
+tempdir=$(mktemp -d -t anytopnm.XXXXXXXXXX) || exit 1
|
||||
|
||||
# Take out all spaces
|
||||
# Find the filename extension for last-ditch efforts later
|
||||
@@ -536,9 +532,17 @@
|
||||
@@ -539,9 +536,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
|
||||
@ -31,30 +31,34 @@
|
||||
+fi
|
||||
+
|
||||
exit 0
|
||||
--- netpbm-10.35.64/editor/pamstretch-gen
|
||||
+++ netpbm-10.35.64/editor/pamstretch-gen
|
||||
@@ -31,10 +31,7 @@
|
||||
diff -up netpbm-10.47.05/editor/pamstretch-gen.security-scripts netpbm-10.47.05/editor/pamstretch-gen
|
||||
--- netpbm-10.47.05/editor/pamstretch-gen.security-scripts 2009-12-10 08:34:32.000000000 +0100
|
||||
+++ netpbm-10.47.05/editor/pamstretch-gen 2010-03-16 21:28:47.000000000 +0100
|
||||
@@ -31,13 +31,9 @@ if [ "$1" = "" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
-tempdir="${TMPDIR-/tmp}/pamstretch-gen.$$"
|
||||
-mkdir $tempdir || { echo "Could not create temporary file. Exiting."; exit 1;}
|
||||
-chmod 700 $tempdir
|
||||
-tempfile=$tempdir/pnmig
|
||||
-mkdir -m 0700 $tempdir || \
|
||||
- { echo "Could not create temporary file. Exiting."; exit 1;}
|
||||
+tempfile=$(mktemp /tmp/pnmig.XXXXXXXXXX) || exit 1
|
||||
|
||||
trap 'rm -rf $tempdir' 0 1 3 15
|
||||
|
||||
--- netpbm-10.35.64/editor/pnmmargin
|
||||
+++ netpbm-10.35.64/editor/pnmmargin
|
||||
@@ -11,16 +11,11 @@
|
||||
-tempfile=$tempdir/pnmig
|
||||
-
|
||||
if ! cat $2 >$tempfile 2>/dev/null; then
|
||||
echo 'pamstretch-gen: error reading file' 1>&2
|
||||
exit 1
|
||||
diff -up netpbm-10.47.05/editor/pnmmargin.security-scripts netpbm-10.47.05/editor/pnmmargin
|
||||
--- netpbm-10.47.05/editor/pnmmargin.security-scripts 2009-12-10 08:34:32.000000000 +0100
|
||||
+++ netpbm-10.47.05/editor/pnmmargin 2010-03-16 21:28:09.000000000 +0100
|
||||
@@ -11,15 +11,11 @@
|
||||
# documentation. This software is provided "as is" without express or
|
||||
# implied warranty.
|
||||
|
||||
-tempdir="${TMPDIR-/tmp}/pnmmargin.$$"
|
||||
-mkdir $tempdir || { echo "Could not create temporary file. Exiting."; exit 1;}
|
||||
-chmod 700 $tempdir
|
||||
-
|
||||
-mkdir -m 0700 $tempdir || \
|
||||
- { echo "Could not create temporary file. Exiting." 1>&2; exit 1;}
|
||||
-trap 'rm -rf $tempdir' 0 1 3 15
|
||||
-
|
||||
-tmp1=$tempdir/pnmm1
|
||||
@ -68,57 +72,27 @@
|
||||
+tmp4="$tmpdir/tmp4"
|
||||
|
||||
color="-gofigure"
|
||||
|
||||
@@ -39,6 +34,9 @@
|
||||
shift
|
||||
if [ ! ${1-""} ] ; then
|
||||
echo "usage: $0 [-white|-black|-color <colorspec>] <size> [pnmfile]" 1>&2
|
||||
+ if [ -d "$tmpdir" ]; then
|
||||
plainopt=""
|
||||
@@ -90,6 +86,7 @@ else
|
||||
-white | -black )
|
||||
pnmpad $plainopt $color \
|
||||
-left=$size -right=$size -top=$size -bottom=$size $tmp1
|
||||
+ rm -rf "$tmpdir"
|
||||
+ fi
|
||||
exit 1
|
||||
fi
|
||||
color="$1"
|
||||
@@ -46,6 +44,9 @@
|
||||
;;
|
||||
-* )
|
||||
echo "usage: $0 [-white|-black|-color <colorspec>] <size> [pnmfile]" 1>&2
|
||||
+ if [ -d "$tmpdir" ]; then
|
||||
+ rm -rf "$tmpdir"
|
||||
+ fi
|
||||
exit 1
|
||||
exit
|
||||
;;
|
||||
* )
|
||||
@@ -56,6 +57,9 @@
|
||||
|
||||
if [ ! ${1-""} ] ; then
|
||||
echo "usage: $0 [-white|-black|-color <colorspec>] <size> [pnmfile]" 1>&2
|
||||
+ if [ -d "$tmpdir" ]; then
|
||||
+ rm -rf "$tmpdir"
|
||||
+ fi
|
||||
exit 1
|
||||
fi
|
||||
size="$1"
|
||||
@@ -63,6 +67,9 @@
|
||||
|
||||
if [ ${2-""} ] ; then
|
||||
echo "usage: $0 [-white|-black|-color <colorspec>] <size> [pnmfile]" 1>&2
|
||||
+ if [ -d "$tmpdir" ]; then
|
||||
+ rm -rf "$tmpdir"
|
||||
+ fi
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -86,3 +93,7 @@
|
||||
# Cat things together.
|
||||
@@ -102,7 +99,4 @@ else
|
||||
pnmcat -lr $tmp2 $tmp1 $tmp2 > $tmp4
|
||||
pnmcat -tb $tmp3 $tmp4 $tmp3
|
||||
+
|
||||
+if [ -d "$tmpdir" ]; then
|
||||
pnmcat -tb $plainopt $tmp3 $tmp4 $tmp3
|
||||
fi
|
||||
-
|
||||
-
|
||||
-
|
||||
-
|
||||
+rm -rf "$tmpdir"
|
||||
+fi
|
||||
--- netpbm-10.35.64/editor/ppmfade
|
||||
+++ netpbm-10.35.64/editor/ppmfade
|
||||
diff -up netpbm-10.47.05/editor/ppmfade.security-scripts netpbm-10.47.05/editor/ppmfade
|
||||
--- netpbm-10.47.05/editor/ppmfade.security-scripts 2009-12-10 08:34:32.000000000 +0100
|
||||
+++ netpbm-10.47.05/editor/ppmfade 2010-03-16 21:28:09.000000000 +0100
|
||||
@@ -14,6 +14,7 @@
|
||||
#
|
||||
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
|
||||
@ -127,7 +101,7 @@
|
||||
|
||||
my $SPREAD = 1;
|
||||
my $SHIFT = 2;
|
||||
@@ -118,20 +119,26 @@
|
||||
@@ -111,20 +112,26 @@ if ($first_file ne "undefined") {
|
||||
|
||||
print("Frames are " . $width . "W x " . $height . "H\n");
|
||||
|
||||
@ -158,7 +132,7 @@
|
||||
}
|
||||
|
||||
#
|
||||
@@ -139,14 +146,14 @@
|
||||
@@ -132,14 +139,14 @@ if ($last_file eq "undefined") {
|
||||
#
|
||||
|
||||
# Here's what our temporary files are:
|
||||
@ -181,7 +155,7 @@
|
||||
|
||||
my $i; # Frame number
|
||||
for ($i = 1; $i <= $nframes; $i++) {
|
||||
@@ -154,148 +161,148 @@
|
||||
@@ -147,147 +154,147 @@ for ($i = 1; $i <= $nframes; $i++) {
|
||||
if ($mode eq $SPREAD) {
|
||||
if ($i <= 10) {
|
||||
my $n = $spline20[$i] * 100;
|
||||
@ -382,28 +356,10 @@
|
||||
+system("rm $tmpdir/junk*$$.ppm");
|
||||
|
||||
exit(0);
|
||||
|
||||
--- netpbm-10.35.64/editor/ppmquantall
|
||||
+++ netpbm-10.35.64/editor/ppmquantall
|
||||
@@ -70,13 +70,8 @@
|
||||
heights=(${heights[*]} `grep -v '^#' $i | sed '1d; s/.* //; 2q'`)
|
||||
done
|
||||
|
||||
-tempdir="${TMPDIR-/tmp}/ppmquantall.$$"
|
||||
-mkdir $tempdir || { echo "Could not create temporary file. Exiting."; exit 1;}
|
||||
-chmod 700 $tempdir
|
||||
-
|
||||
-trap 'rm -rf $tempdir' 0 1 3 15
|
||||
-
|
||||
-all=$tempdir/pqa.all.$$
|
||||
+all=$(mktemp -t pqa.all.XXXXXXXXXX) || exit 1
|
||||
+rm -f $all
|
||||
|
||||
pnmcat -topbottom -jleft -white ${files[@]} | pnmquant $newcolors > $all
|
||||
if [ $? != 0 ]; then
|
||||
--- netpbm-10.35.64/editor/ppmshadow
|
||||
+++ netpbm-10.35.64/editor/ppmshadow
|
||||
@@ -72,9 +72,10 @@
|
||||
diff -up netpbm-10.47.05/editor/ppmshadow.security-scripts netpbm-10.47.05/editor/ppmshadow
|
||||
--- netpbm-10.47.05/editor/ppmshadow.security-scripts 2009-12-10 08:34:32.000000000 +0100
|
||||
+++ netpbm-10.47.05/editor/ppmshadow 2010-03-16 21:28:09.000000000 +0100
|
||||
@@ -72,9 +72,10 @@ sub makeConvolutionKernel($$) {
|
||||
|
||||
|
||||
my $tmpdir = $ENV{TMPDIR} || "/tmp";
|
@ -1,6 +1,8 @@
|
||||
--- editor/pnmindex.csh
|
||||
Index: editor/pnmindex.csh
|
||||
===================================================================
|
||||
--- editor/pnmindex.csh.orig
|
||||
+++ editor/pnmindex.csh
|
||||
@@ -88,7 +88,7 @@
|
||||
@@ -85,7 +85,7 @@ if ( $#argv == 0 ) then
|
||||
goto usage
|
||||
endif
|
||||
|
||||
@ -9,39 +11,53 @@
|
||||
rm -f $tmpfile
|
||||
set maxformat=PBM
|
||||
|
||||
--- editor/ppmquantall.csh
|
||||
+++ editor/ppmquantall.csh
|
||||
@@ -34,8 +34,8 @@
|
||||
set heights=( $heights `sed '1d; s/.* //; 2q' $i` )
|
||||
end
|
||||
|
||||
-set all=/tmp/pqa.all.$$
|
||||
-rm -f $all
|
||||
+set all=.pqa.all.$$
|
||||
+
|
||||
pnmcat -topbottom -jleft -white $files | ppmquant -quiet $newcolors > $all
|
||||
if ( $status != 0 ) exit $status
|
||||
|
||||
--- generator/ppmrainbow
|
||||
Index: generator/ppmrainbow
|
||||
===================================================================
|
||||
--- generator/ppmrainbow.orig
|
||||
+++ generator/ppmrainbow
|
||||
@@ -47,7 +47,13 @@
|
||||
@@ -1,6 +1,7 @@
|
||||
#!/usr/bin/perl -wl
|
||||
use strict;
|
||||
use Getopt::Long;
|
||||
+use File::Temp qw{tempfile tempdir};
|
||||
|
||||
my ($FALSE, $TRUE) = (0,1);
|
||||
|
||||
@@ -47,31 +48,25 @@ if (!$norepeat) {
|
||||
push @colorlist, $ARGV[0];
|
||||
}
|
||||
|
||||
-my $tmpprefix = $tmpdir . "/$myname.$$.";
|
||||
+my $mytmpdir;
|
||||
+chomp($mytmpdir = `mktemp -d $tmpdir/ppmrainbow.XXXXXX`);
|
||||
+if ($? >> 8) {
|
||||
+ die "Can't create tmpdir";
|
||||
+}
|
||||
+
|
||||
+my $tmpprefix = $mytmpdir . "/file.";
|
||||
|
||||
-my $ourtmp = "$tmpdir/ppmrainbow$$";
|
||||
-mkdir($ourtmp, 0777) or
|
||||
- die("Unable to create directory for temporary files '$ourtmp");
|
||||
-
|
||||
-
|
||||
+my $ourtmp = tempdir("ppmrainbow.XXXX", DIR => $tmpdir, CLEANUP => 1);
|
||||
my $widthRemaining;
|
||||
my $n;
|
||||
@@ -79,4 +85,5 @@
|
||||
-my $n;
|
||||
my @outlist;
|
||||
|
||||
END {
|
||||
unlink @outlist if @outlist;
|
||||
+ rmdir $mytmpdir if -d $mytmpdir;
|
||||
-$n = 0;
|
||||
$widthRemaining = $Twid;
|
||||
@outlist = ();
|
||||
|
||||
while (@colorlist >= 2) {
|
||||
- my $outfile = sprintf("%s/file.%03u.ppm", $ourtmp, $n);
|
||||
+ (my $tmpfh, my $outfile) = tempfile("file.XXXXXXXX", DIR => "$ourtmp", SUFFIX => '.ppm');
|
||||
push(@outlist, $outfile);
|
||||
|
||||
my $w = int(($widthRemaining-1)/(@colorlist-1))+1;
|
||||
- my $rc = system("$verboseCommand pgmramp -lr $w $Thgt | " .
|
||||
- "pgmtoppm \"$colorlist[0]-$colorlist[1]\" >$outfile");
|
||||
- if ($rc != 0) {
|
||||
+ my $content = qx{$verboseCommand pgmramp -lr $w $Thgt |
|
||||
+ pgmtoppm "$colorlist[0]-$colorlist[1]"};
|
||||
+ if (! "$content") {
|
||||
fatal("pgmramp|pgmtoppm failed.");
|
||||
}
|
||||
+ print $tmpfh $content;
|
||||
$widthRemaining -= $w;
|
||||
- $n++;
|
||||
shift @colorlist;
|
||||
}
|
||||
|
||||
|
@ -1,3 +1,27 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Sep 6 15:16:56 UTC 2012 - pgajdos@suse.com
|
||||
|
||||
- updated to 10.59.2:
|
||||
* transition super-stable --> advanced branch
|
||||
* builds with libpng15
|
||||
* patches summary:
|
||||
-> dropped unneeded or upstreamed patches:
|
||||
- fixes.patch
|
||||
- libpng14.patch
|
||||
- manpages.patch
|
||||
- pamscale.patch
|
||||
- pnmtopng-CAN-2978.patch
|
||||
-> left patches
|
||||
# make.patch (suse specific)
|
||||
# no-build-time.patch (suse specific)
|
||||
# missing-file-close.patch (should be upstreamed in newer
|
||||
versions)
|
||||
# tmpfile.patch (rewritten)
|
||||
# security-code.patch (taken from fedora, replacement of
|
||||
former security.patch)
|
||||
# security-scripts.patch (taken from fedora, replacement of
|
||||
former security2.patch)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Aug 30 10:04:11 UTC 2012 - cfarrell@suse.com
|
||||
|
||||
|
123
netpbm.spec
123
netpbm.spec
@ -17,7 +17,6 @@
|
||||
|
||||
|
||||
Name: netpbm
|
||||
# regarding to libpng: netpbm is compatible with libpng14 from version 10.48
|
||||
BuildRequires: flex
|
||||
BuildRequires: libjasper-devel
|
||||
BuildRequires: libpng-devel
|
||||
@ -29,41 +28,29 @@ Provides: pbmplus
|
||||
Obsoletes: netpbm-64bit
|
||||
%endif
|
||||
#
|
||||
Version: 10.35.86
|
||||
%define libmaj 11
|
||||
%define libmin 59
|
||||
%define libver %{libmaj}.%{libmin}
|
||||
Version: 10.59.2
|
||||
Release: 0
|
||||
Summary: A Powerful Graphics Conversion Package
|
||||
License: BSD-3-Clause and GPL-2.0+ and SUSE-IJG and MIT and SUSE-Public-Domain
|
||||
Group: Productivity/Graphics/Convertors
|
||||
Source: netpbm-%{version}-nohpcdtoppm-nojbig.tar.bz2
|
||||
Source: netpbm-%{version}-nohpcdtoppm-noppmtompeg.tar.bz2
|
||||
Source1: netpbm-%{version}-documentation.tar.bz2
|
||||
Source2: baselibs.conf
|
||||
Source3: prepare-src-tarball
|
||||
# SUSE specific
|
||||
Patch0: %{name}-make.patch
|
||||
# partially upstreamed in development version
|
||||
Patch1: %{name}-manpages.patch
|
||||
# refused by upstream
|
||||
Patch2: %{name}-security.patch
|
||||
# refused by upstream
|
||||
Patch3: %{name}-security2.patch
|
||||
# refused by upstream
|
||||
Patch4: %{name}-pnmtopng-CAN-2978.patch
|
||||
# don't know what it does so far
|
||||
Patch5: %{name}-tmpfile.patch
|
||||
# SUSE specific: no build date
|
||||
Patch1: %{name}-no-build-date.patch
|
||||
# upstreamed in development version
|
||||
Patch6: %{name}-fixes.patch
|
||||
# upstreamed in development version (another way)
|
||||
Patch7: %{name}-pamscale.patch
|
||||
# upstreamed in development version
|
||||
Patch8: %{name}-missing-file-close.patch
|
||||
# no build date
|
||||
Patch9: netpbm-no-build-date.patch
|
||||
# new versions build against libpng14
|
||||
Patch10: %{name}-libpng14.patch
|
||||
Url: http://netpbm.sourceforge.net
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Patch2: %{name}-missing-file-close.patch
|
||||
Patch3: %{name}-tmpfile.patch
|
||||
Patch4: %{name}-security-code.patch
|
||||
Patch5: %{name}-security-scripts.patch
|
||||
|
||||
%package -n libnetpbm10
|
||||
%package -n libnetpbm%{libmaj}
|
||||
Summary: Libraries for the NetPBM (NetPortableBitmap) Graphic Formats
|
||||
Group: System/Libraries
|
||||
# bug437293
|
||||
@ -82,7 +69,7 @@ Group: Development/Libraries/C and C++
|
||||
Obsoletes: libnetpbm-devel-64bit
|
||||
%endif
|
||||
#
|
||||
Requires: libnetpbm10 = %{version}
|
||||
Requires: libnetpbm%{libmaj} = %{version}
|
||||
Provides: libnetpbm:/usr/include/pbm.h
|
||||
|
||||
%description
|
||||
@ -96,7 +83,7 @@ Paintjet file, QRT raytracer, AUTOCAD slide, Atari Spectrum (compressed
|
||||
and uncompressed), Andrew Toolkit raster object, and many more. On top
|
||||
of that, man pages are included for all tools.
|
||||
|
||||
%description -n libnetpbm10
|
||||
%description -n libnetpbm%{libmaj}
|
||||
These are the libs for the netpbm graphic formats. The tools can be
|
||||
found in the netpbm package. The sources are contained in the netpbm
|
||||
source package.
|
||||
@ -109,36 +96,20 @@ source package.
|
||||
%prep
|
||||
%setup
|
||||
%setup -D -q -a 1
|
||||
rm -rf libtiff
|
||||
%patch0
|
||||
%patch1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
%patch4
|
||||
%patch5
|
||||
%patch6
|
||||
%patch7
|
||||
%patch8
|
||||
%patch9
|
||||
%patch10 -p1
|
||||
rm -rf converter/other/jpeg2000/libjasper/include #make sure the internal libjasper is not used
|
||||
mkdir -p pnmtopalm
|
||||
cd pnmtopalm
|
||||
cp -v ../converter/other/pnmtopalm/LICENSE .
|
||||
cp -v ../converter/other/pnmtopalm/README .
|
||||
%patch2
|
||||
%patch3
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
mkdir pnmtopalm # for %doc pnmtopalm
|
||||
cp -p converter/other/pnmtopalm/{LICENSE,README} pnmtopalm
|
||||
|
||||
%build
|
||||
# fix build with newer glibc
|
||||
sed "s:getline:getline_nonlibc:" -i converter/ppm/xvminitoppm.c
|
||||
#
|
||||
cp Makefile.config.in Makefile.config
|
||||
CFLAGS="$RPM_OPT_FLAGS"
|
||||
%if %suse_version > 1030
|
||||
CFLAGS="$CFLAGS -flax-vector-conversions"
|
||||
%endif
|
||||
make CFLAGS="$CFLAGS" \
|
||||
JASPERLIB=-ljasper \
|
||||
JASPERHDR_DIR=/usr/include/jasper
|
||||
# netpbm has _interactive_ configure perl script
|
||||
cp config.mk.in config.mk # recomended by upstream, see doc/INSTALL
|
||||
export CFLAGS="$RPM_OPT_FLAGS -flax-vector-conversions"
|
||||
make CFLAGS="$CFLAGS"
|
||||
rm doc/INSTALL
|
||||
#
|
||||
# convert html to man pages
|
||||
@ -150,29 +121,27 @@ for i in 1 3 5 ; do
|
||||
done
|
||||
|
||||
%install
|
||||
mkdir -p $RPM_BUILD_ROOT/usr/{bin,include,%_lib,share/man}
|
||||
# netpbm has _interactive_ install perl script, see doc/INSTALL
|
||||
make pkgdir=`pwd`/package package STRIPFLAG=
|
||||
cp -prd package/bin $RPM_BUILD_ROOT/usr
|
||||
cp -pd package/{lib,link}/* $RPM_BUILD_ROOT/usr/%_lib
|
||||
ln -sf libnetpbm.so.10.35 $RPM_BUILD_ROOT/usr/%_lib/libnetpbm.so
|
||||
ln -sf libnetpbm.so $RPM_BUILD_ROOT/usr/%_lib/libpbm.so
|
||||
ln -sf libnetpbm.so $RPM_BUILD_ROOT/usr/%_lib/libpgm.so
|
||||
ln -sf libnetpbm.so $RPM_BUILD_ROOT/usr/%_lib/libpnm.so
|
||||
ln -sf libnetpbm.so $RPM_BUILD_ROOT/usr/%_lib/libppm.so
|
||||
cp -pd package/include/* $RPM_BUILD_ROOT/usr/include
|
||||
cp -prd man/* $RPM_BUILD_ROOT/usr/share/man
|
||||
rm $RPM_BUILD_ROOT/usr/%_lib/*.a
|
||||
mkdir -p $RPM_BUILD_ROOT/usr/share/netpbm
|
||||
install -m 644 converter/other/pnmtopalm/*.map $RPM_BUILD_ROOT/usr/share/netpbm
|
||||
rm $RPM_BUILD_ROOT/usr/bin/doc.url
|
||||
rm $RPM_BUILD_ROOT/usr/bin/g3topbm #conflict with g3utils
|
||||
rm package/bin/doc.url
|
||||
rm package/bin/g3topbm #conflict with g3utils
|
||||
#
|
||||
mkdir -p $RPM_BUILD_ROOT%{_prefix}/{bin,include,%_lib,share/man,share/%{name}}
|
||||
cp -pd package/bin/* $RPM_BUILD_ROOT%{_bindir}
|
||||
cp -pd package/lib/*.so* $RPM_BUILD_ROOT%{_libdir}
|
||||
ln -s libnetpbm.so.%{libver} $RPM_BUILD_ROOT%{_libdir}/libnetpbm.so
|
||||
ln -s libnetpbm.so $RPM_BUILD_ROOT%{_libdir}/libpbm.so
|
||||
ln -s libnetpbm.so $RPM_BUILD_ROOT%{_libdir}/libpgm.so
|
||||
ln -s libnetpbm.so $RPM_BUILD_ROOT%{_libdir}/libpnm.so
|
||||
ln -s libnetpbm.so $RPM_BUILD_ROOT%{_libdir}/libppm.so
|
||||
cp -prd package/include/netpbm $RPM_BUILD_ROOT%{_includedir}
|
||||
cp -prd man/* $RPM_BUILD_ROOT%{_mandir}
|
||||
install -m 644 converter/other/pnmtopalm/*.map \
|
||||
$RPM_BUILD_ROOT%{_datadir}/%{name}
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
%post -n libnetpbm%{libmaj} -p /sbin/ldconfig
|
||||
|
||||
%post -n libnetpbm10 -p /sbin/ldconfig
|
||||
|
||||
%postun -n libnetpbm10 -p /sbin/ldconfig
|
||||
%postun -n libnetpbm%{libmaj} -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
@ -181,16 +150,16 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%doc %{_mandir}/man1/*.gz
|
||||
%doc %{_mandir}/man3/*.gz
|
||||
%doc %{_mandir}/man5/*.gz
|
||||
/usr/bin/*
|
||||
/usr/share/netpbm
|
||||
%{_bindir}/*
|
||||
%{_datadir}/%{name}
|
||||
|
||||
%files -n libnetpbm10
|
||||
%files -n libnetpbm%{libmaj}
|
||||
%defattr(-,root,root)
|
||||
%{_libdir}/lib*.so.*
|
||||
|
||||
%files -n libnetpbm-devel
|
||||
%defattr(-,root,root)
|
||||
/usr/include/*
|
||||
%{_includedir}/%{name}
|
||||
%{_libdir}/lib*.so
|
||||
|
||||
%changelog
|
||||
|
@ -7,8 +7,8 @@
|
||||
rm -rf REMOVE
|
||||
mkdir REMOVE
|
||||
cd REMOVE
|
||||
svn checkout http://netpbm.svn.sourceforge.net/svnroot/netpbm/super_stable netpbm
|
||||
VER=`echo \`cut -f2 -d= netpbm*/Makefile.version \`|sed -e "s| |.|g"`
|
||||
svn checkout http://netpbm.svn.sourceforge.net/svnroot/netpbm/advanced netpbm
|
||||
VER=`echo \`cut -f2 -d= netpbm*/version.mk \`|sed -e "s| |.|g"`
|
||||
mv netpbm* netpbm-$VER
|
||||
|
||||
find . -name ".svn" -exec rm -rf {} \;
|
||||
@ -22,15 +22,6 @@ echo install.data: >> Makefile
|
||||
echo clean: >> Makefile
|
||||
cd ../../../..
|
||||
|
||||
cd netpbm*/converter/other/jbig || exit 1
|
||||
rm -rf *
|
||||
echo all: >> Makefile
|
||||
echo install.bin: >> Makefile
|
||||
echo install.man: >> Makefile
|
||||
echo install.data: >> Makefile
|
||||
echo clean: >> Makefile
|
||||
cd ../../../..
|
||||
|
||||
cd netpbm*/converter/ppm/ppmtompeg || exit 1
|
||||
rm -rf *
|
||||
echo all: >> Makefile
|
||||
@ -40,9 +31,8 @@ echo install.data: >> Makefile
|
||||
echo clean: >> Makefile
|
||||
cd ../../../..
|
||||
|
||||
tar cjf ../netpbm-$VER-nohpcdtoppm-nojbig.tar.bz2 *
|
||||
tar cjf ../netpbm-$VER-nohpcdtoppm-noppmtompeg.tar.bz2 *
|
||||
|
||||
wget -m netpbm.sourceforge.net
|
||||
rm netpbm.sourceforge.net/bdffont.tgz
|
||||
tar cjf ../netpbm-$VER-documentation.tar.bz2 netpbm.sourceforge.net
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user