summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-01-23 11:10:14 +0100
committerLudovic Courtès <ludo@gnu.org>2020-01-23 11:26:55 +0100
commite4dbe0cd2e5645f3ae86b004c05fe20b06cb47fe (patch)
tree277c7199ad98c6fd32b413a01acf114e9ae81d02
parent675f1940e92eeccf45cc222845077b72bab7593b (diff)
downloadpatches-e4dbe0cd2e5645f3ae86b004c05fe20b06cb47fe.tar
patches-e4dbe0cd2e5645f3ae86b004c05fe20b06cb47fe.tar.gz
gnu: guile-cairo: Add "guile3.0-cairo" variant.
* gnu/packages/gtk.scm (guile-cairo)[source](snippet): Add #include <string.h> everywhere #include <libguile.h> appears. (guile3.0-cairo): New variable.
-rw-r--r--gnu/packages/gtk.scm24
1 files changed, 23 insertions, 1 deletions
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index a3e19827f5..6f7344c6e3 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
@@ -833,6 +833,12 @@ application suites.")
(string-append name "dir = " prefix
"/guile/site/@GUILE_EFFECTIVE_VERSION@"
suffix)))
+
+ ;; Guile 2.x <libguile.h> used to pull in <string.h> and
+ ;; other headers but this is no longer the case in 3.0.
+ (substitute* (find-files "." "\\.[ch]$")
+ (("^ *# *include.*libguile\\.h.*$")
+ "#include <libguile.h>\n#include <string.h>\n"))
#t)))))
(build-system gnu-build-system)
(inputs
@@ -855,6 +861,22 @@ graphics library with all of the benefits of Scheme: memory management,
exceptions, macros, and a dynamic programming environment.")
(license license:lgpl3+)))
+(define-public guile3.0-cairo
+ (package
+ (inherit guile-cairo)
+ (name "guile3.0-cairo")
+ (arguments
+ (substitute-keyword-arguments (package-arguments guile-cairo)
+ ((#:configure-flags flags ''())
+ ;; Uses of 'scm_t_uint8' & co. are deprecated; don't stop the build
+ ;; because of them.
+ `(cons "--disable-Werror" ,flags))))
+ (inputs
+ `(("guile" ,guile-3.0)
+ ("guile-lib" ,guile3.0-lib)
+ ,@(fold alist-delete (package-inputs guile-cairo)
+ '("guile" "guile-lib"))))))
+
(define-public guile-rsvg
;; Use a recent snapshot that supports Guile 2.2 and beyond.
(let ((commit "05c6a2fd67e4fea1a7c3ff776729dc931bae6678")