diff options
author | Khem Raj <raj.khem@gmail.com> | 2008-07-25 01:12:06 +0000 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2008-07-25 01:12:06 +0000 |
commit | e96e82cd7ee95d712e2c68f2f9540bdfe727645b (patch) | |
tree | 39cdeb09343849bef85eba68c048b9f3b670ac9b /packages/eglibc | |
parent | a3e73146adce111fe67af0886a43acbf7a654bd7 (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/eglibc')
-rw-r--r-- | packages/eglibc/eglibc-initial.inc | 16 | ||||
-rw-r--r-- | packages/eglibc/eglibc-intermediate.inc | 12 | ||||
-rw-r--r-- | packages/eglibc/eglibc-intermediate_svn.bb | 8 | ||||
-rw-r--r-- | packages/eglibc/eglibc.inc | 6 | ||||
-rw-r--r-- | packages/eglibc/eglibc_svn.bb | 2 |
5 files changed, 16 insertions, 28 deletions
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 \ |