eglibc: fix staging, SRC_URI and add a backport fix from gcc
authorKhem Raj <raj.khem@gmail.com>
Wed, 8 Aug 2007 06:20:38 +0000 (06:20 +0000)
committerKoen Kooi <koen@openembedded.org>
Wed, 8 Aug 2007 06:20:38 +0000 (06:20 +0000)
packages/glibc/eglibc-svn/.mtn2git_empty [new file with mode: 0644]
packages/glibc/eglibc-svn/export-fcntl2.patch [new file with mode: 0644]
packages/glibc/eglibc_svn.bb

diff --git a/packages/glibc/eglibc-svn/.mtn2git_empty b/packages/glibc/eglibc-svn/.mtn2git_empty
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/packages/glibc/eglibc-svn/export-fcntl2.patch b/packages/glibc/eglibc-svn/export-fcntl2.patch
new file mode 100644 (file)
index 0000000..0bf6c57
--- /dev/null
@@ -0,0 +1,11 @@
+--- libc/io/Makefile.orig      2007-08-07 17:41:33.000000000 -0700
++++ libc/io/Makefile   2007-08-07 17:42:25.000000000 -0700
+@@ -23,7 +23,7 @@ subdir       := io
+ headers := sys/stat.h bits/stat.h sys/statfs.h bits/statfs.h sys/vfs.h \
+          sys/statvfs.h bits/statvfs.h fcntl.h sys/fcntl.h bits/fcntl.h \
+-         poll.h sys/poll.h bits/poll.h \
++         poll.h sys/poll.h bits/poll.h bits/fcntl2.h \
+          utime.h ftw.h fts.h sys/sendfile.h
+ routines :=                                                           \
index bf5023c..81d5916 100644 (file)
@@ -1,10 +1,12 @@
 require glibc.inc
 
 DEFAULT_PREFERENCE = "-1"
-
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/eglibc-svn"
 PV = "2.6+svn${SRCDATE}"
 SRC_URI = "svn://svn.eglibc.org;module=trunk \
-          "
+           file://export-fcntl2.patch;patch=1 \
+           file://etc/ld.so.conf \
+           file://generate-supported.mk"
 S = "${WORKDIR}/trunk/libc"
 B = "${WORKDIR}/build-${TARGET_SYS}"
 
@@ -83,5 +85,51 @@ do_compile () {
         ) 
 }       
 
+do_stage() {
+        rm -f ${STAGING_LIBDIR}/libc.so.6
+        oe_runmake 'install_root=${STAGING_DIR}/${HOST_SYS}' \
+                   'includedir=/include' 'libdir=/lib' 'slibdir=/lib' \
+                   '${STAGING_LIBDIR}/libc.so.6' \
+                   install-headers install-lib
+
+        install -d ${STAGING_INCDIR}/gnu \
+                   ${STAGING_INCDIR}/bits \
+                   ${STAGING_INCDIR}/rpcsvc
+        install -m 0644 ${S}/include/gnu/stubs.h ${STAGING_INCDIR}/gnu/
+        install -m 0644 ${B}/bits/stdio_lim.h ${STAGING_INCDIR}/bits/
+        install -m 0644 misc/syscall-list.h ${STAGING_INCDIR}/bits/syscall.h
+        for r in ${rpcsvc}; do
+                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_LIBDIR}/ || die "failed to install $i"
+        done
+        echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${STAGING_LIBDIR}/libpthread.so
+        echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${STAGING_LIBDIR}/libc.so
+
+        rm -f ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so.6
+        oe_runmake 'install_root=${CROSS_DIR}/${TARGET_SYS}' \
+                   'includedir=/include' 'libdir=/lib' 'slibdir=/lib' \
+                   '${CROSS_DIR}/${TARGET_SYS}/lib/libc.so.6' \
+                   install-headers install-lib
+
+        install -d ${CROSS_DIR}/${TARGET_SYS}/include/gnu \
+                   ${CROSS_DIR}/${TARGET_SYS}/include/bits \
+                   ${CROSS_DIR}/${TARGET_SYS}/include/rpcsvc
+        install -m 0644 ${S}/include/gnu/stubs.h ${CROSS_DIR}/${TARGET_SYS}/include/gnu/
+        install -m 0644 ${B}/bits/stdio_lim.h ${CROSS_DIR}/${TARGET_SYS}/include/bits/
+        install -m 0644 misc/syscall-list.h ${CROSS_DIR}/${TARGET_SYS}/include/bits/syscall.h
+        for r in ${rpcsvc}; do
+                h=`echo $r|sed -e's,\.x$,.h,'`
+                install -m 0644 ${S}/sunrpc/rpcsvc/$h ${CROSS_DIR}/${TARGET_SYS}/include/rpcsvc/
+        done
+
+        for i in libc.a libc_pic.a libc_nonshared.a; do
+                install -m 0644 ${B}/$i ${CROSS_DIR}/${TARGET_SYS}/lib/ || die "failed to install $i"
+        done
+        echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libpthread.so
+        echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so
+}
 
 require glibc-package.bbclass