eglibc: Move away from legacy staging.
authorKhem Raj <raj.khem@gmail.com>
Thu, 6 May 2010 07:43:04 +0000 (00:43 -0700)
committerKhem Raj <raj.khem@gmail.com>
Thu, 6 May 2010 07:48:17 +0000 (00:48 -0700)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
recipes/eglibc/eglibc-initial.inc
recipes/eglibc/eglibc-stage.inc [deleted file]
recipes/eglibc/eglibc_2.10.bb
recipes/eglibc/eglibc_2.11.bb
recipes/eglibc/eglibc_2.9.bb
recipes/eglibc/eglibc_svn.bb

index 7a5a7b2..eb765df 100644 (file)
@@ -13,7 +13,7 @@ do_configure () {
        ${S}/configure --host=${TARGET_SYS} --build=${BUILD_SYS} \
                --prefix=/usr \
                --without-cvs --disable-sanity-checks \
-               --with-headers=${STAGING_DIR_TARGET}${layout_includedir} \
+               --with-headers=${STAGING_DIR_TARGET}${includedir} \
                --enable-hacker-mode --enable-addons
 }
 
@@ -21,18 +21,24 @@ do_compile () {
        :
 }
 
-do_stage () {
-       oe_runmake cross-compiling=yes install_root=${STAGING_DIR_HOST} \
-       includedir='${layout_includedir}' prefix='${layout_prefix}' install-headers \
-       install-bootstrap-headers=yes
-        oe_runmake csu/subdir_lib
+do_install () {
+       oe_runmake cross-compiling=yes install_root=${D} \
+       includedir='${includedir}' prefix='${prefix}' \
+       install-bootstrap-headers=yes install-headers
 
-        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
-}
+       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
+       mkdir -p ${D}${includedir}/gnu/
+       touch ${D}${includedir}/gnu/stubs.h
+       cp ${S}/include/features.h ${D}${includedir}/features.h
 
-do_install () {
-       :
+       if [ -e ${B}/bits/stdio_lim.h ]; then
+               cp ${B}/bits/stdio_lim.h  ${D}${includedir}/bits/
+       fi
+       mkdir -p ${D}${libdir}/
+       install -m 644 csu/crt[1in].o ${D}${libdir}
+       ${CC} -nostdlib -nostartfiles -shared -x c /dev/null \
+               -o ${D}${libdir}/libc.so
 }
diff --git a/recipes/eglibc/eglibc-stage.inc b/recipes/eglibc/eglibc-stage.inc
deleted file mode 100644 (file)
index 79ca8c8..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-do_stage() {
-    # Installing directly into staging creates some races between existing
-    # glibc-initial files and us. We could use a new DESTDIR but we may as
-    # well just copy the data installed by do_install
-    cp -pPR ${D}/* ${STAGING_DIR_HOST}/
-}
index a65a2bf..150d775 100644 (file)
@@ -96,6 +96,4 @@ do_compile () {
        )
 }
 
-require eglibc-stage.inc
-
 require eglibc-package.bbclass
index 6d78bde..63f70c2 100644 (file)
@@ -96,6 +96,4 @@ do_compile () {
        )
 }
 
-require eglibc-stage.inc
-
 require eglibc-package.bbclass
index 031f112..914bc77 100644 (file)
@@ -96,6 +96,4 @@ do_compile () {
        )
 }
 
-require eglibc-stage.inc
-
 require eglibc-package.bbclass
index f4ca256..f15160e 100644 (file)
@@ -95,6 +95,4 @@ do_compile () {
        )
 }
 
-require eglibc-stage.inc
-
 require eglibc-package.bbclass