From bc554b43d6ed26b6601ce881e9171cb31c082231 Mon Sep 17 00:00:00 2001 From: Andreas Enge Date: Sun, 4 Oct 2015 19:08:13 +0200 Subject: [PATCH] gnu: qt: Compile with system harfbuzz. * gnu/packages/qt.scm (qt)[source]: Add a snippet to remove one of the two bundled copies of harfbuzz. [arguments]: Pass a configure flag to use harfbuzz from the system. Partially fixes . --- gnu/packages/qt.scm | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 398e42c543..4f23b6398c 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -110,14 +110,18 @@ (define-public qt "1by2l8wxbqwvs7anb5ggmqhn2cfmhyw3a23bp1yyd240rdpa38ky")) (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")))) + '(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"))))) (build-system gnu-build-system) (propagated-inputs `(("mesa" ,mesa))) @@ -190,7 +194,10 @@ (define-public qt "-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