apteryx pushed a commit to branch core-updates
in repository guix.
commit 2607d683e0fd072a5064b1ed83ba92ee63923a91
Author: Maxim Cournoyer <[email protected]>
AuthorDate: Mon Feb 12 15:48:33 2024 -0500
gnu: pstoedit: Update to 4.00.
* gnu/packages/graphics.scm (pstoedit): Update to 4.00.
[source]: Apply patches.
[arguments]: New field.
[inputs]: Remove labels. Add glib and pango.
* gnu/packages/patches/pstoedit-fix-gcc12.patch: New file.
* gnu/packages/patches/pstoedit-fix-plainC.patch: Likewise.
* gnu/packages/patches/pstoedit-pkglibdir.patch: Likewise.
* gnu/local.mk (dist_patch_DATA): Register them.
Change-Id: Ia17dae0ebc3e08b573b02431b10cc689a72a07dd
---
gnu/local.mk | 3 ++
gnu/packages/graphics.scm | 31 ++++++++++++-----
gnu/packages/patches/pstoedit-fix-gcc12.patch | 12 +++++++
gnu/packages/patches/pstoedit-fix-plainC.patch | 47 ++++++++++++++++++++++++++
gnu/packages/patches/pstoedit-pkglibdir.patch | 19 +++++++++++
5 files changed, 104 insertions(+), 8 deletions(-)
diff --git a/gnu/local.mk b/gnu/local.mk
index 0b3d396134..03617acbd6 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1915,6 +1915,9 @@ dist_patch_DATA =
\
%D%/packages/patches/psm-disable-memory-stats.patch \
%D%/packages/patches/psm-ldflags.patch \
%D%/packages/patches/psm-repro.patch \
+ %D%/packages/patches/pstoedit-fix-gcc12.patch \
+ %D%/packages/patches/pstoedit-fix-plainC.patch \
+ %D%/packages/patches/pstoedit-pkglibdir.patch \
%D%/packages/patches/pulseaudio-fix-mult-test.patch \
%D%/packages/patches/pulseaudio-longer-test-timeout.patch \
%D%/packages/patches/pulseview-qt515-compat.patch \
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index e04834670d..17a388beea 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -21,7 +21,7 @@
;;; Copyright © 2020 Jakub Kądziołka <[email protected]>
;;; Copyright © 2020, 2021 Nicolas Goaziou <[email protected]>
;;; Copyright © 2020 Raghav Gururajan <[email protected]>
-;;; Copyright © 2020, 2021, 2022, 2023 Maxim Cournoyer
<[email protected]>
+;;; Copyright © 2020, 2021, 2022, 2023, 2024 Maxim Cournoyer
<[email protected]>
;;; Copyright © 2020 Gabriel Arazas <[email protected]>
;;; Copyright © 2021 Antoine Côté <[email protected]>
;;; Copyright © 2021 Andy Tai <[email protected]>
@@ -976,23 +976,38 @@ Angus Johnson}.")
(define-public pstoedit
(package
(name "pstoedit")
- (version "3.77")
+ ;; Do not yet upgrade to 4.0.0, as its include file fails to compile for C
+ ;; project (see: https://github.com/reviczky/pstoedit/issues/2).
+ (version "4.00")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/pstoedit/pstoedit/"
version "/pstoedit-" version ".tar.gz"))
(sha256
(base32
- "02av76j75g5sq3bg353yl6dlllda9ihmmk4c8hvgiscix816nv4s"))))
+ "1sk2mhrjgnlz4a1650p3qxrv6av6qc66ibmy48ckspx7mfp7snh7"))
+ (patches
+ (search-patches "pstoedit-fix-gcc12.patch"
+ "pstoedit-fix-plainC.patch"
+ "pstoedit-pkglibdir.patch"))))
(build-system gnu-build-system)
+ (arguments
+ ;; Avoid keeping extraneous references to libtool exhaustively listed
+ ;; dependencies.
+ (list #:configure-flags #~(list "LDFLAGS=-Wl,--as-needed")))
(native-inputs
(list pkg-config))
(inputs
- `(("ghostscript" ,ghostscript)
- ("imagemagick" ,imagemagick)
- ("libplot" ,plotutils)
- ("libjpeg" ,libjpeg-turbo)
- ("zlib" ,zlib))) ;else libp2edrvmagick++.so fails to link
+ (list ghostscript
+ imagemagick
+ plotutils
+ libjpeg-turbo
+ libzip
+ ;; The following inputs are pulled in by libtool, from the
+ ;; imagemagick library files (.la), which records all its
+ ;; transitive dependencies.
+ glib
+ pango))
(home-page "http://www.pstoedit.net/")
(synopsis "Converter for PostScript and PDF graphics")
(description "The @code{pstoedit} utility allows translating graphics
diff --git a/gnu/packages/patches/pstoedit-fix-gcc12.patch
b/gnu/packages/patches/pstoedit-fix-gcc12.patch
new file mode 100644
index 0000000000..4aeeaff818
--- /dev/null
+++ b/gnu/packages/patches/pstoedit-fix-gcc12.patch
@@ -0,0 +1,12 @@
+Retrieved from Fedora: https://src.fedoraproject.org/rpms/pstoedit/tree
+
+--- a/src/drvpptx.orig.cpp 2021-08-29 16:25:45.000000000 +0200
++++ b/src/drvpptx.cpp 2022-01-28 11:57:44.765756339 +0100
+@@ -65,6 +65,7 @@
+ #define ZIP_EXTERN extern
+
+ #include <zip.h>
++#include <memory>
+
+ #ifdef _MSC_VER
+ // MS VC++ Windows
diff --git a/gnu/packages/patches/pstoedit-fix-plainC.patch
b/gnu/packages/patches/pstoedit-fix-plainC.patch
new file mode 100644
index 0000000000..684c5043be
--- /dev/null
+++ b/gnu/packages/patches/pstoedit-fix-plainC.patch
@@ -0,0 +1,47 @@
+Retrieved from Fedora: https://src.fedoraproject.org/rpms/pstoedit/tree
+
+diff --git a/src/pstoedit.cpp b/src/pstoedit.cpp
+index a718f37..ac0df37 100755
+--- a/src/pstoedit.cpp
++++ b/src/pstoedit.cpp
+@@ -327,6 +327,11 @@ extern FILE *yyin; // used
by lexer
+ // otherwise we could declare
it locally where it is used
+
+
++extern "C" DLLEXPORT void loadpstoeditplugins_plainC(const char *progname,
int verbose)
++{
++ return loadpstoeditplugins(progname, cerr, (bool) verbose);
++}
++
+ static void usage(ostream & outstream, bool forTeX, bool withdetails, bool
withcategories )
+ {
+ if (withcategories) {
+diff --git a/src/pstoedit.h b/src/pstoedit.h
+index 294b3c2..74ebf2a 100755
+--- a/src/pstoedit.h
++++ b/src/pstoedit.h
+@@ -100,8 +100,13 @@ void clearPstoeditDriverInfo_plainC(struct
DriverDescription_S * ptr);
+
+ #ifdef __cplusplus
+ extern "C" DLLEXPORT
+-#endif
+ void loadpstoeditplugins(const char* progname, std::ostream & errstream, bool
verbose);
++#endif
++
++#ifdef __cplusplus
++extern "C" DLLEXPORT
++#endif
++void loadpstoeditplugins_plainC(const char* progname, int verbose);
+
+ #ifdef __cplusplus
+ extern "C" DLLEXPORT
+--- a/src/pstoedit.orig.h 2023-07-22 19:27:43.691166652 +0200
++++ b/src/pstoedit.h 2023-07-22 19:31:18.897952130 +0200
+@@ -37,6 +37,7 @@
+ #endif
+
+ #include "pstoedll.h"
++#include <stdbool.h>
+
+ typedef int (*execute_interpreter_function)(int argc, const char * const
argv[]);
+
diff --git a/gnu/packages/patches/pstoedit-pkglibdir.patch
b/gnu/packages/patches/pstoedit-pkglibdir.patch
new file mode 100644
index 0000000000..0734913593
--- /dev/null
+++ b/gnu/packages/patches/pstoedit-pkglibdir.patch
@@ -0,0 +1,19 @@
+Retrieved from Fedora: https://src.fedoraproject.org/rpms/pstoedit/tree
+
+--- a/config/pstoedit.pc.orig.in 2018-04-16 14:26:28.000000000 +0200
++++ b/config/pstoedit.pc.in 2020-10-05 14:37:16.750980762 +0200
+@@ -1,7 +1,7 @@
+ prefix=@prefix@
+ exec_prefix=@exec_prefix@
+ libdir=@libdir@
+-includedir=@includedir@
++includedir=@includedir@/pstoedit
+
+ Name: pstoedit
+ Description: converts PostScript(TM) and PDF files to other vector graphic
formats
+@@ -8,4 +8,4 @@
+ Version: @[email protected]
+ Requires:
+ Libs: -L@libdir@ -lpstoedit @CXX_STD_LIB@ @CXX_RUNTIME_LIB@ @LIBLD_LDFLAGS@
+-Cflags: -I@includedir@
++Cflags: -I@includedir@/pstoedit