guix-commits
[Top][All Lists]
Advanced

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

01/02: gnu: qtwebkit: Update to 5.212.0-alpha2.


From: Efraim Flashner
Subject: 01/02: gnu: qtwebkit: Update to 5.212.0-alpha2.
Date: Tue, 31 Jul 2018 10:46:37 -0400 (EDT)

efraim pushed a commit to branch master
in repository guix.

commit 601cb1be2bba7a058f93829964c3074ddbdb9293
Author: Andreas Enge <address@hidden>
Date:   Sun Jul 22 11:38:58 2018 +0200

    gnu: qtwebkit: Update to 5.212.0-alpha2.
    
    * gnu/packages/patches/qtwebkit-pbutils-include.patch: New file.
    * gnu/local.mk (dist_patch_DATA): Register the patch.
    * gnu/packages/qt.scm (qtwebkit): Update to 5.212.0-alpha2.
    [source]: Use new upstream location. Add patch.
    [build-system]: Switch to cmake-build-system.
    [inputs]: Add glib, gst-plugins-base, qtlocation, qtsensors,
    qtwebchannel.
    [arguments]: Disable the tests. Add new configure flags. Remove all
    custom phases.
---
 gnu/local.mk                                       |  1 +
 .../patches/qtwebkit-pbutils-include.patch         | 15 ++++
 gnu/packages/qt.scm                                | 98 ++++------------------
 3 files changed, 33 insertions(+), 81 deletions(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 20b213c..640de62 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1098,6 +1098,7 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/qtscript-disable-tests.patch            \
   %D%/packages/patches/quagga-reproducible-build.patch          \
   %D%/packages/patches/quickswitch-fix-dmenu-check.patch       \
+  %D%/packages/patches/qtwebkit-pbutils-include.patch          \
   %D%/packages/patches/rapicorn-isnan.patch                    \
   %D%/packages/patches/raptor2-heap-overflow.patch             \
   %D%/packages/patches/ratpoison-shell.patch                   \
diff --git a/gnu/packages/patches/qtwebkit-pbutils-include.patch 
b/gnu/packages/patches/qtwebkit-pbutils-include.patch
new file mode 100644
index 0000000..57961e7
--- /dev/null
+++ b/gnu/packages/patches/qtwebkit-pbutils-include.patch
@@ -0,0 +1,15 @@
+Patch taken from Nix:
+   
https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/qt-5/5.11/qtwebkit.patch
+
+diff --git a/Source/WebKit2/PlatformQt.cmake b/Source/WebKit2/PlatformQt.cmake
+--- a/Source/WebKit2/PlatformQt.cmake
++++ b/Source/WebKit2/PlatformQt.cmake
+@@ -261,6 +261,7 @@
+ list(APPEND WebKit2_SYSTEM_INCLUDE_DIRECTORIES
+     ${GLIB_INCLUDE_DIRS}
+     ${GSTREAMER_INCLUDE_DIRS}
++    ${GSTREAMER_PBUTILS_INCLUDE_DIRS}
+     ${Qt5Quick_INCLUDE_DIRS}
+     ${Qt5Quick_PRIVATE_INCLUDE_DIRS}
+     ${SQLITE_INCLUDE_DIR}
+
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index cefceb6..7512a51 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -2104,18 +2104,17 @@ different kinds of sliders, and much more.")
 (define-public qtwebkit
   (package
     (name "qtwebkit")
-    (version "5.9.1")
+    (version "5.212.0-alpha2")
     (source
       (origin
         (method url-fetch)
-        (uri (string-append "https://download.qt.io/official_releases/qt/";
-                            (version-major+minor version) "/" version
-                            "/submodules/" name "-opensource-src-"
-                            version ".tar.xz"))
+        (uri (string-append 
"https://github.com/annulen/webkit/releases/download/";
+                            name "-" version "/" name "-" version ".tar.xz"))
         (sha256
          (base32
-          "1ksjn1vjbfhdm4y4rg08ag4krk87ahp7qcdcpwll42l0rnz61998"))))
-    (build-system gnu-build-system)
+          "12lg7w00d8wsj672s1y5z5gm0xdcgs16nas0b5bgq4byavg03ygq"))
+        (patches (search-patches "qtwebkit-pbutils-include.patch"))))
+    (build-system cmake-build-system)
     (native-inputs
      `(("perl" ,perl)
        ("python" ,python-2.7)
@@ -2126,6 +2125,8 @@ different kinds of sliders, and much more.")
        ("pkg-config" ,pkg-config)))
     (inputs
      `(("icu" ,icu4c)
+       ("glib" ,glib)
+       ("gst-plugins-base" ,gst-plugins-base)
        ("libjpeg" ,libjpeg)
        ("libpng" ,libpng)
        ("libwebp" ,libwebp)
@@ -2134,92 +2135,27 @@ different kinds of sliders, and much more.")
        ("libxrender" ,libxrender)
        ("qtbase" ,qtbase)
        ("qtdeclarative" ,qtdeclarative)
+       ("qtlocation" ,qtlocation)
        ("qtmultimedia" ,qtmultimedia)
+       ("qtsensors" ,qtsensors)
+       ("qtwebchannel" ,qtwebchannel)
        ("libxml2" ,libxml2)
        ("libxslt" ,libxslt)
        ("libx11" ,libx11)
        ("libxcomposite" ,libxcomposite)))
     (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (add-before 'configure 'fix-qmlwebkit-plugins-rpath
-           (lambda _
-             (substitute* 
"Source/WebKit/qt/declarative/experimental/experimental.pri"
-               (("RPATHDIR_RELATIVE_TO_DESTDIR = \\.\\./\\.\\./lib")
-                "RPATHDIR_RELATIVE_TO_DESTDIR = ../../../../../lib"))
-             (substitute* "Source/WebKit/qt/declarative/public.pri"
-               (("RPATHDIR_RELATIVE_TO_DESTDIR = \\.\\./\\.\\./lib")
-                "RPATHDIR_RELATIVE_TO_DESTDIR = ../../../../lib"))
-             #t))
-         (replace 'configure
-                  (lambda* (#:key outputs #:allow-other-keys)
-                    (let ((out (assoc-ref outputs "out")))
-                      (setenv "QMAKEPATH"
-                              (string-append (getcwd) "/Tools/qmake:"
-                                             (getenv "QMAKEPATH")))
-                      (system* "qmake"))))
-         ;; prevent webkit from trying to install into the qtbase store 
directory,
-         ;; and replace references to the build directory in linker options:
-         (add-before 'build 'patch-installpaths
-                     (lambda* (#:key outputs inputs #:allow-other-keys)
-                       (let* ((out (assoc-ref outputs "out"))
-                              (qtbase (assoc-ref inputs "qtbase"))
-                              (builddir (getcwd))
-                              (linkbuild (string-append "-L" builddir))
-                              (linkout (string-append "-L" out))
-                              (makefiles
-                               (map-in-order
-                                (lambda (i)
-                                  (let* ((in (car i))
-                                         (mf (string-append (dirname in) "/"
-                                                            (cdr i))))
-                                    ;; by default, these Makefiles are
-                                    ;; generated during install, but we need
-                                    ;; to generate them now
-                                    (system* "qmake" in "-o" mf)
-                                    mf))
-                                '(("Source/api.pri" . "Makefile.api")
-                                  ("Source/widgetsapi.pri"
-                                   . "Makefile.widgetsapi")
-                                  ("Source/WebKit2/WebProcess.pro"
-                                   . "Makefile.WebProcess")
-                                  ("Source/WebKit2/PluginProcess.pro"
-                                   . "Makefile.PluginProcess")
-                                  ("Source/WebKit/qt/declarative/public.pri"
-                                   . "Makefile.declarative.public")
-                                  
("Source/WebKit/qt/declarative/experimental/experimental.pri"
-                                   . "Makefile.declarative.experimental")
-                                  
("Source/WebKit/qt/examples/platformplugin/platformplugin.pro"
-                                   . "Makefile")))))
-                         ;; Order of qmake calls and substitutions matters 
here.
-                         (system* "qmake" "-prl" "Source/widgetsapi.pri"
-                                  "-o" "Source/Makefile")
-                         (substitute* (find-files "lib" "libQt5.*\\.prl")
-                           ((linkbuild) linkout))
-                         (substitute* (find-files "lib"
-                                                  "libQt5WebKit.*\\.la")
-                           (("libdir='.*'")
-                            (string-append "libdir='" out "/lib'"))
-                           ((linkbuild) linkout))
-                         (substitute* (find-files "lib/pkgconfig"
-                                                  "Qt5WebKit.*\\.pc")
-                           (((string-append "prefix=" qtbase))
-                            (string-append "prefix=" out))
-                           ((linkbuild) linkout))
-                         ;; Makefiles must be modified after .prl/.la/.pc
-                         ;; files, lest they get rebuilt:
-                         (substitute* makefiles
-                           (((string-append "\\$\\(INSTALL_ROOT\\)" qtbase))
-                            out )
-                           (((string-append "-Wl,-rpath," builddir))
-                            (string-append "-Wl,-rpath," out)))))))))
+     `(#:tests? #f ; no apparent tests; it might be necessary to set
+                   ; ENABLE_API_TESTS, see CMakeLists.txt
+       #:configure-flags (list ;"-DENABLE_API_TESTS=TRUE"
+                               "-DPORT=Qt"
+                               "-DUSE_LIBHYPHEN=OFF"
+                               "-DUSE_SYSTEM_MALLOC=ON")))
     (home-page "https://www.webkit.org";)
     (synopsis "Web browser engine and classes to render and interact with web
 content")
     (description "QtWebKit provides a Web browser engine that makes it easy to
 embed content from the World Wide Web into your Qt application.  At the same
 time Web content can be enhanced with native controls.")
-
     (license license:lgpl2.1+)))
 
 (define-public dotherside



reply via email to

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