summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-12-13 18:08:18 +0100
committerLudovic Courtès <ludo@gnu.org>2013-12-13 18:09:01 +0100
commit1ae6df81dbf98956e489a7668d2280ad9c4d72e4 (patch)
treef3edd28cabde3c4b57e2a9fa768cd7f5f988db64
parent2e5728318b5bf2ebc7b373fac94fdd51a96a53ac (diff)
downloadguix-1ae6df81dbf98956e489a7668d2280ad9c4d72e4.tar.gz
gnu: icecat: Build without debugging symbols; use some of the system libs.
* gnu/packages/gnuzilla.scm (icecat): Add 'native-inputs'.  Add bzip2,
  libevent, libffi, and zlib as inputs.  Add #:configure-flags.  Change
  'configure' phase to honor it.
-rw-r--r--gnu/packages/gnuzilla.scm46
1 files changed, 41 insertions, 5 deletions
diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
index 9289e3745d..8a0e23e451 100644
--- a/gnu/packages/gnuzilla.scm
+++ b/gnu/packages/gnuzilla.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -29,6 +30,11 @@
   #:use-module (gnu packages linux)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages libevent)
+  #:use-module (gnu packages libjpeg)
+  #:use-module (gnu packages libpng)
+  #:use-module (gnu packages libffi)
   #:use-module (gnu packages python)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages yasm)
@@ -48,25 +54,55 @@
        (base32
         "1vxzjwmhad6yxx4sk9zvapjgv5salcv10id061q0991ii3dycy9a"))))
     (build-system gnu-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
     (inputs
      `(("alsa-lib" ,alsa-lib)
+       ("bzip2" ,bzip2)
        ("dbus" ,dbus)
        ("dbus-glib" ,dbus-glib)
        ("glib" ,glib)
        ("gstreamer" ,gstreamer-0.10)
        ("gst-plugins-base" ,gst-plugins-base-0.10)
        ("gtk+" ,gtk+-2)
+       ("libevent" ,libevent)
+       ;; ("libpng" ,libpng)
+       ;; ("libjpeg" ,libjpeg)
        ("libxt" ,libxt)
+       ("libffi" ,libffi)
        ("mesa" ,mesa)
        ("perl" ,perl)
-       ("pkg-config" ,pkg-config)
        ("python" ,python-2) ; Python 3 not supported
        ("python2-pysqlite" ,python2-pysqlite)
        ("unzip" ,unzip)
        ("yasm" ,yasm)
-       ("zip" ,zip)))
+       ("zip" ,zip)
+       ("zlib" ,zlib)))
     (arguments
      `(#:tests? #f ; no check target
+
+       #:configure-flags '(;; Building with debugging symbols takes ~5GiB, so
+                           ;; disable it.
+                           "--disable-debug"
+                           "--disable-debug-symbols"
+
+                           "--disable-webrtc"     ; webrtc fails to build
+
+                           "--with-system-zlib"
+                           "--with-system-bz2"    ; FIXME: not used
+                           "--with-system-libevent"
+
+                           ;; TODO: Currently fails with "--with-system-png
+                           ;; won't work because the system's libpng doesn't
+                           ;; have APNG support".
+                           ;; "--with-system-png"
+
+                           ;; TODO: Currently fails with "Insufficient JPEG
+                           ;; library version for --with-system-jpeg".
+                           ;; "--with-system-jpeg"
+
+                           "--enable-system-ffi")
+
        #:phases
          (alist-cons-before
           'patch-source-shebangs 'sanitise
@@ -84,9 +120,9 @@
             (let ((out (assoc-ref outputs "out")))
               (setenv "SHELL" (which "bash"))
               (setenv "CONFIG_SHELL" (which "bash"))
-              (zero? (system* "./configure"
-                              (string-append "--prefix=" out)
-                              "--disable-webrtc")))) ; webrtc creates an error
+              (zero? (apply system* "./configure"
+                            (string-append "--prefix=" out)
+                            configure-flags))))
           %standard-phases))))
     (home-page "http://www.gnu.org/software/gnuzilla/")
     (synopsis "Entirely free browser derived from Mozilla Firefox")