~ruther/guix-local

2442257f2d0ca5ef84915f88eeadd4c26cc84ee8 — Ludovic Courtès 12 years ago 1bb9900 + 7facbf2
Merge branch 'core-updates'
7 files changed, 45 insertions(+), 50 deletions(-)

M gnu-system.am
M gnu/packages/base.scm
M gnu/packages/m4.scm
A gnu/packages/patches/glibc-ldd-x86_64.patch
D gnu/packages/patches/m4-s_isdir.patch
M guix/build/utils.scm
M guix/scripts/pull.scm
M gnu-system.am => gnu-system.am +1 -1
@@ 210,6 210,7 @@ dist_patch_DATA =						\
  gnu/packages/patches/glib-tests-homedir.patch			\
  gnu/packages/patches/glib-tests-prlimit.patch			\
  gnu/packages/patches/glibc-bootstrap-system.patch		\
  gnu/packages/patches/glibc-ldd-x86_64.patch			\
  gnu/packages/patches/glibc-no-ld-so-cache.patch		\
  gnu/packages/patches/grub-gets-undeclared.patch		\
  gnu/packages/patches/guile-1.8-cpp-4.5.patch			\


@@ 221,7 222,6 @@ dist_patch_DATA =						\
  gnu/packages/patches/libtool-skip-tests.patch			\
  gnu/packages/patches/m4-gets-undeclared.patch			\
  gnu/packages/patches/m4-readlink-EINVAL.patch			\
  gnu/packages/patches/m4-s_isdir.patch				\
  gnu/packages/patches/make-impure-dirs.patch			\
  gnu/packages/patches/mcron-install.patch			\
  gnu/packages/patches/perl-no-sys-dirs.patch			\

M gnu/packages/base.scm => gnu/packages/base.scm +6 -4
@@ 387,14 387,14 @@ BFD (Binary File Descriptor) library, `gprof', `nm', `strip', etc.")
(define-public glibc
  (package
   (name "glibc")
   (version "2.17")
   (version "2.18")
   (source (origin
            (method url-fetch)
            (uri (string-append "mirror://gnu/glibc/glibc-"
                                version ".tar.xz"))
            (sha256
             (base32
              "0gmjnn4kma9vgizccw1jv979xw55a8n1nkk94gg0l3hy80vy6539"))))
              "18spla703zav8dq9fw7rbzkyv9qfisxb26p7amg1x3wjh7iy3d1c"))))
   (build-system gnu-build-system)

   ;; Glibc's <limits.h> refers to <linux/limit.h>, for instance, so glibc


@@ 409,7 409,8 @@ BFD (Binary File Descriptor) library, `gprof', `nm', `strip', etc.")

   (arguments
    `(#:out-of-source? #t
      #:patches (list (assoc-ref %build-inputs "patch/ld.so.cache"))
      #:patches (list (assoc-ref %build-inputs "patch/ld.so.cache")
                      (assoc-ref %build-inputs "patch/ldd"))
      #:configure-flags
      (list "--enable-add-ons"
            "--sysconfdir=/etc"


@@ 422,7 423,6 @@ BFD (Binary File Descriptor) library, `gprof', `nm', `strip', etc.")
                           (assoc-ref %outputs "locales")
                           "/share/locale")


            (string-append "--with-headers="
                           (assoc-ref %build-inputs "linux-headers")
                           "/include")


@@ 496,6 496,8 @@ BFD (Binary File Descriptor) library, `gprof', `nm', `strip', etc.")

   (inputs `(("patch/ld.so.cache"
              ,(search-patch "glibc-no-ld-so-cache.patch"))
             ("patch/ldd"
              ,(search-patch "glibc-ldd-x86_64.patch"))
             ("static-bash" ,(static-package bash-light))))
   (synopsis "The GNU C Library")
   (description

M gnu/packages/m4.scm => gnu/packages/m4.scm +6 -10
@@ 26,14 26,14 @@
(define-public m4
  (package
   (name "m4")
   (version "1.4.16")
   (version "1.4.17")
   (source (origin
            (method url-fetch)
            (uri (string-append "mirror://gnu/m4/m4-"
                                version ".tar.bz2"))
            (sha256
             (base32
              "035r7ma272j2cwni2961jp22k6bn3n9xwn3b3qbcn2yrvlghql22"))))
              "0w0da1chh12mczxa5lnwzjk9czi3dq6gnnndbpa6w4rj76b1yklf"))))
   (build-system gnu-build-system)
   (arguments
    ;; XXX: Disable tests on those platforms with know issues.


@@ 41,10 41,8 @@
                             '("x86_64-darwin"
                               "i686-cygwin"
                               "i686-sunos")))
      #:patches (list (assoc-ref %build-inputs "patch/s_isdir")
                      (assoc-ref %build-inputs
                                 "patch/readlink-EINVAL")
                      (assoc-ref %build-inputs "patch/gets"))
      #:patches (list (assoc-ref %build-inputs
                                 "patch/readlink-EINVAL"))
      #:phases (alist-cons-before
                'check 'pre-check
                (lambda* (#:key inputs #:allow-other-keys)


@@ 57,10 55,8 @@
                      (("/bin/sh")
                       (format #f "~a/bin/bash" bash)))))
                %standard-phases)))
   (inputs `(("patch/s_isdir" ,(search-patch "m4-s_isdir.patch"))
             ("patch/readlink-EINVAL"
              ,(search-patch "m4-readlink-EINVAL.patch"))
             ("patch/gets" ,(search-patch "m4-gets-undeclared.patch"))))
   (inputs `(("patch/readlink-EINVAL"
              ,(search-patch "m4-readlink-EINVAL.patch"))))
   (synopsis "Macro processor")
   (description
    "GNU M4 is an implementation of the traditional Unix macro processor.  It

A gnu/packages/patches/glibc-ldd-x86_64.patch => gnu/packages/patches/glibc-ldd-x86_64.patch +10 -0
@@ 0,0 1,10 @@
By default, 'RTDLLIST' in 'ldd' refers to 'lib64/ld-linux-x86-64.so', whereas
it's in 'lib/' for us.  This patch fixes that.

--- glibc-2.17/sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed	2012-12-25 04:02:13.000000000 +0100
+++ glibc-2.17/sysdeps/unix/sysv/linux/x86_64/ldd-rewrite.sed	2013-09-15 23:08:03.000000000 +0200
@@ -1,3 +1,3 @@
 /LD_TRACE_LOADED_OBJECTS=1/a\
 add_env="$add_env LD_LIBRARY_VERSION=\\$verify_out"
-s_^\(RTLDLIST=\)\(.*lib\)\(\|64\|x32\)\(/[^/]*\)\(-x86-64\|-x32\)\(\.so\.[0-9.]*\)[ 	]*$_\1"\2\4\6 \264\4-x86-64\6 \2x32\4-x32\6"_
+s_^\(RTLDLIST=\)\(.*lib\)\(\|64\|x32\)\(/[^/]*\)\(-x86-64\|-x32\)\(\.so\.[0-9.]*\)[ 	]*$_\1"\2\4\6 \2\4-x86-64\6 \2x32\4-x32\6"_

D gnu/packages/patches/m4-s_isdir.patch => gnu/packages/patches/m4-s_isdir.patch +0 -14
@@ 1,14 0,0 @@
Fails to build with glibc 2.12.1 without this patch.

http://lists.gnu.org/archive/html/bug-m4/2010-05/msg00002.html

--- a/src/path.c
+++ b/src/path.c
@@ -22,6 +22,7 @@
 /* Handling of path search of included files via the builtins "include"
    and "sinclude".  */
 
 #include "m4.h"
+#include "sys/stat.h"
 
 struct includes

M guix/build/utils.scm => guix/build/utils.scm +21 -18
@@ 185,29 185,32 @@ but ignore errors."
                    lstat))

(define (find-files dir regexp)
  "Return the list of files under DIR whose basename matches REGEXP."
  "Return the lexicographically sorted list of files under DIR whose basename
matches REGEXP."
  (define file-rx
    (if (regexp? regexp)
        regexp
        (make-regexp regexp)))

  (file-system-fold (const #t)
                    (lambda (file stat result)    ; leaf
                      (if (regexp-exec file-rx (basename file))
                          (cons file result)
                          result))
                    (lambda (dir stat result)     ; down
                      result)
                    (lambda (dir stat result)     ; up
                      result)
                    (lambda (file stat result)    ; skip
                      result)
                    (lambda (file stat errno result)
                      (format (current-error-port) "find-files: ~a: ~a~%"
                              file (strerror errno))
                      #f)
                    '()
                    dir))
  ;; Sort the result to get deterministic results.
  (sort (file-system-fold (const #t)
                          (lambda (file stat result)   ; leaf
                            (if (regexp-exec file-rx (basename file))
                                (cons file result)
                                result))
                          (lambda (dir stat result)    ; down
                            result)
                          (lambda (dir stat result)    ; up
                            result)
                          (lambda (file stat result)   ; skip
                            result)
                          (lambda (file stat errno result)
                            (format (current-error-port) "find-files: ~a: ~a~%"
                                    file (strerror errno))
                            #f)
                          '()
                          dir)
        string<?))


;;;

M guix/scripts/pull.scm => guix/scripts/pull.scm +1 -3
@@ 115,9 115,7 @@ files."
                   ;; download), we must build it first to avoid errors since
                   ;; (gnutls) is unavailable.
                   (cons (string-append out "/guix/build/download.scm")

                         ;; Sort the file names to get deterministic results.
                         (sort (find-files out "\\.scm") string<?)))
                         (find-files out "\\.scm")))

         ;; Remove the "fake" (guix config).
         (delete-file (string-append out "/guix/config.scm"))