Merge branch 'master' into core-updates
authorMark H Weaver <mhw@netris.org>
Sun, 6 Nov 2016 08:29:06 +0000 (03:29 -0500)
committerMark H Weaver <mhw@netris.org>
Sun, 6 Nov 2016 08:29:06 +0000 (03:29 -0500)
22 files changed:
1  2 
gnu/local.mk
gnu/packages/admin.scm
gnu/packages/audio.scm
gnu/packages/base.scm
gnu/packages/cdrom.scm
gnu/packages/cross-base.scm
gnu/packages/fonts.scm
gnu/packages/games.scm
gnu/packages/gnome.scm
gnu/packages/ibus.scm
gnu/packages/image.scm
gnu/packages/libidn.scm
gnu/packages/make-bootstrap.scm
gnu/packages/maths.scm
gnu/packages/networking.scm
gnu/packages/pdf.scm
gnu/packages/python.scm
gnu/packages/statistics.scm
gnu/packages/video.scm
gnu/packages/w3m.scm
gnu/packages/web.scm
gnu/packages/webkit.scm

diff --cc gnu/local.mk
@@@ -5,8 -5,8 +5,9 @@@
  # Copyright © 2013, 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
  # Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
  # Copyright © 2016 Kei Kebreau <kei@openmailbox.org>
 +# Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
  # Copyright © 2016 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@openmailbox.org>
+ # Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
  #
  # This file is part of GNU Guix.
  #
@@@ -791,13 -805,9 +794,12 @@@ dist_patch_DATA =                                                
    %D%/packages/patches/python-2.7-source-date-epoch.patch     \
    %D%/packages/patches/python-3-deterministic-build-info.patch        \
    %D%/packages/patches/python-3-search-paths.patch            \
 +  %D%/packages/patches/python-3.4-fix-tests.patch             \
 +  %D%/packages/patches/python-3.5-fix-tests.patch             \
    %D%/packages/patches/python-dendropy-exclude-failing-tests.patch \
 -  %D%/packages/patches/python-disable-ssl-test.patch          \
 +  %D%/packages/patches/python-file-double-encoding-bug.patch  \
    %D%/packages/patches/python-fix-tests.patch                 \
-   %D%/packages/patches/python-ipython-inputhook-ctype.patch   \
 +  %D%/packages/patches/python-parse-too-many-fields.patch     \
    %D%/packages/patches/python-rarfile-fix-tests.patch         \
    %D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch        \
    %D%/packages/patches/python-statsmodels-fix-tests.patch     \
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -24,9 -23,7 +24,8 @@@
    #:use-module (gnu packages)
    #:use-module (gnu packages gcc)
    #:use-module (gnu packages base)
-   #:use-module (gnu packages commencement)
    #:use-module (gnu packages linux)
 +  #:use-module (gnu packages hurd)
    #:use-module (guix packages)
    #:use-module (guix download)
    #:use-module (guix utils)
@@@ -323,235 -319,59 +322,209 @@@ GCC that does not target a libc; otherw
                         ("cross-binutils" ,xbinutils)
                         ,@(package-native-inputs linux-libre-headers)))))
  
 -  (package (inherit glibc)
 -    (name (string-append "glibc-cross-" target))
 -    (arguments
 -     (substitute-keyword-arguments
 -         `(;; Disable stripping (see above.)
 -           #:strip-binaries? #f
 +  (define xgnumach-headers
 +    (package (inherit gnumach-headers)
 +      (name (string-append (package-name gnumach-headers)
 +                           "-cross-" target))
 +
 +      (native-inputs `(("cross-gcc" ,xgcc)
 +                       ("cross-binutils" ,xbinutils)
 +                       ,@(package-native-inputs gnumach-headers)))))
 +
 +  (define xmig
 +    (package (inherit mig)
 +      (name (string-append "mig-cross"))
 +      (arguments
 +       `(#:modules ((guix build gnu-build-system)
 +                    (guix build utils)
 +                    (srfi srfi-26))
 +         #:phases (alist-cons-before
 +                   'configure 'set-cross-headers-path
 +                   (lambda* (#:key inputs #:allow-other-keys)
 +                     (let* ((mach (assoc-ref inputs "cross-gnumach-headers"))
 +                            (cpath (string-append mach "/include")))
 +                       (for-each (cut setenv <> cpath)
 +                                 '("CROSS_C_INCLUDE_PATH"
 +                                   "CROSS_CPLUS_INCLUDE_PATH"
 +                                   "CROSS_OBJC_INCLUDE_PATH"
 +                                   "CROSS_OBJCPLUS_INCLUDE_PATH"))))
 +                   %standard-phases)
 +         #:configure-flags (list ,(string-append "--target=" target))
 +         ,@(package-arguments mig)))
 +
 +      (propagated-inputs `(("cross-gnumach-headers" ,xgnumach-headers)))
 +      (native-inputs `(("cross-gcc" ,xgcc)
 +                       ("cross-binutils" ,xbinutils)
 +                       ,@(package-native-inputs mig)))))
 +
 +  (define xhurd-headers
 +    (package (inherit hurd-headers)
 +      (name (string-append (package-name hurd-headers)
 +                           "-cross-" target))
  
 -           ;; This package is used as a target input, but it should not have
 -           ;; the usual cross-compilation inputs since that would include
 -           ;; itself.
 -           #:implicit-cross-inputs? #f
 +      (propagated-inputs `(("cross-mig" ,xmig)))
 +      (native-inputs `(("cross-gcc" ,xgcc)
 +                       ("cross-binutils" ,xbinutils)
 +                       ("cross-mig" ,xmig)
 +                       ,@(alist-delete "mig"(package-native-inputs hurd-headers))))))
 +
 +   (define xglibc/hurd-headers
 +    (package (inherit glibc/hurd-headers)
 +      (name (string-append (package-name glibc/hurd-headers)
 +                           "-cross-" target))
  
 -           ;; We need SRFI 26.
 -           #:modules ((guix build gnu-build-system)
 +      (arguments
 +       (substitute-keyword-arguments
 +           `(#:modules ((guix build gnu-build-system)
 +                        (guix build utils)
 +                        (srfi srfi-26))
 +             ,@(package-arguments glibc/hurd-headers))
 +         ((#:phases phases)
 +          `(alist-cons-before
 +            'pre-configure 'set-cross-headers-path
 +            (lambda* (#:key inputs #:allow-other-keys)
 +              (let* ((mach (assoc-ref inputs "gnumach-headers"))
 +                     (hurd (assoc-ref inputs "hurd-headers"))
 +                     (cpath (string-append mach "/include:"
 +                                           hurd "/include")))
 +                (for-each (cut setenv <> cpath)
 +                          '("CROSS_C_INCLUDE_PATH"
 +                            "CROSS_CPLUS_INCLUDE_PATH"
 +                            "CROSS_OBJC_INCLUDE_PATH"
 +                            "CROSS_OBJCPLUS_INCLUDE_PATH"))))
 +            ,phases))))
 +
 +      (propagated-inputs `(("gnumach-headers" ,xgnumach-headers)
 +                           ("hurd-headers" ,xhurd-headers)))
 +
 +      (native-inputs `(("cross-gcc" ,xgcc)
 +                       ("cross-binutils" ,xbinutils)
 +                       ("cross-mig" ,xmig)
 +                       ,@(alist-delete "mig"(package-native-inputs glibc/hurd-headers))))))
 +
 +  (define xhurd-minimal
 +    (package (inherit hurd-minimal)
 +      (name (string-append (package-name hurd-minimal)
 +                           "-cross-" target))
 +      (arguments
 +       (substitute-keyword-arguments
 +         `(#:modules ((guix build gnu-build-system)
                        (guix build utils)
                        (srfi srfi-26))
 +           ,@(package-arguments hurd-minimal))
 +         ((#:phases phases)
 +          `(alist-cons-before
 +            'configure 'set-cross-headers-path
 +            (lambda* (#:key inputs #:allow-other-keys)
 +              (let* ((glibc-headers (assoc-ref inputs "cross-glibc-hurd-headers"))
 +                    (cpath (string-append glibc-headers "/include")))
 +                (for-each (cut setenv <> cpath)
 +                          '("CROSS_C_INCLUDE_PATH"
 +                            "CROSS_CPLUS_INCLUDE_PATH"
 +                            "CROSS_OBJC_INCLUDE_PATH"
 +                            "CROSS_OBJCPLUS_INCLUDE_PATH"))))
 +            ,phases))))
  
 -           ,@(package-arguments glibc))
 -       ((#:configure-flags flags)
 -        `(cons ,(string-append "--host=" target)
 +      (inputs `(("cross-glibc-hurd-headers" ,xglibc/hurd-headers)))
 +
 +      (native-inputs `(("cross-gcc" ,xgcc)
 +                       ("cross-binutils" ,xbinutils)
 +                       ("cross-mig" ,xmig)
 +                       ,@(alist-delete "mig"(package-native-inputs hurd-minimal))))))
 +
 +  (define xhurd-core-headers
 +    (package (inherit hurd-core-headers)
 +      (name (string-append (package-name hurd-core-headers)
 +                           "-cross-" target))
 +
 +      (inputs `(("gnumach-headers" ,xgnumach-headers)
 +                ("hurd-headers" ,xhurd-headers)
 +                ("hurd-minimal" ,xhurd-minimal)))
 +
 +      (native-inputs `(("cross-gcc" ,xgcc)
 +                       ("cross-binutils" ,xbinutils)
 +                       ("cross-mig" ,xmig)
 +                       ,@(package-native-inputs hurd-core-headers)))))
 +
 +  (match target
 +    ((or "i586-pc-gnu" "i586-gnu") xhurd-core-headers)
 +    (_ xlinux-headers)))
 +
 +(define* (cross-libc target
 +                     #:optional
 +                     (xgcc (cross-gcc target))
 +                     (xbinutils (cross-binutils target))
 +                     (xheaders (cross-kernel-headers target)))
 +  "Return a libc cross-built for TARGET, a GNU triplet.  Use XGCC and
 +XBINUTILS and the cross tool chain."
 +  (define (cross-libc-for-target target)
 +    "Return libc depending on TARGET."
 +    (match target
 +      ((or "i586-pc-gnu" "i586-gnu") glibc/hurd)
 +      (_ glibc/linux)))
 +
 +  ;; Use (cross-libc-for-target ...) to determine the correct libc to use.
 +  (let ((libc (cross-libc-for-target target)))
 +    (package (inherit libc)
 +      (name (string-append "glibc-cross-" target))
 +      (arguments
 +       (substitute-keyword-arguments
 +           `(;; Disable stripping (see above.)
 +             #:strip-binaries? #f
 +
 +             ;; This package is used as a target input, but it should not have
 +             ;; the usual cross-compilation inputs since that would include
 +             ;; itself.
 +             #:implicit-cross-inputs? #f
 +
 +             ;; We need SRFI 26.
 +             #:modules ((guix build gnu-build-system)
 +                        (guix build utils)
 +                        (srfi srfi-26))
 +
 +             ,@(package-arguments libc))
 +         ((#:configure-flags flags)
 +          `(cons ,(string-append "--host=" target)
                 ,flags))
 -       ((#:phases phases)
 -        `(alist-cons-before
 -          'configure 'set-cross-kernel-headers-path
 -          (lambda* (#:key inputs #:allow-other-keys)
 -            (let* ((kernel (assoc-ref inputs "kernel-headers"))
 -                   (cpath (string-append kernel "/include")))
 -              (for-each (cut setenv <> cpath)
 -                        '("CROSS_C_INCLUDE_PATH"
 -                          "CROSS_CPLUS_INCLUDE_PATH"
 -                          "CROSS_OBJC_INCLUDE_PATH"
 -                          "CROSS_OBJCPLUS_INCLUDE_PATH"))
 -              #t))
 -          ,phases))))
 -
 -    ;; Shadow the native "kernel-headers" because glibc's recipe expects the
 -    ;; "kernel-headers" input to point to the right thing.
 -    (propagated-inputs `(("kernel-headers" ,xlinux-headers)))
 -
 -    ;; FIXME: 'static-bash' should really be an input, not a native input, but
 -    ;; to do that will require building an intermediate cross libc.
 -    (inputs '())
 +         ((#:phases phases)
 +          `(alist-cons-before
 +            'configure 'set-cross-kernel-headers-path
 +            (lambda* (#:key inputs #:allow-other-keys)
 +              (let* ((kernel (assoc-ref inputs "kernel-headers"))
 +                     (cpath (string-append kernel "/include")))
 +                (for-each (cut setenv <> cpath)
 +                          '("CROSS_C_INCLUDE_PATH"
 +                            "CROSS_CPLUS_INCLUDE_PATH"
 +                            "CROSS_OBJC_INCLUDE_PATH"
 +                            "CROSS_OBJCPLUS_INCLUDE_PATH"))
 +                (setenv "CROSS_LIBRARY_PATH"
 +                        (string-append kernel "/lib")) ;for Hurd's libihash
 +                #t))
 +            ,phases))))
  
 -    (native-inputs `(("cross-gcc" ,xgcc)
 -                     ("cross-binutils" ,xbinutils)
 -                     ,@(package-inputs glibc)     ;FIXME: static-bash
 -                     ,@(package-native-inputs glibc)))))
 +      ;; Shadow the native "kernel-headers" because glibc's recipe expects the
 +      ;; "kernel-headers" input to point to the right thing.
 +      (propagated-inputs `(("kernel-headers" ,xheaders)))
 +
 +      ;; FIXME: 'static-bash' should really be an input, not a native input, but
 +      ;; to do that will require building an intermediate cross libc.
 +      (inputs '())
 +
 +      (native-inputs `(("cross-gcc" ,xgcc)
 +                       ("cross-binutils" ,xbinutils)
 +                       ,@(if (string-match (or "i586-pc-gnu" "i586-gnu") target)
 +                             `(("cross-mig"
 +                                ,@(assoc-ref (package-native-inputs xheaders)
 +                                             "cross-mig")))
 +                             '())
 +                       ,@(package-inputs libc)     ;FIXME: static-bash
 +                       ,@(package-native-inputs libc))))))
  
  \f
- ;;;
- ;;; Concrete cross toolchains.
- ;;;
- (define-public xgcc-mips64el
-   (let* ((triplet "mips64el-linux-gnuabi64")      ;N64 ABI
-          (xgcc    (cross-gcc triplet
-                              (cross-binutils triplet)
-                              (cross-libc triplet))))
-     ;; Don't attempt to build this cross-compiler on i686;
-     ;; see <http://bugs.gnu.org/19598>.
-     (package (inherit xgcc)
-       (supported-systems (fold delete
-                                (package-supported-systems xgcc)
-                                '("mips64el-linux" "i686-linux"))))))
- (define-public xgcc-xtensa
-   ;; Bare-bones Xtensa cross-compiler, used to build the Atheros firmware.
-   (cross-gcc "xtensa-elf"))
- (define-public xgcc-armhf
-   (let* ((triplet "arm-linux-gnueabihf")
-          (xgcc    (cross-gcc triplet
-                              (cross-binutils triplet)
-                              (cross-libc triplet))))
-     (package (inherit xgcc)
-       (supported-systems (delete "armhf-linux" %supported-systems)))))
- ;; (define-public xgcc-armel
- ;;   (let ((triplet "armel-linux-gnueabi"))
+ ;;; Concrete cross tool chains are instantiated like this:
+ ;;
+ ;; (define-public xgcc-armhf
+ ;;   (let ((triplet "arm-linux-gnueabihf"))
  ;;     (cross-gcc triplet
  ;;                (cross-binutils triplet)
  ;;                (cross-libc triplet))))
@@@ -11,7 -11,7 +11,8 @@@
  ;;; Copyright © 2016 Jookia <166291@gmail.com>
  ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
  ;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com>
 +;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
+ ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -46,3 -47,38 +47,25 @@@ Java libraries."
     ;; the command line tool is gpl3+.
     (license (list gpl2+ gpl3+ lgpl3+ fdl1.3+))
     (home-page "http://www.gnu.org/software/libidn/")))
 -(define libidn-1.33
 -  (package
 -    (inherit libidn)
 -    (source
 -      (let ((version "1.33"))
 -        (origin
 -          (method url-fetch)
 -          (uri (string-append "mirror://gnu/libidn/libidn-" version
 -                              ".tar.gz"))
 -          (sha256
 -           (base32
 -            "068fjg2arlppjqqpzd714n1lf6gxkpac9v5yyvp1qwmv6nvam9s4")))))))
 -
+ (define-public libidn2
+   (package
+     (name "libidn2")
+     (version "0.11")
+     (source (origin
+               (method url-fetch)
+               (uri (string-append "ftp://alpha.gnu.org/gnu/libidn/libidn2-"
+                                   version ".tar.gz"))
+               (sha256
+                (base32
+                 "1zxzhzx14q2b1xkx746pz4lawvqd8d055yy84n52ndwb4pf7nfax"))))
+     (build-system gnu-build-system)
+     (synopsis "Internationalized domain name library for IDNA2008")
+     (description "Libidn2 is an internationalized domain library implementing
+ the IDNA2008 specifications.   Libidn2 is believed to be a complete IDNA2008
+ implementation, but has yet to be as extensively used as the original Libidn
+ library.")
+     (home-page "https://www.gnu.org/software/libidn/#libidn2")
+     ;; The command-line tool 'idn2' is GPL3+, while the library is dual-licensed
+     ;; GPL2+ or LGPL3+.
+     (license (list gpl2+ gpl3+ lgpl3+))))
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge