diff options
author | Khem Raj <raj.khem@gmail.com> | 2008-08-01 21:35:52 +0000 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2008-08-01 21:35:52 +0000 |
commit | 4e7ae46ad6cc64bbca328c6a134d01b3b84ed4a4 (patch) | |
tree | 5021e5e4c36016455f480a1663ad3de8c1e9bc0a | |
parent | d456d49e1fdf767483638fa489d1248d83a82ea3 (diff) |
Delete dummy libc.so that was created during glibc-initial step.
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.
-rw-r--r-- | packages/gcc/gcc-cross-intermediate.inc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/packages/gcc/gcc-cross-intermediate.inc b/packages/gcc/gcc-cross-intermediate.inc index 4fa12886f1..de260ed981 100644 --- a/packages/gcc/gcc-cross-intermediate.inc +++ b/packages/gcc/gcc-cross-intermediate.inc @@ -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 () { : } |