patches/glibc/2.9/470-alpha-glibc-2.8-creat.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jul 17 22:43:07 2011 +0200 (2011-07-17)
changeset 2893 a8a65758664f
parent 1201 c9967a6e3b25
permissions -rw-r--r--
cc/gcc: do not use the core pass-2 to build the baremetal compiler

In case we build a baremetal compiler, use the standard passes:
- core_cc is used to build the C library;
- as such, it is meant to run on build, not host;
- the final compiler is meant to run on host;

As the current final compiler step can not build a baremetal compiler,
call the core backend from the final step.

NB: Currently, newlib is built during the start_files pass, so we have
to have a core compiler by then... Once we can build the baremetal
compiler from the final cc step, then we can move the newlib build to
the proper step, and then get rid of the core pass-1 static compiler...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@1201
     1
Original patch from: gentoo/src/patchsets/glibc/2.9/6017_all_alpha-glibc-2.8-creat.patch
yann@1201
     2
yann@1201
     3
-= BEGIN original header =-
yann@1201
     4
alpha does not have a __NR_creat
yann@1201
     5
yann@1201
     6
http://bugs.gentoo.org/227275
yann@1201
     7
http://sourceware.org/bugzilla/show_bug.cgi?id=6650
yann@1201
     8
yann@1201
     9
-= END original header =-
yann@1201
    10
yann@1201
    11
diff -durN glibc-2_9.orig/sysdeps/unix/sysv/linux/wordsize-64/creat64.c glibc-2_9/sysdeps/unix/sysv/linux/wordsize-64/creat64.c
yann@1201
    12
--- glibc-2_9.orig/sysdeps/unix/sysv/linux/wordsize-64/creat64.c	2007-11-10 20:34:26.000000000 +0100
yann@1201
    13
+++ glibc-2_9/sysdeps/unix/sysv/linux/wordsize-64/creat64.c	2009-02-02 22:01:35.000000000 +0100
yann@1201
    14
@@ -1 +1,5 @@
yann@1201
    15
 /* Defined as alias for the syscall.  */
yann@1201
    16
+#include <sysdep.h>
yann@1201
    17
+#ifndef __NR_creat
yann@1201
    18
+#include "../../../../../io/creat64.c"
yann@1201
    19
+#endif