Merge branch 'master' into core-updates
[jackhill/guix/guix.git] / gnu / packages / base.scm
index 92b94dc..606e59b 100644 (file)
@@ -89,14 +89,14 @@ lines.")
 (define-public sed
   (package
    (name "sed")
-   (version "4.2.1")
+   (version "4.2.2")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnu/sed/sed-" version
                                 ".tar.bz2"))
             (sha256
              (base32
-              "13wlsb4sf5d5a82xjhxqmdvrrn36rmw5f0pl9qyb9zkvldnb7hra"))))
+              "1myvrmh99jsvk7v3d7crm0gcrq51hmmm1r2kjyyci152in1x2j7h"))))
    (build-system gnu-build-system)
    (synopsis "GNU sed, a batch stream editor")
    (arguments
@@ -264,14 +264,14 @@ The tools supplied with this package are:
 (define-public coreutils
   (package
    (name "coreutils")
-   (version "8.20")
+   (version "8.21")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnu/coreutils/coreutils-"
                                 version ".tar.xz"))
             (sha256
              (base32
-              "1cly97xdy3v4nbbx631k43smqw0nnpn651kkprs0yyl2cj3pkjyv"))))
+              "064f512185iysqqcvhnhaf3bfmzrvcgs7n405qsyp99zmfyl9amd"))))
    (build-system gnu-build-system)
    (inputs `(("acl"  ,acl)
              ("gmp"  ,gmp)
@@ -343,14 +343,14 @@ that it is possible to use Make to build and install the program.")
 (define-public binutils
   (package
    (name "binutils")
-   (version "2.22")
+   (version "2.23.1")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnu/binutils/binutils-"
                                 version ".tar.bz2"))
             (sha256
              (base32
-              "1a9w66v5dwvbnawshjwqcgz7km6kw6ihkzp6sswv9ycc3knzhykc"))))
+              "06bs5v5ndb4g5qx96d52lc818gkbskd1m0sz57314v887sqfbcia"))))
    (build-system gnu-build-system)
 
    ;; Split Binutils in several outputs, mostly to avoid collisions in
@@ -368,7 +368,11 @@ that it is possible to use Make to build and install the program.")
                           "LDFLAGS=-static-libgcc"
 
                           ;; Don't search under /usr/lib & co.
-                          "--with-lib-path=/no-ld-lib-path")))
+                          "--with-lib-path=/no-ld-lib-path"
+
+                          ;; Glibc 2.17 has a "comparison of unsigned
+                          ;; expression >= 0 is always true" in wchar.h.
+                          "--disable-werror")))
 
    (synopsis "GNU Binutils, tools for manipulating binaries (linker,
 assembler, etc.)")
@@ -396,13 +400,28 @@ BFD (Binary File Descriptor) library, `gprof', `nm', `strip', etc.")
    ;; users should automatically pull Linux headers as well.
    (propagated-inputs `(("linux-headers" ,linux-libre-headers)))
 
+   ;; Store the locales separately (~100 MiB).  Note that "out" retains a
+   ;; reference to them anyway, so there's no space savings here.
+   ;; TODO: Eventually we may want to add a $LOCALE_ARCHIVE search path like
+   ;; Nixpkgs does.
+   (outputs '("out" "locales"))
+
    (arguments
     `(#:out-of-source? #t
       #:patches (list (assoc-ref %build-inputs "patch/ld.so.cache"))
       #:configure-flags
       (list "--enable-add-ons"
             "--sysconfdir=/etc"
-            "--localedir=/var/run/current-system/sw/lib/locale" ; XXX
+            (string-append "--localedir=" (assoc-ref %outputs "locales")
+                           "/share/locale")
+
+            ;; `--localedir' is not honored, so work around it.
+            ;; See <http://sourceware.org/ml/libc-alpha/2013-03/msg00093.html>.
+            (string-append "libc_cv_localedir="
+                           (assoc-ref %outputs "locales")
+                           "/share/locale")
+
+
             (string-append "--with-headers="
                            (assoc-ref %build-inputs "linux-headers")
                            "/include")
@@ -468,7 +487,12 @@ BFD (Binary File Descriptor) library, `gprof', `nm', `strip', etc.")
                     (substitute* "libio/iopopen.c"
                       (("/bin/sh")
                        (string-append out "/bin/bash")))))
-                %standard-phases)))
+                (alist-cons-after
+                 'install 'install-locales
+                 (lambda _
+                   (zero? (system* "make" "localedata/install-locales")))
+                 %standard-phases))))
+
    (inputs `(("patch/ld.so.cache"
               ,(search-patch "glibc-no-ld-so-cache.patch"))
              ("static-bash" ,(static-package bash-light))))
@@ -571,7 +595,8 @@ identifier SYSTEM."
         #:implicit-inputs? #f
         ,@(substitute-keyword-arguments (package-arguments binutils)
             ((#:configure-flags cf)
-             `(list ,(string-append "--target=" (boot-triplet)))))))
+             `(cons ,(string-append "--target=" (boot-triplet))
+                    ,cf)))))
      (inputs %boot0-inputs))))
 
 (define gcc-boot0