summaryrefslogtreecommitdiff
path: root/packages/glibc
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2008-07-25 01:12:06 +0000
committerKhem Raj <raj.khem@gmail.com>2008-07-25 01:12:06 +0000
commite96e82cd7ee95d712e2c68f2f9540bdfe727645b (patch)
tree39cdeb09343849bef85eba68c048b9f3b670ac9b /packages/glibc
parenta3e73146adce111fe67af0886a43acbf7a654bd7 (diff)
Change the toolchain build sequence. Helps in reproducable toolchains components when recompiled. Also same sequence for all different combinations (uclibc/nptl/eglibc/glibc/linuxthreads). Also fixes and patches that I worked to get various ancient compilers working.
Diffstat (limited to 'packages/glibc')
-rw-r--r--packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch30
-rw-r--r--packages/glibc/glibc-2.3.6/glibc-2.3.6-linuxthreads-pthread-raise.patch37
-rw-r--r--packages/glibc/glibc-2.3.6/glibc-arm-socket-weakalias.patch45
-rw-r--r--packages/glibc/glibc-2.3.6/glibc-cross_sunrpc.patch79
-rw-r--r--packages/glibc/glibc-2.3.6/glibc-memusage.patch44
-rw-r--r--packages/glibc/glibc-2.3.6/glibc-rtld-libcc-eh.patch25
-rw-r--r--packages/glibc/glibc-2.7/.mtn2git_empty0
-rw-r--r--packages/glibc/glibc-2.7/all_glibc-i586-chk.patch33
-rw-r--r--packages/glibc/glibc-initial.inc14
-rw-r--r--packages/glibc/glibc-initial_2.5.bb2
-rw-r--r--packages/glibc/glibc-intermediate.inc12
-rw-r--r--packages/glibc/glibc-intermediate_2.3.2+cvs20040726.bb6
-rw-r--r--packages/glibc/glibc-intermediate_2.3.6.bb2
-rw-r--r--packages/glibc/glibc-intermediate_2.4.bb4
-rw-r--r--packages/glibc/glibc-intermediate_2.5.bb7
-rw-r--r--packages/glibc/glibc-intermediate_2.6.1.bb8
-rw-r--r--packages/glibc/glibc-intermediate_2.7.bb8
-rw-r--r--packages/glibc/glibc-intermediate_cvs.bb6
-rw-r--r--packages/glibc/glibc-stage.inc7
-rw-r--r--packages/glibc/glibc.inc6
-rw-r--r--packages/glibc/glibc_2.2.5.bb2
-rw-r--r--packages/glibc/glibc_2.3.2+cvs20040726.bb2
-rw-r--r--packages/glibc/glibc_2.3.2.bb2
-rw-r--r--packages/glibc/glibc_2.3.3+cvs20041128.bb2
-rw-r--r--packages/glibc/glibc_2.3.3+cvs20050221.bb2
-rw-r--r--packages/glibc/glibc_2.3.3+cvs20050420.bb2
-rw-r--r--packages/glibc/glibc_2.3.3.bb2
-rw-r--r--packages/glibc/glibc_2.3.5+cvs20050627.bb2
-rw-r--r--packages/glibc/glibc_2.3.6.bb11
-rw-r--r--packages/glibc/glibc_2.4.bb2
-rw-r--r--packages/glibc/glibc_2.5.bb3
-rw-r--r--packages/glibc/glibc_2.6.1.bb3
-rw-r--r--packages/glibc/glibc_2.7.bb6
-rw-r--r--packages/glibc/glibc_cvs.bb2
34 files changed, 334 insertions, 84 deletions
diff --git a/packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch b/packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch
new file mode 100644
index 0000000000..6979229279
--- /dev/null
+++ b/packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch
@@ -0,0 +1,30 @@
+Source: http://sourceware.org/ml/libc-alpha/2008-01/msg00017.html
+
+I am checking this x86 assembler patch:
+
+http://sourceware.org/ml/binutils/2008-01/msg00148.html
+
+to check operand size. fnstsw stores 16bit into %ax. The upper
+16bit of %eax is unchanged. The new assembler will disallow
+"fnstsw %eax". Here is a patch for glibc.
+
+
+H.J.
+
+---
+ sysdeps/i386/fpu/ftestexcept.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: glibc-2.6.1/sysdeps/i386/fpu/ftestexcept.c
+===================================================================
+--- glibc-2.6.1.orig/sysdeps/i386/fpu/ftestexcept.c 2008-07-19 11:00:45.000000000 -0700
++++ glibc-2.6.1/sysdeps/i386/fpu/ftestexcept.c 2008-07-19 11:01:25.000000000 -0700
+@@ -26,7 +26,7 @@
+ int
+ fetestexcept (int excepts)
+ {
+- int temp;
++ short temp;
+ int xtemp = 0;
+
+ /* Get current exceptions. */
diff --git a/packages/glibc/glibc-2.3.6/glibc-2.3.6-linuxthreads-pthread-raise.patch b/packages/glibc/glibc-2.3.6/glibc-2.3.6-linuxthreads-pthread-raise.patch
new file mode 100644
index 0000000000..dae5db3846
--- /dev/null
+++ b/packages/glibc/glibc-2.3.6/glibc-2.3.6-linuxthreads-pthread-raise.patch
@@ -0,0 +1,37 @@
+--- glibc-2.3.6/linuxthreads/sysdeps/unix/sysv/linux/raise.c.org 2008-07-16 22:57:58.000000000 -0700
++++ glibc-2.3.6/linuxthreads/sysdeps/unix/sysv/linux/raise.c 2008-07-16 22:58:26.000000000 -0700
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 1991, 1996, 2002, 2003 Free Software Foundation, Inc.
++/* Copyright (C) 1991, 1996, 2002, 2003, 2005 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -18,10 +18,13 @@
+
+ #include <signal.h>
+ #include <unistd.h>
+-#include <bits/libc-lock.h>
+
+-#ifndef SHARED
++#ifndef IS_IN_rtld
++# include <bits/libc-lock.h>
++
++# ifndef SHARED
+ weak_extern (__pthread_raise)
++# endif
+ #endif
+
+ /* Raise the signal SIG. */
+@@ -29,8 +32,12 @@ int
+ raise (sig)
+ int sig;
+ {
++#ifdef IS_IN_rtld
++ return __kill (__getpid (), sig);
++#else
+ return __libc_maybe_call2 (pthread_raise, (sig),
+ __kill (__getpid (), sig));
++#endif
+ }
+ libc_hidden_def (raise)
+ weak_alias (raise, gsignal)
diff --git a/packages/glibc/glibc-2.3.6/glibc-arm-socket-weakalias.patch b/packages/glibc/glibc-2.3.6/glibc-arm-socket-weakalias.patch
new file mode 100644
index 0000000000..722365f122
--- /dev/null
+++ b/packages/glibc/glibc-2.3.6/glibc-arm-socket-weakalias.patch
@@ -0,0 +1,45 @@
+This one was taken from debian.
+
+# DP: Description: Fix __bind redefinition problem
+# DP: Related bugs:
+# DP: Dpatch author: Phil Blundell
+# DP: Patch author: Daniel Jacobowitz
+# DP: Upstream status: In CVS
+# DP: Status Details:
+# DP: Date: 2005-12-25
+
+Index: sysdeps/unix/sysv/linux/arm/socket.S
+===================================================================
+RCS file: /cvs/glibc/ports/sysdeps/unix/sysv/linux/arm/socket.S,v
+retrieving revision 1.12
+retrieving revision 1.13
+diff -u -r1.12 -r1.13
+--- glibc-2.3.6.ds1.orig/sysdeps/unix/sysv/linux/arm/socket.S 4 Dec 2004 21:20:16 -0000 1.12
++++ glibc-2.3.6.ds1/sysdeps/unix/sysv/linux/arm/socket.S 27 Oct 2005 18:50:12 -0000 1.13
+@@ -1,4 +1,6 @@
+-/* Copyright (C) 1995, 1996, 1997, 1998, 2003 Free Software Foundation, Inc.
++/* Copyright (C) 1995, 1996, 1997, 1998, 2003, 2004, 2005
++ Free Software Foundation, Inc.
++
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+@@ -32,7 +34,11 @@
+ The .S files for the other calls just #define socket and #include this. */
+
+ #ifndef __socket
++#ifndef NO_WEAK_ALIAS
+ #define __socket P(__,socket)
++#else
++#define __socket socket
++#endif
+ #endif
+
+ #define PUSHARGS_1 str a1, [sp, $-4]!
+@@ -120,4 +126,6 @@
+
+ PSEUDO_END (__socket)
+
++#ifndef NO_WEAK_ALIAS
+ weak_alias (__socket, socket)
++#endif
diff --git a/packages/glibc/glibc-2.3.6/glibc-cross_sunrpc.patch b/packages/glibc/glibc-2.3.6/glibc-cross_sunrpc.patch
new file mode 100644
index 0000000000..8e24a831b0
--- /dev/null
+++ b/packages/glibc/glibc-2.3.6/glibc-cross_sunrpc.patch
@@ -0,0 +1,79 @@
+Fix rpcsvc headers missing from glibc, also
+allows glibc to produce the rpc headers when cross compiling,
+And fix for glibc-bootstrap package doesn't currently build because the
+generated sunrpc headers are not available
+
+
+---
+ sunrpc/Makefile | 28 ++++++++++++++++++++++++----
+ 1 file changed, 24 insertions(+), 4 deletions(-)
+
+Index: glibc-2.3.6/sunrpc/Makefile
+===================================================================
+--- glibc-2.3.6.orig/sunrpc/Makefile 2005-07-17 20:03:49.000000000 -0700
++++ glibc-2.3.6/sunrpc/Makefile 2008-07-17 15:28:04.000000000 -0700
+@@ -75,6 +75,8 @@ install-sbin := rpcinfo
+ rpcgen-objs = rpc_main.o rpc_hout.o rpc_cout.o rpc_parse.o \
+ rpc_scan.o rpc_util.o rpc_svcout.o rpc_clntout.o \
+ rpc_tblout.o rpc_sample.o
++host-rpcgen-objs = $(addprefix host-,$(rpcgen-objs))
++
+ # These headers are part of rpcgen.
+ distribute := proto.h rpc_util.h rpc_parse.h rpc_scan.h \
+ $(rpcgen-objs:.o=.c) etc.rpc \
+@@ -98,8 +100,8 @@ otherlibs += $(nssobjdir)/libnss_files.a
+ $(resolvobjdir)/libresolv.a
+ endif
+
+-ifeq (no,$(cross-compiling))
+-# We can only build this library if we can run the rpcgen we build.
++ifneq (,$(findstring subdir_install,$(MAKECMDGOALS)))
++## We can only build this library if we can run the rpcgen we build.
+ headers += $(rpcsvc:%.x=rpcsvc/%.h)
+ extra-libs := librpcsvc
+ extra-libs-others := librpcsvc # Make it in `others' pass, not `lib' pass.
+@@ -144,8 +146,26 @@ cpp-srcs-left := $(rpcgen-objs:.o=.c)
+ lib := nonlib
+ include $(patsubst %,$(..)cppflags-iterator.mk,$(cpp-srcs-left))
+
++# Rely on the target rpcgen objects for dependency information.
++$(objpfx)host-%.o: %.c $(objpfx)%.o
++ $(patsubst %/,cd % &&,$(objpfx)) \
++ $(BUILD_CC) $($(basename $(<F))-CFLAGS) \
++ -I$(shell cd .. && pwd) \
++ -Dattribute_hidden= \
++ -include $(shell cd ../include && pwd)/libintl.h \
++ -O2 $(ALL_BUILD_CFLAGS) $(shell pwd)/$(<F) -c -o $(@F)
++
++$(objpfx)host-rpcgen: $(addprefix $(objpfx),$(host-rpcgen-objs))
++ $(BUILD_CC) $(BUILD_CFLAGS) $+ -o $(objpfx)host-rpcgen
++
+ # Tell rpcgen where to find the C preprocessor.
++ifeq ($(cross-compiling),no)
+ rpcgen-cmd = CPP='$(CC) -E -x c-header' $(built-program-cmd) -Y ../scripts
++rpcgen-prog = $(objpfx)rpcgen
++else
++rpcgen-cmd = CPP='$(CC) -E -x c-header' $(objpfx)host-rpcgen -Y ../scripts
++rpcgen-prog = $(objpfx)host-rpcgen
++endif
+
+ # Install the rpc data base file.
+ $(inst_sysconfdir)/rpc: etc.rpc $(+force)
+@@ -156,7 +176,7 @@ $(inst_sysconfdir)/rpc: etc.rpc $(+force
+ # relinked.
+ $(rpcsvc:%.x=$(objpfx)rpcsvc/%.h): $(objpfx)rpcsvc/%.h: $(objpfx)rpcsvc/%.stmp
+ @:
+-$(objpfx)rpcsvc/%.stmp: rpcsvc/%.x $(objpfx)rpcgen
++$(objpfx)rpcsvc/%.stmp: rpcsvc/%.x $(rpcgen-prog)
+ $(make-target-directory)
+ -@rm -f ${@:stmp=T} $@
+ $(rpcgen-cmd) -h $< -o ${@:stmp=T}
+@@ -166,7 +186,7 @@ $(objpfx)rpcsvc/%.stmp: rpcsvc/%.x $(obj
+ # Generate the rpcsvc XDR functions with rpcgen.
+ $(rpcsvc:%.x=$(objpfx)x%.c): $(objpfx)x%.c: $(objpfx)x%.stmp
+ @:
+-$(objpfx)x%.stmp: rpcsvc/%.x $(objpfx)rpcgen
++$(objpfx)x%.stmp: rpcsvc/%.x $(rpcgen-prog)
+ -@rm -f ${@:stmp=T} $@
+ $(rpcgen-cmd) -c $< -o ${@:stmp=T}
+ $(move-if-change) $(@:stmp=T) $(@:stmp=c)
diff --git a/packages/glibc/glibc-2.3.6/glibc-memusage.patch b/packages/glibc/glibc-2.3.6/glibc-memusage.patch
new file mode 100644
index 0000000000..39ca1a77b5
--- /dev/null
+++ b/packages/glibc/glibc-2.3.6/glibc-memusage.patch
@@ -0,0 +1,44 @@
+---
+ malloc/Makefile | 4 +++-
+ malloc/memusage.sh | 6 ++++++
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+Index: glibc-2.3.6/malloc/Makefile
+===================================================================
+--- glibc-2.3.6.orig/malloc/Makefile 2008-07-17 14:40:54.000000000 -0700
++++ glibc-2.3.6/malloc/Makefile 2008-07-17 14:42:07.000000000 -0700
+@@ -80,7 +80,7 @@ ifneq ($(cross-compiling),yes)
+ ifneq ($(LIBGD),no)
+ install-bin = memusagestat
+ install-bin-script += memusage
+-generated += memusagestat memusage
++generated += memusagestat
+ extra-objs += memusagestat.o
+
+ # The configure.in check for libgd and its headers did not use $SYSINCLUDES.
+@@ -90,6 +90,8 @@ extra-objs += memusagestat.o
+ $(objpfx)memusagestat.o: sysincludes = # nothing
+ endif
+ endif
++install-bin-script += memusage
++generated += memusage
+
+ # Another goal which can be used to override the configure decision.
+ .PHONY: do-memusagestat
+Index: glibc-2.3.6/malloc/memusage.sh
+===================================================================
+--- glibc-2.3.6.orig/malloc/memusage.sh 2008-07-17 14:42:17.000000000 -0700
++++ glibc-2.3.6/malloc/memusage.sh 2008-07-17 14:42:54.000000000 -0700
+@@ -205,6 +205,12 @@ if test $# -eq 0; then
+ do_usage
+ fi
+
++# Find memusagestat.
++if test -n "$png" -a ! -x $memusagestat; then
++ echo >&2 $"PNG generation is not supported."
++ png=""
++fi
++
+ # This will be in the environment.
+ add_env="LD_PRELOAD=$memusageso"
+
diff --git a/packages/glibc/glibc-2.3.6/glibc-rtld-libcc-eh.patch b/packages/glibc/glibc-2.3.6/glibc-rtld-libcc-eh.patch
new file mode 100644
index 0000000000..a3658f4cd6
--- /dev/null
+++ b/packages/glibc/glibc-2.3.6/glibc-rtld-libcc-eh.patch
@@ -0,0 +1,25 @@
+---
+ elf/Makefile | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+Index: glibc-2.3.6/elf/Makefile
+===================================================================
+--- glibc-2.3.6.orig/elf/Makefile 2008-07-17 01:10:39.000000000 -0700
++++ glibc-2.3.6/elf/Makefile 2008-07-17 01:17:18.000000000 -0700
+@@ -279,7 +279,7 @@ $(objpfx)rtld-libc.a: $(objpfx)librtld.m
+ $(MAKE) -f $< -f rtld-Rules
+
+ $(objpfx)librtld.os: $(objpfx)dl-allobjs.os $(objpfx)rtld-libc.a
+- $(LINK.o) -nostdlib -nostartfiles -r -o $@ '-Wl,-(' $^ -lgcc '-Wl,-)' \
++ $(LINK.o) -nostdlib -nostartfiles -r -o $@ '-Wl,-(' $^ -lgcc -lgcc_eh '-Wl,-)' \
+ -Wl,-Map,$@.map
+
+ generated += librtld.map librtld.mk rtld-libc.a librtld.os.map
+@@ -295,6 +295,7 @@ $(objpfx)ld.so: $(objpfx)librtld.os $(ld
+ -e 's/\. = 0 + SIZEOF_HEADERS;/& _begin = . - SIZEOF_HEADERS;/' \
+ > $@.lds
+ $(LINK.o) -nostdlib -nostartfiles -shared -o $@ \
++ -lgcc -lgcc_eh \
+ $(LDFLAGS-rtld) -Wl,-z,defs $(z-now-$(bind-now)) \
+ $(filter-out $(map-file),$^) $(load-map-file) \
+ -Wl,-soname=$(rtld-installed-name) -T $@.lds
diff --git a/packages/glibc/glibc-2.7/.mtn2git_empty b/packages/glibc/glibc-2.7/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/glibc/glibc-2.7/.mtn2git_empty
diff --git a/packages/glibc/glibc-2.7/all_glibc-i586-chk.patch b/packages/glibc/glibc-2.7/all_glibc-i586-chk.patch
new file mode 100644
index 0000000000..9362bcaf17
--- /dev/null
+++ b/packages/glibc/glibc-2.7/all_glibc-i586-chk.patch
@@ -0,0 +1,33 @@
+http://bugs.gentoo.org/199479
+
+2007-09-13 H.J. Lu <hongjiu.lu@intel.com>
+
+ * sysdeps/i386/i586/memcpy_chk.S: New file.
+ * sysdeps/i386/i586/mempcpy_chk.S: Likewise.
+ * sysdeps/i386/i586/memset_chk.S: Likewise.
+
+Index: glibc/sysdeps/i386/i586/memcpy_chk.S
+===================================================================
+RCS file: sysdeps/i386/i586/memcpy_chk.S
+diff -N sysdeps/i386/i586/memcpy_chk.S
+--- /dev/null 1 Jan 1970 00:00:00 -0000
++++ glibc/sysdeps/i386/i586/memcpy_chk.S 13 Nov 2007 01:56:18 -0000 1.1
+@@ -0,0 +1 @@
++#include <sysdeps/i386/i686/memcpy_chk.S>
+Index: glibc/sysdeps/i386/i586/mempcpy_chk.S
+===================================================================
+RCS file: sysdeps/i386/i586/mempcpy_chk.S
+diff -N sysdeps/i386/i586/mempcpy_chk.S
+--- /dev/null 1 Jan 1970 00:00:00 -0000
++++ glibc/sysdeps/i386/i586/mempcpy_chk.S 13 Nov 2007 01:56:18 -0000 1.1
+@@ -0,0 +1 @@
++#include <sysdeps/i386/i686/mempcpy_chk.S>
+Index: glibc/sysdeps/i386/i586/memset_chk.S
+===================================================================
+RCS file: sysdeps/i386/i586/memset_chk.S
+diff -N sysdeps/i386/i586/memset_chk.S
+--- /dev/null 1 Jan 1970 00:00:00 -0000
++++ glibc/sysdeps/i386/i586/memset_chk.S 13 Nov 2007 01:56:18 -0000 1.1
+@@ -0,0 +1 @@
++#include <sysdeps/i386/i686/memset_chk.S>
+
diff --git a/packages/glibc/glibc-initial.inc b/packages/glibc/glibc-initial.inc
index 0e5db2e729..143a662d52 100644
--- a/packages/glibc/glibc-initial.inc
+++ b/packages/glibc/glibc-initial.inc
@@ -1,5 +1,5 @@
SECTION = "libs"
-DEPENDS = "linux-libc-headers"
+DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial linux-libc-headers"
PROVIDES = "virtual/${TARGET_PREFIX}libc-initial"
FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/glibc-2.4', '${FILE_DIRNAME}/glibc', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}"
@@ -9,7 +9,8 @@ PACKAGES_DYNAMIC = ""
do_configure () {
sed -ie 's,{ (exit 1); exit 1; }; },{ (exit 0); }; },g' ${S}/configure
chmod +x ${S}/configure
- CC="${BUILD_CC}" CPP="${BUILD_CPP}" LD="${BUILD_LD}" ${S}/configure --host=${TARGET_SYS} --build=${BUILD_SYS} \
+ find ${S} -name "configure" | xargs touch
+ ${S}/configure --host=${TARGET_SYS} --build=${BUILD_SYS} \
--without-cvs --disable-sanity-checks \
--with-headers=${STAGING_DIR_TARGET}${layout_includedir} \
--enable-hacker-mode
@@ -30,8 +31,11 @@ do_compile () {
}
do_stage () {
- oe_runmake cross-compiling=yes install_root=${STAGING_DIR_HOST} includedir='${layout_includedir}' prefix='${layout_prefix}' install-headers
+ oe_runmake cross-compiling=yes install_root=${STAGING_DIR_HOST} \
+ includedir='${layout_includedir}' prefix='${layout_prefix}' \
+ install-bootstrap-headers=yes install-headers
+ oe_runmake csu/subdir_lib
# Two headers -- stubs.h and features.h -- aren't installed by install-headers,
# so do them by hand. We can tolerate an empty stubs.h for the moment.
# See e.g. http://gcc.gnu.org/ml/gcc/2002-01/msg00900.html
@@ -42,6 +46,10 @@ do_stage () {
if [ -e ${B}/bits/stdio_lim.h ]; then
cp ${B}/bits/stdio_lim.h ${STAGING_INCDIR}/bits/
fi
+ mkdir -p ${STAGING_DIR_TARGET}${layout_libdir}
+ install -m 644 csu/crt[1in].o ${STAGING_DIR_TARGET}${layout_libdir}
+ ${CC} -nostdlib -nostartfiles -shared -x c /dev/null \
+ -o ${STAGING_DIR_TARGET}${layout_libdir}/libc.so
}
do_install () {
diff --git a/packages/glibc/glibc-initial_2.5.bb b/packages/glibc/glibc-initial_2.5.bb
index 44f5775fd7..35c9febcce 100644
--- a/packages/glibc/glibc-initial_2.5.bb
+++ b/packages/glibc/glibc-initial_2.5.bb
@@ -5,7 +5,7 @@ do_configure () {
sed -ie 's,{ (exit 1); exit 1; }; },{ (exit 0); }; },g' ${S}/configure
chmod +x ${S}/configure
unset CFLAGS
- CC="${BUILD_CC}" CPP="${BUILD_CPP}" LD="${BUILD_LD}" ${S}/configure --host=${TARGET_SYS} --build=${BUILD_SYS} \
+ ${S}/configure --host=${TARGET_SYS} --build=${BUILD_SYS} \
--without-cvs --disable-sanity-checks \
--with-headers=${STAGING_INCDIR} \
--enable-hacker-mode
diff --git a/packages/glibc/glibc-intermediate.inc b/packages/glibc/glibc-intermediate.inc
deleted file mode 100644
index c226d8658d..0000000000
--- a/packages/glibc/glibc-intermediate.inc
+++ /dev/null
@@ -1,12 +0,0 @@
-SECTION = "libs"
-PACKAGES = ""
-PACKAGES_DYNAMIC = ""
-PROVIDES = "virtual/${TARGET_PREFIX}libc-for-gcc"
-DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial linux-libc-headers"
-
-do_install () {
- :
-}
-
-GLIBC_ADDONS = "nptl,ports"
-GLIBC_EXTRA_OECONF = ""
diff --git a/packages/glibc/glibc-intermediate_2.3.2+cvs20040726.bb b/packages/glibc/glibc-intermediate_2.3.2+cvs20040726.bb
deleted file mode 100644
index aba5ac0451..0000000000
--- a/packages/glibc/glibc-intermediate_2.3.2+cvs20040726.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require glibc_${PV}.bb
-require glibc-intermediate.inc
-
-DEFAULT_PREFERENCE_sh3 = "-99"
-
-GLIBC_ADDONS = "linuxthreads"
diff --git a/packages/glibc/glibc-intermediate_2.3.6.bb b/packages/glibc/glibc-intermediate_2.3.6.bb
deleted file mode 100644
index f7113ba04c..0000000000
--- a/packages/glibc/glibc-intermediate_2.3.6.bb
+++ /dev/null
@@ -1,2 +0,0 @@
-require glibc_${PV}.bb
-require glibc-intermediate.inc
diff --git a/packages/glibc/glibc-intermediate_2.4.bb b/packages/glibc/glibc-intermediate_2.4.bb
deleted file mode 100644
index e1c7ecfbd1..0000000000
--- a/packages/glibc/glibc-intermediate_2.4.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-require glibc_${PV}.bb
-require glibc-intermediate.inc
-
-DEFAULT_PREFERENCE = "-1"
diff --git a/packages/glibc/glibc-intermediate_2.5.bb b/packages/glibc/glibc-intermediate_2.5.bb
deleted file mode 100644
index 661a69a10d..0000000000
--- a/packages/glibc/glibc-intermediate_2.5.bb
+++ /dev/null
@@ -1,7 +0,0 @@
-require glibc_${PV}.bb
-require glibc-intermediate.inc
-
-# gcc uses -Werror which break on a "you have no thumb interwork" _warning_
-do_configure_prepend() {
- sed -i s:-Werror:: ${S}/configure
-}
diff --git a/packages/glibc/glibc-intermediate_2.6.1.bb b/packages/glibc/glibc-intermediate_2.6.1.bb
deleted file mode 100644
index 05d6250783..0000000000
--- a/packages/glibc/glibc-intermediate_2.6.1.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-require glibc_${PV}.bb
-require glibc-intermediate.inc
-
-# gcc uses -Werror which break on a "you have no thumb interwork" _warning_
-do_configure_prepend() {
- sed -i s:-Werror:: ${S}/configure
-}
-
diff --git a/packages/glibc/glibc-intermediate_2.7.bb b/packages/glibc/glibc-intermediate_2.7.bb
deleted file mode 100644
index 05d6250783..0000000000
--- a/packages/glibc/glibc-intermediate_2.7.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-require glibc_${PV}.bb
-require glibc-intermediate.inc
-
-# gcc uses -Werror which break on a "you have no thumb interwork" _warning_
-do_configure_prepend() {
- sed -i s:-Werror:: ${S}/configure
-}
-
diff --git a/packages/glibc/glibc-intermediate_cvs.bb b/packages/glibc/glibc-intermediate_cvs.bb
deleted file mode 100644
index ad615a1911..0000000000
--- a/packages/glibc/glibc-intermediate_cvs.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require glibc_${PV}.bb
-require glibc-intermediate.inc
-
-DEFAULT_PREFERENCE = "-1"
-
-GLIBC_ADDONS = "linuxthreads"
diff --git a/packages/glibc/glibc-stage.inc b/packages/glibc/glibc-stage.inc
index 46220d7831..2b7b303c14 100644
--- a/packages/glibc/glibc-stage.inc
+++ b/packages/glibc/glibc-stage.inc
@@ -3,7 +3,7 @@ do_stage() {
oe_runmake 'install_root=${STAGING_DIR_HOST}' \
'includedir=${layout_includedir}' 'libdir=${layout_libdir}' 'slibdir=${layout_base_libdir}' \
'${STAGING_DIR_HOST}${layout_base_libdir}/libc.so.6' \
- install-headers install-lib
+ install
install -d ${STAGING_INCDIR}/gnu \
${STAGING_INCDIR}/bits \
@@ -15,9 +15,4 @@ do_stage() {
h=`echo $r|sed -e's,\.x$,.h,'`
install -m 0644 ${S}/sunrpc/rpcsvc/$h ${STAGING_INCDIR}/rpcsvc/
done
- for i in libc.a libc_pic.a libc_nonshared.a; do
- install -m 0644 ${B}/$i ${STAGING_DIR_HOST}/${layout_libdir}/ || die "failed to install $i"
- done
- echo 'GROUP ( ${layout_base_libdir}/libpthread.so.0 ${layout_libdir}/libpthread_nonshared.a )' > ${STAGING_DIR_HOST}/${layout_libdir}/libpthread.so
- echo 'GROUP ( ${layout_base_libdir}/libc.so.6 ${layout_libdir}/libc_nonshared.a )' > ${STAGING_DIR_HOST}/${layout_libdir}/libc.so
}
diff --git a/packages/glibc/glibc.inc b/packages/glibc/glibc.inc
index c8d2d3b16f..f677f62eaf 100644
--- a/packages/glibc/glibc.inc
+++ b/packages/glibc/glibc.inc
@@ -4,12 +4,12 @@ SECTION = "libs"
PRIORITY = "required"
LICENSE = "LGPL"
# nptl needs unwind support in gcc, which can't be built without glibc.
-DEPENDS = "${@['virtual/${TARGET_PREFIX}gcc-initial', 'virtual/${TARGET_PREFIX}gcc']['nptl' in '${GLIBC_ADDONS}']} linux-libc-headers"
+DEPENDS = "virtual/${TARGET_PREFIX}gcc-intermediate linux-libc-headers"
#this leads to circular deps, so lets not add it yet
#RDEPENDS_ldd += " bash"
# nptl needs libgcc but dlopens it, so our shlibs code doesn't detect this
-RDEPENDS += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}"
-PROVIDES = "virtual/libc ${@['virtual/${TARGET_PREFIX}libc-for-gcc', '']['nptl' in '${GLIBC_ADDONS}']}"
+#RDEPENDS += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}"
+PROVIDES = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc"
PROVIDES += "virtual/libintl virtual/libiconv"
inherit autotools
diff --git a/packages/glibc/glibc_2.2.5.bb b/packages/glibc/glibc_2.2.5.bb
index 4a94dac5b7..5afeb6421b 100644
--- a/packages/glibc/glibc_2.2.5.bb
+++ b/packages/glibc/glibc_2.2.5.bb
@@ -1,7 +1,7 @@
require glibc.inc
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs"
-PR = "r15"
+PR = "r16"
DEFAULT_PREFERENCE_sh3 = "-99"
diff --git a/packages/glibc/glibc_2.3.2+cvs20040726.bb b/packages/glibc/glibc_2.3.2+cvs20040726.bb
index 8beed8e8dc..d293d7a52d 100644
--- a/packages/glibc/glibc_2.3.2+cvs20040726.bb
+++ b/packages/glibc/glibc_2.3.2+cvs20040726.bb
@@ -3,7 +3,7 @@ require glibc.inc
DEFAULT_PREFERENCE_sh3 = "-99"
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs"
-PR = "r26"
+PR = "r27"
GLIBC_ADDONS ?= "linuxthreads"
diff --git a/packages/glibc/glibc_2.3.2.bb b/packages/glibc/glibc_2.3.2.bb
index fc06794e61..4a417a3c7c 100644
--- a/packages/glibc/glibc_2.3.2.bb
+++ b/packages/glibc/glibc_2.3.2.bb
@@ -1,6 +1,6 @@
require glibc.inc
-PR = "r15"
+PR = "r16"
DEFAULT_PREFERENCE_sh3 = "-99"
diff --git a/packages/glibc/glibc_2.3.3+cvs20041128.bb b/packages/glibc/glibc_2.3.3+cvs20041128.bb
index 4c9b3dce94..2138599ea9 100644
--- a/packages/glibc/glibc_2.3.3+cvs20041128.bb
+++ b/packages/glibc/glibc_2.3.3+cvs20041128.bb
@@ -3,7 +3,7 @@ require glibc.inc
DEFAULT_PREFERENCE_sh3 = "-99"
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs"
-PR = "r11"
+PR = "r12"
GLIBC_ADDONS ?= "linuxthreads"
diff --git a/packages/glibc/glibc_2.3.3+cvs20050221.bb b/packages/glibc/glibc_2.3.3+cvs20050221.bb
index 4517adedcc..f9b948a58a 100644
--- a/packages/glibc/glibc_2.3.3+cvs20050221.bb
+++ b/packages/glibc/glibc_2.3.3+cvs20050221.bb
@@ -3,7 +3,7 @@ require glibc.inc
DEFAULT_PREFERENCE_sh3 = "-99"
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs"
-PR = "r11"
+PR = "r12"
GLIBC_ADDONS ?= "linuxthreads"
diff --git a/packages/glibc/glibc_2.3.3+cvs20050420.bb b/packages/glibc/glibc_2.3.3+cvs20050420.bb
index b1a5d66b17..7d091be292 100644
--- a/packages/glibc/glibc_2.3.3+cvs20050420.bb
+++ b/packages/glibc/glibc_2.3.3+cvs20050420.bb
@@ -5,7 +5,7 @@ DEFAULT_PREFERENCE_i586 = "0"
DEFAULT_PREFERENCE_sh3 = "-99"
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs"
-PR = "r9"
+PR = "r10"
GLIBC_ADDONS ?= "linuxthreads"
diff --git a/packages/glibc/glibc_2.3.3.bb b/packages/glibc/glibc_2.3.3.bb
index 510709aba9..57d380bc1d 100644
--- a/packages/glibc/glibc_2.3.3.bb
+++ b/packages/glibc/glibc_2.3.3.bb
@@ -1,6 +1,6 @@
require glibc.inc
-PR = "r12"
+PR = "r13"
DEFAULT_PREFERENCE_sh3 = "-99"
diff --git a/packages/glibc/glibc_2.3.5+cvs20050627.bb b/packages/glibc/glibc_2.3.5+cvs20050627.bb
index d0a396d465..0f3be0a47e 100644
--- a/packages/glibc/glibc_2.3.5+cvs20050627.bb
+++ b/packages/glibc/glibc_2.3.5+cvs20050627.bb
@@ -2,7 +2,7 @@ require glibc.inc
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs-2.3.5"
SRCDATE = "20050627"
-PR = "r18"
+PR = "r19"
#Doesnt build for sh3
DEFAULT_PREFERENCE_sh3="-1"
diff --git a/packages/glibc/glibc_2.3.6.bb b/packages/glibc/glibc_2.3.6.bb
index 4519be9d03..898108c5d2 100644
--- a/packages/glibc/glibc_2.3.6.bb
+++ b/packages/glibc/glibc_2.3.6.bb
@@ -1,6 +1,6 @@
require glibc.inc
-PR = "r0"
+PR = "r1"
#FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/glibc-2.3.6', '${FILE_DIRNAME}/orig/glibc', '${FILE_DIRNAME}/orig/files', '${FILE_DIRNAME}/orig' ], d)}"
@@ -19,13 +19,16 @@ SRC_URI = "ftp://ftp.gnu.org/pub/gnu/glibc/glibc-${PV}.tar.bz2 \
${CROSSTOOL_PATCH_URL}glibc-2.3.6-fix-pr631.patch;patch=1 \
${CROSSTOOL_PATCH_URL}glibc-fp-byteorder.patch;patch=1 \
${CROSSTOOL_PATCH_URL}glibc-mips-bootstrap-gcc-header-install.patch;patch=1 \
+ ${CROSSTOOL_PATCH_URL}arm-ctl_bus_isa.patch;patch=1 \
${CROSSTOOL_PATCH_URL}make-install-lib-all.patch;patch=1 \
${CROSSTOOL_PATCH_URL}maybe/glibc-2.3.6-allow-gcc-4.0-powerpc32.patch;patch=1 \
file://glibc-2.3.6-bind-already-defined-on-powerpc.patch;patch=1 \
file://glibc-2.3.6-allow-gcc-4.1-powerpc32-initfini.s.patch;patch=1 \
file://glibc-2.3.6-linuxthreads-allow-gcc-4.1-powerpc32-initfini.s.patch;patch=1 \
- file://late-install-loop-break.patch \
- \
+ file://late-install-loop-break.patch;patch=1 \
+ file://glibc-arm-socket-weakalias.patch;patch=1 \
+ file://glibc-2.3.6-linuxthreads-pthread-raise.patch;patch=1 \
+ file://glibc-cross_sunrpc.patch;patch=1 \
file://etc/ld.so.conf \
file://generate-supported.mk"
@@ -60,7 +63,7 @@ do_configure () {
exit 1
fi
(cd ${S} && gnu-configize) || die "failure in running gnu-configize"
- CPPFLAGS="" oe_runconf
+ CPPFLAGS="" libc_cv_forced_unwind=yes libc_cv_c_cleanup=yes oe_runconf
}
rpcsvc = "bootparam_prot.x nlm_prot.x rstat.x \
diff --git a/packages/glibc/glibc_2.4.bb b/packages/glibc/glibc_2.4.bb
index 1112486c50..873fc66c51 100644
--- a/packages/glibc/glibc_2.4.bb
+++ b/packages/glibc/glibc_2.4.bb
@@ -1,6 +1,6 @@
require glibc.inc
-PR = "r16"
+PR = "r17"
#add the hosts that are confirmed to be working to COMPATIBLE_HOSTi
COMPATIBLE_HOST = '(i.86.*-linux|sh.*-linux)'
diff --git a/packages/glibc/glibc_2.5.bb b/packages/glibc/glibc_2.5.bb
index 6df70076b8..6fa72ff1f6 100644
--- a/packages/glibc/glibc_2.5.bb
+++ b/packages/glibc/glibc_2.5.bb
@@ -1,5 +1,5 @@
require glibc.inc
-PR = "r13"
+PR = "r14"
ARM_INSTRUCTION_SET = "arm"
@@ -48,6 +48,7 @@ SRC_URI = "\
file://glibc-check_pf.patch;patch=1;pnum=0 \
file://zecke-sane-readelf.patch;patch=1 \
file://ldd-unbash.patch;patch=1 \
+ file://glibc-2.6.1-use-short-for-fnstsw.patch;patch=1 \
file://generic-bits_select.h \
file://generic-bits_types.h \
file://generic-bits_typesizes.h \
diff --git a/packages/glibc/glibc_2.6.1.bb b/packages/glibc/glibc_2.6.1.bb
index 8ee658c286..b2fe0f43a6 100644
--- a/packages/glibc/glibc_2.6.1.bb
+++ b/packages/glibc/glibc_2.6.1.bb
@@ -1,5 +1,5 @@
require glibc.inc
-PR = "r7"
+PR = "r8"
ARM_INSTRUCTION_SET = "arm"
@@ -56,6 +56,7 @@ SRC_URI = "\
file://etc/ld.so.conf \
file://generate-supported.mk \
file://glibc-2.6.1-RTLD_SINGLE_THREAD_P-1.patch;patch=1 \
+ file://glibc-2.6.1-use-short-for-fnstsw.patch;patch=1 \
"
# Build fails on sh3 and sh4 without additional patches
diff --git a/packages/glibc/glibc_2.7.bb b/packages/glibc/glibc_2.7.bb
index 760883c4b6..f0170a03f5 100644
--- a/packages/glibc/glibc_2.7.bb
+++ b/packages/glibc/glibc_2.7.bb
@@ -5,14 +5,14 @@ ARM_INSTRUCTION_SET = "arm"
PACKAGES_DYNAMIC = "libc6*"
RPROVIDES_${PN}-dev = "libc6-dev"
-PR = "r3"
+PR = "r4"
# the -isystem in bitbake.conf screws up glibc do_stage
BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}"
TARGET_CPPFLAGS = "-I${STAGING_DIR_TARGET}${layout_includedir}"
-FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-2.4"
+FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/glibc-2.4', '${FILE_DIRNAME}/glibc-${PV}', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}"
GLIBC_ADDONS ?= "ports,nptl,libidn"
@@ -58,6 +58,8 @@ SRC_URI = "ftp://ftp.gnu.org/pub/gnu/glibc/glibc-${PV}.tar.bz2 \
# file://zecke-sane-readelf.patch;patch=1 \
file://ldd-unbash.patch;patch=1 \
file://glibc-arm-IO-acquire-lock-fix.diff;patch=1 \
+ file://all_glibc-i586-chk.patch;patch=1 \
+ file://glibc-2.6.1-use-short-for-fnstsw.patch;patch=1 \
file://generic-bits_select.h \
file://generic-bits_types.h \
file://generic-bits_typesizes.h \
diff --git a/packages/glibc/glibc_cvs.bb b/packages/glibc/glibc_cvs.bb
index e5832e1f12..f5bb921b70 100644
--- a/packages/glibc/glibc_cvs.bb
+++ b/packages/glibc/glibc_cvs.bb
@@ -1,7 +1,7 @@
require glibc.inc
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs-2.3.5"
-PR = "r8"
+PR = "r9"
PV = "2.3.5+cvs${SRCDATE}"
GLIBC_ADDONS ?= "ports,linuxthreads"