diff options
Diffstat (limited to 'recipes/uclibc/uclibc.inc')
-rw-r--r-- | recipes/uclibc/uclibc.inc | 66 |
1 files changed, 14 insertions, 52 deletions
diff --git a/recipes/uclibc/uclibc.inc b/recipes/uclibc/uclibc.inc index 88f62fa557..7779313da6 100644 --- a/recipes/uclibc/uclibc.inc +++ b/recipes/uclibc/uclibc.inc @@ -2,7 +2,7 @@ DESCRIPTION = "C library for embedded systems" LICENSE = "LGPL" SECTION = "libs" PRIORITY = "required" -INC_PR = "r32" +INC_PR = "r33" # # For now, we will skip building of a gcc package if it is a uclibc one # and our build is not a uclibc one, and we skip a glibc one if our build @@ -52,7 +52,7 @@ uclibc_baselibs = "${base_libdir}/libcrypt*.so.* ${base_libdir}/libcrypt-*.so \ FILES_${PN} = "${sysconfdir} ${uclibc_baselibs} /sbin/ldconfig \ ${libexecdir} ${datadir}/zoneinfo ${libdir}/locale" FILES_ldd = "${bindir}/ldd" -FILES_uclibc-dev += "${libdir}/*.o" +FILES_uclibc-dev_append = " ${libdir}/*.o ${libdir}/*_nonshared.a" FILES_uclibc-utils = "${bindir} ${sbindir}" FILES_uclibc-utils-dbg += "${bindir}/.debug ${sbindir}/.debug" FILES_uclibc-gconv = "${libdir}/gconv" @@ -73,7 +73,6 @@ SRC_URI = "${@['${UCLIBC_LOCALE_URI}', ''][bb.data.getVar('USE_NLS', d, 1) != 'y file://uClibc.config \ http://www.uclibc.org/downloads/uClibc-${PV}.tar.bz2 \ " -UCLIBC_STAGE_PREFIX = "${STAGING_DIR_HOST}${layout_prefix}" # do_stage barfs on a CC with whitepspace, therefore put the 'HOST_CC_ARCH' in # the CFLAGS (for when building the utils). @@ -92,6 +91,9 @@ KERNEL_HEADERS = "${STAGING_INCDIR}" # ARCH_WANTS_BIG_ENDIAN=y # ARCH_WANTS_LITTLE_ENDIAN is not set +# How to enable verbose logs: +#export VERBOSE="1" + configmangle = 's,^KERNEL_SOURCE=.*,KERNEL_SOURCE="${KERNEL_SOURCE}",g; \ s,^KERNEL_HEADERS=.*,KERNEL_HEADERS="${KERNEL_HEADERS}",g; \ s,^RUNTIME_PREFIX=.*,RUNTIME_PREFIX="/",g; \ @@ -156,69 +158,29 @@ do_configure() { yes '' | oe_runmake oldconfig } -do_stage() { - # This MUST be done first because we - # will install crt1.o in the install_dev stage and gcc needs it - - # Install into the staging dir - oe_runmake PREFIX= DEVEL_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ - RUNTIME_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ - install_dev install_runtime - - # We don't really need this - rm -f ${UCLIBC_STAGE_PREFIX}/include/.cvsignore - - # Fixup shared lib symlinks - ( cd ${UCLIBC_STAGE_PREFIX}/lib - for f in c crypt dl m nsl pthread resolv thread_db util; do - ln -sf lib${f}.so.? lib${f}.so - done - ) - - # This conflicts with the c++ version of this header - rm -f ${UCLIBC_STAGE_PREFIX}/include/bits/atomicity.h -} - do_install() { - # Tis MUST be done first because we - # will install crt1.o in the install_dev stage and gcc needs it) - oe_runmake STRIPTOOL=true PREFIX= DEVEL_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ - RUNTIME_PREFIX=${UCLIBC_STAGE_PREFIX}/ \ - install_dev install_runtime - - oe_runmake STRIPTOOL=true PREFIX=${D} DEVEL_PREFIX=${prefix}/ RUNTIME_PREFIX=/ \ + oe_runmake PREFIX=${D} DEVEL_PREFIX=${prefix}/ RUNTIME_PREFIX=/ \ install_dev install_runtime + # Need to overwrite the version from -initial + #if [ ! -e ${D}${libdir}/libc.so ]; then + # ln -s ../../lib/libc.so.0 ${D}${libdir}/libc.so + #fi + # We don't really need this in ${includedir} rm -f ${D}${prefix}/include/.cvsignore # This conflicts with the c++ version of this header rm -f ${D}${prefix}/include/bits/atomicity.h - # ugh.. uclibc doesn't like obeying our path variables. - if [ "${includedir}" != "${prefix}/include" ]; then - install -d ${D}${includedir} - mv ${D}${prefix}/include/* ${D}${includedir}/ - rmdir ${D}${prefix}/include - fi - - if [ "${libdir}" != "${prefix}/lib" ]; then - install -d ${D}${libdir} - mv ${D}${prefix}/lib/* ${D}${libdir}/ - rmdir ${D}${prefix}/lib - fi - oe_runmake "SSP_ALL_CFLAGS=${TARGET_LINK_HASH_STYLE}" utils oe_runmake STRIPTOOL=true PREFIX=${D} DEVEL_PREFIX=${prefix}/ RUNTIME_PREFIX=/ \ install_utils # oe_runstrip needs +x on files chmod +x ${D}/${base_libdir}/* - - if [ "${bindir}" != "/usr/bin" ]; then - install -d ${D}${bindir} - mv ${D}/usr/bin/* ${D}${bindir}/ - rmdir ${D}/usr/bin - fi } +get_monotonic_srcrev () { + (cd ${S}; eval `git rev-list HEAD|wc -l`) +} |