Delete dummy libc.so that was created during glibc-initial step.
authorKhem Raj <raj.khem@gmail.com>
Fri, 1 Aug 2008 21:35:52 +0000 (21:35 +0000)
committerKhem Raj <raj.khem@gmail.com>
Fri, 1 Aug 2008 21:35:52 +0000 (21:35 +0000)
This library is overwritten by a linker script file called libc.so during
complete glibc install so the packaged built after glibc is staged are fine.
But the binaries/libraries that build with glibc and depend on libc.so  in some
form see this dummy libc.so and gets things wrong.
This fix deletes the dummy libc.so before gcc-intermediate is staged. Because
the main purpose of dummy libc.so is to get gcc-intermediate built with shared
lib support. Ideally this libc.so should be deleted right after do_configure of
gcc-intermediate but gcc's configure is spread across and some configure stuff
happens during compile step. Therefore its best to delete this libc.so after
the compile step is done.

packages/gcc/gcc-cross-intermediate.inc

index 4fa1288..de260ed 100644 (file)
@@ -16,6 +16,13 @@ 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 () {
+       # get rid of dummy libc.so
+       if [ -z "`file ${STAGING_DIR_TARGET}${layout_libdir}/libc.so | grep "ASCII C program text"`" ]; then
+               rm -rf ${STAGING_DIR_TARGET}${layout_libdir}/libc.so
+       fi
+}
+
 do_install () {
        :
 }