summary refs log tree commit diff
path: root/gnu/packages/webkit.scm
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2018-09-22 19:17:29 -0400
committerMark H Weaver <mhw@netris.org>2018-09-23 01:25:09 -0400
commit844cc6f876b8dcadf210398e68b3f3f824cb7144 (patch)
tree8db1f71f14b7956f8ca0e415db23c18144a24493 /gnu/packages/webkit.scm
parent21280a8cd805ace5f95cd2580b8a6ca1e25050d7 (diff)
downloadguix-844cc6f876b8dcadf210398e68b3f3f824cb7144.tar.gz
gnu: webkitgtk: Add version 2.22.2.
* gnu/packages/webkit.scm (webkitgtk-2.22): New variable.
Diffstat (limited to 'gnu/packages/webkit.scm')
-rw-r--r--gnu/packages/webkit.scm33
1 files changed, 33 insertions, 0 deletions
diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm
index b671e44d18..976411dbbc 100644
--- a/gnu/packages/webkit.scm
+++ b/gnu/packages/webkit.scm
@@ -24,6 +24,7 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix utils)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
@@ -32,6 +33,7 @@
   #:use-module (gnu packages databases)
   #:use-module (gnu packages enchant)
   #:use-module (gnu packages flex)
+  #:use-module (gnu packages gcc)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
@@ -149,3 +151,34 @@ HTML/CSS applications to full-fledged web browsers.")
                    license:lgpl2.1+
                    license:bsd-2
                    license:bsd-3))))
+
+;; This version of webkitgtk needs to be kept separate, because it requires a
+;; newer version of GCC than our default compiler, and this causes problems
+;; when linked with C++ libraries built using our default compiler.  For now,
+;; we use this newer webkitgtk only for selected packages, e.g. epiphany.
+(define-public webkitgtk-2.22
+  (package/inherit webkitgtk
+    (name "webkitgtk")
+    (version "2.22.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://www.webkitgtk.org/releases/"
+                                  name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "1flrbr8pzbrlwv09b4pmgh6vklw7jghd2lgrhcb72vl9s7a8fm1l"))))
+    (native-inputs
+     `(("gcc" ,gcc-7)  ; webkitgtk-2.22 requires gcc-6 or newer
+       ,@(package-native-inputs webkitgtk)))
+    (arguments
+     (substitute-keyword-arguments (package-arguments webkitgtk)
+       ((#:phases phases)
+        `(modify-phases ,phases
+           (add-after 'add-gst-plugins-base-include-path
+               'work-around-gcc-7-include-path-issue
+             ;; FIXME: Work around a problem with gcc-7 includes (see
+             ;; <https://bugs.gnu.org/30756>).
+             (lambda _
+               (unsetenv "C_INCLUDE_PATH")
+               (unsetenv "CPLUS_INCLUDE_PATH")
+               #t))))))))