From 6182bbe0241b2a0e118e3941235844964a7e955d Mon Sep 17 00:00:00 2001 From: Silvan Calarco Date: Sat, 6 Jan 2024 10:21:42 +0100 Subject: [PATCH] rebuilt against libpng 1.5 (patch added) [release 2.6-4mamba;Thu Dec 13 2012] --- README.md | 3 + plotutils-2.4.1-gcc3.patch | 93 +++++++++++++++++ plotutils-2.6-libpng-1.5-2.patch | 36 +++++++ plotutils.spec | 173 +++++++++++++++++++++++++++++++ 4 files changed, 305 insertions(+) create mode 100644 plotutils-2.4.1-gcc3.patch create mode 100644 plotutils-2.6-libpng-1.5-2.patch create mode 100644 plotutils.spec diff --git a/README.md b/README.md index 5f89dfc..7cb0398 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,5 @@ # plotutils +This package contains command-line programs for plotting scientific data. +Many of them use libplot to export graphics. + diff --git a/plotutils-2.4.1-gcc3.patch b/plotutils-2.4.1-gcc3.patch new file mode 100644 index 0000000..b425bc3 --- /dev/null +++ b/plotutils-2.4.1-gcc3.patch @@ -0,0 +1,93 @@ +diff -pur plotutils-2.4.1/libplot/g_write.c plotutils-2.4.1-fix/libplot/g_write.c +--- plotutils-2.4.1/libplot/g_write.c 2000-05-19 18:10:01.000000000 +0200 ++++ plotutils-2.4.1-fix/libplot/g_write.c 2005-07-28 11:59:12.000000000 +0200 +@@ -40,7 +40,7 @@ _write_bytes (data, n, c) + } + #ifdef LIBPLOTTER + else if (data->outstream) +- data->outstream->write(c, n); ++ data->outstream->write((const char *)c, n); + #endif + } + +diff -pur plotutils-2.4.1/libplot/i_rle.c plotutils-2.4.1-fix/libplot/i_rle.c +--- plotutils-2.4.1/libplot/i_rle.c 1999-06-27 18:58:10.000000000 +0200 ++++ plotutils-2.4.1-fix/libplot/i_rle.c 2005-07-28 11:59:56.000000000 +0200 +@@ -78,7 +78,7 @@ _write_block (rle) + else if (rle->outstream) + { + rle->outstream->put ((unsigned char)(rle->oblen)); +- rle->outstream->write (&(rle->oblock[0]), rle->oblen); ++ rle->outstream->write ((char *) &(rle->oblock[0]), rle->oblen); + } + #endif + +diff -pur plotutils-2.4.1/libplot/n_write.c plotutils-2.4.1-fix/libplot/n_write.c +--- plotutils-2.4.1/libplot/n_write.c 2000-06-16 07:42:13.000000000 +0200 ++++ plotutils-2.4.1-fix/libplot/n_write.c 2005-07-28 12:02:35.000000000 +0200 +@@ -208,7 +208,7 @@ P1\n\ + linebuf[pos++] = '0'; + if (pos >= MAX_PBM_PIXELS_PER_LINE || i == (width - 1)) + { +- stream->write (linebuf, pos); ++ stream->write ((char *)linebuf, pos); + stream->put ('\n'); + + pos = 0; +@@ -253,7 +253,7 @@ P4\n\ + rowbuf[bytecount++] = outbyte; + } + /* emit row of bytes */ +- stream->write (rowbuf, bytecount); ++ stream->write ((char *)rowbuf, bytecount); + } + + free (rowbuf); +@@ -366,7 +366,7 @@ P2\n\ + num_pixels++; + if (num_pixels >= MAX_PGM_PIXELS_PER_LINE || i == (width - 1)) + { +- stream->write (linebuf, pos); ++ stream->write ((char *)linebuf, pos); + stream->put ('\n'); + + num_pixels = 0; +@@ -392,7 +392,7 @@ P5\n\ + { + for (i = 0; i < width; i++) + rowbuf[i] = pixmap[j][i].u.rgb[0]; +- stream->write (rowbuf, width); ++ stream->write ((char *)rowbuf, width); + } + free (rowbuf); + } +@@ -514,7 +514,7 @@ P3\n\ + num_pixels++; + if (num_pixels >= MAX_PPM_PIXELS_PER_LINE || i == (width - 1)) + { +- stream->write (linebuf, pos); ++ stream->write ((char *)linebuf, pos); + stream->put ('\n'); + + num_pixels = 0; +@@ -542,7 +542,7 @@ P6\n\ + for (i = 0; i < width; i++) + for (component = 0; component < 3; component++) + rowbuf[3 * i + component] = pixmap[j][i].u.rgb[component]; +- stream->write (rowbuf, 3 * width); ++ stream->write ((char *)rowbuf, 3 * width); + } + free (rowbuf); + } +diff -pur plotutils-2.4.1/libplot/z_write.c plotutils-2.4.1-fix/libplot/z_write.c +--- plotutils-2.4.1/libplot/z_write.c 2000-06-20 06:34:42.000000000 +0200 ++++ plotutils-2.4.1-fix/libplot/z_write.c 2005-07-28 12:37:07.000000000 +0200 +@@ -484,7 +484,7 @@ _our_write_fn (png_struct *png_ptr, png_ + ostream *stream; + + stream = (ostream *)png_get_io_ptr (png_ptr); +- stream->write (data, length); ++ stream->write ((char*)data, length); + } + + static void diff --git a/plotutils-2.6-libpng-1.5-2.patch b/plotutils-2.6-libpng-1.5-2.patch new file mode 100644 index 0000000..673047d --- /dev/null +++ b/plotutils-2.6-libpng-1.5-2.patch @@ -0,0 +1,36 @@ +--- libplot/z_write.c.orig 2008-07-16 00:54:10.000000000 +0000 ++++ libplot/z_write.c +@@ -164,7 +164,7 @@ _pl_z_maybe_output_image (S___(Plotter * + } + + /* cleanup after libpng errors (error handler does a longjmp) */ +- if (setjmp (png_ptr->jmpbuf)) ++ if (setjmp (png_jmpbuf (png_ptr))) + { + png_destroy_write_struct (&png_ptr, (png_info **)NULL); + return -1; +@@ -444,7 +444,11 @@ _our_error_fn_stdio (png_struct *png_ptr + #endif + } + ++#if (PNG_LIBPNG_VER < 10500) + longjmp (png_ptr->jmpbuf, 1); ++#else ++ png_longjmp (png_ptr, 1); ++#endif + } + + static void +@@ -515,7 +519,11 @@ _our_error_fn_stream (png_struct *png_pt + #endif + } + ++#if (PNG_LIBPNG_VER < 10500) + longjmp (png_ptr->jmpbuf, 1); ++#else ++ png_longjmp (png_ptr, 1); ++#endif + } + + static void + diff --git a/plotutils.spec b/plotutils.spec new file mode 100644 index 0000000..2ea7942 --- /dev/null +++ b/plotutils.spec @@ -0,0 +1,173 @@ +%define libname libplot + +Name: plotutils +Version: 2.6 +Release: 4mamba +Summary: The GNU Plotting Utilities +Group: Applications/Graphics +Vendor: openmamba +Distribution: openmamba +Packager: Silvan Calarco +URL: http://www.gnu.org/software/plotutils/plotutils.html +Source: ftp://ftp.gnu.org/gnu/plotutils/plotutils-%{version}.tar.gz +Patch: %{name}-2.4.1-gcc3.patch +Patch1: plotutils-2.6-libpng-1.5-2.patch +License: GPL +PreReq: %{__install_info} +## AUTOBUILDREQ-BEGIN +BuildRequires: glibc-devel +BuildRequires: libgcc +BuildRequires: libICE-devel +BuildRequires: libpng-devel +BuildRequires: libSM-devel +BuildRequires: libstdc++6-devel +BuildRequires: libX11-devel +BuildRequires: libXaw-devel +BuildRequires: libXext-devel +BuildRequires: libXmu-devel +BuildRequires: libXt-devel +BuildRequires: libz-devel +## AUTOBUILDREQ-END +BuildRequires: bison +BuildRequires: flex +BuildRequires: texinfo +Requires: %{libname} = %{?epoch:%epoch:}%{version}-%{release} +Requires(post): %{__install_info} +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%description +This package contains command-line programs for plotting scientific data. +Many of them use libplot to export graphics. + +%package -n %{libname} +Summary: The GNU Plotting libraries - from plotutils package +Group: System/Multimedia + +%description -n %{libname} +This package contains the libplot, a powerful C/C++ function library for exporting 2-D vector graphics in many file formats, both vector and raster. +It can also do vector graphics animations under the X Window System. +Libplot is device-independent in the sense that its API does not depend on the type of graphics file to be exported. + +%package -n %{libname}-devel +Summary: GNU Plotting headers files and static libraries +Group: Development/Libraries +Requires: %{libname} = %{?epoch:%epoch:}%{version}-%{release} + +%description -n %{libname}-devel +This package contains the libplot, a powerful C/C++ function library for exporting 2-D vector graphics in many file formats, both vector and raster. +It can also do vector graphics animations under the X Window System. +Libplot is device-independent in the sense that its API does not depend on the type of graphics file to be exported. + +This package contains static libraries and header files need for development. + +%prep +%setup -q +%patch1 -p0 + +%build +%configure --enable-libplotter --enable-libxmi +%make -j1 + +%install +[ "%{buildroot}" != / ] && rm -rf %{buildroot} +%makeinstall + +install -d %{buildroot}%{_libdir}/X11/fonts/misc +install -m 0444 fonts/pcf/*.pcf %{buildroot}%{_libdir}/X11/fonts/misc/ +gzip -9f %{buildroot}%{_libdir}/X11/fonts/misc/*.pcf + +%clean +[ "%{buildroot}" != / ] && rm -rf %{buildroot} + +%post +%install_info plotutils.info +%install_info libxmi.info +[ -x %{_bindir}/mkfontdir ] && + %{_bindir}/mkfontdir %{_libdir}/X11/fonts/misc +exit 0 + +%postun +[ -x %{_bindir}/mkfontdir ] && + %{_bindir}/mkfontdir %{_libdir}/X11/fonts/misc +exit 0 + +%preun +%uninstall_info plotutils.info +%uninstall_info libxmi.info +exit 0 + +%post -n %{libname} -p /sbin/ldconfig +%postun -n %{libname} -p /sbin/ldconfig + +%files +%defattr(-,root,root) +%{_bindir}/double +%{_bindir}/graph +%{_bindir}/hersheydemo +%{_bindir}/ode +%{_bindir}/pic2plot +%{_bindir}/plot +%{_bindir}/plotfont +%{_bindir}/spline +%{_bindir}/tek2plot +%dir %{_datadir}/libplot +%{_datadir}/libplot/* +%dir %{_datadir}/ode +%{_datadir}/ode/* +%dir %{_datadir}/pic2plot +%{_datadir}/pic2plot/* +%dir %{_datadir}/tek2plot +%{_datadir}/tek2plot/* +%{_infodir}/libxmi.* +%{_infodir}/plotutils.* +%{_libdir}/X11/fonts/misc/* +%{_mandir}/man1/ode.* +%{_mandir}/man1/plot.* +%{_mandir}/man1/plotfont.* +%{_mandir}/man1/spline.* +%{_mandir}/man1/tek2plot.* +%doc AUTHORS COPYING NEWS README THANKS TODO + +%files -n %{libname} +%defattr(-,root,root) +%{_libdir}/libplot.so.* +%{_libdir}/libplotter.so.* +%{_libdir}/libxmi.so.* + +%files -n %{libname}-devel +%defattr(-,root,root) +%{_includedir}/plot.h +%{_includedir}/plotcompat.h +%{_includedir}/plotter.h +%{_includedir}/xmi.h +%{_libdir}/libplot.a +%{_libdir}/libplot.la +%{_libdir}/libplot.so +%{_libdir}/libplotter.a +%{_libdir}/libplotter.la +%{_libdir}/libplotter.so +%{_libdir}/libxmi.a +%{_libdir}/libxmi.la +%{_libdir}/libxmi.so + +%changelog +* Thu Dec 13 2012 Silvan Calarco 2.6-4mamba +- rebuilt against libpng 1.5 (patch added) + +* Fri Nov 12 2010 Davide Madrisan 2.6-3mamba +- fix plotutils.info page installation + +* Thu Nov 11 2010 Silvan Calarco 2.6-2mamba +- rebuilt with libpng 1.4 + +* Tue Sep 29 2009 Automatic Build System 2.6-1mamba +- automatic update by autodist + +* Fri Nov 14 2008 Silvan Calarco 2.5.1-2mamba +- fix fonts installation paths for Xorg >= 6.8 + +* Thu Nov 13 2008 Silvan Calarco 2.5.1-1mamba +- update to 2.5.1 + +* Thu Jul 28 2005 Davide Madrisan 2.4.1-1qilnx +- package created by autospec