From 3a663867510f00548cb1d4db5d44d7df3aafb62c Mon Sep 17 00:00:00 2001 From: Henning Heinold Date: Sat, 3 Oct 2009 00:57:03 +0200 Subject: [PATCH] dietlibc: update to version 0.32 * switch to .inc and PR_INC --- classes/dietlibc.bbclass | 4 +- conf/checksums.ini | 4 + recipes/dietlibc/dietlibc-0.32/ccache.patch | 74 +++++++++++++++++++ recipes/dietlibc/dietlibc-0.32/diethome.patch | 24 ++++++ recipes/dietlibc/dietlibc.inc | 45 +++++++++++ recipes/dietlibc/dietlibc_0.31.bb | 51 ++----------- recipes/dietlibc/dietlibc_0.32.bb | 9 +++ 7 files changed, 164 insertions(+), 47 deletions(-) create mode 100644 recipes/dietlibc/dietlibc-0.32/ccache.patch create mode 100644 recipes/dietlibc/dietlibc-0.32/diethome.patch create mode 100644 recipes/dietlibc/dietlibc.inc create mode 100644 recipes/dietlibc/dietlibc_0.32.bb diff --git a/classes/dietlibc.bbclass b/classes/dietlibc.bbclass index 7c7b5fec81..e0a657806a 100644 --- a/classes/dietlibc.bbclass +++ b/classes/dietlibc.bbclass @@ -4,8 +4,8 @@ def dietlibc_after_parse(d): import bb # Remove the NLS cfg = oe_filter_out('--(dis|en)able-nls', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d) - # Remove shared and static and set it right - cfg += " --disable-nls --disbale-shared --enable-static" + # Remove shared enable static only + cfg += " --disable-nls --disable-shared --enable-static" bb.data.setVar('EXTRA_OECONF', cfg, d) cfg = bb.data.getVar('EXTRA_OEMAKE', d, 1) or "" cfg = oe_filter_out("\'CC=", bb.data.getVar('EXTRA_OEMAKE', d, 1) or "", d) diff --git a/conf/checksums.ini b/conf/checksums.ini index bb61d09889..67d3ea2790 100644 --- a/conf/checksums.ini +++ b/conf/checksums.ini @@ -5050,6 +5050,10 @@ sha256=dcc1809e8477b95317a7ff503cdd8b6d3f85b8d83a3245252ff47cf631523620 md5=acb98d469ee932d902fdf6de07802b7c sha256=99613d6a67f747f52e4184c613f7cba5cbb76af237c9acd04742e3ca24cf56cd +[http://kernel.org/pub/linux/libs/dietlibc/dietlibc-0.32.tar.bz2] +md5=0098761c17924c15e21d25acdda4a8b5 +sha256=6613a2cae3b39e340779735d7500d284f5a691c5ed67e59a6057e0888726e458 + [ftp://source.mvista.com/pub/xscale/pxa/diff-2.4.18-rmk7-pxa3.gz] md5=249c7a63a506d302c96be26517a70298 sha256=ca569dfa1e5cfd2f4134f3f61f667bcfab5e15c7d43c8a6e835d384ac5b31a07 diff --git a/recipes/dietlibc/dietlibc-0.32/ccache.patch b/recipes/dietlibc/dietlibc-0.32/ccache.patch new file mode 100644 index 0000000000..fb067f038f --- /dev/null +++ b/recipes/dietlibc/dietlibc-0.32/ccache.patch @@ -0,0 +1,74 @@ +Index: dietlibc-0.32/diet.c +=================================================================== +--- dietlibc-0.32.orig/diet.c 2009-03-17 00:17:58.000000000 +0100 ++++ dietlibc-0.32/diet.c 2009-10-02 14:12:14.306929201 +0200 +@@ -132,7 +132,12 @@ + } + } + { +- char *cc=argv[1]; ++ char *cc; ++ if (!strcmp(argv[1],"ccache")) { ++ cc=argv[2]; ++ } else { ++ cc=argv[1]; ++ } + char *tmp=strchr(cc,0)-2; + char *tmp2,*tmp3; + if (tmp90) error("platform name too long!\n"); + shortplatform=platform+len; +- memmove(shortplatform,argv[1],(size_t)(tmp2-cc)); ++ memmove(shortplatform,cc,(size_t)(tmp2-cc)); + platform[tmp2-cc+len]=0; + if (shortplatform[0]=='i' && shortplatform[2]=='8' && shortplatform[3]=='6') shortplatform[1]='3'; + } else { +@@ -291,6 +296,9 @@ + + dest=newargv; + *dest++=argv[1]; ++ if (strcmp(argv[1],"ccache") == 0) { ++ *dest++=argv[2]; ++ } + if (argv[2]) { + if (!strcmp(argv[2],"-V")) { + *dest++=argv[2]; +@@ -300,9 +308,9 @@ + } else if (!memcmp(argv[2],"-V",2)) { + *dest++=argv[2]; + ++argv; +- --argc; + } + } ++ + #ifndef __DYN_LIB + if (_link) { *dest++=(char*)nostdlib; *dest++=dashstatic; *dest++=dashL; } + #else +@@ -320,7 +328,15 @@ + #ifdef WANT_DYNAMIC + if (_link) { *dest++=d; } + #endif +- for (i=2; i /dev/null 2>&1 -} - -do_compile () { - oe_runmake all CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS}" prefix=${STAGING_DIR_TARGET}/lib/dietlibc - oe_runmake all ARCH="${TARGET_ARCH}" CROSS=" " prefix=${STAGING_DIR_TARGET}/lib/dietlibc -} - -#no packages needed, all binaries will be compiled with -static -PACKAGES = " " - -#otherwise the whole run scripts got broken -do_install () { - echo "moo" > /dev/null 2>&1 -} - -do_stage () { - DIETLIBC_BUILD_ARCH=`echo ${BUILD_ARCH} | sed -e s'/.86/386/'` - DIETLIBC_TARGET_ARCH=`echo ${TARGET_ARCH} | sed -e s'/.86/386/'` - rm -rf ${STAGING_DIR_TARGET}/lib/dietlibc || true - rm ${CROSS_DIR}/bin/diet || true - install -d ${STAGING_DIR_TARGET}/lib/dietlibc/lib-${DIETLIBC_TARGET_ARCH} - install -d ${STAGING_DIR_TARGET}/lib/dietlibc/include - for i in `find include -name \*.h`; do install -m 644 -D $i ${STAGING_DIR_TARGET}/lib/dietlibc/$i; done - - install -m755 bin-${DIETLIBC_BUILD_ARCH}/diet-i ${CROSS_DIR}/bin/diet - - cd bin-${DIETLIBC_TARGET_ARCH} - install -m 644 start.o libm.a libpthread.a librpc.a \ - liblatin1.a libcompat.a libcrypt.a \ - ${STAGING_DIR_TARGET}/lib/dietlibc/lib-${DIETLIBC_TARGET_ARCH} - install -m 644 dietlibc.a ${STAGING_DIR_TARGET}/lib/dietlibc/lib-${DIETLIBC_TARGET_ARCH}/libc.a -} +PR = "${INC_PR}.1" +SRC_URI += "file://ccache.patch;patch=1 \ + file://ceil.patch;patch=1 \ + file://ai_addrconfig.patch;patch=1 \ + " diff --git a/recipes/dietlibc/dietlibc_0.32.bb b/recipes/dietlibc/dietlibc_0.32.bb new file mode 100644 index 0000000000..5e644fa750 --- /dev/null +++ b/recipes/dietlibc/dietlibc_0.32.bb @@ -0,0 +1,9 @@ +require dietlibc.inc + +PR = "${INC_PR}.1" + +SRC_URI += "file://ccache.patch;patch=1 \ + file://ceil.patch;patch=1 \ + file://diethome.patch;patch=1 \ + " + -- 2.39.5