From e96e82cd7ee95d712e2c68f2f9540bdfe727645b Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Fri, 25 Jul 2008 01:12:06 +0000 Subject: 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. --- packages/eglibc/eglibc-initial.inc | 16 +- packages/eglibc/eglibc-intermediate.inc | 12 - packages/eglibc/eglibc-intermediate_svn.bb | 8 - packages/eglibc/eglibc.inc | 6 +- packages/eglibc/eglibc_svn.bb | 2 +- packages/gcc/gcc-3.4.4.inc | 10 +- packages/gcc/gcc-3.4.4/gcc-cross-fixincl.patch | 77 +++++++ .../gcc/gcc-3.4.4/gcc-libgcc2-inhibit-libc.patch | 251 +++++++++++++++++++++ packages/gcc/gcc-configure-cross.inc | 4 - packages/gcc/gcc-configure-sdk.inc | 1 + packages/gcc/gcc-cross-initial.inc | 8 +- packages/gcc/gcc-cross-intermediate.inc | 21 ++ packages/gcc/gcc-cross-intermediate_3.3.3.bb | 2 + packages/gcc/gcc-cross-intermediate_3.3.4.bb | 2 + packages/gcc/gcc-cross-intermediate_3.4.3.bb | 2 + packages/gcc/gcc-cross-intermediate_3.4.4.bb | 2 + packages/gcc/gcc-cross-intermediate_4.0.2.bb | 4 + packages/gcc/gcc-cross-intermediate_4.1.0.bb | 5 + packages/gcc/gcc-cross-intermediate_4.1.1.bb | 6 + packages/gcc/gcc-cross-intermediate_4.1.2.bb | 5 + packages/gcc/gcc-cross-intermediate_4.2.1.bb | 5 + packages/gcc/gcc-cross-intermediate_4.2.2.bb | 5 + packages/gcc/gcc-cross-intermediate_4.2.3.bb | 5 + packages/gcc/gcc-cross-intermediate_4.2.4.bb | 5 + packages/gcc/gcc-cross-intermediate_4.3.1.bb | 14 ++ .../gcc/gcc-cross-intermediate_csl-arm-2005q3.bb | 2 + .../gcc/gcc-cross-intermediate_csl-arm-2006q1.bb | 7 + .../gcc/gcc-cross-intermediate_csl-arm-2007q3.bb | 12 + .../gcc/gcc-cross-intermediate_csl-arm-2008q1.bb | 12 + .../gcc/gcc-cross-kernel-3.4.4_csl-arm-2005q3.bb | 2 +- packages/gcc/gcc-cross-sdk_3.3.4.bb | 2 +- packages/gcc/gcc-cross-sdk_3.4.3.bb | 2 +- packages/gcc/gcc-cross-sdk_3.4.4.bb | 8 +- packages/gcc/gcc-cross-sdk_4.1.0.bb | 2 +- packages/gcc/gcc-cross-sdk_4.1.1.bb | 2 +- packages/gcc/gcc-cross-sdk_4.1.2.bb | 2 +- packages/gcc/gcc-cross-sdk_4.2.2.bb | 2 +- packages/gcc/gcc-cross-sdk_4.2.3.bb | 2 +- packages/gcc/gcc-cross-sdk_4.2.4.bb | 2 +- packages/gcc/gcc-cross-sdk_4.3.1.bb | 2 +- packages/gcc/gcc-cross_3.3.3.bb | 2 +- packages/gcc/gcc-cross_3.3.4.bb | 2 +- packages/gcc/gcc-cross_3.4.3.bb | 2 +- packages/gcc/gcc-cross_3.4.4.bb | 2 +- packages/gcc/gcc-cross_4.0.0.bb | 2 +- packages/gcc/gcc-cross_4.0.2.bb | 2 +- packages/gcc/gcc-cross_4.1.0.bb | 2 +- packages/gcc/gcc-cross_4.1.1.bb | 2 +- packages/gcc/gcc-cross_4.1.2.bb | 2 +- packages/gcc/gcc-cross_4.2.1.bb | 2 +- packages/gcc/gcc-cross_4.2.2.bb | 2 +- packages/gcc/gcc-cross_4.2.3.bb | 2 +- packages/gcc/gcc-cross_4.2.4.bb | 2 +- packages/gcc/gcc-cross_4.3.1.bb | 2 +- packages/gcc/gcc-cross_csl-arm-2005q3.bb | 2 +- packages/gcc/gcc-cross_csl-arm-2006q1.bb | 2 +- packages/gcc/gcc-cross_csl-arm-2007q3.bb | 2 +- packages/gcc/gcc-cross_csl-arm-2008q1.bb | 2 +- packages/gcc/gcc-native_3.4.4.bb | 2 +- packages/gcc/gcc-native_3.4.6.bb | 2 +- packages/gcc/gcc_3.3.3.bb | 2 +- packages/gcc/gcc_3.3.4.bb | 2 +- packages/gcc/gcc_3.4.3.bb | 2 +- packages/gcc/gcc_3.4.4.bb | 2 +- packages/gcc/gcc_4.0.0.bb | 2 +- packages/gcc/gcc_4.0.2.bb | 2 +- packages/gcc/gcc_4.1.0.bb | 2 +- packages/gcc/gcc_4.1.1.bb | 2 +- packages/gcc/gcc_4.1.2.bb | 2 +- packages/gcc/gcc_4.2.1.bb | 2 +- packages/gcc/gcc_4.2.2.bb | 2 +- packages/gcc/gcc_4.2.3.bb | 2 +- packages/gcc/gcc_4.2.4.bb | 2 +- packages/gcc/gcc_4.3.1.bb | 2 +- packages/gcc/gcc_csl-arm-2005q3.bb | 2 +- packages/gcc/gcc_csl-arm-2006q1.bb | 2 +- packages/gcc/gcc_csl-arm-2007q3.bb | 2 +- packages/gcc/gcc_csl-arm-2008q1.bb | 2 +- .../files/glibc-2.6.1-use-short-for-fnstsw.patch | 30 +++ .../glibc-2.3.6-linuxthreads-pthread-raise.patch | 37 +++ .../glibc-2.3.6/glibc-arm-socket-weakalias.patch | 45 ++++ .../glibc/glibc-2.3.6/glibc-cross_sunrpc.patch | 79 +++++++ packages/glibc/glibc-2.3.6/glibc-memusage.patch | 44 ++++ .../glibc/glibc-2.3.6/glibc-rtld-libcc-eh.patch | 25 ++ packages/glibc/glibc-2.7/.mtn2git_empty | 0 packages/glibc/glibc-2.7/all_glibc-i586-chk.patch | 33 +++ packages/glibc/glibc-initial.inc | 14 +- packages/glibc/glibc-initial_2.5.bb | 2 +- packages/glibc/glibc-intermediate.inc | 12 - .../glibc/glibc-intermediate_2.3.2+cvs20040726.bb | 6 - packages/glibc/glibc-intermediate_2.3.6.bb | 2 - packages/glibc/glibc-intermediate_2.4.bb | 4 - packages/glibc/glibc-intermediate_2.5.bb | 7 - packages/glibc/glibc-intermediate_2.6.1.bb | 8 - packages/glibc/glibc-intermediate_2.7.bb | 8 - packages/glibc/glibc-intermediate_cvs.bb | 6 - packages/glibc/glibc-stage.inc | 7 +- packages/glibc/glibc.inc | 6 +- packages/glibc/glibc_2.2.5.bb | 2 +- packages/glibc/glibc_2.3.2+cvs20040726.bb | 2 +- packages/glibc/glibc_2.3.2.bb | 2 +- packages/glibc/glibc_2.3.3+cvs20041128.bb | 2 +- packages/glibc/glibc_2.3.3+cvs20050221.bb | 2 +- packages/glibc/glibc_2.3.3+cvs20050420.bb | 2 +- packages/glibc/glibc_2.3.3.bb | 2 +- packages/glibc/glibc_2.3.5+cvs20050627.bb | 2 +- packages/glibc/glibc_2.3.6.bb | 11 +- packages/glibc/glibc_2.4.bb | 2 +- packages/glibc/glibc_2.5.bb | 3 +- packages/glibc/glibc_2.6.1.bb | 3 +- packages/glibc/glibc_2.7.bb | 6 +- packages/glibc/glibc_cvs.bb | 2 +- packages/meta/external-toolchain.bb | 1 + .../sharprom-toolchain-native_1.0.bb | 1 + packages/uclibc/bfin-uclibc_svn.bb | 2 +- .../uclibc-0.9.27/uclibc-makevars-in-quotes.patch | 25 ++ .../uclibc/uclibc-0.9.28/uclibc-libgcc-eh.patch | 38 ++++ packages/uclibc/uclibc-initial_0.9.26.bb | 16 +- packages/uclibc/uclibc-initial_0.9.27.bb | 17 +- packages/uclibc/uclibc-initial_0.9.28.bb | 17 +- packages/uclibc/uclibc-initial_0.9.29.bb | 9 +- packages/uclibc/uclibc-initial_svn.bb | 10 +- packages/uclibc/uclibc.inc | 5 +- packages/uclibc/uclibc_0.9.26.bb | 2 +- packages/uclibc/uclibc_0.9.27.bb | 3 +- packages/uclibc/uclibc_0.9.28.bb | 3 +- packages/uclibc/uclibc_0.9.29.bb | 4 +- packages/uclibc/uclibc_svn.bb | 2 +- 128 files changed, 988 insertions(+), 200 deletions(-) delete mode 100644 packages/eglibc/eglibc-intermediate.inc delete mode 100644 packages/eglibc/eglibc-intermediate_svn.bb create mode 100644 packages/gcc/gcc-3.4.4/gcc-cross-fixincl.patch create mode 100644 packages/gcc/gcc-3.4.4/gcc-libgcc2-inhibit-libc.patch create mode 100644 packages/gcc/gcc-cross-intermediate.inc create mode 100644 packages/gcc/gcc-cross-intermediate_3.3.3.bb create mode 100644 packages/gcc/gcc-cross-intermediate_3.3.4.bb create mode 100644 packages/gcc/gcc-cross-intermediate_3.4.3.bb create mode 100644 packages/gcc/gcc-cross-intermediate_3.4.4.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.0.2.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.1.0.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.1.1.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.1.2.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.2.1.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.2.2.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.2.3.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.2.4.bb create mode 100644 packages/gcc/gcc-cross-intermediate_4.3.1.bb create mode 100644 packages/gcc/gcc-cross-intermediate_csl-arm-2005q3.bb create mode 100644 packages/gcc/gcc-cross-intermediate_csl-arm-2006q1.bb create mode 100644 packages/gcc/gcc-cross-intermediate_csl-arm-2007q3.bb create mode 100644 packages/gcc/gcc-cross-intermediate_csl-arm-2008q1.bb create mode 100644 packages/glibc/files/glibc-2.6.1-use-short-for-fnstsw.patch create mode 100644 packages/glibc/glibc-2.3.6/glibc-2.3.6-linuxthreads-pthread-raise.patch create mode 100644 packages/glibc/glibc-2.3.6/glibc-arm-socket-weakalias.patch create mode 100644 packages/glibc/glibc-2.3.6/glibc-cross_sunrpc.patch create mode 100644 packages/glibc/glibc-2.3.6/glibc-memusage.patch create mode 100644 packages/glibc/glibc-2.3.6/glibc-rtld-libcc-eh.patch create mode 100644 packages/glibc/glibc-2.7/.mtn2git_empty create mode 100644 packages/glibc/glibc-2.7/all_glibc-i586-chk.patch delete mode 100644 packages/glibc/glibc-intermediate.inc delete mode 100644 packages/glibc/glibc-intermediate_2.3.2+cvs20040726.bb delete mode 100644 packages/glibc/glibc-intermediate_2.3.6.bb delete mode 100644 packages/glibc/glibc-intermediate_2.4.bb delete mode 100644 packages/glibc/glibc-intermediate_2.5.bb delete mode 100644 packages/glibc/glibc-intermediate_2.6.1.bb delete mode 100644 packages/glibc/glibc-intermediate_2.7.bb delete mode 100644 packages/glibc/glibc-intermediate_cvs.bb create mode 100644 packages/uclibc/uclibc-0.9.27/uclibc-makevars-in-quotes.patch create mode 100644 packages/uclibc/uclibc-0.9.28/uclibc-libgcc-eh.patch (limited to 'packages') diff --git a/packages/eglibc/eglibc-initial.inc b/packages/eglibc/eglibc-initial.inc index 342711c157..5fbb5dbda5 100644 --- a/packages/eglibc/eglibc-initial.inc +++ b/packages/eglibc/eglibc-initial.inc @@ -1,5 +1,5 @@ SECTION = "libs" -DEPENDS = "linux-libc-headers" +DEPENDS = "linux-libc-headers virtual/${TARGET_PREFIX}gcc-initial" PROVIDES = "virtual/${TARGET_PREFIX}libc-initial" FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/eglibc', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}" @@ -9,11 +9,13 @@ 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}" \ + (cd ${S} && gnu-configize) || die "failure in running gnu-configize" + find ${S} -name "configure" | xargs touch ${S}/configure --host=${TARGET_SYS} --build=${BUILD_SYS} \ + --prefix=/usr \ --without-cvs --disable-sanity-checks \ --with-headers=${STAGING_DIR_TARGET}${layout_includedir} \ - --enable-hacker-mode + --enable-hacker-mode --enable-addons } do_compile () { @@ -22,8 +24,14 @@ do_compile () { do_stage () { oe_runmake cross-compiling=yes install_root=${STAGING_DIR_HOST} \ - includedir='${layout_includedir}' prefix='${layout_prefix}' install-headers + includedir='${layout_includedir}' prefix='${layout_prefix}' install-headers \ + install-bootstrap-headers=yes + oe_runmake csu/subdir_lib + 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/eglibc/eglibc-intermediate.inc b/packages/eglibc/eglibc-intermediate.inc deleted file mode 100644 index c226d8658d..0000000000 --- a/packages/eglibc/eglibc-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/eglibc/eglibc-intermediate_svn.bb b/packages/eglibc/eglibc-intermediate_svn.bb deleted file mode 100644 index 7150f56d26..0000000000 --- a/packages/eglibc/eglibc-intermediate_svn.bb +++ /dev/null @@ -1,8 +0,0 @@ -require eglibc_${PV}.bb -require eglibc-intermediate.inc - -# gcc uses -Werror which break on a "you have no thumb interwork" _warning_ -do_configure_prepend() { - find ${S} -name "configure" | xargs touch - sed -i s:-Werror:: ${S}/configure -} diff --git a/packages/eglibc/eglibc.inc b/packages/eglibc/eglibc.inc index e1559e46e4..5d531a7915 100644 --- a/packages/eglibc/eglibc.inc +++ b/packages/eglibc/eglibc.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/eglibc/eglibc_svn.bb b/packages/eglibc/eglibc_svn.bb index e7a4a1ba75..1be10c13ad 100644 --- a/packages/eglibc/eglibc_svn.bb +++ b/packages/eglibc/eglibc_svn.bb @@ -3,7 +3,7 @@ require eglibc.inc # DEFAULT_PREFERENCE = "-1" FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/eglibc-svn" PV = "2.8+svnr${SRCREV}" -PR = "r6" +PR = "r7" SRC_URI = "svn://svn.eglibc.org;module=trunk \ file://eglibc-svn-arm-lowlevellock-include-tls.patch;patch=1 \ file://etc/ld.so.conf \ diff --git a/packages/gcc/gcc-3.4.4.inc b/packages/gcc/gcc-3.4.4.inc index 704d9bc5c8..34204f10fa 100644 --- a/packages/gcc/gcc-3.4.4.inc +++ b/packages/gcc/gcc-3.4.4.inc @@ -17,8 +17,10 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \ file://always-fixincperm.patch;patch=1 \ file://GCOV_PREFIX_STRIP-cross-profile_3.4.patch;patch=1 \ file://zecke-xgcc-cpp.patch;patch=1 \ - file://gcc4-mtune-compat.patch;patch=1" - -SRC_URI += "file://gcc34-configure.in.patch;patch=1" -SRC_URI += "file://gcc34-thumb-support.patch;patch=1" + file://gcc-libgcc2-inhibit-libc.patch;patch=1 \ + file://gcc4-mtune-compat.patch;patch=1 \ + file://gcc34-configure.in.patch;patch=1 \ + file://gcc34-thumb-support.patch;patch=1 \ + file://gcc-cross-fixincl.patch;patch=1 \ + " SRC_URI_append_fail-fast = " file://zecke-no-host-includes.patch;patch=1 " diff --git a/packages/gcc/gcc-3.4.4/gcc-cross-fixincl.patch b/packages/gcc/gcc-3.4.4/gcc-cross-fixincl.patch new file mode 100644 index 0000000000..365485497c --- /dev/null +++ b/packages/gcc/gcc-3.4.4/gcc-cross-fixincl.patch @@ -0,0 +1,77 @@ +See http://gcc.gnu.org/PR22541 + +From: Dan Kegel + +When building gcc-3.4.3 or gcc-4.0.0 as a cross into a clean $PREFIX +(the only two I've tried like this), the configure script happily copies +the glibc include files from include to sys-include; here's the line +from the log file (with $PREFIX instead of the real prefix): + +Copying $PREFIX/i686-unknown-linux-gnu/include to $PREFIX/i686-unknown-linux-gnu/sys-include + +But later, when running fixincludes, it gives the error message + The directory that should contain system headers does not exist: + $PREFIX/lib/gcc/i686-unknown-linux-gnu/3.4.3/../../../../i686-unknown-linux-gnu/sys-include + +Nevertheless, it continues building; the header files it installs in + $PREFIX/lib/gcc/i686-unknown-linux-gnu/3.4.3/include +do not include the boilerplate that would cause it to #include_next the +glibc headers in the system header directory. +Thus the resulting toolchain can't compile the following program: +#include +int x = PATH_MAX; +because its limits.h doesn't include the glibc header. + +That's not nice. I suspect the problem is that gcc/Makefile.in assumes that +it can refer to $PREFIX/i686-unknown-linux-gnu with the path + $PREFIX/lib/../i686-unknown-linux-gnu, but +that fails because the directory $PREFIX/lib doesn't exist during 'make all'; +it is only created later, during 'make install'. (Which makes this problem +confusing, since one only notices the breakage well after 'make install', +at which point the path configure complained about does exist, and has the +right stuff in it.) + +A possible fix is to replace the line in gcc/Makefile.in that says + SYSTEM_HEADER_DIR = @SYSTEM_HEADER_DIR@ +with a version that gets rid of extra ..'s, e.g. + SYSTEM_HEADER_DIR = `echo @SYSTEM_HEADER_DIR@ | sed -e :a -e "s,[^/]*/\.\.\/,,;ta"` +(hey, that's the first time I've ever used a label in a sed script; thanks to the sed faq +for explaining the :a ... ta method of looping to repeat a search-and-replace until it doesn't match.) + + +--- + gcc/Makefile.in | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +Index: gcc-3.4.4/gcc/Makefile.in +=================================================================== +--- gcc-3.4.4.orig/gcc/Makefile.in 2008-07-23 23:44:15.000000000 -0700 ++++ gcc-3.4.4/gcc/Makefile.in 2008-07-23 23:46:54.000000000 -0700 +@@ -350,7 +350,10 @@ NATIVE_SYSTEM_HEADER_DIR = /usr/include + CROSS_SYSTEM_HEADER_DIR = @CROSS_SYSTEM_HEADER_DIR@ + + # autoconf sets SYSTEM_HEADER_DIR to one of the above. +-SYSTEM_HEADER_DIR = @SYSTEM_HEADER_DIR@ ++# Purge it of unneccessary internal relative paths ++# to directories that might not exist yet. ++# The sed idiom for this is to repeat the search-and-replace until it doesn't match, using :a ... ta. ++SYSTEM_HEADER_DIR = `echo @SYSTEM_HEADER_DIR@ | sed -e :a -e "s,[^/]*/\.\.\/,," -e ta` + + # Control whether to run fixproto and fixincludes. + STMP_FIXPROTO = @STMP_FIXPROTO@ +@@ -2548,11 +2551,14 @@ install-gcc-tooldir: + $(SHELL) ${srcdir}/mkinstalldirs $(DESTDIR)$(gcc_tooldir) + + # Build fixed copies of system files. ++# Abort if no system headers available, unless building a crosscompiler. ++# FIXME: abort unless building --without-headers would be more accurate and less ugly ++ + stmp-fixinc: fixinc.sh gsyslimits.h + @if ! $(inhibit_libc) && test ! -d ${SYSTEM_HEADER_DIR}; then \ + echo The directory that should contain system headers does not exist: >&2 ; \ + echo " ${SYSTEM_HEADER_DIR}" >&2 ; \ +- if test "x${SYSTEM_HEADER_DIR}" = "x${gcc_tooldir}/sys-include"; \ ++ if test "x${SYSTEM_HEADER_DIR}" = "x`echo "${gcc_tooldir}/sys-include" | sed -e :a -e "s,[^/]*/\.\.\/,," -e ta`"; \ + then sleep 1; else exit 1; fi; \ + fi + rm -rf include; mkdir include diff --git a/packages/gcc/gcc-3.4.4/gcc-libgcc2-inhibit-libc.patch b/packages/gcc/gcc-3.4.4/gcc-libgcc2-inhibit-libc.patch new file mode 100644 index 0000000000..4e2b5667ff --- /dev/null +++ b/packages/gcc/gcc-3.4.4/gcc-libgcc2-inhibit-libc.patch @@ -0,0 +1,251 @@ +--- + gcc/Makefile.in | 25 ++++++++++++++++--------- + gcc/configure | 22 ++++++++++++++++++---- + gcc/configure.ac | 15 ++++++++++++--- + gcc/gcc.c | 9 +++++++++ + 4 files changed, 55 insertions(+), 16 deletions(-) + +Index: gcc-3.4.4/gcc/configure.ac +=================================================================== +--- gcc-3.4.4.orig/gcc/configure.ac 2008-07-23 23:53:04.000000000 -0700 ++++ gcc-3.4.4/gcc/configure.ac 2008-07-23 23:53:05.000000000 -0700 +@@ -567,6 +567,10 @@ AC_ARG_ENABLE(shared, + ], [enable_shared=yes]) + AC_SUBST(enable_shared) + ++AC_ARG_WITH(build-sysroot, ++ [ --with-build-sysroot=sysroot ++ use sysroot as the system root during the build]) ++ + AC_ARG_WITH(sysroot, + [ --with-sysroot[=DIR] Search for usr/lib, usr/include, et al, within DIR.], + [ +@@ -577,6 +581,11 @@ AC_ARG_WITH(sysroot, + + TARGET_SYSTEM_ROOT_DEFINE='-DTARGET_SYSTEM_ROOT=\"$(TARGET_SYSTEM_ROOT)\"' + CROSS_SYSTEM_HEADER_DIR='$(TARGET_SYSTEM_ROOT)$(NATIVE_SYSTEM_HEADER_DIR)' ++ if test "x$with_build_sysroot" != x; then ++ build_system_header_dir=$with_build_sysroot'$(NATIVE_SYSTEM_HEADER_DIR)' ++ else ++ build_system_header_dir='$(CROSS_SYSTEM_HEADER_DIR)' ++ fi + + if test "x$exec_prefix" = xNONE; then + if test "x$prefix" = xNONE; then +@@ -1453,7 +1462,7 @@ if test x$host != x$target + then + CROSS="-DCROSS_COMPILE" + ALL=all.cross +- SYSTEM_HEADER_DIR='$(CROSS_SYSTEM_HEADER_DIR)' ++ SYSTEM_HEADER_DIR=$build_system_header_dir + case "$host","$target" in + # Darwin crosses can use the host system's libraries and headers, + # because of the fat library support. Of course, it must be the +@@ -1487,11 +1496,11 @@ fi + # then define inhibit_libc in LIBGCC2_CFLAGS. + # This prevents libgcc2 from containing any code which requires libc + # support. +-inhibit_libc= ++inhibit_libc=false + if { { test x$host != x$target && test "x$with_sysroot" = x ; } || + test x$with_newlib = xyes ; } && + { test "x$with_headers" = x || test "x$with_headers" = xno ; } ; then +- inhibit_libc=-Dinhibit_libc ++ inhibit_libc=true + fi + AC_SUBST(inhibit_libc) + +Index: gcc-3.4.4/gcc/Makefile.in +=================================================================== +--- gcc-3.4.4.orig/gcc/Makefile.in 2005-02-24 01:26:57.000000000 -0800 ++++ gcc-3.4.4/gcc/Makefile.in 2008-07-24 00:08:18.000000000 -0700 +@@ -291,7 +291,7 @@ GCC_FOR_TARGET = $(STAGE_CC_WRAPPER) ./x + # This is used instead of ALL_CFLAGS when compiling with GCC_FOR_TARGET. + # It omits XCFLAGS, and specifies -B./. + # It also specifies -isystem ./include to find, e.g., stddef.h. +-GCC_CFLAGS=$(INTERNAL_CFLAGS) $(X_CFLAGS) $(T_CFLAGS) $(LOOSE_WARN) -Wold-style-definition $($@-warn) -isystem ./include $(TCFLAGS) ++GCC_CFLAGS=$(CFLAGS_FOR_TARGET) $(INTERNAL_CFLAGS) $(X_CFLAGS) $(T_CFLAGS) $(LOOSE_WARN) -Wold-style-definition $($@-warn) -isystem ./include $(TCFLAGS) + + # --------------------------------------------------- + # Programs which produce files for the target machine +@@ -485,10 +485,17 @@ GGC_LIB= + LIBGCC = libgcc.a + INSTALL_LIBGCC = install-libgcc + ++# "true" if the target C library headers are unavailable; "false" ++# otherwise. ++inhibit_libc = @inhibit_libc@ ++ifeq ($(inhibit_libc),true) ++INHIBIT_LIBC_CFLAGS = -Dinhibit_libc ++endif ++ + # Options to use when compiling libgcc2.a. + # + LIBGCC2_DEBUG_CFLAGS = -g +-LIBGCC2_CFLAGS = -O2 $(LIBGCC2_INCLUDES) $(GCC_CFLAGS) $(TARGET_LIBGCC2_CFLAGS) $(LIBGCC2_DEBUG_CFLAGS) $(GTHREAD_FLAGS) -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED @inhibit_libc@ ++LIBGCC2_CFLAGS = -O2 $(LIBGCC2_INCLUDES) $(GCC_CFLAGS) $(TARGET_LIBGCC2_CFLAGS) $(LIBGCC2_DEBUG_CFLAGS) $(GTHREAD_FLAGS) -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED $(INHIBIT_LIBC_CFLAGS) + + # Additional options to use when compiling libgcc2.a. + # Some targets override this to -isystem include +@@ -500,7 +507,7 @@ TARGET_LIBGCC2_CFLAGS = + # Options to use when compiling crtbegin/end. + CRTSTUFF_CFLAGS = -O2 $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -g0 \ + -finhibit-size-directive -fno-inline-functions -fno-exceptions \ +- -fno-zero-initialized-in-bss -fno-unit-at-a-time ++ -fno-zero-initialized-in-bss -fno-unit-at-a-time $(INHIBIT_LIBC_CFLAGS) + + # Additional sources to handle exceptions; overridden by targets as needed. + LIB2ADDEH = $(srcdir)/unwind-dw2.c $(srcdir)/unwind-dw2-fde.c \ +@@ -1247,33 +1254,33 @@ stmp-multilib: $(LIBGCC_DEPS) + $(T)crtbegin.o: crtstuff.c $(GCC_PASSES) $(TCONFIG_H) auto-host.h \ + gbl-ctors.h stmp-int-hdrs tsystem.h coretypes.h $(TM_H) + $(GCC_FOR_TARGET) $(CRTSTUFF_CFLAGS) $(CRTSTUFF_T_CFLAGS) \ +- @inhibit_libc@ -c $(srcdir)/crtstuff.c -DCRT_BEGIN \ ++ -c $(srcdir)/crtstuff.c -DCRT_BEGIN \ + -o $(T)crtbegin$(objext) + + $(T)crtend.o: crtstuff.c $(GCC_PASSES) $(TCONFIG_H) auto-host.h \ + gbl-ctors.h stmp-int-hdrs tsystem.h coretypes.h $(TM_H) + $(GCC_FOR_TARGET) $(CRTSTUFF_CFLAGS) $(CRTSTUFF_T_CFLAGS) \ +- @inhibit_libc@ -c $(srcdir)/crtstuff.c -DCRT_END \ ++ -c $(srcdir)/crtstuff.c -DCRT_END \ + -o $(T)crtend$(objext) + + # These are versions of crtbegin and crtend for shared libraries. + $(T)crtbeginS.o: crtstuff.c $(GCC_PASSES) $(TCONFIG_H) auto-host.h \ + gbl-ctors.h stmp-int-hdrs tsystem.h coretypes.h $(TM_H) + $(GCC_FOR_TARGET) $(CRTSTUFF_CFLAGS) $(CRTSTUFF_T_CFLAGS_S) \ +- @inhibit_libc@ -c $(srcdir)/crtstuff.c -DCRT_BEGIN -DCRTSTUFFS_O \ ++ -c $(srcdir)/crtstuff.c -DCRT_BEGIN -DCRTSTUFFS_O \ + -o $(T)crtbeginS$(objext) + + $(T)crtendS.o: crtstuff.c $(GCC_PASSES) $(TCONFIG_H) auto-host.h \ + gbl-ctors.h stmp-int-hdrs tsystem.h coretypes.h $(TM_H) + $(GCC_FOR_TARGET) $(CRTSTUFF_CFLAGS) $(CRTSTUFF_T_CFLAGS_S) \ +- @inhibit_libc@ -c $(srcdir)/crtstuff.c -DCRT_END -DCRTSTUFFS_O \ ++ -c $(srcdir)/crtstuff.c -DCRT_END -DCRTSTUFFS_O \ + -o $(T)crtendS$(objext) + + # This is a version of crtbegin for -static links. + $(T)crtbeginT.o: crtstuff.c $(GCC_PASSES) $(TCONFIG_H) auto-host.h \ + gbl-ctors.h stmp-int-hdrs tsystem.h coretypes.h $(TM_H) + $(GCC_FOR_TARGET) $(CRTSTUFF_CFLAGS) $(CRTSTUFF_T_CFLAGS) \ +- @inhibit_libc@ -c $(srcdir)/crtstuff.c -DCRT_BEGIN -DCRTSTUFFT_O \ ++ -c $(srcdir)/crtstuff.c -DCRT_BEGIN -DCRTSTUFFT_O \ + -o $(T)crtbeginT$(objext) + + # Compile the start modules crt0.o and mcrt0.o that are linked with +@@ -2542,7 +2549,7 @@ install-gcc-tooldir: + + # Build fixed copies of system files. + stmp-fixinc: fixinc.sh gsyslimits.h +- @if test ! -d ${SYSTEM_HEADER_DIR}; then \ ++ @if ! $(inhibit_libc) && test ! -d ${SYSTEM_HEADER_DIR}; then \ + echo The directory that should contain system headers does not exist: >&2 ; \ + echo " ${SYSTEM_HEADER_DIR}" >&2 ; \ + if test "x${SYSTEM_HEADER_DIR}" = "x${gcc_tooldir}/sys-include"; \ +Index: gcc-3.4.4/gcc/gcc.c +=================================================================== +--- gcc-3.4.4.orig/gcc/gcc.c 2005-05-01 03:33:14.000000000 -0700 ++++ gcc-3.4.4/gcc/gcc.c 2008-07-23 23:53:05.000000000 -0700 +@@ -1069,6 +1069,7 @@ static const struct option_map option_ma + {"--static", "-static", 0}, + {"--std", "-std=", "aj"}, + {"--symbolic", "-symbolic", 0}, ++ {"--sysroot", "--sysroot=", "aj"}, + {"--time", "-time", 0}, + {"--trace-includes", "-H", 0}, + {"--traditional", "-traditional", 0}, +@@ -3016,6 +3017,9 @@ display_help (void) + fputs (_(" -time Time the execution of each subprocess\n"), stdout); + fputs (_(" -specs= Override built-in specs with the contents of \n"), stdout); + fputs (_(" -std= Assume that the input sources are for \n"), stdout); ++ fputs (_("\ ++ --sysroot= Use as the root directory for headers\n\ ++ for headers and libraries\n"), stdout); + fputs (_(" -B Add to the compiler's search paths\n"), stdout); + fputs (_(" -b Run gcc for target , if installed\n"), stdout); + fputs (_(" -V Run gcc version number , if installed\n"), stdout); +@@ -3884,6 +3888,11 @@ warranty; not even for MERCHANTABILITY o + ; + else if (! strcmp (argv[i], "-fhelp")) + ; ++ else if (! strncmp (argv[i], "--sysroot=", strlen ("--sysroot="))) ++ { ++ target_system_root = argv[i] + strlen ("--sysroot="); ++ target_system_root_changed = 1; ++ } + else if (argv[i][0] == '+' && argv[i][1] == 'e') + { + /* Compensate for the +e options to the C++ front-end; +Index: gcc-3.4.4/gcc/configure +=================================================================== +--- gcc-3.4.4.orig/gcc/configure 2008-07-23 23:53:04.000000000 -0700 ++++ gcc-3.4.4/gcc/configure 2008-07-23 23:53:05.000000000 -0700 +@@ -907,6 +907,8 @@ Optional Packages: + --with-as arrange to use the specified as (full pathname) + --with-stabs arrange to use stabs instead of host debug format + --with-dwarf2 force the default debug format to be DWARF 2 ++ --with-build-sysroot=sysroot ++ use sysroot as the system root during the build + --with-sysroot=DIR Search for usr/lib, usr/include, et al, within DIR. + --with-libiconv-prefix=DIR search for libiconv in DIR/include and DIR/lib + --with-system-libunwind use installed libunwind +@@ -4756,6 +4758,13 @@ fi; + + + ++# Check whether --with-build-sysroot or --without-build-sysroot was given. ++if test "${with_build_sysroot+set}" = set; then ++ withval="$with_build_sysroot" ++ ++fi; ++ ++ + # Check whether --with-sysroot or --without-sysroot was given. + if test "${with_sysroot+set}" = set; then + withval="$with_sysroot" +@@ -4767,6 +4776,11 @@ if test "${with_sysroot+set}" = set; the + + TARGET_SYSTEM_ROOT_DEFINE='-DTARGET_SYSTEM_ROOT=\"$(TARGET_SYSTEM_ROOT)\"' + CROSS_SYSTEM_HEADER_DIR='$(TARGET_SYSTEM_ROOT)$(NATIVE_SYSTEM_HEADER_DIR)' ++ if test "x$with_build_sysroot" != x; then ++ build_system_header_dir=$with_build_sysroot'$(NATIVE_SYSTEM_HEADER_DIR)' ++ else ++ build_system_header_dir='$(CROSS_SYSTEM_HEADER_DIR)' ++ fi + + if test "x$exec_prefix" = xNONE; then + if test "x$prefix" = xNONE; then +@@ -5229,7 +5243,7 @@ if test "${gcc_cv_prog_makeinfo_modern+s + else + ac_prog_version=`$MAKEINFO --version 2>&1 | + sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'` +- echo "configure:5232: version of makeinfo is $ac_prog_version" >&5 ++ echo "configure:5246: version of makeinfo is $ac_prog_version" >&5 + case $ac_prog_version in + '') gcc_cv_prog_makeinfo_modern=no;; + 4.[2-9]*) +@@ -9845,7 +9859,7 @@ if test x$host != x$target + then + CROSS="-DCROSS_COMPILE" + ALL=all.cross +- SYSTEM_HEADER_DIR='$(CROSS_SYSTEM_HEADER_DIR)' ++ SYSTEM_HEADER_DIR=$build_system_header_dir + case "$host","$target" in + # Darwin crosses can use the host system's libraries and headers, + # because of the fat library support. Of course, it must be the +@@ -9879,11 +9893,11 @@ fi + # then define inhibit_libc in LIBGCC2_CFLAGS. + # This prevents libgcc2 from containing any code which requires libc + # support. +-inhibit_libc= ++inhibit_libc=false + if { { test x$host != x$target && test "x$with_sysroot" = x ; } || + test x$with_newlib = xyes ; } && + { test "x$with_headers" = x || test "x$with_headers" = xno ; } ; then +- inhibit_libc=-Dinhibit_libc ++ inhibit_libc=true + fi + + diff --git a/packages/gcc/gcc-configure-cross.inc b/packages/gcc/gcc-configure-cross.inc index 333cb8f9bf..d5800c78ff 100644 --- a/packages/gcc/gcc-configure-cross.inc +++ b/packages/gcc/gcc-configure-cross.inc @@ -7,10 +7,6 @@ EXTRA_OECONF_PATHS = "--with-local-prefix=${STAGING_DIR_TARGET}${layout_prefix} --with-sysroot=${STAGING_DIR_TARGET} \ --with-build-sysroot=${STAGING_DIR_TARGET}" -do_configure_prepend () { - rm -f ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/libgcc_eh.a -} - do_compile_prepend () { export CC="${BUILD_CC}" export AR_FOR_TARGET="${TARGET_SYS}-ar" diff --git a/packages/gcc/gcc-configure-sdk.inc b/packages/gcc/gcc-configure-sdk.inc index f8c4de8c78..faa183f8e4 100644 --- a/packages/gcc/gcc-configure-sdk.inc +++ b/packages/gcc/gcc-configure-sdk.inc @@ -7,6 +7,7 @@ USE_NLS = '${@base_conditional( "TARGET_OS", "linux-uclibcgnueabi", "no", "", d EXTRA_OECONF_PATHS = "--with-local-prefix=${STAGING_DIR_TARGET}${layout_prefix} \ --with-gxx-include-dir=${STAGING_DIR_TARGET}/${layout_includedir}/c++ \ --with-sysroot=${prefix}/${TARGET_SYS} \ + --with-build-time-tools=${CROSS_DIR}/${TARGET_SYS}/bin \ --with-build-sysroot=${STAGING_DIR_TARGET}" # diff --git a/packages/gcc/gcc-cross-initial.inc b/packages/gcc/gcc-cross-initial.inc index e0675263ea..15e5fa62fc 100644 --- a/packages/gcc/gcc-cross-initial.inc +++ b/packages/gcc/gcc-cross-initial.inc @@ -1,6 +1,4 @@ DEPENDS = "virtual/${TARGET_PREFIX}binutils" -# @todo Please add comment on why this is (still?) needed? -DEPENDS += "${@['virtual/${TARGET_PREFIX}libc-initial',''][bb.data.getVar('TARGET_ARCH', d, 1) in ['arm', 'armeb', 'mips', 'mipsel', 'powerpc']]}" PROVIDES = "virtual/${TARGET_PREFIX}gcc-initial" PACKAGES = "" @@ -8,6 +6,7 @@ PACKAGES = "" # sysroot is needed in case we use libc-initial EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${layout_prefix} \ --with-newlib \ + --without-headers \ --disable-shared \ --disable-threads \ --disable-multilib \ @@ -19,11 +18,6 @@ EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${layout_prefix} \ --with-build-sysroot=${STAGING_DIR_TARGET} \ ${@get_gcc_fpu_setting(bb, d)}" -do_stage_prepend () { - mkdir -p ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV} - ln -sf libgcc.a ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/libgcc_eh.a -} - do_install () { : } diff --git a/packages/gcc/gcc-cross-intermediate.inc b/packages/gcc/gcc-cross-intermediate.inc new file mode 100644 index 0000000000..4fa12886f1 --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate.inc @@ -0,0 +1,21 @@ +DEPENDS = "virtual/${TARGET_PREFIX}binutils" +DEPENDS += "virtual/${TARGET_PREFIX}libc-initial" +PROVIDES = "virtual/${TARGET_PREFIX}gcc-intermediate" +PACKAGES = "" + +# This is intended to be a -very- basic config +# sysroot is needed in case we use libc-initial +EXTRA_OECONF = "--with-local-prefix=${STAGING_DIR_TARGET}${layout_prefix} \ + --enable-shared \ + --disable-multilib \ + --disable-threads \ + --enable-languages=c \ + --enable-target-optspace \ + --program-prefix=${TARGET_PREFIX} \ + --with-sysroot=${STAGING_DIR_TARGET} \ + --with-build-sysroot=${STAGING_DIR_TARGET} \ + ${@get_gcc_fpu_setting(bb, d)}" + +do_install () { + : +} diff --git a/packages/gcc/gcc-cross-intermediate_3.3.3.bb b/packages/gcc/gcc-cross-intermediate_3.3.3.bb new file mode 100644 index 0000000000..eb59de9461 --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_3.3.3.bb @@ -0,0 +1,2 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc diff --git a/packages/gcc/gcc-cross-intermediate_3.3.4.bb b/packages/gcc/gcc-cross-intermediate_3.3.4.bb new file mode 100644 index 0000000000..eb59de9461 --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_3.3.4.bb @@ -0,0 +1,2 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc diff --git a/packages/gcc/gcc-cross-intermediate_3.4.3.bb b/packages/gcc/gcc-cross-intermediate_3.4.3.bb new file mode 100644 index 0000000000..eb59de9461 --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_3.4.3.bb @@ -0,0 +1,2 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc diff --git a/packages/gcc/gcc-cross-intermediate_3.4.4.bb b/packages/gcc/gcc-cross-intermediate_3.4.4.bb new file mode 100644 index 0000000000..eb59de9461 --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_3.4.4.bb @@ -0,0 +1,2 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc diff --git a/packages/gcc/gcc-cross-intermediate_4.0.2.bb b/packages/gcc/gcc-cross-intermediate_4.0.2.bb new file mode 100644 index 0000000000..8df8d597aa --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_4.0.2.bb @@ -0,0 +1,4 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc + +EXTRA_OECONF += "--disable-multilib" diff --git a/packages/gcc/gcc-cross-intermediate_4.1.0.bb b/packages/gcc/gcc-cross-intermediate_4.1.0.bb new file mode 100644 index 0000000000..3e103aa24e --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_4.1.0.bb @@ -0,0 +1,5 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc + +EXTRA_OECONF += "--disable-libmudflap \ + --disable-libssp" diff --git a/packages/gcc/gcc-cross-intermediate_4.1.1.bb b/packages/gcc/gcc-cross-intermediate_4.1.1.bb new file mode 100644 index 0000000000..837237e7d4 --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_4.1.1.bb @@ -0,0 +1,6 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc + +EXTRA_OECONF += "--disable-libmudflap \ + --disable-libunwind-exceptions \ + --disable-libssp" diff --git a/packages/gcc/gcc-cross-intermediate_4.1.2.bb b/packages/gcc/gcc-cross-intermediate_4.1.2.bb new file mode 100644 index 0000000000..3e103aa24e --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_4.1.2.bb @@ -0,0 +1,5 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc + +EXTRA_OECONF += "--disable-libmudflap \ + --disable-libssp" diff --git a/packages/gcc/gcc-cross-intermediate_4.2.1.bb b/packages/gcc/gcc-cross-intermediate_4.2.1.bb new file mode 100644 index 0000000000..7acca81c3b --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_4.2.1.bb @@ -0,0 +1,5 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc + +EXTRA_OECONF += "--disable-libmudflap --disable-libgomp \ + --disable-libssp" diff --git a/packages/gcc/gcc-cross-intermediate_4.2.2.bb b/packages/gcc/gcc-cross-intermediate_4.2.2.bb new file mode 100644 index 0000000000..7acca81c3b --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_4.2.2.bb @@ -0,0 +1,5 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc + +EXTRA_OECONF += "--disable-libmudflap --disable-libgomp \ + --disable-libssp" diff --git a/packages/gcc/gcc-cross-intermediate_4.2.3.bb b/packages/gcc/gcc-cross-intermediate_4.2.3.bb new file mode 100644 index 0000000000..7acca81c3b --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_4.2.3.bb @@ -0,0 +1,5 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc + +EXTRA_OECONF += "--disable-libmudflap --disable-libgomp \ + --disable-libssp" diff --git a/packages/gcc/gcc-cross-intermediate_4.2.4.bb b/packages/gcc/gcc-cross-intermediate_4.2.4.bb new file mode 100644 index 0000000000..7acca81c3b --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_4.2.4.bb @@ -0,0 +1,5 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc + +EXTRA_OECONF += "--disable-libmudflap --disable-libgomp \ + --disable-libssp" diff --git a/packages/gcc/gcc-cross-intermediate_4.3.1.bb b/packages/gcc/gcc-cross-intermediate_4.3.1.bb new file mode 100644 index 0000000000..b0932f520d --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_4.3.1.bb @@ -0,0 +1,14 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc + +DEPENDS += "gmp-native mpfr-native" + +EXTRA_OECONF += " --disable-libmudflap \ + --disable-libgomp \ + --disable-libssp" + +# Hack till we fix *libc properly +do_stage_append() { + ln -sf ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include-fixed/* ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include/ +} + diff --git a/packages/gcc/gcc-cross-intermediate_csl-arm-2005q3.bb b/packages/gcc/gcc-cross-intermediate_csl-arm-2005q3.bb new file mode 100644 index 0000000000..6e9c252e7e --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_csl-arm-2005q3.bb @@ -0,0 +1,2 @@ +require gcc-cross_csl-arm-2005q3.bb +require gcc-cross-intermediate.inc diff --git a/packages/gcc/gcc-cross-intermediate_csl-arm-2006q1.bb b/packages/gcc/gcc-cross-intermediate_csl-arm-2006q1.bb new file mode 100644 index 0000000000..2d4b55f997 --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_csl-arm-2006q1.bb @@ -0,0 +1,7 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc + +S = "${WORKDIR}/gcc-2006q1" + +EXTRA_OECONF += "--disable-libmudflap \ + --disable-libssp" diff --git a/packages/gcc/gcc-cross-intermediate_csl-arm-2007q3.bb b/packages/gcc/gcc-cross-intermediate_csl-arm-2007q3.bb new file mode 100644 index 0000000000..114d9831c6 --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_csl-arm-2007q3.bb @@ -0,0 +1,12 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc + +S = "${WORKDIR}/gcc-4.2" + +EXTRA_OECONF += "--disable-libssp --disable-bootstrap --disable-libgomp --disable-libmudflap " + +# Hack till we fix *libc properly +do_stage_append() { + ln -sf ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include-fixed/* ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include/ +} + diff --git a/packages/gcc/gcc-cross-intermediate_csl-arm-2008q1.bb b/packages/gcc/gcc-cross-intermediate_csl-arm-2008q1.bb new file mode 100644 index 0000000000..114d9831c6 --- /dev/null +++ b/packages/gcc/gcc-cross-intermediate_csl-arm-2008q1.bb @@ -0,0 +1,12 @@ +require gcc-cross_${PV}.bb +require gcc-cross-intermediate.inc + +S = "${WORKDIR}/gcc-4.2" + +EXTRA_OECONF += "--disable-libssp --disable-bootstrap --disable-libgomp --disable-libmudflap " + +# Hack till we fix *libc properly +do_stage_append() { + ln -sf ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include-fixed/* ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include/ +} + diff --git a/packages/gcc/gcc-cross-kernel-3.4.4_csl-arm-2005q3.bb b/packages/gcc/gcc-cross-kernel-3.4.4_csl-arm-2005q3.bb index 9b5a2fed2c..e8051dde22 100644 --- a/packages/gcc/gcc-cross-kernel-3.4.4_csl-arm-2005q3.bb +++ b/packages/gcc/gcc-cross-kernel-3.4.4_csl-arm-2005q3.bb @@ -7,7 +7,7 @@ DEFAULT_PREFERENCE = "-1" require gcc-cross-initial_csl-arm-2005q3.bb require gcc-cross-kernel.inc -PR = "r2" +PR = "r3" SRC_URI += "file://gcc-3.4.4-makefile-fix.patch;patch=1" diff --git a/packages/gcc/gcc-cross-sdk_3.3.4.bb b/packages/gcc/gcc-cross-sdk_3.3.4.bb index 4608733b58..02d860b1f7 100644 --- a/packages/gcc/gcc-cross-sdk_3.3.4.bb +++ b/packages/gcc/gcc-cross-sdk_3.3.4.bb @@ -1,4 +1,4 @@ -PR = "r4" +PR = "r5" inherit sdk diff --git a/packages/gcc/gcc-cross-sdk_3.4.3.bb b/packages/gcc/gcc-cross-sdk_3.4.3.bb index 1a7faa5b8c..c76b5b3c07 100644 --- a/packages/gcc/gcc-cross-sdk_3.4.3.bb +++ b/packages/gcc/gcc-cross-sdk_3.4.3.bb @@ -1,4 +1,4 @@ -PR = "r3" +PR = "r4" require gcc-${PV}.inc require gcc-cross-sdk.inc diff --git a/packages/gcc/gcc-cross-sdk_3.4.4.bb b/packages/gcc/gcc-cross-sdk_3.4.4.bb index c76b5b3c07..b00c86617d 100644 --- a/packages/gcc/gcc-cross-sdk_3.4.4.bb +++ b/packages/gcc/gcc-cross-sdk_3.4.4.bb @@ -1,4 +1,4 @@ -PR = "r4" +PR = "r5" require gcc-${PV}.inc require gcc-cross-sdk.inc @@ -6,3 +6,9 @@ require gcc-configure-sdk.inc require gcc-package-sdk.inc SRC_URI += 'file://sdk-libstdc++-includes.patch;patch=1' + +do_compile_prepend () { + mkdir -p gcc + ln -s ${CROSS_DIR}/bin/${TARGET_PREFIX}as gcc/as + ln -s ${CROSS_DIR}/bin/${TARGET_PREFIX}ld gcc/ld +} diff --git a/packages/gcc/gcc-cross-sdk_4.1.0.bb b/packages/gcc/gcc-cross-sdk_4.1.0.bb index 8329aac27f..ee769e034e 100644 --- a/packages/gcc/gcc-cross-sdk_4.1.0.bb +++ b/packages/gcc/gcc-cross-sdk_4.1.0.bb @@ -1,4 +1,4 @@ -PR = "r3" +PR = "r4" require gcc-${PV}.inc require gcc-cross-sdk.inc diff --git a/packages/gcc/gcc-cross-sdk_4.1.1.bb b/packages/gcc/gcc-cross-sdk_4.1.1.bb index 5caec0b5a5..6b6097fb00 100644 --- a/packages/gcc/gcc-cross-sdk_4.1.1.bb +++ b/packages/gcc/gcc-cross-sdk_4.1.1.bb @@ -1,4 +1,4 @@ -PR = "r5" +PR = "r6" require gcc-${PV}.inc require gcc-cross-sdk.inc diff --git a/packages/gcc/gcc-cross-sdk_4.1.2.bb b/packages/gcc/gcc-cross-sdk_4.1.2.bb index 51b99f882a..c632169f23 100644 --- a/packages/gcc/gcc-cross-sdk_4.1.2.bb +++ b/packages/gcc/gcc-cross-sdk_4.1.2.bb @@ -1,4 +1,4 @@ -PR = "r7" +PR = "r8" require gcc-${PV}.inc require gcc-cross-sdk.inc diff --git a/packages/gcc/gcc-cross-sdk_4.2.2.bb b/packages/gcc/gcc-cross-sdk_4.2.2.bb index 8057608e0d..ee4ce855af 100644 --- a/packages/gcc/gcc-cross-sdk_4.2.2.bb +++ b/packages/gcc/gcc-cross-sdk_4.2.2.bb @@ -1,4 +1,4 @@ -PR = "r5" +PR = "r6" inherit sdk diff --git a/packages/gcc/gcc-cross-sdk_4.2.3.bb b/packages/gcc/gcc-cross-sdk_4.2.3.bb index 54e7453e69..8057608e0d 100644 --- a/packages/gcc/gcc-cross-sdk_4.2.3.bb +++ b/packages/gcc/gcc-cross-sdk_4.2.3.bb @@ -1,4 +1,4 @@ -PR = "r4" +PR = "r5" inherit sdk diff --git a/packages/gcc/gcc-cross-sdk_4.2.4.bb b/packages/gcc/gcc-cross-sdk_4.2.4.bb index 29ee187785..7f3e1466ce 100644 --- a/packages/gcc/gcc-cross-sdk_4.2.4.bb +++ b/packages/gcc/gcc-cross-sdk_4.2.4.bb @@ -1,4 +1,4 @@ -PR = "r1" +PR = "r2" inherit sdk diff --git a/packages/gcc/gcc-cross-sdk_4.3.1.bb b/packages/gcc/gcc-cross-sdk_4.3.1.bb index 8057608e0d..ee4ce855af 100644 --- a/packages/gcc/gcc-cross-sdk_4.3.1.bb +++ b/packages/gcc/gcc-cross-sdk_4.3.1.bb @@ -1,4 +1,4 @@ -PR = "r5" +PR = "r6" inherit sdk diff --git a/packages/gcc/gcc-cross_3.3.3.bb b/packages/gcc/gcc-cross_3.3.3.bb index 781214f815..38488642fd 100644 --- a/packages/gcc/gcc-cross_3.3.3.bb +++ b/packages/gcc/gcc-cross_3.3.3.bb @@ -1,4 +1,4 @@ -PR = "r4" +PR = "r5" require gcc-${PV}.inc require gcc-cross.inc diff --git a/packages/gcc/gcc-cross_3.3.4.bb b/packages/gcc/gcc-cross_3.3.4.bb index bfc37e436c..7b7e51bc45 100644 --- a/packages/gcc/gcc-cross_3.3.4.bb +++ b/packages/gcc/gcc-cross_3.3.4.bb @@ -1,4 +1,4 @@ -PR="r7" +PR="r8" require gcc-${PV}.inc require gcc-cross.inc diff --git a/packages/gcc/gcc-cross_3.4.3.bb b/packages/gcc/gcc-cross_3.4.3.bb index 8a2aa6a2bd..271509b32e 100644 --- a/packages/gcc/gcc-cross_3.4.3.bb +++ b/packages/gcc/gcc-cross_3.4.3.bb @@ -1,4 +1,4 @@ -PR = "r15" +PR = "r16" require gcc-${PV}.inc require gcc-cross.inc diff --git a/packages/gcc/gcc-cross_3.4.4.bb b/packages/gcc/gcc-cross_3.4.4.bb index c7a4cfe857..515b41628c 100644 --- a/packages/gcc/gcc-cross_3.4.4.bb +++ b/packages/gcc/gcc-cross_3.4.4.bb @@ -1,4 +1,4 @@ -PR = "r10" +PR = "r11" require gcc-${PV}.inc require gcc-cross.inc diff --git a/packages/gcc/gcc-cross_4.0.0.bb b/packages/gcc/gcc-cross_4.0.0.bb index ab990e2f80..dd3fbbc000 100644 --- a/packages/gcc/gcc-cross_4.0.0.bb +++ b/packages/gcc/gcc-cross_4.0.0.bb @@ -1,4 +1,4 @@ -PR = "r6" +PR = "r7" require gcc-${PV}.inc require gcc-cross4.inc diff --git a/packages/gcc/gcc-cross_4.0.2.bb b/packages/gcc/gcc-cross_4.0.2.bb index ddecddb34a..bb4c6f0366 100644 --- a/packages/gcc/gcc-cross_4.0.2.bb +++ b/packages/gcc/gcc-cross_4.0.2.bb @@ -1,4 +1,4 @@ -PR = "r12" +PR = "r13" require gcc-${PV}.inc require gcc-cross4.inc diff --git a/packages/gcc/gcc-cross_4.1.0.bb b/packages/gcc/gcc-cross_4.1.0.bb index ad73dc7cb0..33042da5a2 100644 --- a/packages/gcc/gcc-cross_4.1.0.bb +++ b/packages/gcc/gcc-cross_4.1.0.bb @@ -1,4 +1,4 @@ -PR = "r6" +PR = "r7" require gcc-${PV}.inc require gcc-cross4.inc diff --git a/packages/gcc/gcc-cross_4.1.1.bb b/packages/gcc/gcc-cross_4.1.1.bb index dafa5fa79d..da797597d7 100644 --- a/packages/gcc/gcc-cross_4.1.1.bb +++ b/packages/gcc/gcc-cross_4.1.1.bb @@ -1,4 +1,4 @@ -PR = "r21" +PR = "r22" require gcc-${PV}.inc require gcc-cross4.inc diff --git a/packages/gcc/gcc-cross_4.1.2.bb b/packages/gcc/gcc-cross_4.1.2.bb index c9e3279ffc..b3c6437467 100644 --- a/packages/gcc/gcc-cross_4.1.2.bb +++ b/packages/gcc/gcc-cross_4.1.2.bb @@ -1,4 +1,4 @@ -PR = "r17" +PR = "r18" require gcc-${PV}.inc require gcc-cross4.inc diff --git a/packages/gcc/gcc-cross_4.2.1.bb b/packages/gcc/gcc-cross_4.2.1.bb index ece545b049..5986fad253 100644 --- a/packages/gcc/gcc-cross_4.2.1.bb +++ b/packages/gcc/gcc-cross_4.2.1.bb @@ -1,4 +1,4 @@ -PR = "r17" +PR = "r18" require gcc-${PV}.inc require gcc-cross4.inc diff --git a/packages/gcc/gcc-cross_4.2.2.bb b/packages/gcc/gcc-cross_4.2.2.bb index 38a69aafc3..fe25ae2857 100644 --- a/packages/gcc/gcc-cross_4.2.2.bb +++ b/packages/gcc/gcc-cross_4.2.2.bb @@ -1,4 +1,4 @@ -PR = "r11" +PR = "r12" require gcc-${PV}.inc require gcc-cross4.inc diff --git a/packages/gcc/gcc-cross_4.2.3.bb b/packages/gcc/gcc-cross_4.2.3.bb index 72f72835c3..4149179d8e 100644 --- a/packages/gcc/gcc-cross_4.2.3.bb +++ b/packages/gcc/gcc-cross_4.2.3.bb @@ -1,4 +1,4 @@ -PR = "r7" +PR = "r8" require gcc-${PV}.inc require gcc-cross4.inc diff --git a/packages/gcc/gcc-cross_4.2.4.bb b/packages/gcc/gcc-cross_4.2.4.bb index 036ebd96b0..e07143d0d8 100644 --- a/packages/gcc/gcc-cross_4.2.4.bb +++ b/packages/gcc/gcc-cross_4.2.4.bb @@ -1,4 +1,4 @@ -PR = "r1" +PR = "r2" require gcc-${PV}.inc require gcc-cross4.inc diff --git a/packages/gcc/gcc-cross_4.3.1.bb b/packages/gcc/gcc-cross_4.3.1.bb index 066fa32b86..5383079904 100644 --- a/packages/gcc/gcc-cross_4.3.1.bb +++ b/packages/gcc/gcc-cross_4.3.1.bb @@ -1,4 +1,4 @@ -PR = "r8" +PR = "r9" require gcc-${PV}.inc require gcc-cross4.inc diff --git a/packages/gcc/gcc-cross_csl-arm-2005q3.bb b/packages/gcc/gcc-cross_csl-arm-2005q3.bb index 8726500ce2..858459c026 100644 --- a/packages/gcc/gcc-cross_csl-arm-2005q3.bb +++ b/packages/gcc/gcc-cross_csl-arm-2005q3.bb @@ -1,4 +1,4 @@ -PR = "r4" +PR = "r5" require gcc-csl-arm-2005q3.inc require gcc-cross.inc diff --git a/packages/gcc/gcc-cross_csl-arm-2006q1.bb b/packages/gcc/gcc-cross_csl-arm-2006q1.bb index 45ace68af9..a8c662e462 100644 --- a/packages/gcc/gcc-cross_csl-arm-2006q1.bb +++ b/packages/gcc/gcc-cross_csl-arm-2006q1.bb @@ -1,4 +1,4 @@ -PR = "r3" +PR = "r4" require gcc-csl-arm-2006q1.inc require gcc-cross.inc diff --git a/packages/gcc/gcc-cross_csl-arm-2007q3.bb b/packages/gcc/gcc-cross_csl-arm-2007q3.bb index 295353a0f8..6ae42784cb 100644 --- a/packages/gcc/gcc-cross_csl-arm-2007q3.bb +++ b/packages/gcc/gcc-cross_csl-arm-2007q3.bb @@ -1,4 +1,4 @@ -PR = "r2" +PR = "r3" require gcc-csl-arm-2007q3.inc require gcc-cross4.inc diff --git a/packages/gcc/gcc-cross_csl-arm-2008q1.bb b/packages/gcc/gcc-cross_csl-arm-2008q1.bb index 01b5bdacc4..69127daea6 100644 --- a/packages/gcc/gcc-cross_csl-arm-2008q1.bb +++ b/packages/gcc/gcc-cross_csl-arm-2008q1.bb @@ -1,4 +1,4 @@ -PR = "r2" +PR = "r3" require gcc-csl-arm-2008q1.inc require gcc-cross4.inc diff --git a/packages/gcc/gcc-native_3.4.4.bb b/packages/gcc/gcc-native_3.4.4.bb index 6f74a1ea46..5f39f1bbb3 100644 --- a/packages/gcc/gcc-native_3.4.4.bb +++ b/packages/gcc/gcc-native_3.4.4.bb @@ -1,4 +1,4 @@ -PR = "r7" +PR = "r8" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc-native_3.4.6.bb b/packages/gcc/gcc-native_3.4.6.bb index 5f39f1bbb3..c3f8106d3a 100644 --- a/packages/gcc/gcc-native_3.4.6.bb +++ b/packages/gcc/gcc-native_3.4.6.bb @@ -1,4 +1,4 @@ -PR = "r8" +PR = "r9" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_3.3.3.bb b/packages/gcc/gcc_3.3.3.bb index 2df12ef9ef..9fd2b0acc3 100644 --- a/packages/gcc/gcc_3.3.3.bb +++ b/packages/gcc/gcc_3.3.3.bb @@ -1,4 +1,4 @@ -PR = "r4" +PR = "r5" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_3.3.4.bb b/packages/gcc/gcc_3.3.4.bb index 2df12ef9ef..9fd2b0acc3 100644 --- a/packages/gcc/gcc_3.3.4.bb +++ b/packages/gcc/gcc_3.3.4.bb @@ -1,4 +1,4 @@ -PR = "r4" +PR = "r5" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_3.4.3.bb b/packages/gcc/gcc_3.4.3.bb index 0f31362dc1..10d868893b 100644 --- a/packages/gcc/gcc_3.4.3.bb +++ b/packages/gcc/gcc_3.4.3.bb @@ -1,4 +1,4 @@ -PR = "r15" +PR = "r16" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_3.4.4.bb b/packages/gcc/gcc_3.4.4.bb index 7ec84b6012..5bc3761068 100644 --- a/packages/gcc/gcc_3.4.4.bb +++ b/packages/gcc/gcc_3.4.4.bb @@ -1,4 +1,4 @@ -PR = "r9" +PR = "r10" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_4.0.0.bb b/packages/gcc/gcc_4.0.0.bb index 9fd2b0acc3..1bbab50930 100644 --- a/packages/gcc/gcc_4.0.0.bb +++ b/packages/gcc/gcc_4.0.0.bb @@ -1,4 +1,4 @@ -PR = "r5" +PR = "r6" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_4.0.2.bb b/packages/gcc/gcc_4.0.2.bb index 7ec84b6012..5bc3761068 100644 --- a/packages/gcc/gcc_4.0.2.bb +++ b/packages/gcc/gcc_4.0.2.bb @@ -1,4 +1,4 @@ -PR = "r9" +PR = "r10" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_4.1.0.bb b/packages/gcc/gcc_4.1.0.bb index 9fd2b0acc3..1bbab50930 100644 --- a/packages/gcc/gcc_4.1.0.bb +++ b/packages/gcc/gcc_4.1.0.bb @@ -1,4 +1,4 @@ -PR = "r5" +PR = "r6" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_4.1.1.bb b/packages/gcc/gcc_4.1.1.bb index 9e23eb8af7..6ba5972fc1 100644 --- a/packages/gcc/gcc_4.1.1.bb +++ b/packages/gcc/gcc_4.1.1.bb @@ -1,4 +1,4 @@ -PR = "r21" +PR = "r22" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_4.1.2.bb b/packages/gcc/gcc_4.1.2.bb index a8c8b71648..dd88ccdc27 100644 --- a/packages/gcc/gcc_4.1.2.bb +++ b/packages/gcc/gcc_4.1.2.bb @@ -1,4 +1,4 @@ -PR = "r13" +PR = "r14" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_4.2.1.bb b/packages/gcc/gcc_4.2.1.bb index da1ecb9b17..a8c8b71648 100644 --- a/packages/gcc/gcc_4.2.1.bb +++ b/packages/gcc/gcc_4.2.1.bb @@ -1,4 +1,4 @@ -PR = "r12" +PR = "r13" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_4.2.2.bb b/packages/gcc/gcc_4.2.2.bb index ca22e0f69c..582fff49ac 100644 --- a/packages/gcc/gcc_4.2.2.bb +++ b/packages/gcc/gcc_4.2.2.bb @@ -1,4 +1,4 @@ -PR = "r9" +PR = "r10" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_4.2.3.bb b/packages/gcc/gcc_4.2.3.bb index 556fc74267..a2ae0c0e92 100644 --- a/packages/gcc/gcc_4.2.3.bb +++ b/packages/gcc/gcc_4.2.3.bb @@ -1,4 +1,4 @@ -PR = "r7" +PR = "r8" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_4.2.4.bb b/packages/gcc/gcc_4.2.4.bb index ff100fd892..43fa3a9ebc 100644 --- a/packages/gcc/gcc_4.2.4.bb +++ b/packages/gcc/gcc_4.2.4.bb @@ -1,4 +1,4 @@ -PR = "r1" +PR = "r2" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_4.3.1.bb b/packages/gcc/gcc_4.3.1.bb index 318ccd3775..c51d537d2d 100644 --- a/packages/gcc/gcc_4.3.1.bb +++ b/packages/gcc/gcc_4.3.1.bb @@ -1,4 +1,4 @@ -PR = "r4" +PR = "r5" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_csl-arm-2005q3.bb b/packages/gcc/gcc_csl-arm-2005q3.bb index 9fd2b0acc3..1bbab50930 100644 --- a/packages/gcc/gcc_csl-arm-2005q3.bb +++ b/packages/gcc/gcc_csl-arm-2005q3.bb @@ -1,4 +1,4 @@ -PR = "r5" +PR = "r6" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_csl-arm-2006q1.bb b/packages/gcc/gcc_csl-arm-2006q1.bb index cc7540af15..2df12ef9ef 100644 --- a/packages/gcc/gcc_csl-arm-2006q1.bb +++ b/packages/gcc/gcc_csl-arm-2006q1.bb @@ -1,4 +1,4 @@ -PR = "r3" +PR = "r4" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_csl-arm-2007q3.bb b/packages/gcc/gcc_csl-arm-2007q3.bb index 4999c6a53e..cc7540af15 100644 --- a/packages/gcc/gcc_csl-arm-2007q3.bb +++ b/packages/gcc/gcc_csl-arm-2007q3.bb @@ -1,4 +1,4 @@ -PR = "r2" +PR = "r3" require gcc-${PV}.inc require gcc-configure-target.inc diff --git a/packages/gcc/gcc_csl-arm-2008q1.bb b/packages/gcc/gcc_csl-arm-2008q1.bb index 832167ca4e..4999c6a53e 100644 --- a/packages/gcc/gcc_csl-arm-2008q1.bb +++ b/packages/gcc/gcc_csl-arm-2008q1.bb @@ -1,4 +1,4 @@ -PR = "r1" +PR = "r2" require gcc-${PV}.inc require gcc-configure-target.inc 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 + #include +-#include + +-#ifndef SHARED ++#ifndef IS_IN_rtld ++# include ++ ++# 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 $(&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 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 + + * 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 +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 +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 + 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" diff --git a/packages/meta/external-toolchain.bb b/packages/meta/external-toolchain.bb index c7e1d5d3c4..ad30ff7c50 100644 --- a/packages/meta/external-toolchain.bb +++ b/packages/meta/external-toolchain.bb @@ -6,6 +6,7 @@ PROVIDES = "\ linux-libc-headers \ virtual/${TARGET_PREFIX}gcc \ virtual/${TARGET_PREFIX}gcc-initial \ + virtual/${TARGET_PREFIX}gcc-intermediate \ virtual/${TARGET_PREFIX}binutils \ virtual/${TARGET_PREFIX}libc-for-gcc \ virtual/libc \ diff --git a/packages/sharprom-toolchain/sharprom-toolchain-native_1.0.bb b/packages/sharprom-toolchain/sharprom-toolchain-native_1.0.bb index e6e73da516..8870bcc799 100644 --- a/packages/sharprom-toolchain/sharprom-toolchain-native_1.0.bb +++ b/packages/sharprom-toolchain/sharprom-toolchain-native_1.0.bb @@ -12,6 +12,7 @@ PROVIDES_sharprom-compatible = "\ virtual/libiconv \ virtual/arm-linux-gcc \ virtual/arm-linux-libc-for-gcc \ + virtual/arm-linux-gcc-intermediate \ virtual/arm-linux-gcc-initial " PR = "r2" diff --git a/packages/uclibc/bfin-uclibc_svn.bb b/packages/uclibc/bfin-uclibc_svn.bb index 5e71ddb490..cccb5d6527 100644 --- a/packages/uclibc/bfin-uclibc_svn.bb +++ b/packages/uclibc/bfin-uclibc_svn.bb @@ -7,7 +7,7 @@ # on whether the base patches apply to the selected (SRCDATE) svn release. # UCLIBC_BASE ?= "0.9.29" -PR = "r1" +PR = "r2" PV = "${UCLIBC_BASE}+svnr${SRCREV}" require uclibc.inc diff --git a/packages/uclibc/uclibc-0.9.27/uclibc-makevars-in-quotes.patch b/packages/uclibc/uclibc-0.9.27/uclibc-makevars-in-quotes.patch new file mode 100644 index 0000000000..ce67e8f764 --- /dev/null +++ b/packages/uclibc/uclibc-0.9.27/uclibc-makevars-in-quotes.patch @@ -0,0 +1,25 @@ +--- + Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +Index: uClibc-0.9.27/Makefile +=================================================================== +--- uClibc-0.9.27.orig/Makefile 2008-07-23 20:05:34.000000000 -0700 ++++ uClibc-0.9.27/Makefile 2008-07-23 20:06:27.000000000 -0700 +@@ -243,14 +243,14 @@ endif + .PHONY: utils + ifeq ($(strip $(HAVE_SHARED)),y) + utils: +- $(MAKE) CROSS=$(CROSS) CC=$(CC) -C utils ++ $(MAKE) CROSS="$(CROSS)" CC="$(CC)" -C utils + else + utils: dummy + endif + + # Installs helper applications, such as 'ldd' and 'ldconfig' + install_utils: utils +- $(MAKE) CROSS=$(CROSS) CC=$(CC) -C utils install ++ $(MAKE) CROSS="$(CROSS)" CC="$(CC)" -C utils install + #ifeq ($(strip $(UCLIBC_HAS_LOCALE)),y) + # @$(MAKE) -C libc/misc/wchar iconv.target + # $(INSTALL) -d $(PREFIX)$(RUNTIME_PREFIX)/usr/bin; diff --git a/packages/uclibc/uclibc-0.9.28/uclibc-libgcc-eh.patch b/packages/uclibc/uclibc-0.9.28/uclibc-libgcc-eh.patch new file mode 100644 index 0000000000..0f66c1526f --- /dev/null +++ b/packages/uclibc/uclibc-0.9.28/uclibc-libgcc-eh.patch @@ -0,0 +1,38 @@ +--- + Rules.mak | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +Index: uClibc-0.9.28/Rules.mak +=================================================================== +--- uClibc-0.9.28.orig/Rules.mak 2005-08-17 15:49:49.000000000 -0700 ++++ uClibc-0.9.28/Rules.mak 2008-07-22 23:35:10.000000000 -0700 +@@ -37,7 +37,8 @@ + # will build uClibc for 'arm'. + + ifndef CROSS +-CROSS= ++TARGET_ARCH=arm ++CROSS=arm-angstrom-linux-uclibcgnueabi- + endif + CC = $(CROSS)gcc + AR = $(CROSS)ar +@@ -85,7 +86,8 @@ ifeq ($(filter $(noconfig_targets),$(MAK + endif + + ifndef CROSS +-CROSS=$(subst ",, $(strip $(CROSS_COMPILER_PREFIX))) ++TARGET_ARCH=arm ++CROSS=arm-angstrom-linux-uclibcgnueabi- + endif + + # A nifty macro to make testing gcc features easier +@@ -337,6 +339,9 @@ ASFLAGS += $(ASFLAGS_NOEXEC) + LIBGCC_CFLAGS ?= $(CFLAGS) $(CPU_CFLAGS-y) + LIBGCC:=$(shell $(CC) $(LIBGCC_CFLAGS) -print-libgcc-file-name) + LIBGCC_DIR:=$(dir $(LIBGCC)) ++ifneq ($(shell $(CC) $(LIBGCC_CFLAGS) -print-file-name=libgcc_eh.a),libgcc_eh.a) ++ LIBGCC += $(shell $(CC) $(LIBGCC_CFLAGS) -print-file-name=libgcc_eh.a) ++endif + + ######################################## + # diff --git a/packages/uclibc/uclibc-initial_0.9.26.bb b/packages/uclibc/uclibc-initial_0.9.26.bb index c29a498a96..a6a83bdce9 100644 --- a/packages/uclibc/uclibc-initial_0.9.26.bb +++ b/packages/uclibc/uclibc-initial_0.9.26.bb @@ -3,20 +3,28 @@ require uclibc_${PV}.bb FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/uclibc-${PV}', '${FILE_DIRNAME}/uclibc', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}" -DEPENDS = "linux-libc-headers" +DEPENDS = "linux-libc-headers virtual/${TARGET_PREFIX}gcc-initial" PROVIDES = "virtual/${TARGET_PREFIX}libc-initial" PACKAGES = "" do_stage() { # Install initial headers into the cross dir - make PREFIX= DEVEL_PREFIX=${UCLIBC_STAGING_PREFIX}/ \ - RUNTIME_PREFIX=${UCLIBC_STAGING_PREFIX}/ \ + make PREFIX= DEVEL_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ + RUNTIME_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ pregen install_dev + make PREFIX= DEVEL_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ + RUNTIME_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ + libc/sysdeps/linux/${TARGET_ARCH}/crt0.o \ + libc/sysdeps/linux/${TARGET_ARCH}/crti.o \ + libc/sysdeps/linux/${TARGET_ARCH}/crtn.o ln -sf include ${CROSS_DIR}/${TARGET_SYS}/sys-include # This conflicts with the c++ version of this header - rm -f ${UCLIBC_STAGING_PREFIX}/include/bits/atomicity.h + rm -f ${UCLIBC_STAGE_PREFIX}/include/bits/atomicity.h + install -m 644 libc/sysdeps/linux/${TARGET_ARCH}/crt[0in].o ${UCLIBC_STAGE_PREFIX}/lib + ${CC} -nostdlib -nostartfiles -shared -x c /dev/null \ + -o ${UCLIBC_STAGE_PREFIX}/lib/libc.so } do_install() { diff --git a/packages/uclibc/uclibc-initial_0.9.27.bb b/packages/uclibc/uclibc-initial_0.9.27.bb index c29a498a96..3aecd802af 100644 --- a/packages/uclibc/uclibc-initial_0.9.27.bb +++ b/packages/uclibc/uclibc-initial_0.9.27.bb @@ -3,20 +3,29 @@ require uclibc_${PV}.bb FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/uclibc-${PV}', '${FILE_DIRNAME}/uclibc', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}" -DEPENDS = "linux-libc-headers" +DEPENDS = "linux-libc-headers virtual/${TARGET_PREFIX}gcc-initial" PROVIDES = "virtual/${TARGET_PREFIX}libc-initial" PACKAGES = "" do_stage() { # Install initial headers into the cross dir - make PREFIX= DEVEL_PREFIX=${UCLIBC_STAGING_PREFIX}/ \ - RUNTIME_PREFIX=${UCLIBC_STAGING_PREFIX}/ \ + make PREFIX= DEVEL_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ + RUNTIME_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ pregen install_dev + make PREFIX= DEVEL_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ + RUNTIME_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ + libc/sysdeps/linux/${TARGET_ARCH}/crt0.o \ + libc/sysdeps/linux/${TARGET_ARCH}/crti.o \ + libc/sysdeps/linux/${TARGET_ARCH}/crtn.o ln -sf include ${CROSS_DIR}/${TARGET_SYS}/sys-include # This conflicts with the c++ version of this header - rm -f ${UCLIBC_STAGING_PREFIX}/include/bits/atomicity.h + rm -f ${UCLIBC_STAGE_PREFIX}/include/bits/atomicity.h + install -m 644 libc/sysdeps/linux/${TARGET_ARCH}/crt[0in].o ${UCLIBC_STAGE_PREFIX}/lib + ${CC} -nostdlib -nostartfiles -shared -x c /dev/null \ + -o ${UCLIBC_STAGE_PREFIX}/lib/libc.so + } do_install() { diff --git a/packages/uclibc/uclibc-initial_0.9.28.bb b/packages/uclibc/uclibc-initial_0.9.28.bb index c29a498a96..4bfbdb6d16 100644 --- a/packages/uclibc/uclibc-initial_0.9.28.bb +++ b/packages/uclibc/uclibc-initial_0.9.28.bb @@ -3,20 +3,29 @@ require uclibc_${PV}.bb FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/uclibc-${PV}', '${FILE_DIRNAME}/uclibc', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}" -DEPENDS = "linux-libc-headers" +DEPENDS = "linux-libc-headers virtual/${TARGET_PREFIX}gcc-initial" PROVIDES = "virtual/${TARGET_PREFIX}libc-initial" PACKAGES = "" do_stage() { # Install initial headers into the cross dir - make PREFIX= DEVEL_PREFIX=${UCLIBC_STAGING_PREFIX}/ \ - RUNTIME_PREFIX=${UCLIBC_STAGING_PREFIX}/ \ + make PREFIX= DEVEL_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ + RUNTIME_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ pregen install_dev + make PREFIX= DEVEL_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ + RUNTIME_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ + libc/sysdeps/linux/${TARGET_ARCH}/crt1.o \ + libc/sysdeps/linux/${TARGET_ARCH}/crti.o \ + libc/sysdeps/linux/${TARGET_ARCH}/crtn.o ln -sf include ${CROSS_DIR}/${TARGET_SYS}/sys-include # This conflicts with the c++ version of this header - rm -f ${UCLIBC_STAGING_PREFIX}/include/bits/atomicity.h + rm -f ${UCLIBC_STAGE_PREFIX}/include/bits/atomicity.h + install -m 644 libc/sysdeps/linux/${TARGET_ARCH}/crt[1in].o ${UCLIBC_STAGE_PREFIX}/lib + ${CC} -nostdlib -nostartfiles -shared -x c /dev/null \ + -o ${UCLIBC_STAGE_PREFIX}/lib/libc.so + } do_install() { diff --git a/packages/uclibc/uclibc-initial_0.9.29.bb b/packages/uclibc/uclibc-initial_0.9.29.bb index e75f612b88..c56e5fb2f5 100644 --- a/packages/uclibc/uclibc-initial_0.9.29.bb +++ b/packages/uclibc/uclibc-initial_0.9.29.bb @@ -3,7 +3,7 @@ require uclibc_${PV}.bb FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/uclibc-${PV}', '${FILE_DIRNAME}/uclibc', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}" -DEPENDS = "linux-libc-headers ncurses-native" +DEPENDS = "linux-libc-headers ncurses-native virtual/${TARGET_PREFIX}gcc-initial" PROVIDES = "virtual/${TARGET_PREFIX}libc-initial" PACKAGES = "" @@ -12,12 +12,19 @@ do_stage() { make PREFIX= DEVEL_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ RUNTIME_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ pregen install_dev + make PREFIX= DEVEL_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ + RUNTIME_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ + lib/crt1.o lib/crti.o lib/crtn.o install -d ${CROSS_DIR}/${TARGET_SYS} ln -sf include ${CROSS_DIR}/${TARGET_SYS}/sys-include # This conflicts with the c++ version of this header rm -f ${UCLIBC_STAGE_PREFIX}/include/bits/atomicity.h + install -m 644 lib/crt[1in].o ${UCLIBC_STAGE_PREFIX}/lib + ${CC} -nostdlib -nostartfiles -shared -x c /dev/null \ + -o ${UCLIBC_STAGE_PREFIX}/lib/libc.so + } do_install() { diff --git a/packages/uclibc/uclibc-initial_svn.bb b/packages/uclibc/uclibc-initial_svn.bb index f3496839ff..9dad654ca4 100644 --- a/packages/uclibc/uclibc-initial_svn.bb +++ b/packages/uclibc/uclibc-initial_svn.bb @@ -3,7 +3,7 @@ require uclibc_svn.bb FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/uclibc-cvs', '${FILE_DIRNAME}/uclibc', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}" -DEPENDS = "linux-libc-headers ncurses-native" +DEPENDS = "linux-libc-headers ncurses-native virtual/${TARGET_PREFIX}gcc-initial" PROVIDES = "virtual/${TARGET_PREFIX}libc-initial" PACKAGES = "" @@ -11,12 +11,18 @@ do_stage() { # Install initial headers into the cross dir make PREFIX= DEVEL_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ RUNTIME_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ - pregen install_dev + install_headers + make PREFIX= DEVEL_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ + RUNTIME_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ + lib/crt1.o lib/crti.o lib/crtn.o ln -sf include ${CROSS_DIR}/${TARGET_SYS}/sys-include # This conflicts with the c++ version of this header rm -f ${UCLIBC_STAGE_PREFIX}/include/bits/atomicity.h + install -m 644 lib/crt[1in].o ${UCLIBC_STAGE_PREFIX}/lib + ${CC} -nostdlib -nostartfiles -shared -x c /dev/null \ + -o ${UCLIBC_STAGE_PREFIX}/lib/libc.so } do_install() { diff --git a/packages/uclibc/uclibc.inc b/packages/uclibc/uclibc.inc index 861568c06e..544d760e99 100644 --- a/packages/uclibc/uclibc.inc +++ b/packages/uclibc/uclibc.inc @@ -22,7 +22,7 @@ python __anonymous () { PROVIDES += "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc" PROVIDES += "${@['virtual/libiconv', ''][bb.data.getVar('USE_NLS', d, 1) != 'yes']}" DEPENDS = "virtual/${TARGET_PREFIX}binutils \ - virtual/${TARGET_PREFIX}gcc-initial linux-libc-headers ncurses-native" + virtual/${TARGET_PREFIX}gcc-intermediate linux-libc-headers ncurses-native pax-utils-native" RDEPENDS_${PN}-dev = "linux-libc-headers-dev" # Blackfin needs a wrapper around ld @@ -73,7 +73,8 @@ UCLIBC_STAGE_PREFIX = "${STAGING_DIR_HOST}${layout_prefix}" # the CFLAGS (for when building the utils). OEMAKE_NO_CC = "'STRIPTOOL=true' 'LD=${LD}' \ 'LOCALE_DATA_FILENAME=${UCLIBC_LOCALE_FILE}'" -EXTRA_OEMAKE = "${OEMAKE_NO_CC} 'CC=${CC}' HOSTCFLAGS='-I${STAGING_INCDIR_NATIVE}'" +EXTRA_OEMAKE = "${OEMAKE_NO_CC} 'CC=${CC}' \ + 'HOSTCFLAGS=-I${STAGING_INCDIR_NATIVE}'" EXTRA_OEMAKE_task_do_populate_staging = "${OEMAKE_NO_CC}" EXTRA_OEMAKE_task_do_package = "${OEMAKE_NO_CC}" diff --git a/packages/uclibc/uclibc_0.9.26.bb b/packages/uclibc/uclibc_0.9.26.bb index 865d373a43..1c52500ee6 100644 --- a/packages/uclibc/uclibc_0.9.26.bb +++ b/packages/uclibc/uclibc_0.9.26.bb @@ -1,4 +1,4 @@ -PR = "r9" +PR = "r10" require uclibc.inc diff --git a/packages/uclibc/uclibc_0.9.27.bb b/packages/uclibc/uclibc_0.9.27.bb index d1686f5772..f730ad8a27 100644 --- a/packages/uclibc/uclibc_0.9.27.bb +++ b/packages/uclibc/uclibc_0.9.27.bb @@ -1,5 +1,5 @@ DEFAULT_PREFERENCE = "1" -PR = "r9" +PR = "r10" require uclibc.inc @@ -19,6 +19,7 @@ SRC_URI += "${PATCH_ipc_h}" SRC_URI += " file://thumb-swi.patch;patch=1" SRC_URI += " file://thumb-swp.patch;patch=1" SRC_URI += " file://arm-thumb-defined.patch;patch=1" +SRC_URI += " file://uclibc-makevars-in-quotes.patch;patch=1" # ARM thumb interworking - these changes fix various bugs in the # uclibc implementation of thumb interwork support, but they are diff --git a/packages/uclibc/uclibc_0.9.28.bb b/packages/uclibc/uclibc_0.9.28.bb index eb3bb50083..1b2fc325d5 100644 --- a/packages/uclibc/uclibc_0.9.28.bb +++ b/packages/uclibc/uclibc_0.9.28.bb @@ -1,5 +1,5 @@ DEFAULT_PREFERENCE = "1" -PR = "r13" +PR = "r14" require uclibc.inc @@ -34,6 +34,7 @@ THUMBSTUFF = " \ file://dl-startup.h.patch;patch=1 \ file://dl-string.h.patch;patch=1 \ file://dl-sysdep.h.patch;patch=1 \ + file://uclibc-libgcc-eh.patch;patch=1 \ " SRC_URI_append_arm = " ${THUMBSTUFF} " diff --git a/packages/uclibc/uclibc_0.9.29.bb b/packages/uclibc/uclibc_0.9.29.bb index 4565f7dbb4..8368903277 100644 --- a/packages/uclibc/uclibc_0.9.29.bb +++ b/packages/uclibc/uclibc_0.9.29.bb @@ -7,8 +7,8 @@ # on whether the base patches apply to the selected (SRCDATE) svn release. # UCLIBC_BASE ?= "0.9.29" -PR = "r19" -DEFAULT_PREFERENCE = "3" +PR = "r20" +DEFAULT_PREFERENCE = "1" require uclibc.inc diff --git a/packages/uclibc/uclibc_svn.bb b/packages/uclibc/uclibc_svn.bb index a357808745..f774fd90ee 100644 --- a/packages/uclibc/uclibc_svn.bb +++ b/packages/uclibc/uclibc_svn.bb @@ -8,7 +8,7 @@ # UCLIBC_BASE ?= "0.9.29" PV = "${UCLIBC_BASE}+svnr${SRCREV}" -PR = "r10" +PR = "r11" #DEFAULT_PREFERENCE is 0 (empty), releases have a preference of 1 so take # precedence. -- cgit v1.2.3