diff options
Diffstat (limited to 'gnu/packages/qt.scm')
-rw-r--r-- | gnu/packages/qt.scm | 46 |
1 files changed, 28 insertions, 18 deletions
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index ce5ab656a5..ab390d37de 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -108,7 +108,23 @@ X11 (yet).") (sha256 (base32 "1by2l8wxbqwvs7anb5ggmqhn2cfmhyw3a23bp1yyd240rdpa38ky")) - (patches (list (search-patch "qt5-runpath.patch"))))) + (modules '((guix build utils))) + (snippet + '(begin + ;; 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") + ;; Remove one of the two bundled harfbuzz copies in addition + ;; to passing "-system-harfbuzz". + (delete-file-recursively "qtbase/src/3rdparty/harfbuzz-ng") + ;; Remove the bundled sqlite copy in addition to + ;; passing "-system-sqlite". + (delete-file-recursively "qtbase/src/3rdparty/sqlite"))))) (build-system gnu-build-system) (propagated-inputs `(("mesa" ,mesa))) @@ -158,8 +174,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 +189,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* @@ -191,17 +197,14 @@ X11 (yet).") "-prefix" out "-opensource" "-confirm-license" + ;; Most "-system-..." are automatic, but some use + ;; the bundled copy by default. "-system-sqlite" + "-system-harfbuzz" ;; explicitly link with openssl instead of dlopening it "-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" @@ -243,7 +246,11 @@ developers using C++ or QML, a CSS & JavaScript like language.") (base32 "183fca7n7439nlhxyg1z7aky0izgbyll3iwakw4gwivy16aj5272")) (patches (map search-patch - '("qt4-ldflags.patch" "qt4-tests.patch"))))) + '("qt4-ldflags.patch"))) + (modules '((guix build utils))) + (snippet + ;; Remove webkit module, which is not built. + '(delete-file-recursively "src/3rdparty/webkit")))) (inputs `(,@(alist-delete "harfbuzz" (alist-delete "libjpeg" (package-inputs qt))) ("libjepg" ,libjpeg-8) @@ -288,6 +295,9 @@ developers using C++ or QML, a CSS & JavaScript like language.") "-confirm-license" ;; explicitly link with dbus instead of dlopening it "-dbus-linked" + ;; Skip the webkit module; it fails to build on armhf + ;; and, apart from that, may pose security risks. + "-no-webkit" ;; drop special machine instructions not supported ;; on all instances of the target ,@(if (string-prefix? "x86_64" |