~ruther/guix-local

751702676e0dcf39657082138f45340b65ae4d3e — Manolis Ragkousis 9 years ago 8e5652f
guix: build: make-bootstrap: Copy "falloc.h" to the new system.

In glibc-2.25 a dependency on "linux/falloc.h" was added.
This also reverts commit 8f8f250bdca917b3ce38aa0902f01b19081859a4
which is no longer needed. This commit was not compatible with
the glibc version Hurd is using. See
<https://lists.gnu.org/archive/html/guix-devel/2017-02/msg01046.html>

* guix/build/make-bootstrap.scm (make-stripped-libc): Copy "falloc.h"
to the new system.
* gnu/packages/patches/glibc-bootstrap-system.patch: Remove part
that touches fcntl-linux.h.

Problem reported by Andreas Enge <andreas@enge.fr>.
2 files changed, 2 insertions(+), 24 deletions(-)

M gnu/packages/patches/glibc-bootstrap-system.patch
M guix/build/make-bootstrap.scm
M gnu/packages/patches/glibc-bootstrap-system.patch => gnu/packages/patches/glibc-bootstrap-system.patch +1 -23
@@ 3,10 3,6 @@ and popen(3) need to be tweaked to use the right shell.  For the bootstrap
glibc, we just use whatever `sh' can be found in $PATH.  The final glibc
instead uses the hard-coded absolute file name of `bash'.

The second part that touches fcntl-linux.h reverts a change from glibc-2.25
which would require the statically compiled glibc used in bootstrapping to
depend on the linux kernel headers.

--- a/sysdeps/posix/system.c
+++ b/sysdeps/posix/system.c
@@ -134,7 +134,7 @@ do_system (const char *line)


@@ 31,22 27,4 @@ depend on the linux kernel headers.
     }
   _IO_close (child_end);

--- a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
+++ b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
@@ -318,7 +318,15 @@ struct f_owner_ex
 
  
 /* Flags for fallocate.  */
+# define FALLOC_FL_KEEP_SIZE           1 /* Don't extend size of file
+                                            even if offset + len is
+                                            greater than file size.  */
+# define FALLOC_FL_PUNCH_HOLE          2 /* Create a hole in the file.  */
+# define FALLOC_FL_COLLAPSE_RANGE      8 /* Remove a range of a file
+                                            without leaving a
+                                            hole.  */
+# define FALLOC_FL_ZERO_RANGE          16 /* Convert a range of a
+                                             file to zeros.  */
-# include <linux/falloc.h>
 
  
 /* File handle structure.  */


M guix/build/make-bootstrap.scm => guix/build/make-bootstrap.scm +1 -1
@@ 55,7 55,7 @@ when producing a bootstrap libc."
                                (string-append incdir "/linux")))
                '("limits.h" "errno.h" "socket.h" "kernel.h"
                  "sysctl.h" "param.h" "ioctl.h" "types.h"
                  "posix_types.h" "stddef.h"))
                  "posix_types.h" "stddef.h" "falloc.h"))

      (copy-recursively (string-append kernel-headers "/include/asm")
                        (string-append incdir "/asm"))