~ruther/guix-local

14bcc1e1cd85d38db59b6b6089d63d429fb76b57 — Andreas Enge 10 years ago 2b00a55
gnu: qt: Remove the sources of qtwebengine.

* gnu/packages/qt.scm (qt)[source]: Add snippet to remove the qtwebengine
  code, which was already not built anymore, and drop one patch used
  previously only for qtwebengine.
  [arguments]: Drop the configuration flag "-skip qtwebengine", since
  deleted modules cannot be skipped.
* gnu/packages/patches/qt5-runpath.patch: Delete file.
* gnu-system.am (dist_patch_DATA): Unregister patch.

Partially fixes <http://bugs.gnu.org/21288>.
3 files changed, 10 insertions(+), 45 deletions(-)

M gnu-system.am
D gnu/packages/patches/qt5-runpath.patch
M gnu/packages/qt.scm
M gnu-system.am => gnu-system.am +0 -1
@@ 611,7 611,6 @@ dist_patch_DATA =						\
  gnu/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \
  gnu/packages/patches/qemu-CVE-2015-6855.patch			\
  gnu/packages/patches/qt4-ldflags.patch			\
  gnu/packages/patches/qt5-runpath.patch			\
  gnu/packages/patches/ratpoison-shell.patch			\
  gnu/packages/patches/readline-link-ncurses.patch		\
  gnu/packages/patches/ripperx-missing-file.patch		\

D gnu/packages/patches/qt5-runpath.patch => gnu/packages/patches/qt5-runpath.patch +0 -27
@@ 1,27 0,0 @@
Allow the use of DT_RUNPATH.  This fixes a bug whereby libQt5WebEngineCore.so
ends up having an empty RUNPATH.


diff -u -r qt-everywhere-opensource-src-5.5.0.orig/qtwebengine/src/3rdparty/chromium/build/common.gypi qt-everywhere-opensource-src-5.5.0/qtwebengine/src/3rdparty/chromium/build/common.gypi
--- qt-everywhere-opensource-src-5.5.0.orig/qtwebengine/src/3rdparty/chromium/build/common.gypi	2015-06-29 22:09:36.000000000 +0200
+++ qt-everywhere-opensource-src-5.5.0/qtwebengine/src/3rdparty/chromium/build/common.gypi	2015-07-25 15:32:57.999411191 +0200
@@ -4448,19 +4448,6 @@
               '-B<!(cd <(DEPTH) && pwd -P)/<(binutils_dir)',
             ],
           }],
-          # Some binutils 2.23 releases may or may not have new dtags enabled,
-          # but they are all compatible with --disable-new-dtags,
-          # because the new dynamic tags are not created by default.
-          ['binutils_version>=223', {
-            # Newer binutils don't set DT_RPATH unless you disable "new" dtags
-            # and the new DT_RUNPATH doesn't work without --no-as-needed flag.
-            # FIXME(mithro): Figure out the --as-needed/--no-as-needed flags
-            # inside this file to allow usage of --no-as-needed and removal of
-            # this flag.
-            'ldflags': [
-              '-Wl,--disable-new-dtags',
-            ],
-          }],
           ['gcc_version>=47 and clang==0', {
             'target_conditions': [
               ['_toolset=="target"', {

M gnu/packages/qt.scm => gnu/packages/qt.scm +10 -17
@@ 108,7 108,16 @@ X11 (yet).")
             (sha256
               (base32
                 "1by2l8wxbqwvs7anb5ggmqhn2cfmhyw3a23bp1yyd240rdpa38ky"))
             (patches (list (search-patch "qt5-runpath.patch")))))
             (modules '((guix build utils)))
             (snippet
              ;; Remove qtwebengine, which relies on a bundled copy of
              ;; chromium. Not only does it fail compilation in qt 5.5:
              ;;    3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc:362:10:
              ;;    error: cannot convert ‘bool’ to ‘boolean’ in return
              ;; it might also pose security problems.
              ;; Alternatively, we could use the "-skip qtwebengine"
              ;; configuration option.
              '(delete-file-recursively "qtwebengine"))))
    (build-system gnu-build-system)
    (propagated-inputs
     `(("mesa" ,mesa)))


@@ 158,8 167,6 @@ X11 (yet).")
     `(("bison" ,bison)
       ("flex" ,flex)
       ("gperf" ,gperf)
       ;; Ninja is only needed for the disabled qtwebengine
;;        ("ninja" ,ninja)
       ("perl" ,perl)
       ("pkg-config" ,pkg-config)
       ("python" ,python-2)


@@ 175,14 182,6 @@ X11 (yet).")
                (("/bin/pwd") (which "pwd")))
              (substitute* "qtbase/src/corelib/global/global.pri"
                (("/bin/ls") (which "ls")))
              ;; commented out since qtwebengine is not built, but left in
              ;; for reference
;;               (substitute* "qtwebengine/src/3rdparty/chromium/build/common.gypi"
;;                 (("/bin/echo") (which "echo")))
;;               (substitute* "qtwebengine/src/3rdparty/chromium/third_party/\
;; WebKit/Source/build/scripts/scripts.gypi"
;;                 (("/usr/bin/gcc") (which "gcc")))
;;               (setenv "NINJA_PATH" (which "ninja"))
              ;; do not pass "--enable-fast-install", which makes the
              ;; configure process fail
              (zero? (system*


@@ 196,12 195,6 @@ X11 (yet).")
                      "-openssl-linked"
                      ;; explicitly link with dbus instead of dlopening it
                      "-dbus-linked"
                      ;; drop chromium module (qtwebengine); it fails
                      ;; compilation in qt 5.5:
                      ;; 3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc:362:10:
                      ;; error: cannot convert ‘bool’ to ‘boolean’ in return
                      ;; and might pose security problems.
                      "-skip" "qtwebengine"
                      ;; drop special machine instructions not supported
                      ;; on all instances of the target
                      ,@(if (string-prefix? "x86_64"