guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

07/12: gnu: plotutils: Build libplotter.


From: guix-commits
Subject: 07/12: gnu: plotutils: Build libplotter.
Date: Sun, 31 May 2020 22:18:55 -0400 (EDT)

apteryx pushed a commit to branch master
in repository guix.

commit f977fe92c4456c3a051832a96c5338e646771c05
Author: Maxim Cournoyer <maxim.cournoyer@gmail.com>
AuthorDate: Fri Jan 24 23:13:46 2020 -0500

    gnu: plotutils: Build libplotter.
    
    * gnu/packages/plotutils.scm (plotutils)[origin]: Port the patch to a 
snippet,
    which catches all the problematic occurrences.
    [configure-flags]: Pass "--enable-libplotter".
    [description]: Mention the newly added C++ libplotter library.
---
 gnu/local.mk                                       |  1 -
 gnu/packages/patches/plotutils-libpng-jmpbuf.patch | 23 ---------------------
 gnu/packages/plotutils.scm                         | 24 ++++++++++++++--------
 3 files changed, 15 insertions(+), 33 deletions(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index befe89f..6d77582 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1377,7 +1377,6 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/plink-endian-detection.patch            \
   %D%/packages/patches/plib-CVE-2011-4620.patch                \
   %D%/packages/patches/plib-CVE-2012-4552.patch                \
-  %D%/packages/patches/plotutils-libpng-jmpbuf.patch           \
   %D%/packages/patches/podofo-cmake-3.12.patch                 \
   %D%/packages/patches/portaudio-audacity-compat.patch         \
   %D%/packages/patches/portmidi-modular-build.patch            \
diff --git a/gnu/packages/patches/plotutils-libpng-jmpbuf.patch 
b/gnu/packages/patches/plotutils-libpng-jmpbuf.patch
deleted file mode 100644
index 07ef609..0000000
--- a/gnu/packages/patches/plotutils-libpng-jmpbuf.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Use the `png_jmpbuf' accessor, as recommended since libpng 1.4.0:
-http://www.libpng.org/pub/png/src/libpng-1.2.x-to-1.4.x-summary.txt .
-
---- plotutils-2.6/libplot/z_write.c    2013-07-12 17:19:12.000000000 +0200
-+++ plotutils-2.6/libplot/z_write.c    2013-07-12 17:19:07.000000000 +0200
-@@ -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,7 @@ _our_error_fn_stdio (png_struct *png_ptr
- #endif
-     }
- 
--  longjmp (png_ptr->jmpbuf, 1);
-+  longjmp (png_jmpbuf (png_ptr), 1);
- }
- 
- static void 
diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm
index edd492c..f6881f6 100644
--- a/gnu/packages/plotutils.scm
+++ b/gnu/packages/plotutils.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016, 2017, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -56,7 +57,6 @@
              (sha256
               (base32
                "1arkyizn5wbgvbh53aziv3s6lmd3wm9lqzkhxb3hijlp1y124hjg"))
-             (patches (search-patches "plotutils-libpng-jmpbuf.patch"))
              (modules '((guix build utils)))
              (snippet
               ;; Force the use of libXaw7 instead of libXaw.  When not doing
@@ -67,22 +67,28 @@
                  (substitute* "configure"
                    (("-lXaw")
                     "-lXaw7"))
+                 ;; Use the `png_jmpbuf' accessor, as recommended since libpng
+                 ;; 1.4.0 (see:
+                 ;; 
http://www.libpng.org/pub/png/src/libpng-1.2.x-to-1.4.x-summary.txt).
+                 (substitute* "libplot/z_write.c"
+                   (("png_ptr->jmpbuf")
+                    "png_jmpbuf (png_ptr)"))
                  #t))))
     (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags (list "--enable-libplotter")))
     (inputs `(("libpng" ,libpng)
               ("libx11" ,libx11)
               ("libxt" ,libxt)
               ("libxaw" ,libxaw)))
-
-    (home-page
-     "https://www.gnu.org/software/plotutils/";)
+    (home-page "https://www.gnu.org/software/plotutils/";)
     (synopsis "Plotting utilities and library")
     (description
-     "GNU Plotutils is a package for plotting and working with 2D graphics. 
-It includes a library, \"libplot\", for C and C++ for exporting 2D vector
-graphics in many file formats.  It also has support for 2D vector graphics
-animations.  The package also contains command-line programs for plotting
-scientific data.")
+     "GNU Plotutils is a package for plotting and working with 2D graphics.
+It includes the C library @code{libplot} and the C++ @code{libplotter} library
+for exporting 2D vector graphics in many file formats.  It also has support
+for 2D vector graphics animations.  The package also contains command-line
+programs for plotting scientific data.")
     (license license:gpl2+)))
 
 (define-public guile-charting



reply via email to

[Prev in Thread] Current Thread [Next in Thread]