[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
10/20: gnu: base: Build glibc-hurd for i586-pc-gnu instead of i686-pc-gn
From: |
Manolis Fragkiskos Ragkousis |
Subject: |
10/20: gnu: base: Build glibc-hurd for i586-pc-gnu instead of i686-pc-gnu. |
Date: |
Thu, 11 Feb 2016 13:38:16 +0000 |
phant0mas pushed a commit to branch wip-hurd
in repository guix.
commit f69fd15973a1ea3e5d41afce9ab86b4dad93d28d
Author: Manolis Ragkousis <address@hidden>
Date: Mon Jun 29 19:12:51 2015 +0300
gnu: base: Build glibc-hurd for i586-pc-gnu instead of i686-pc-gnu.
With this commit "guix build bootstrap-tarballs --target=i586-pc-gnu"
produces working static binaries.
* gnu/packages/base.scm (glibc/hurd, glibc/hurd-headers): Change i686-pc-gnu
to i586-pc-gnu.
* gnu/packages/cross-base.scm (cross-libc): Same.
* gnu/packages/hurd.scm (gnumach-headers, hurd-headers): Same.
* gnu/packages/patches/glibc-hurd-libs.patch: New patch.
---
gnu/packages/base.scm | 9 ++++++---
gnu/packages/cross-base.scm | 2 +-
gnu/packages/hurd.scm | 6 ++++--
gnu/packages/patches/glibc-hurd-libs.patch | 24 ++++++++++++++++++++++++
4 files changed, 35 insertions(+), 6 deletions(-)
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 66f8f8d..94fc6c1 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -690,7 +690,10 @@ with the Linux kernel.")
(arguments
(substitute-keyword-arguments (package-arguments glibc/linux)
((#:configure-flags original-configure-flags)
- `(append (list "--host=i686-pc-gnu"
+ `(append (list "--host=i586-pc-gnu"
+
+ ;; We need this to get a working openpty() function.
+ "--enable-pt_chown"
;; nscd fails to build for GNU/Hurd:
;;
<https://lists.gnu.org/archive/html/bug-hurd/2014-07/msg00006.html>.
@@ -714,7 +717,7 @@ with the Linux kernel.")
"Return the glibc for TARGET, GLIBC/LINUX for a Linux host or
GLIBC/HURD for a Hurd host"
(match target
- ("i686-pc-gnu" glibc/hurd)
+ ("i586-pc-gnu" glibc/hurd)
(_ glibc/linux)))
(define-syntax glibc
@@ -835,7 +838,7 @@ command.")
;; We just pass the flags really needed to build the headers.
((#:configure-flags _)
`(list "--enable-add-ons"
- "--host=i686-pc-gnu"
+ "--host=i586-pc-gnu"
"--enable-obsolete-rpc"))
((#:phases _)
'(alist-replace
diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 3e4d60d..30f39c3 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -402,7 +402,7 @@ XBINUTILS and the cross tool chain."
;; Choose libc based on target
(match target
- ("i686-pc-gnu"
+ ("i586-pc-gnu"
(package (inherit glibc/hurd)
(name (string-append "glibc-hurd-cross-" target))
(arguments
diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm
index f7ac771..1e79197 100644
--- a/gnu/packages/hurd.scm
+++ b/gnu/packages/hurd.scm
@@ -58,7 +58,9 @@
;; least install its headers when not cross-compiling.
,@(if (%current-target-system)
'()
- '(#:configure-flags '("--build=i686-pc-gnu")))
+ ;; See
<http://lists.gnu.org/archive/html/bug-hurd/2015-06/msg00042.html>
+ ;;
<http://lists.gnu.org/archive/html/guix-devel/2015-06/msg00716.html>
+ '(#:configure-flags '("--build=i586-pc-gnu")))
#:tests? #f))
(home-page
"https://www.gnu.org/software/hurd/microkernel/mach/gnumach.html")
(synopsis "GNU Mach kernel headers")
@@ -126,7 +128,7 @@ communication.")
;; that.
,@(if (%current-target-system)
'()
- '("--host=i686-pc-gnu"))
+ '("--host=i586-pc-gnu"))
;; Reduce set of dependencies.
"--disable-ncursesw"
diff --git a/gnu/packages/patches/glibc-hurd-libs.patch
b/gnu/packages/patches/glibc-hurd-libs.patch
index cae1a40..2102f77 100644
--- a/gnu/packages/patches/glibc-hurd-libs.patch
+++ b/gnu/packages/patches/glibc-hurd-libs.patch
@@ -17,3 +17,27 @@ See
<http://lists.gnu.org/archive/html/bug-hurd/2011-03/msg00112.html>
mv -f address@hidden $@
endif
+
+hurd-i386 defines NO_HIDDEN, thus __GI_* versions are not available.
+This was introduced by
+https://sourceware.org/bugzilla/show_bug.cgi?id=15605
+
+See <http://lists.gnu.org/archive/html/bug-hurd/2015-06/msg00046.html>.
+
+---
+ symbol-hacks.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+Index: eglibc-2.18/sysdeps/generic/symbol-hacks.h
+===================================================================
+--- eglibc-2.18.orig/sysdeps/generic/symbol-hacks.h 2013-06-15
17:37:04.000000000 +0000
++++ eglibc-2.18/sysdeps/generic/symbol-hacks.h 2013-10-10 06:28:31.000000000
+0000
+@@ -1,6 +1,9 @@
+ /* Some compiler optimizations may transform loops into memset/memmove
+ calls and without proper declaration it may generate PLT calls. */
+ #if !defined __ASSEMBLER__ && !defined NOT_IN_libc && defined SHARED
++#include <config.h>
++# if !defined NO_HIDDEN
+ asm ("memmove = __GI_memmove");
+ asm ("memset = __GI_memset");
++# endif
+ #endif
- branch wip-hurd created (now adce9bf), Manolis Fragkiskos Ragkousis, 2016/02/11
- 01/20: gnu: base: Add glibc-hurd and hurd-minimal., Manolis Fragkiskos Ragkousis, 2016/02/11
- 02/20: gnu: cross-base: Add support to cross-build libc for GNU/Hurd., Manolis Fragkiskos Ragkousis, 2016/02/11
- 03/20: gnu: cross-base: Make it aware of non-Linux (ie. Hurd) systems., Manolis Fragkiskos Ragkousis, 2016/02/11
- 04/20: gnu: gcc: Also substitute the dynamic linker name for GNU (ie. Hurd) systems., Manolis Fragkiskos Ragkousis, 2016/02/11
- 05/20: gnu: hurd: Pass --build to gnumach-headers when not cross building., Manolis Fragkiskos Ragkousis, 2016/02/11
- 06/20: gnu: hurd: Pass --build to hurd-headers when not cross building., Manolis Fragkiskos Ragkousis, 2016/02/11
- 07/20: gnu: base: Updated glibc-hurd to 2.19 and removed patches., Manolis Fragkiskos Ragkousis, 2016/02/11
- 08/20: gnu: base: Added glibc-for-target macro., Manolis Fragkiskos Ragkousis, 2016/02/11
- 09/20: gnu: cross-base: Build the correct cross-mig., Manolis Fragkiskos Ragkousis, 2016/02/11
- 10/20: gnu: base: Build glibc-hurd for i586-pc-gnu instead of i686-pc-gnu.,
Manolis Fragkiskos Ragkousis <=
- 11/20: gnu: make-bootstrap: Produce the correct %glibc-bootstrap-tarball for Hurd systems., Manolis Fragkiskos Ragkousis, 2016/02/11
- 12/20: gnu: base: Disable bogus code in Hurd's glibc., Manolis Fragkiskos Ragkousis, 2016/02/11
- 13/20: gnu: hurd: Add hurd-kernel-headers package., Manolis Fragkiskos Ragkousis, 2016/02/11
- 14/20: gnu: glibc/hurd: Use hurd-kernel-headers package., Manolis Fragkiskos Ragkousis, 2016/02/11
- 15/20: gnu: cross-gcc, cross-libc: Use hurd-kernel-headers., Manolis Fragkiskos Ragkousis, 2016/02/11
- 16/20: gnu: base: Add libmachuser.so and libhurduser.so to libc.so's search path., Manolis Fragkiskos Ragkousis, 2016/02/11
- 17/20: gnu: glibc/hurd: Make glibc aware of "--with-headers" argument., Manolis Fragkiskos Ragkousis, 2016/02/11
- 18/20: gnu: commencement: Add support for a native GNU/Hurd system., Manolis Fragkiskos Ragkousis, 2016/02/11
- 19/20: gnu: glibc-hurd: Update to 20151031., Manolis Fragkiskos Ragkousis, 2016/02/11
- 20/20: gnu: glibc/linux: Rename linux-headers input to kernel-headers., Manolis Fragkiskos Ragkousis, 2016/02/11