guix-devel
[Top][All Lists]
Advanced

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

[PATCH] gnu: kde: Add kdelibs.


From: Andreas Enge
Subject: [PATCH] gnu: kde: Add kdelibs.
Date: Tue, 4 Nov 2014 22:37:54 +0100
User-agent: Mutt/1.5.23 (2014-03-12)

Hello,

thanks to Ludovic's help with debugging Qt and dbus, I finally have a working
recipe for kdelibs that allows me to compile the KDE "Hello, world"
tutorial at
  https://techbase.kde.org/Development/Tutorials/First_program

It looks like all KDE programs require at least kdelibs, qt, phonon and
automoc4 to compile; but as these are not needed for running the program,
it seems inappropriate to make them propagated inputs.

The configure flags
   "-DCMAKE_SHARED_LINKER_FLAGS=-lQtNetwork -lQtXml"
   "-DCMAKE_EXE_LINKER_FLAGS=-lQtCore"
look like bugs in kdelibs to me; but I wonder if reporting them makes sense.
I sense the answer that we should simply keep Qt in a standard location...

Quite a few of the tests fail, and already the first one (which is a simple
compression and archiver test) hangs at 100% CPU before being killed after
1500s. I can try to run all the tests and see whether there is some useful
output. Otherwise hunting down the test failures looks hopeless.

Comments are welcome.

Andreas


* gnu/packages/kde.scm (kdelibs): New variable.
---
 gnu/packages/kde.scm | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 98 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm
index 8c2673e..602f5fb 100644
--- a/gnu/packages/kde.scm
+++ b/gnu/packages/kde.scm
@@ -17,14 +17,22 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (gnu packages kde)
-  #:use-module ((guix licenses) #:select (bsd-2 lgpl2.0+ lgpl2.1 lgpl2.1+ 
lgpl3+))
+  #:use-module ((guix licenses) #:select (bsd-2 lgpl2.0 lgpl2.0+ lgpl2.1 
lgpl2.1+ lgpl3+))
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system cmake)
+  #:use-module (gnu packages bison)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages docbook)
   #:use-module (gnu packages doxygen)
+  #:use-module (gnu packages flex)
   #:use-module (gnu packages geeqie)
   #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
+  #:use-module (gnu packages image)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages openssl)
+  #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pulseaudio)
@@ -225,3 +233,92 @@ calculation of sha1 for every file crawled
     (synopsis "oxygen icon theme for the KDE desktop")
     (description "KDE desktop environment")
     (license lgpl3+)))
+
+(define-public kdelibs
+  (package
+    (name "kdelibs")
+    (version "4.14.2")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "http://download.kde.org/stable/"; version
+                                "/src/" name "-"
+                                 version ".tar.xz"))
+             (sha256
+              (base32
+               "0nw9zl54wdzw26l9l1a520ykjqgrzc1dx9aa6y015k0ry1vmlx1r"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("attica" ,attica)
+       ("automoc4" ,automoc4)
+       ("bison" ,bison)
+       ("docbook-xml" ,docbook-xml)
+       ("docbook-xsl" ,docbook-xsl)
+       ("flex" ,flex)
+       ("giflib" ,giflib)
+       ("libdbusmenu-qt" ,libdbusmenu-qt)
+       ("libice" ,libice)
+       ("libjpeg" ,libjpeg-8)
+       ("libpng" ,libpng)
+       ("libsm" ,libsm)
+       ("libx11" ,libx11)
+       ("libxau" ,libxau)
+       ("libxcomposite" ,libxcomposite)
+       ("libxcursor" ,libxcursor)
+       ("libxdamage" ,libxdamage)
+       ("libxdmcp" ,libxdmcp)
+       ("libxext" ,libxext)
+       ("libxfixes" ,libxfixes)
+       ("libxft" ,libxft)
+       ("libxi" ,libxi)
+       ("libxinerama" ,libxinerama)
+       ("libxkbfile" ,libxkbfile)
+       ("libxml2" ,libxml2)
+       ("libxpm" ,libxpm)
+       ("libxrandr" ,libxrandr)
+       ("libxrender" ,libxrender)
+       ("libxscrnsaver" ,libxscrnsaver)
+       ("libxslt" ,libxslt)
+       ("libxt" ,libxt)
+       ("libxtst" ,libxtst)
+       ("libxv" ,libxv)
+       ("libxxf86vm" ,libxxf86vm)
+       ("openssl" ,openssl)
+       ("pcre" ,pcre)
+       ("perl" ,perl)
+       ("phonon" ,phonon)
+       ("python" ,python-wrapper)
+       ("qt" ,qt-4)
+       ("shared-mime-info" ,shared-mime-info)
+       ("soprano" ,soprano)
+       ("strigi" ,strigi)
+       ("eudev" ,eudev)
+       ("zlib" ,zlib)))
+    (arguments
+     `(#:tests? #f ; currently failing
+       #:configure-flags
+        (list "-DCMAKE_SHARED_LINKER_FLAGS=-lQtNetwork -lQtXml"
+              "-DCMAKE_EXE_LINKER_FLAGS=-lQtCore"
+              (string-append "-DDOCBOOKXML_CURRENTDTD_DIR="
+                             (assoc-ref %build-inputs "docbook-xml")
+                             "/xml/dtd/docbook/")
+              (let* ((docbook-xsl (assoc-ref %build-inputs "docbook-xsl"))
+                     (docbook-xsl-version ,(package-version docbook-xsl)))
+                    (string-append "-DDOCBOOKXSL_DIR="
+                                   docbook-xsl
+                                   "/xml/xsl/docbook-xsl-"
+                                   docbook-xsl-version
+                                   "/")))
+       #:phases
+        (alist-cons-before
+         'configure 'patch-bin-sh
+         (lambda _
+           (substitute* "cmake/modules/kde4_exec_via_sh.cmake"
+                        (("/bin/sh") (which "sh"))))
+         %standard-phases)))
+    (home-page "http://www.kde.org/";)
+    (synopsis "Main libraries for the KDE desktop")
+    (description "KDE desktop environment")
+    (license lgpl2.0))) ; the libraries; examples are under GPL
-- 
2.1.2




reply via email to

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