* [bug#65873] [PATCH 0/5] Xfig module refactoring @ 2023-09-11 18:51 Bruno Victal 2023-09-11 18:54 ` [bug#65873] [PATCH 1/5] gnu: xfig: Use G-Expressions Bruno Victal ` (5 more replies) 0 siblings, 6 replies; 11+ messages in thread From: Bruno Victal @ 2023-09-11 18:51 UTC (permalink / raw) To: 65873; +Cc: Bruno Victal Bruno Victal (5): gnu: xfig: Use G-Expressions. gnu: Add fig2dev. gnu: transfig: Remove package. gnu: texlive-latex-make: Update description. gnu: xfig: Update to 3.2.9. gnu/local.mk | 4 +- gnu/packages/docbook.scm | 2 +- .../patches/transfig-gcc10-fno-common.patch | 33 --- ...-error-message-for-missing-libraries.patch | 39 ++++ ...double-free-when-requesting-MediaBox.patch | 58 +++++ ...ig-to-set-fontconfig-CFLAGS-and-LIBS.patch | 89 ++++++++ gnu/packages/photo.scm | 3 +- gnu/packages/tex.scm | 2 +- gnu/packages/xfig.scm | 214 +++++++++--------- 9 files changed, 305 insertions(+), 139 deletions(-) delete mode 100644 gnu/packages/patches/transfig-gcc10-fno-common.patch create mode 100644 gnu/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch create mode 100644 gnu/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch create mode 100644 gnu/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch base-commit: ab971e9c1922ae6eeec47401cb589ae15f29e15f -- 2.40.1 ^ permalink raw reply [flat|nested] 11+ messages in thread
* [bug#65873] [PATCH 1/5] gnu: xfig: Use G-Expressions. 2023-09-11 18:51 [bug#65873] [PATCH 0/5] Xfig module refactoring Bruno Victal @ 2023-09-11 18:54 ` Bruno Victal 2023-09-11 18:54 ` [bug#65873] [PATCH 2/5] gnu: Add fig2dev Bruno Victal ` (4 subsequent siblings) 5 siblings, 0 replies; 11+ messages in thread From: Bruno Victal @ 2023-09-11 18:54 UTC (permalink / raw) To: 65873; +Cc: Bruno Victal * gnu/packages/xfig.scm (xfig)[arguments]<#:phases>: Relocate 'strip-bogus-exec-prefix into … [sources]: … here, as a snippet instead. [inputs]: Restyle. --- gnu/packages/xfig.scm | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/gnu/packages/xfig.scm b/gnu/packages/xfig.scm index 8efe561433..f68ddb01f9 100644 --- a/gnu/packages/xfig.scm +++ b/gnu/packages/xfig.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2021 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2022 Ivan Vilata i Balaguer <ivan@selidor.net> +;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu> ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,6 +25,7 @@ (define-module (gnu packages xfig) #:use-module (guix packages) #:use-module ((guix licenses) #:select (bsd-2)) #:use-module (guix download) + #:use-module (guix gexp) #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages freedesktop) @@ -43,27 +45,23 @@ (define-public xfig name "-" version ".tar.xz")) (sha256 (base32 - "0fndgbm1mkqb1sn2v2kj3nx9mxj70jbp31y2bjvzcmmkry0q3k5j")))) + "0fndgbm1mkqb1sn2v2kj3nx9mxj70jbp31y2bjvzcmmkry0q3k5j")) + (modules '((guix build utils))) + (snippet + ;; The patch-dot-desktop-files phase requires a relative name. + #~(substitute* "xfig.desktop" + (("^(Exec=)/usr/bin/" _ key) key))))) (build-system gnu-build-system) (native-inputs ;; For tests. (list desktop-file-utils ghostscript)) (inputs - `(("libxaw3d" ,libxaw3d) - ("libjpeg" ,libjpeg-turbo) - ("libpng" ,libpng) - ("libxpm" ,libxpm) - ("libx11" ,libx11) - ("libxt" ,libxt))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'install 'strip-bogus-exec-prefix - (lambda* (#:key outputs #:allow-other-keys) - (substitute* "xfig.desktop" - ;; The patch-dot-desktop-files phase requires a relative name. - (("Exec=/usr/bin/xfig") "Exec=xfig")) - #t))))) + (list libxaw3d + libjpeg-turbo + libpng + libxpm + libx11 + libxt)) (home-page "https://mcj.sourceforge.net/") (synopsis "Interactive drawing tool") (description -- 2.40.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* [bug#65873] [PATCH 2/5] gnu: Add fig2dev. 2023-09-11 18:51 [bug#65873] [PATCH 0/5] Xfig module refactoring Bruno Victal 2023-09-11 18:54 ` [bug#65873] [PATCH 1/5] gnu: xfig: Use G-Expressions Bruno Victal @ 2023-09-11 18:54 ` Bruno Victal 2023-09-11 18:54 ` [bug#65873] [PATCH 3/5] gnu: transfig: Remove package Bruno Victal ` (3 subsequent siblings) 5 siblings, 0 replies; 11+ messages in thread From: Bruno Victal @ 2023-09-11 18:54 UTC (permalink / raw) To: 65873; +Cc: Bruno Victal * gnu/packages/xfig.scm: Import all of (guix licenses). (xfig, transfig)[license]: Adjust accordingly. (fig2dev): New variable. --- gnu/packages/xfig.scm | 64 +++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 61 insertions(+), 3 deletions(-) diff --git a/gnu/packages/xfig.scm b/gnu/packages/xfig.scm index f68ddb01f9..51791a1696 100644 --- a/gnu/packages/xfig.scm +++ b/gnu/packages/xfig.scm @@ -23,7 +23,7 @@ (define-module (gnu packages xfig) #:use-module (guix packages) - #:use-module ((guix licenses) #:select (bsd-2)) + #:use-module ((guix licenses) #:prefix license:) #:use-module (guix download) #:use-module (guix gexp) #:use-module (guix build-system gnu) @@ -32,8 +32,66 @@ (define-module (gnu packages xfig) #:use-module (gnu packages ghostscript) #:use-module (gnu packages xorg) #:use-module (gnu packages image) + #:use-module (gnu packages ghostscript) + #:use-module (gnu packages imagemagick) + #:use-module (gnu packages netpbm) #:use-module (gnu packages compression)) +(define-public fig2dev + (package + (name "fig2dev") + (version "3.2.9") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/mcj/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1cch429zbmrg2zy1mkx9xwnpvkjhmlw40c88bvi2virws744dqhm")))) + (build-system gnu-build-system) + (arguments + (list + #:modules '((guix build gnu-build-system) + (guix build utils) + (srfi srfi-26)) + #:phases + #~(modify-phases %standard-phases + (add-after 'install 'wrap-program + (lambda* (#:key inputs #:allow-other-keys) + (let ((programs + (find-files (string-append #$output "/bin"))) + (path + (search-path-as-list + '("bin") + (map (cut assoc-ref inputs <>) + (list "ghostscript" "imagemagick"))))) + (for-each (lambda (program) + (wrap-program program + `("PATH" ":" prefix ,path))) + programs))))))) + (inputs + (list libpng zlib + ;; Quoth INSTALL: + ;; “To run fig2dev, the packages + ;; ghostscript, and one out of + ;; netpbm | ImageMagick | GraphicsMagick + ;; are needed to produce various bitmap output formats, or process + ;; fig files with embedded images.” + ghostscript + imagemagick)) + (native-inputs + ;; XXX: Tests fail if netpbm is absent. + (list netpbm)) + (home-page "https://sourceforge.net/projects/mcj") + (synopsis "Translate Fig to other graphic description formats") + (description "Fig2dev is a set of tools for creating TeX documents with +graphics which are portable, in the sense that they can be printed in a wide +variety of environments.") + (license + (license:non-copyleft "file://Makefile.am" + "See <https://spdx.org/licenses/Xfig.html>.")))) + (define-public xfig (package (name "xfig") @@ -71,7 +129,7 @@ (define-public xfig such as GIF, JPEG, EPSF (PostScript), etc. Those objects can be created, deleted, moved or modified. Attributes such as colors or line styles can be selected in various ways. For text, 35 fonts are available.") - (license bsd-2))) + (license license:bsd-2))) (define-public transfig (package @@ -152,4 +210,4 @@ (define-public transfig the suffix \".pic\"; Fig files can be specified either with or without the suffix \".fig\". Transfig also creates a TeX macro file appropriate to the target language.") - (license bsd-2))) + (license license:bsd-2))) -- 2.40.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* [bug#65873] [PATCH 3/5] gnu: transfig: Remove package. 2023-09-11 18:51 [bug#65873] [PATCH 0/5] Xfig module refactoring Bruno Victal 2023-09-11 18:54 ` [bug#65873] [PATCH 1/5] gnu: xfig: Use G-Expressions Bruno Victal 2023-09-11 18:54 ` [bug#65873] [PATCH 2/5] gnu: Add fig2dev Bruno Victal @ 2023-09-11 18:54 ` Bruno Victal 2023-09-11 18:54 ` [bug#65873] [PATCH 4/5] gnu: texlive-latex-make: Update description Bruno Victal ` (2 subsequent siblings) 5 siblings, 0 replies; 11+ messages in thread From: Bruno Victal @ 2023-09-11 18:54 UTC (permalink / raw) To: 65873; +Cc: Bruno Victal The source used by this package is outdated and its development was moved into the repository used by fig2dev though considered its obsolete and not built by default in the fig2dev package. Note: enblend-enfuse no longer needs transfig since 4.2 according to NEWS. * gnu/packages/docbook.scm (dblatex): Update comment. * gnu/packages/photo.scm (enblend-enfuse)[native-inputs]: Remove transfig. * gnu/packages/xfig.scm (transfig): Remove. * gnu/packages/patches/transfig-gcc10-fno-common.patch: Remove. * gnu/local.mk: Unregister it. --- gnu/local.mk | 1 - gnu/packages/docbook.scm | 2 +- .../patches/transfig-gcc10-fno-common.patch | 33 -------- gnu/packages/photo.scm | 3 +- gnu/packages/xfig.scm | 81 ------------------- 5 files changed, 2 insertions(+), 118 deletions(-) delete mode 100644 gnu/packages/patches/transfig-gcc10-fno-common.patch diff --git a/gnu/local.mk b/gnu/local.mk index 4f8637418a..f4707a89e6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -2021,7 +2021,6 @@ dist_patch_DATA = \ %D%/packages/patches/tootle-glib-object-naming.patch \ %D%/packages/patches/tootle-reason-phrase.patch \ %D%/packages/patches/transcode-ffmpeg.patch \ - %D%/packages/patches/transfig-gcc10-fno-common.patch \ %D%/packages/patches/trytond-add-egg-modules-to-path.patch \ %D%/packages/patches/trytond-add-guix_trytond_path.patch \ %D%/packages/patches/ttf2eot-cstddef.patch \ diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm index ff6d32b168..c47d3db2c0 100644 --- a/gnu/packages/docbook.scm +++ b/gnu/packages/docbook.scm @@ -532,7 +532,7 @@ (define-public dblatex (base32 "0yd09nypswy3q4scri1dg7dr99d7gd6r2dwx0xm81l9f4y32gs0n")))) (build-system python-build-system) - ;; TODO: Add xfig/transfig for fig2dev utility + ;; TODO: Add fig2dev for fig2dev utility. (inputs `(("texlive" ,(texlive-updmap.cfg (list texlive-anysize texlive-appendix diff --git a/gnu/packages/patches/transfig-gcc10-fno-common.patch b/gnu/packages/patches/transfig-gcc10-fno-common.patch deleted file mode 100644 index ebe9236533..0000000000 --- a/gnu/packages/patches/transfig-gcc10-fno-common.patch +++ /dev/null @@ -1,33 +0,0 @@ -Fixes "multiple definition" errors when building with GCC 10+. - -Based on <https://bugs.gentoo.org/show_bug.cgi?id=706706>. ---- a/fig2dev/dev/gensvg.c 2010-07-01 22:41:16.000000000 +0200 -+++ b/fig2dev/dev/gensvg.c 2022-02-27 20:02:33.379945500 +0100 -@@ -230,10 +230,12 @@ - }; - - /* arrowhead arrays */ --Point points[50], fillpoints[50], clippoints[50]; --int npoints, nfillpoints, nclippoints; --int arrowx1, arrowy1; /* first point of object */ --int arrowx2, arrowy2; /* second point of object */ -+Point fillpoints[50]; -+int nfillpoints; -+extern Point points[50], clippoints[50]; -+extern int npoints, nclippoints; -+extern int arrowx1, arrowy1; /* first point of object */ -+extern int arrowx2, arrowy2; /* second point of object */ - - static int tileno=0; /* number of current tile */ - ---- a/fig2dev/fig2dev.h 2010-03-16 19:53:20.000000000 +0100 -+++ b/fig2dev/fig2dev.h 2022-02-27 19:56:06.072253991 +0100 -@@ -126,7 +126,7 @@ - extern char *prog, *from, *to; - extern char *name; - extern double font_size; --Boolean correct_font_size; /* use correct font size */ -+extern Boolean correct_font_size; /* use correct font size */ - extern double mag, fontmag; - extern FILE *tfp; - diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index b290e2b29a..d9ecc1d39c 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -382,8 +382,7 @@ (define-public enblend-enfuse imagemagick libxml2 (texlive-updmap.cfg) - tidy-html - transfig)) + tidy-html)) (inputs (list boost gsl diff --git a/gnu/packages/xfig.scm b/gnu/packages/xfig.scm index 51791a1696..9ea40c193e 100644 --- a/gnu/packages/xfig.scm +++ b/gnu/packages/xfig.scm @@ -130,84 +130,3 @@ (define-public xfig deleted, moved or modified. Attributes such as colors or line styles can be selected in various ways. For text, 35 fonts are available.") (license license:bsd-2))) - -(define-public transfig - (package - (name "transfig") - (version "3.2.5e") - (source - (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/mcj/mcj-source/transfig." - version ".tar.gz")) - (sha256 - (base32 - "0i3p7qmg2w8qrad3pn42b0miwarql7yy0gpd49b1bpal6bqsiicf")) - (patches - (search-patches - "transfig-gcc10-fno-common.patch")))) ; fix GCC10 build - (build-system gnu-build-system) - (native-inputs - (list imake makedepend)) - (inputs - `(("xfig" ,xfig) - ("libjpeg" ,libjpeg-turbo) - ("libpng" ,libpng) - ("libxpm" ,libxpm) - ("libx11" ,libx11) - ("zlib" ,zlib))) - (arguments - `(#:tests? #f - #:phases - (modify-phases %standard-phases - (replace 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((imake (assoc-ref inputs "imake")) - (out (assoc-ref outputs "out"))) - (substitute* '("fig2dev/Imakefile" - "transfig/Imakefile") - (("XCOMM (BINDIR = )[[:graph:]]*" _ front) - (string-append front out "/bin")) - (("XCOMM USEINLINE") "USEINLINE") - ;; The variable name is deceptive. The directory is used as an - ;; installation path for bitmaps. - (("(XFIGLIBDIR =[[:blank:]]*)[[:graph:]]*" _ front) - (string-append front out "/lib")) - (("(XPMLIBDIR = )[[:graph:]]*" _ front) - (string-append front (assoc-ref inputs "libxpm") "/lib")) - (("(XPMINC = -I)[[:graph:]]*" _ front) - (string-append front (assoc-ref inputs "libxpm") "/include/X11")) - (("/usr/local/lib/fig2dev") (string-append out "/lib"))) - ;; The -a argument is required in order to pick up the correct paths - ;; to several X header files. - (invoke "xmkmf" "-a") - (substitute* '("Makefile" - "fig2dev/Makefile" - "fig2dev/dev/Makefile" - "transfig/Makefile") - ;; These imake variables somehow remain undefined - (("DefaultGcc2[[:graph:]]*Opt") "-O2") - ;; Reset a few variable defaults that are set in imake templates - ((imake) out) - (("(MANPATH = )[[:graph:]]*" _ front) - (string-append front out "/share/man")) - (("(CONFDIR = )([[:graph:]]*)" _ front default) - (string-append front out default)) - ;; The "l" option was silently ignored until binutils 2.36, - ;; where it got a different purpose. So remove it to avoid - ;; "ar: libdeps specified more than once". - (("((AR|MODAR) = ar )clq" _ front) - (string-append front "cq"))) - #t))) - (add-after 'install 'install/doc - (lambda _ - (invoke "make" "install.man")))))) - (home-page "https://mcj.sourceforge.net/") - (synopsis "Create portable LaTeX figures") - (description - "Transfig creates a makefile to translate figures described in Fig code -or PIC into a specified LaTeX graphics language. PIC files are identified by -the suffix \".pic\"; Fig files can be specified either with or without the -suffix \".fig\". Transfig also creates a TeX macro file appropriate to the -target language.") - (license license:bsd-2))) -- 2.40.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* [bug#65873] [PATCH 4/5] gnu: texlive-latex-make: Update description. 2023-09-11 18:51 [bug#65873] [PATCH 0/5] Xfig module refactoring Bruno Victal ` (2 preceding siblings ...) 2023-09-11 18:54 ` [bug#65873] [PATCH 3/5] gnu: transfig: Remove package Bruno Victal @ 2023-09-11 18:54 ` Bruno Victal 2023-09-11 18:54 ` [bug#65873] [PATCH 5/5] gnu: xfig: Update to 3.2.9 Bruno Victal 2023-09-24 15:30 ` [bug#65873] [PATCH v2 0/3] Xfig module refactoring Bruno Victal 5 siblings, 0 replies; 11+ messages in thread From: Bruno Victal @ 2023-09-11 18:54 UTC (permalink / raw) To: 65873; +Cc: Bruno Victal, Ricardo Wurmus Upstreamed with 1dcc04aaa860b123924ae83fc30a47d6f7179f7a. [1]: <https://gitlab.inria.fr/latex-utils/latex-make/-/commit/1dcc04aaa860b123924ae83fc30a47d6f7179f7a> * gnu/packages/tex.scm (texlive-latex-make)[description]: Update description. --- gnu/packages/tex.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index bd02190a51..b5da339353 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -40434,7 +40434,7 @@ (define-public texlive-latex-make @item @file{figlatex.sty}: a LaTeX package to easily insert Xfig figures. It can interact with LaTeX.mk so that the latter automatically invokes -@command{transfig} if needed. +@command{fig2dev} if needed. @end itemize") (license license:gpl3+))) -- 2.40.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* [bug#65873] [PATCH 5/5] gnu: xfig: Update to 3.2.9. 2023-09-11 18:51 [bug#65873] [PATCH 0/5] Xfig module refactoring Bruno Victal ` (3 preceding siblings ...) 2023-09-11 18:54 ` [bug#65873] [PATCH 4/5] gnu: texlive-latex-make: Update description Bruno Victal @ 2023-09-11 18:54 ` Bruno Victal 2023-09-24 15:30 ` [bug#65873] [PATCH v2 0/3] Xfig module refactoring Bruno Victal 5 siblings, 0 replies; 11+ messages in thread From: Bruno Victal @ 2023-09-11 18:54 UTC (permalink / raw) To: 65873; +Cc: Bruno Victal * gnu/packages/xfig.scm (xfig): Update to 3.2.9. [arguments]<#:phases>: Add 'wrap-program. [native-inputs]: Add pkg-config, autoconf, automake and libtool. Move ghostscript to … [inputs]: … here. Add fig2dev, libxaw3d and libxft. [license]: Correct it to `SPDX-License-Identifier:Xfig'. * gnu/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch: New file. * gnu/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch: Ditto. * gnu/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch: Ditto. * gnu/local.mk: Register it. --- gnu/local.mk | 3 + ...-error-message-for-missing-libraries.patch | 39 ++++++++ ...double-free-when-requesting-MediaBox.patch | 58 ++++++++++++ ...ig-to-set-fontconfig-CFLAGS-and-LIBS.patch | 89 +++++++++++++++++++ gnu/packages/xfig.scm | 53 +++++++++-- 5 files changed, 234 insertions(+), 8 deletions(-) create mode 100644 gnu/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch create mode 100644 gnu/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch create mode 100644 gnu/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch diff --git a/gnu/local.mk b/gnu/local.mk index f4707a89e6..e21d497e8b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -2115,6 +2115,9 @@ dist_patch_DATA = \ %D%/packages/patches/xf86-video-nouveau-fixup-ABI.patch \ %D%/packages/patches/xf86-video-savage-xorg-compat.patch \ %D%/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch \ + %D%/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch \ + %D%/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch \ + %D%/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch \ %D%/packages/patches/xfce4-panel-plugins.patch \ %D%/packages/patches/xfce4-settings-defaults.patch \ %D%/packages/patches/xgboost-use-system-dmlc-core.patch \ diff --git a/gnu/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch b/gnu/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch new file mode 100644 index 0000000000..a6c37e3353 --- /dev/null +++ b/gnu/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch @@ -0,0 +1,39 @@ +From 84685930d5cfc7005f3414601230a23e28a18f59 Mon Sep 17 00:00:00 2001 +From: Thomas Loimer <thomas.loimer@tuwien.ac.at> +Date: Tue, 5 Sep 2023 22:02:55 +0200 +Subject: [PATCH 1/3] Enable error message for missing libraries + +Move the check for missing libraries to a place where the queried +variables are set. +--- + configure.ac | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 035b9d7..47452c5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -95,9 +95,6 @@ dnl AC_CHECK_PROG(XDG_MENU, [xdg-desktop-menu], [xdg-desktop-menu]) + AC_SEARCH_LIBS([pow], [m])dnl + dnl AC_SEARCH_LIBS([deflate], [z]) # libz is not needed. + AC_SEARCH_LIBS([FcInit], [fontconfig]) +-AS_IF([test "x$ac_cv_search_pow" = xno \ +- || test "x$ac_cv_search_png_read_info" = xno], +- [AC_MSG_ERROR([Necessary libraries not found.])]) + + + # Checks for header files. +@@ -187,6 +184,10 @@ PostScript files. To disable calling ghostscript, set to the empty string, + AC_SUBST([gsman]) + AM_SUBST_NOTMAKE([gsman]) + ++AS_IF([test "x$ac_cv_search_pow" = xno \ ++ || test "x$ac_cv_search_png_read_info" = xno], ++ [AC_MSG_ERROR([Necessary libraries not found.])]) ++ + + # Checks for typedefs, structures, and compiler characteristics. + AC_C_BIGENDIAN +-- +2.40.1 + diff --git a/gnu/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch b/gnu/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch new file mode 100644 index 0000000000..65b0ad8d36 --- /dev/null +++ b/gnu/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch @@ -0,0 +1,58 @@ +From a9181df87d78828318f2e9f8d4ea012bc06883b9 Mon Sep 17 00:00:00 2001 +From: Bruno Victal <mirai@makinata.eu> +Date: Thu, 7 Sep 2023 16:51:23 +0100 +Subject: [PATCH 3/3] Fix double-free when requesting MediaBox. + +Explicitly close the Ghostscript PDF interpreter before calling quit. + +References: +[1]: <https://bugs.ghostscript.com/show_bug.cgi?id=705855> +[2]: <https://bugs.ghostscript.com/show_bug.cgi?id=705836> +--- + src/u_ghostscript.c | 13 ++++++++----- + 1 file changed, 8 insertions(+), 5 deletions(-) + +diff --git a/src/u_ghostscript.c b/src/u_ghostscript.c +index 5974b31..d14674f 100644 +--- a/src/u_ghostscript.c ++++ b/src/u_ghostscript.c +@@ -317,10 +317,10 @@ gsexe(FILE **out, bool *isnew, char *exenew, char *exeold) + * Call ghostscript to extract the /MediaBox from the pdf given in file. + * Command line, for gs >= 9.50, + * gs -q -dNODISPLAY --permit-file-read=in.pdf -c \ +- * "(in.pdf) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit" ++ * "(in.pdf) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == runpdfend quit" + * gs < 9.50: + * gs -q -dNODISPLAY -dNOSAFER -c \ +- * "(in.pdf) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit" ++ * "(in.pdf) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == runpdfend quit" + * The command line was found, and modified a bit, at + *https://stackoverflow.com/questions/2943281/using-ghostscript-to-get-page-size + * Beginning with gs 9.50, "-dSAFER" is the default, and permission to access +@@ -349,9 +349,11 @@ gsexe_mediabox(char *file, int *llx, int *lly, int *urx, int *ury) + return -3; + + exenew = "%s -q -dNODISPLAY \"--permit-file-read=%s\" -c \"(%s) (r) " +- "file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit\""; ++ "file runpdfbegin 1 pdfgetpage /MediaBox pget pop == " ++ "runpdfend quit\""; + exeold = "%s -q -dNODISPLAY -c \"(%s) (r) " +- "file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit\""; ++ "file runpdfbegin 1 pdfgetpage /MediaBox pget pop == " ++ "runpdfend quit\""; + + /* malloc() buffers for the command line, if necessary */ + fmt = exenew; +@@ -445,7 +447,8 @@ gslib_mediabox(char *file, int *llx, int *lly, int *urx, int *ury) + argnew[3] = "--permit-file-read=%s"; /* file */ + argnew[4] = "-c"; + argnew[5] = +- "(%s) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit"; ++ "(%s) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == " ++ "runpdfend quit"; + + argold[0] = argnew[0]; + argold[1] = argnew[1]; +-- +2.40.1 + diff --git a/gnu/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch b/gnu/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch new file mode 100644 index 0000000000..65158b901b --- /dev/null +++ b/gnu/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch @@ -0,0 +1,89 @@ +From 4320b1d82da1bfe1519800ae3ac35b6b59a9da56 Mon Sep 17 00:00:00 2001 +From: Thomas Loimer <thomas.loimer@tuwien.ac.at> +Date: Fri, 8 Sep 2023 18:43:00 +0200 +Subject: [PATCH 2/3] Use pkg-config to set fontconfig CFLAGS and LIBS + +--- + configure.ac | 16 +++++++++++++--- + src/Makefile.am | 8 +++----- + tests/Makefile.am | 4 ++-- + 3 files changed, 18 insertions(+), 10 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 47452c5..3113db8 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -81,11 +81,23 @@ AC_PROG_SED + AM_PROG_AR + + # Search for pkg-config and set PKG_CONFIG to the path found, else empty. +-# PKG_PROG_PKG_CONFIG ++PKG_PROG_PKG_CONFIG + # On debian, pkg-config does not find xaw3d. On archlinux, pkg-config + # --libs xaw3d yields -lXaw3d -lXmu -lXt -lX11 -- but -lXmu is not + # strictly necessary. Use hard-coded paths instead of pkg-config. + ++# First try pkg-config, as a side-effect this might set flags that are ++# useful later, e.g., for libpng. ++dnl Under archlinux, PKG_CHECK_MODULES(FT, fontconfig) would write during ++dnl ./configure "checking for FT...", under debian the line is ++dnl "checking for fontconfig...". Stay on the comprehensible side. ++AS_IF([test "x$PKG_CONFIG" != x], ++ [PKG_CHECK_MODULES([fontconfig], [fontconfig])], ++ [fontconfig_CFLAGS='-I$(oldincludedir)/freetype2 ' ++ AC_SEARCH_LIBS([FcInit], [fontconfig])]) ++AC_SUBST([fontconfig_CFLAGS]) ++AC_SUBST([fontconfig_LIBS]) ++ + dnl Not useful for packagers. + dnl AC_CHECK_PROG(XDG_ICON, [xdg-icon-resource], [xdg-icon-resource]) + dnl AC_CHECK_PROG(XDG_MENU, [xdg-desktop-menu], [xdg-desktop-menu]) +@@ -93,8 +105,6 @@ dnl AC_CHECK_PROG(XDG_MENU, [xdg-desktop-menu], [xdg-desktop-menu]) + + # Checks for libraries. + AC_SEARCH_LIBS([pow], [m])dnl +-dnl AC_SEARCH_LIBS([deflate], [z]) # libz is not needed. +-AC_SEARCH_LIBS([FcInit], [fontconfig]) + + + # Checks for header files. +diff --git a/src/Makefile.am b/src/Makefile.am +index 3cbd5ee..73d5132 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -23,13 +23,11 @@ + # "`u' modifier ignored since `D' is the default...". + ARFLAGS = cr + +-# Xft #includes <ft2build.h>, not <freetype2/ft2build.h>, hence freetype2 +-# must be put into the search path. +- +-AM_CPPFLAGS = -I$(oldincludedir)/freetype2 $(XCPPFLAGS) -DNDEBUG -DXFIGLIBDIR="\"$(compkeydbdir)\"" \ ++AM_CPPFLAGS = $(fontconfig_CFLAGS) $(XCPPFLAGS) -DNDEBUG \ ++ -DXFIGLIBDIR="\"$(compkeydbdir)\"" \ + -DOBJLIBDIR="\"$(pkgdatadir)/Libraries\"" -DXFIGDOCDIR="\"$(docdir)\"" + +-AM_LDFLAGS = $(XLDFLAGS) ++AM_LDFLAGS = $(fontconfig_LIBS) $(XLDFLAGS) + + # LIBOBJS must be placed in LDADD or xfig_LDADD - otherwise, the + # lib-dir is not distributed +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 2f529ac..c158806 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -39,9 +39,9 @@ $(srcdir)/package.m4: $(top_srcdir)/configure.ac + echo 'm4_define([AT_PACKAGE_URL], [@PACKAGE_URL@])'; \ + } >'$(srcdir)/package.m4' + +-AM_CPPFLAGS = -I$(top_srcdir)/src -I$(oldincludedir)/freetype2 $(XCPPFLAGS) ++AM_CPPFLAGS = -I$(top_srcdir)/src $(fontconfig_CFLAGS) $(XCPPFLAGS) + +-AM_LDFLAGS = $(XLDFLAGS) ++AM_LDFLAGS = $(fontconfig_LIBS) $(XLDFLAGS) + LDADD = $(top_builddir)/src/libxfig.a $(XLIBS) + + check_PROGRAMS = test1 test2 test3 test4 +-- +2.40.1 + diff --git a/gnu/packages/xfig.scm b/gnu/packages/xfig.scm index 9ea40c193e..d5f67c110e 100644 --- a/gnu/packages/xfig.scm +++ b/gnu/packages/xfig.scm @@ -28,9 +28,11 @@ (define-module (gnu packages xfig) #:use-module (guix gexp) #:use-module (guix build-system gnu) #:use-module (gnu packages) + #:use-module (gnu packages autotools) #:use-module (gnu packages freedesktop) #:use-module (gnu packages ghostscript) #:use-module (gnu packages xorg) + #:use-module (gnu packages pkg-config) #:use-module (gnu packages image) #:use-module (gnu packages ghostscript) #:use-module (gnu packages imagemagick) @@ -95,7 +97,7 @@ (define-public fig2dev (define-public xfig (package (name "xfig") - (version "3.2.8b") + (version "3.2.9") (source (origin (method url-fetch) @@ -103,22 +105,55 @@ (define-public xfig name "-" version ".tar.xz")) (sha256 (base32 - "0fndgbm1mkqb1sn2v2kj3nx9mxj70jbp31y2bjvzcmmkry0q3k5j")) + "1xy2zqbd1wn2fij95kgnj39850r7xk74kvx7kp0dxhmvs429vv8k")) + ;; TODO: Remove these patches and snippet when updating, + ;; upstreamed since commit `84375ac05e923b46bbacc8b336b0dfbe29497b6b'. + (patches + (search-patches "xfig-Enable-error-message-for-missing-libraries.patch" + "xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch" + "xfig-Fix-double-free-when-requesting-MediaBox.patch")) (modules '((guix build utils))) (snippet ;; The patch-dot-desktop-files phase requires a relative name. - #~(substitute* "xfig.desktop" - (("^(Exec=)/usr/bin/" _ key) key))))) + #~(begin + (substitute* "xfig.desktop" + (("^(Exec=)/usr/bin/" _ key) key)) + ;; This forces autoreconf to be invoked, needed for patches + ;; to be effective. + (delete-file "configure"))))) (build-system gnu-build-system) + (arguments + (list + #:modules '((guix build gnu-build-system) + (guix build utils) + (srfi srfi-26)) + #:phases + #~(modify-phases %standard-phases + (add-after 'install 'wrap-program + (lambda* (#:key inputs #:allow-other-keys) + (let ((path + (search-path-as-list + '("bin") + (map (cut assoc-ref inputs <>) + (list "ghostscript" "fig2dev"))))) + (wrap-program (string-append #$output "/bin/xfig") + `("PATH" ":" prefix ,path)))))))) (native-inputs - ;; For tests. - (list desktop-file-utils ghostscript)) + (list pkg-config + ;; TODO: Remove the import on (gnu packages autotools) + ;; and related packages in the next update. + autoconf automake libtool + ;; For tests. + desktop-file-utils)) (inputs - (list libxaw3d + (list ghostscript + fig2dev + libxaw3d libjpeg-turbo libpng libxpm libx11 + libxft libxt)) (home-page "https://mcj.sourceforge.net/") (synopsis "Interactive drawing tool") @@ -129,4 +164,6 @@ (define-public xfig such as GIF, JPEG, EPSF (PostScript), etc. Those objects can be created, deleted, moved or modified. Attributes such as colors or line styles can be selected in various ways. For text, 35 fonts are available.") - (license license:bsd-2))) + (license + (license:non-copyleft "file://Makefile.am" + "See <https://spdx.org/licenses/Xfig.html>.")))) -- 2.40.1 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* [bug#65873] [PATCH v2 0/3] Xfig module refactoring 2023-09-11 18:51 [bug#65873] [PATCH 0/5] Xfig module refactoring Bruno Victal ` (4 preceding siblings ...) 2023-09-11 18:54 ` [bug#65873] [PATCH 5/5] gnu: xfig: Update to 3.2.9 Bruno Victal @ 2023-09-24 15:30 ` Bruno Victal 2023-09-24 15:30 ` [bug#65873] [PATCH v2 1/3] gnu: xfig: Use G-Expressions Bruno Victal ` (2 more replies) 5 siblings, 3 replies; 11+ messages in thread From: Bruno Victal @ 2023-09-24 15:30 UTC (permalink / raw) To: 65873; +Cc: Bruno Victal Notable changes since v1: * Rebased to resolve conflicts. * Squashed v1 patches [{2,3,4}/5] into v2 [2/3]. * Mark `transfig' as a deprecated package with `fig2dev' as its replacement. Bruno Victal (3): gnu: xfig: Use G-Expressions. gnu: Add fig2dev. gnu: xfig: Update to 3.2.9. gnu/local.mk | 4 +- gnu/packages/docbook.scm | 2 +- .../patches/transfig-gcc10-fno-common.patch | 33 --- ...-error-message-for-missing-libraries.patch | 39 ++++ ...double-free-when-requesting-MediaBox.patch | 58 +++++ ...ig-to-set-fontconfig-CFLAGS-and-LIBS.patch | 89 ++++++++ gnu/packages/tex.scm | 2 +- gnu/packages/xfig.scm | 215 ++++++++++-------- 8 files changed, 306 insertions(+), 136 deletions(-) delete mode 100644 gnu/packages/patches/transfig-gcc10-fno-common.patch create mode 100644 gnu/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch create mode 100644 gnu/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch create mode 100644 gnu/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch base-commit: e134686cead6db62ea8b941b2ed7c0bd660804da -- 2.41.0 ^ permalink raw reply [flat|nested] 11+ messages in thread
* [bug#65873] [PATCH v2 1/3] gnu: xfig: Use G-Expressions. 2023-09-24 15:30 ` [bug#65873] [PATCH v2 0/3] Xfig module refactoring Bruno Victal @ 2023-09-24 15:30 ` Bruno Victal 2023-09-24 15:30 ` [bug#65873] [PATCH v2 2/3] gnu: Add fig2dev Bruno Victal 2023-09-24 15:30 ` [bug#65873] [PATCH v2 3/3] gnu: xfig: Update to 3.2.9 Bruno Victal 2 siblings, 0 replies; 11+ messages in thread From: Bruno Victal @ 2023-09-24 15:30 UTC (permalink / raw) To: 65873; +Cc: Bruno Victal * gnu/packages/xfig.scm (xfig)[arguments]<#:phases>: Relocate 'strip-bogus-exec-prefix into … [sources]: … here, as a snippet instead. [inputs]: Restyle. --- gnu/packages/xfig.scm | 30 ++++++++++++++---------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/gnu/packages/xfig.scm b/gnu/packages/xfig.scm index 8efe561433..f68ddb01f9 100644 --- a/gnu/packages/xfig.scm +++ b/gnu/packages/xfig.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2021 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2022 Ivan Vilata i Balaguer <ivan@selidor.net> +;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu> ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,6 +25,7 @@ (define-module (gnu packages xfig) #:use-module (guix packages) #:use-module ((guix licenses) #:select (bsd-2)) #:use-module (guix download) + #:use-module (guix gexp) #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages freedesktop) @@ -43,27 +45,23 @@ (define-public xfig name "-" version ".tar.xz")) (sha256 (base32 - "0fndgbm1mkqb1sn2v2kj3nx9mxj70jbp31y2bjvzcmmkry0q3k5j")))) + "0fndgbm1mkqb1sn2v2kj3nx9mxj70jbp31y2bjvzcmmkry0q3k5j")) + (modules '((guix build utils))) + (snippet + ;; The patch-dot-desktop-files phase requires a relative name. + #~(substitute* "xfig.desktop" + (("^(Exec=)/usr/bin/" _ key) key))))) (build-system gnu-build-system) (native-inputs ;; For tests. (list desktop-file-utils ghostscript)) (inputs - `(("libxaw3d" ,libxaw3d) - ("libjpeg" ,libjpeg-turbo) - ("libpng" ,libpng) - ("libxpm" ,libxpm) - ("libx11" ,libx11) - ("libxt" ,libxt))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'install 'strip-bogus-exec-prefix - (lambda* (#:key outputs #:allow-other-keys) - (substitute* "xfig.desktop" - ;; The patch-dot-desktop-files phase requires a relative name. - (("Exec=/usr/bin/xfig") "Exec=xfig")) - #t))))) + (list libxaw3d + libjpeg-turbo + libpng + libxpm + libx11 + libxt)) (home-page "https://mcj.sourceforge.net/") (synopsis "Interactive drawing tool") (description -- 2.41.0 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* [bug#65873] [PATCH v2 2/3] gnu: Add fig2dev. 2023-09-24 15:30 ` [bug#65873] [PATCH v2 0/3] Xfig module refactoring Bruno Victal 2023-09-24 15:30 ` [bug#65873] [PATCH v2 1/3] gnu: xfig: Use G-Expressions Bruno Victal @ 2023-09-24 15:30 ` Bruno Victal 2023-09-24 15:30 ` [bug#65873] [PATCH v2 3/3] gnu: xfig: Update to 3.2.9 Bruno Victal 2 siblings, 0 replies; 11+ messages in thread From: Bruno Victal @ 2023-09-24 15:30 UTC (permalink / raw) To: 65873; +Cc: Bruno Victal, Andreas Enge, Ricardo Wurmus The source used by the transfig package is outdated and its development was moved into the repository used by fig2dev though the utility `transfig' is considered obsolete and not built by default in the fig2dev package. In practice this isn't a problem since the user is generally after the `fig2dev' utility which was also provided in the (now obsolete) transfig package. Note texlive-latex-make: Description upstreamed with 1dcc04aaa860b123924ae83fc30a47d6f7179f7a. [1] [1]: <https://gitlab.inria.fr/latex-utils/latex-make/-/commit/1dcc04aaa860b123924ae83fc30a47d6f7179f7a> * gnu/packages/xfig.scm: Import all of (guix licenses). (xfig)[license]: Adjust accordingly. (fig2dev): New variable. (transfig): Remove & mark as deprecated package with fig2dev as its replacement. * gnu/packages/patches/transfig-gcc10-fno-common.patch: Remove. * gnu/local.mk: Unregister it. * gnu/packages/docbook.scm (dblatex): Update comment. * gnu/packages/tex.scm (texlive-latex-make)[description]: Update description. --- gnu/local.mk | 1 - gnu/packages/docbook.scm | 2 +- .../patches/transfig-gcc10-fno-common.patch | 33 ---- gnu/packages/tex.scm | 2 +- gnu/packages/xfig.scm | 146 ++++++++---------- 5 files changed, 65 insertions(+), 119 deletions(-) delete mode 100644 gnu/packages/patches/transfig-gcc10-fno-common.patch diff --git a/gnu/local.mk b/gnu/local.mk index ee9a509f1b..d26720640e 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -2026,7 +2026,6 @@ dist_patch_DATA = \ %D%/packages/patches/tootle-glib-object-naming.patch \ %D%/packages/patches/tootle-reason-phrase.patch \ %D%/packages/patches/transcode-ffmpeg.patch \ - %D%/packages/patches/transfig-gcc10-fno-common.patch \ %D%/packages/patches/trytond-add-egg-modules-to-path.patch \ %D%/packages/patches/trytond-add-guix_trytond_path.patch \ %D%/packages/patches/ttf2eot-cstddef.patch \ diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm index ff6d32b168..c47d3db2c0 100644 --- a/gnu/packages/docbook.scm +++ b/gnu/packages/docbook.scm @@ -532,7 +532,7 @@ (define-public dblatex (base32 "0yd09nypswy3q4scri1dg7dr99d7gd6r2dwx0xm81l9f4y32gs0n")))) (build-system python-build-system) - ;; TODO: Add xfig/transfig for fig2dev utility + ;; TODO: Add fig2dev for fig2dev utility. (inputs `(("texlive" ,(texlive-updmap.cfg (list texlive-anysize texlive-appendix diff --git a/gnu/packages/patches/transfig-gcc10-fno-common.patch b/gnu/packages/patches/transfig-gcc10-fno-common.patch deleted file mode 100644 index ebe9236533..0000000000 --- a/gnu/packages/patches/transfig-gcc10-fno-common.patch +++ /dev/null @@ -1,33 +0,0 @@ -Fixes "multiple definition" errors when building with GCC 10+. - -Based on <https://bugs.gentoo.org/show_bug.cgi?id=706706>. ---- a/fig2dev/dev/gensvg.c 2010-07-01 22:41:16.000000000 +0200 -+++ b/fig2dev/dev/gensvg.c 2022-02-27 20:02:33.379945500 +0100 -@@ -230,10 +230,12 @@ - }; - - /* arrowhead arrays */ --Point points[50], fillpoints[50], clippoints[50]; --int npoints, nfillpoints, nclippoints; --int arrowx1, arrowy1; /* first point of object */ --int arrowx2, arrowy2; /* second point of object */ -+Point fillpoints[50]; -+int nfillpoints; -+extern Point points[50], clippoints[50]; -+extern int npoints, nclippoints; -+extern int arrowx1, arrowy1; /* first point of object */ -+extern int arrowx2, arrowy2; /* second point of object */ - - static int tileno=0; /* number of current tile */ - ---- a/fig2dev/fig2dev.h 2010-03-16 19:53:20.000000000 +0100 -+++ b/fig2dev/fig2dev.h 2022-02-27 19:56:06.072253991 +0100 -@@ -126,7 +126,7 @@ - extern char *prog, *from, *to; - extern char *name; - extern double font_size; --Boolean correct_font_size; /* use correct font size */ -+extern Boolean correct_font_size; /* use correct font size */ - extern double mag, fontmag; - extern FILE *tfp; - diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index bd02190a51..b5da339353 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -40434,7 +40434,7 @@ (define-public texlive-latex-make @item @file{figlatex.sty}: a LaTeX package to easily insert Xfig figures. It can interact with LaTeX.mk so that the latter automatically invokes -@command{transfig} if needed. +@command{fig2dev} if needed. @end itemize") (license license:gpl3+))) diff --git a/gnu/packages/xfig.scm b/gnu/packages/xfig.scm index f68ddb01f9..a9a86fc2ed 100644 --- a/gnu/packages/xfig.scm +++ b/gnu/packages/xfig.scm @@ -23,7 +23,7 @@ (define-module (gnu packages xfig) #:use-module (guix packages) - #:use-module ((guix licenses) #:select (bsd-2)) + #:use-module ((guix licenses) #:prefix license:) #:use-module (guix download) #:use-module (guix gexp) #:use-module (guix build-system gnu) @@ -32,8 +32,69 @@ (define-module (gnu packages xfig) #:use-module (gnu packages ghostscript) #:use-module (gnu packages xorg) #:use-module (gnu packages image) + #:use-module (gnu packages ghostscript) + #:use-module (gnu packages imagemagick) + #:use-module (gnu packages netpbm) #:use-module (gnu packages compression)) +(define-public fig2dev + (package + (name "fig2dev") + (version "3.2.9") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/mcj/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1cch429zbmrg2zy1mkx9xwnpvkjhmlw40c88bvi2virws744dqhm")))) + (build-system gnu-build-system) + (arguments + (list + #:modules '((guix build gnu-build-system) + (guix build utils) + (srfi srfi-26)) + #:phases + #~(modify-phases %standard-phases + (add-after 'install 'wrap-program + (lambda* (#:key inputs #:allow-other-keys) + (let ((programs + (find-files (string-append #$output "/bin"))) + (path + (search-path-as-list + '("bin") + (map (cut assoc-ref inputs <>) + (list "ghostscript" "imagemagick"))))) + (for-each (lambda (program) + (wrap-program program + `("PATH" ":" prefix ,path))) + programs))))))) + (inputs + (list libpng zlib + ;; Quoth INSTALL: + ;; “To run fig2dev, the packages + ;; ghostscript, and one out of + ;; netpbm | ImageMagick | GraphicsMagick + ;; are needed to produce various bitmap output formats, or process + ;; fig files with embedded images.” + ghostscript + imagemagick)) + (native-inputs + ;; XXX: Tests fail if netpbm is absent. + (list netpbm)) + (home-page "https://sourceforge.net/projects/mcj") + (synopsis "Translate Fig to other graphic description formats") + (description "Fig2dev is a set of tools for creating TeX documents with +graphics which are portable, in the sense that they can be printed in a wide +variety of environments.") + (license + (license:non-copyleft "file://Makefile.am" + "See <https://spdx.org/licenses/Xfig.html>.")))) + +(define-public transfig + (deprecated-package "transfig" fig2dev)) + (define-public xfig (package (name "xfig") @@ -71,85 +132,4 @@ (define-public xfig such as GIF, JPEG, EPSF (PostScript), etc. Those objects can be created, deleted, moved or modified. Attributes such as colors or line styles can be selected in various ways. For text, 35 fonts are available.") - (license bsd-2))) - -(define-public transfig - (package - (name "transfig") - (version "3.2.5e") - (source - (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/mcj/mcj-source/transfig." - version ".tar.gz")) - (sha256 - (base32 - "0i3p7qmg2w8qrad3pn42b0miwarql7yy0gpd49b1bpal6bqsiicf")) - (patches - (search-patches - "transfig-gcc10-fno-common.patch")))) ; fix GCC10 build - (build-system gnu-build-system) - (native-inputs - (list imake makedepend)) - (inputs - `(("xfig" ,xfig) - ("libjpeg" ,libjpeg-turbo) - ("libpng" ,libpng) - ("libxpm" ,libxpm) - ("libx11" ,libx11) - ("zlib" ,zlib))) - (arguments - `(#:tests? #f - #:phases - (modify-phases %standard-phases - (replace 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((imake (assoc-ref inputs "imake")) - (out (assoc-ref outputs "out"))) - (substitute* '("fig2dev/Imakefile" - "transfig/Imakefile") - (("XCOMM (BINDIR = )[[:graph:]]*" _ front) - (string-append front out "/bin")) - (("XCOMM USEINLINE") "USEINLINE") - ;; The variable name is deceptive. The directory is used as an - ;; installation path for bitmaps. - (("(XFIGLIBDIR =[[:blank:]]*)[[:graph:]]*" _ front) - (string-append front out "/lib")) - (("(XPMLIBDIR = )[[:graph:]]*" _ front) - (string-append front (assoc-ref inputs "libxpm") "/lib")) - (("(XPMINC = -I)[[:graph:]]*" _ front) - (string-append front (assoc-ref inputs "libxpm") "/include/X11")) - (("/usr/local/lib/fig2dev") (string-append out "/lib"))) - ;; The -a argument is required in order to pick up the correct paths - ;; to several X header files. - (invoke "xmkmf" "-a") - (substitute* '("Makefile" - "fig2dev/Makefile" - "fig2dev/dev/Makefile" - "transfig/Makefile") - ;; These imake variables somehow remain undefined - (("DefaultGcc2[[:graph:]]*Opt") "-O2") - ;; Reset a few variable defaults that are set in imake templates - ((imake) out) - (("(MANPATH = )[[:graph:]]*" _ front) - (string-append front out "/share/man")) - (("(CONFDIR = )([[:graph:]]*)" _ front default) - (string-append front out default)) - ;; The "l" option was silently ignored until binutils 2.36, - ;; where it got a different purpose. So remove it to avoid - ;; "ar: libdeps specified more than once". - (("((AR|MODAR) = ar )clq" _ front) - (string-append front "cq"))) - #t))) - (add-after 'install 'install/doc - (lambda _ - (invoke "make" "install.man")))))) - (home-page "https://mcj.sourceforge.net/") - (synopsis "Create portable LaTeX figures") - (description - "Transfig creates a makefile to translate figures described in Fig code -or PIC into a specified LaTeX graphics language. PIC files are identified by -the suffix \".pic\"; Fig files can be specified either with or without the -suffix \".fig\". Transfig also creates a TeX macro file appropriate to the -target language.") - (license bsd-2))) + (license license:bsd-2))) -- 2.41.0 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* [bug#65873] [PATCH v2 3/3] gnu: xfig: Update to 3.2.9. 2023-09-24 15:30 ` [bug#65873] [PATCH v2 0/3] Xfig module refactoring Bruno Victal 2023-09-24 15:30 ` [bug#65873] [PATCH v2 1/3] gnu: xfig: Use G-Expressions Bruno Victal 2023-09-24 15:30 ` [bug#65873] [PATCH v2 2/3] gnu: Add fig2dev Bruno Victal @ 2023-09-24 15:30 ` Bruno Victal 2023-10-01 8:19 ` bug#65873: " Liliana Marie Prikler 2 siblings, 1 reply; 11+ messages in thread From: Bruno Victal @ 2023-09-24 15:30 UTC (permalink / raw) To: 65873; +Cc: Bruno Victal * gnu/packages/xfig.scm (xfig): Update to 3.2.9. [arguments]<#:phases>: Add 'wrap-program. [native-inputs]: Add pkg-config, autoconf, automake and libtool. Move ghostscript to … [inputs]: … here. Add fig2dev, libxaw3d and libxft. [license]: Correct it to `SPDX-License-Identifier:Xfig'. * gnu/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch: New file. * gnu/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch: Ditto. * gnu/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch: Ditto. * gnu/local.mk: Register it. --- gnu/local.mk | 3 + ...-error-message-for-missing-libraries.patch | 39 ++++++++ ...double-free-when-requesting-MediaBox.patch | 58 ++++++++++++ ...ig-to-set-fontconfig-CFLAGS-and-LIBS.patch | 89 +++++++++++++++++++ gnu/packages/xfig.scm | 53 +++++++++-- 5 files changed, 234 insertions(+), 8 deletions(-) create mode 100644 gnu/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch create mode 100644 gnu/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch create mode 100644 gnu/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch diff --git a/gnu/local.mk b/gnu/local.mk index d26720640e..188066826d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -2120,6 +2120,9 @@ dist_patch_DATA = \ %D%/packages/patches/xf86-video-nouveau-fixup-ABI.patch \ %D%/packages/patches/xf86-video-savage-xorg-compat.patch \ %D%/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch \ + %D%/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch \ + %D%/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch \ + %D%/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch \ %D%/packages/patches/xfce4-panel-plugins.patch \ %D%/packages/patches/xfce4-settings-defaults.patch \ %D%/packages/patches/xgboost-use-system-dmlc-core.patch \ diff --git a/gnu/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch b/gnu/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch new file mode 100644 index 0000000000..a6c37e3353 --- /dev/null +++ b/gnu/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch @@ -0,0 +1,39 @@ +From 84685930d5cfc7005f3414601230a23e28a18f59 Mon Sep 17 00:00:00 2001 +From: Thomas Loimer <thomas.loimer@tuwien.ac.at> +Date: Tue, 5 Sep 2023 22:02:55 +0200 +Subject: [PATCH 1/3] Enable error message for missing libraries + +Move the check for missing libraries to a place where the queried +variables are set. +--- + configure.ac | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 035b9d7..47452c5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -95,9 +95,6 @@ dnl AC_CHECK_PROG(XDG_MENU, [xdg-desktop-menu], [xdg-desktop-menu]) + AC_SEARCH_LIBS([pow], [m])dnl + dnl AC_SEARCH_LIBS([deflate], [z]) # libz is not needed. + AC_SEARCH_LIBS([FcInit], [fontconfig]) +-AS_IF([test "x$ac_cv_search_pow" = xno \ +- || test "x$ac_cv_search_png_read_info" = xno], +- [AC_MSG_ERROR([Necessary libraries not found.])]) + + + # Checks for header files. +@@ -187,6 +184,10 @@ PostScript files. To disable calling ghostscript, set to the empty string, + AC_SUBST([gsman]) + AM_SUBST_NOTMAKE([gsman]) + ++AS_IF([test "x$ac_cv_search_pow" = xno \ ++ || test "x$ac_cv_search_png_read_info" = xno], ++ [AC_MSG_ERROR([Necessary libraries not found.])]) ++ + + # Checks for typedefs, structures, and compiler characteristics. + AC_C_BIGENDIAN +-- +2.40.1 + diff --git a/gnu/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch b/gnu/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch new file mode 100644 index 0000000000..65b0ad8d36 --- /dev/null +++ b/gnu/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch @@ -0,0 +1,58 @@ +From a9181df87d78828318f2e9f8d4ea012bc06883b9 Mon Sep 17 00:00:00 2001 +From: Bruno Victal <mirai@makinata.eu> +Date: Thu, 7 Sep 2023 16:51:23 +0100 +Subject: [PATCH 3/3] Fix double-free when requesting MediaBox. + +Explicitly close the Ghostscript PDF interpreter before calling quit. + +References: +[1]: <https://bugs.ghostscript.com/show_bug.cgi?id=705855> +[2]: <https://bugs.ghostscript.com/show_bug.cgi?id=705836> +--- + src/u_ghostscript.c | 13 ++++++++----- + 1 file changed, 8 insertions(+), 5 deletions(-) + +diff --git a/src/u_ghostscript.c b/src/u_ghostscript.c +index 5974b31..d14674f 100644 +--- a/src/u_ghostscript.c ++++ b/src/u_ghostscript.c +@@ -317,10 +317,10 @@ gsexe(FILE **out, bool *isnew, char *exenew, char *exeold) + * Call ghostscript to extract the /MediaBox from the pdf given in file. + * Command line, for gs >= 9.50, + * gs -q -dNODISPLAY --permit-file-read=in.pdf -c \ +- * "(in.pdf) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit" ++ * "(in.pdf) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == runpdfend quit" + * gs < 9.50: + * gs -q -dNODISPLAY -dNOSAFER -c \ +- * "(in.pdf) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit" ++ * "(in.pdf) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == runpdfend quit" + * The command line was found, and modified a bit, at + *https://stackoverflow.com/questions/2943281/using-ghostscript-to-get-page-size + * Beginning with gs 9.50, "-dSAFER" is the default, and permission to access +@@ -349,9 +349,11 @@ gsexe_mediabox(char *file, int *llx, int *lly, int *urx, int *ury) + return -3; + + exenew = "%s -q -dNODISPLAY \"--permit-file-read=%s\" -c \"(%s) (r) " +- "file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit\""; ++ "file runpdfbegin 1 pdfgetpage /MediaBox pget pop == " ++ "runpdfend quit\""; + exeold = "%s -q -dNODISPLAY -c \"(%s) (r) " +- "file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit\""; ++ "file runpdfbegin 1 pdfgetpage /MediaBox pget pop == " ++ "runpdfend quit\""; + + /* malloc() buffers for the command line, if necessary */ + fmt = exenew; +@@ -445,7 +447,8 @@ gslib_mediabox(char *file, int *llx, int *lly, int *urx, int *ury) + argnew[3] = "--permit-file-read=%s"; /* file */ + argnew[4] = "-c"; + argnew[5] = +- "(%s) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit"; ++ "(%s) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == " ++ "runpdfend quit"; + + argold[0] = argnew[0]; + argold[1] = argnew[1]; +-- +2.40.1 + diff --git a/gnu/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch b/gnu/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch new file mode 100644 index 0000000000..65158b901b --- /dev/null +++ b/gnu/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch @@ -0,0 +1,89 @@ +From 4320b1d82da1bfe1519800ae3ac35b6b59a9da56 Mon Sep 17 00:00:00 2001 +From: Thomas Loimer <thomas.loimer@tuwien.ac.at> +Date: Fri, 8 Sep 2023 18:43:00 +0200 +Subject: [PATCH 2/3] Use pkg-config to set fontconfig CFLAGS and LIBS + +--- + configure.ac | 16 +++++++++++++--- + src/Makefile.am | 8 +++----- + tests/Makefile.am | 4 ++-- + 3 files changed, 18 insertions(+), 10 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 47452c5..3113db8 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -81,11 +81,23 @@ AC_PROG_SED + AM_PROG_AR + + # Search for pkg-config and set PKG_CONFIG to the path found, else empty. +-# PKG_PROG_PKG_CONFIG ++PKG_PROG_PKG_CONFIG + # On debian, pkg-config does not find xaw3d. On archlinux, pkg-config + # --libs xaw3d yields -lXaw3d -lXmu -lXt -lX11 -- but -lXmu is not + # strictly necessary. Use hard-coded paths instead of pkg-config. + ++# First try pkg-config, as a side-effect this might set flags that are ++# useful later, e.g., for libpng. ++dnl Under archlinux, PKG_CHECK_MODULES(FT, fontconfig) would write during ++dnl ./configure "checking for FT...", under debian the line is ++dnl "checking for fontconfig...". Stay on the comprehensible side. ++AS_IF([test "x$PKG_CONFIG" != x], ++ [PKG_CHECK_MODULES([fontconfig], [fontconfig])], ++ [fontconfig_CFLAGS='-I$(oldincludedir)/freetype2 ' ++ AC_SEARCH_LIBS([FcInit], [fontconfig])]) ++AC_SUBST([fontconfig_CFLAGS]) ++AC_SUBST([fontconfig_LIBS]) ++ + dnl Not useful for packagers. + dnl AC_CHECK_PROG(XDG_ICON, [xdg-icon-resource], [xdg-icon-resource]) + dnl AC_CHECK_PROG(XDG_MENU, [xdg-desktop-menu], [xdg-desktop-menu]) +@@ -93,8 +105,6 @@ dnl AC_CHECK_PROG(XDG_MENU, [xdg-desktop-menu], [xdg-desktop-menu]) + + # Checks for libraries. + AC_SEARCH_LIBS([pow], [m])dnl +-dnl AC_SEARCH_LIBS([deflate], [z]) # libz is not needed. +-AC_SEARCH_LIBS([FcInit], [fontconfig]) + + + # Checks for header files. +diff --git a/src/Makefile.am b/src/Makefile.am +index 3cbd5ee..73d5132 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -23,13 +23,11 @@ + # "`u' modifier ignored since `D' is the default...". + ARFLAGS = cr + +-# Xft #includes <ft2build.h>, not <freetype2/ft2build.h>, hence freetype2 +-# must be put into the search path. +- +-AM_CPPFLAGS = -I$(oldincludedir)/freetype2 $(XCPPFLAGS) -DNDEBUG -DXFIGLIBDIR="\"$(compkeydbdir)\"" \ ++AM_CPPFLAGS = $(fontconfig_CFLAGS) $(XCPPFLAGS) -DNDEBUG \ ++ -DXFIGLIBDIR="\"$(compkeydbdir)\"" \ + -DOBJLIBDIR="\"$(pkgdatadir)/Libraries\"" -DXFIGDOCDIR="\"$(docdir)\"" + +-AM_LDFLAGS = $(XLDFLAGS) ++AM_LDFLAGS = $(fontconfig_LIBS) $(XLDFLAGS) + + # LIBOBJS must be placed in LDADD or xfig_LDADD - otherwise, the + # lib-dir is not distributed +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 2f529ac..c158806 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -39,9 +39,9 @@ $(srcdir)/package.m4: $(top_srcdir)/configure.ac + echo 'm4_define([AT_PACKAGE_URL], [@PACKAGE_URL@])'; \ + } >'$(srcdir)/package.m4' + +-AM_CPPFLAGS = -I$(top_srcdir)/src -I$(oldincludedir)/freetype2 $(XCPPFLAGS) ++AM_CPPFLAGS = -I$(top_srcdir)/src $(fontconfig_CFLAGS) $(XCPPFLAGS) + +-AM_LDFLAGS = $(XLDFLAGS) ++AM_LDFLAGS = $(fontconfig_LIBS) $(XLDFLAGS) + LDADD = $(top_builddir)/src/libxfig.a $(XLIBS) + + check_PROGRAMS = test1 test2 test3 test4 +-- +2.40.1 + diff --git a/gnu/packages/xfig.scm b/gnu/packages/xfig.scm index a9a86fc2ed..9d07a5cd42 100644 --- a/gnu/packages/xfig.scm +++ b/gnu/packages/xfig.scm @@ -28,9 +28,11 @@ (define-module (gnu packages xfig) #:use-module (guix gexp) #:use-module (guix build-system gnu) #:use-module (gnu packages) + #:use-module (gnu packages autotools) #:use-module (gnu packages freedesktop) #:use-module (gnu packages ghostscript) #:use-module (gnu packages xorg) + #:use-module (gnu packages pkg-config) #:use-module (gnu packages image) #:use-module (gnu packages ghostscript) #:use-module (gnu packages imagemagick) @@ -98,7 +100,7 @@ (define-public transfig (define-public xfig (package (name "xfig") - (version "3.2.8b") + (version "3.2.9") (source (origin (method url-fetch) @@ -106,22 +108,55 @@ (define-public xfig name "-" version ".tar.xz")) (sha256 (base32 - "0fndgbm1mkqb1sn2v2kj3nx9mxj70jbp31y2bjvzcmmkry0q3k5j")) + "1xy2zqbd1wn2fij95kgnj39850r7xk74kvx7kp0dxhmvs429vv8k")) + ;; TODO: Remove these patches and snippet when updating, + ;; upstreamed since commit `84375ac05e923b46bbacc8b336b0dfbe29497b6b'. + (patches + (search-patches "xfig-Enable-error-message-for-missing-libraries.patch" + "xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch" + "xfig-Fix-double-free-when-requesting-MediaBox.patch")) (modules '((guix build utils))) (snippet ;; The patch-dot-desktop-files phase requires a relative name. - #~(substitute* "xfig.desktop" - (("^(Exec=)/usr/bin/" _ key) key))))) + #~(begin + (substitute* "xfig.desktop" + (("^(Exec=)/usr/bin/" _ key) key)) + ;; This forces autoreconf to be invoked, needed for patches + ;; to be effective. + (delete-file "configure"))))) (build-system gnu-build-system) + (arguments + (list + #:modules '((guix build gnu-build-system) + (guix build utils) + (srfi srfi-26)) + #:phases + #~(modify-phases %standard-phases + (add-after 'install 'wrap-program + (lambda* (#:key inputs #:allow-other-keys) + (let ((path + (search-path-as-list + '("bin") + (map (cut assoc-ref inputs <>) + (list "ghostscript" "fig2dev"))))) + (wrap-program (string-append #$output "/bin/xfig") + `("PATH" ":" prefix ,path)))))))) (native-inputs - ;; For tests. - (list desktop-file-utils ghostscript)) + (list pkg-config + ;; TODO: Remove the import on (gnu packages autotools) + ;; and related packages in the next update. + autoconf automake libtool + ;; For tests. + desktop-file-utils)) (inputs - (list libxaw3d + (list ghostscript + fig2dev + libxaw3d libjpeg-turbo libpng libxpm libx11 + libxft libxt)) (home-page "https://mcj.sourceforge.net/") (synopsis "Interactive drawing tool") @@ -132,4 +167,6 @@ (define-public xfig such as GIF, JPEG, EPSF (PostScript), etc. Those objects can be created, deleted, moved or modified. Attributes such as colors or line styles can be selected in various ways. For text, 35 fonts are available.") - (license license:bsd-2))) + (license + (license:non-copyleft "file://Makefile.am" + "See <https://spdx.org/licenses/Xfig.html>.")))) -- 2.41.0 ^ permalink raw reply related [flat|nested] 11+ messages in thread
* bug#65873: [PATCH v2 3/3] gnu: xfig: Update to 3.2.9. 2023-09-24 15:30 ` [bug#65873] [PATCH v2 3/3] gnu: xfig: Update to 3.2.9 Bruno Victal @ 2023-10-01 8:19 ` Liliana Marie Prikler 0 siblings, 0 replies; 11+ messages in thread From: Liliana Marie Prikler @ 2023-10-01 8:19 UTC (permalink / raw) To: Bruno Victal, 65873-done Am Sonntag, dem 24.09.2023 um 16:30 +0100 schrieb Bruno Victal: > * gnu/packages/xfig.scm (xfig): Update to 3.2.9. > [arguments]<#:phases>: Add 'wrap-program. > [native-inputs]: Add pkg-config, autoconf, automake and libtool. Move > ghostscript to … > [inputs]: … here. Add fig2dev, libxaw3d and libxft. > [license]: Correct it to `SPDX-License-Identifier:Xfig'. > * gnu/packages/patches/xfig-Enable-error-message-for-missing- > libraries.patch: > New file. > * gnu/packages/patches/xfig-Fix-double-free-when-requesting- > MediaBox.patch: Ditto. > * gnu/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS- > and-LIBS.patch: > Ditto. > * gnu/local.mk: Register it. > --- Reworded slightly and pushed. Thanks ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2023-10-01 8:20 UTC | newest] Thread overview: 11+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-09-11 18:51 [bug#65873] [PATCH 0/5] Xfig module refactoring Bruno Victal 2023-09-11 18:54 ` [bug#65873] [PATCH 1/5] gnu: xfig: Use G-Expressions Bruno Victal 2023-09-11 18:54 ` [bug#65873] [PATCH 2/5] gnu: Add fig2dev Bruno Victal 2023-09-11 18:54 ` [bug#65873] [PATCH 3/5] gnu: transfig: Remove package Bruno Victal 2023-09-11 18:54 ` [bug#65873] [PATCH 4/5] gnu: texlive-latex-make: Update description Bruno Victal 2023-09-11 18:54 ` [bug#65873] [PATCH 5/5] gnu: xfig: Update to 3.2.9 Bruno Victal 2023-09-24 15:30 ` [bug#65873] [PATCH v2 0/3] Xfig module refactoring Bruno Victal 2023-09-24 15:30 ` [bug#65873] [PATCH v2 1/3] gnu: xfig: Use G-Expressions Bruno Victal 2023-09-24 15:30 ` [bug#65873] [PATCH v2 2/3] gnu: Add fig2dev Bruno Victal 2023-09-24 15:30 ` [bug#65873] [PATCH v2 3/3] gnu: xfig: Update to 3.2.9 Bruno Victal 2023-10-01 8:19 ` bug#65873: " Liliana Marie Prikler
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).