diff options
Diffstat (limited to 'recipes/linux-libc-headers/linux-libc-headers_2.6.18.bb')
-rw-r--r-- | recipes/linux-libc-headers/linux-libc-headers_2.6.18.bb | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/recipes/linux-libc-headers/linux-libc-headers_2.6.18.bb b/recipes/linux-libc-headers/linux-libc-headers_2.6.18.bb new file mode 100644 index 0000000000..d71b68a930 --- /dev/null +++ b/recipes/linux-libc-headers/linux-libc-headers_2.6.18.bb @@ -0,0 +1,77 @@ +require linux-libc-headers.inc + +INHIBIT_DEFAULT_DEPS = "1" +DEPENDS += "unifdef-native" +PR = "r3" + +SRC_URI = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-2.6.18.tar.bz2 \ + file://arm-syscall-define.patch;patch=1" + +S = "${WORKDIR}/linux-2.6.18" + +set_arch() { + case ${TARGET_ARCH} in + alpha*) ARCH=alpha ;; + arm*) ARCH=arm ;; + cris*) ARCH=cris ;; + hppa*) ARCH=parisc ;; + i*86*) ARCH=i386 ;; + ia64*) ARCH=ia64 ;; + mips*) ARCH=mips ;; + m68k*) ARCH=m68k ;; + powerpc*) ARCH=powerpc ;; + s390*) ARCH=s390 ;; + sh*) ARCH=sh ;; + sparc64*) ARCH=sparc64 ;; + sparc*) ARCH=sparc ;; + x86_64*) ARCH=x86_64 ;; + esac +} + +do_configure() { + set_arch + oe_runmake allnoconfig ARCH=${ARCH} +} + +do_compile () { +} + +do_install() { + set_arch + oe_runmake headers_install INSTALL_HDR_PATH=${D}${exec_prefix} ARCH=${ARCH} +} + +do_install_append_arm() { + cp include/asm-arm/procinfo.h ${D}${includedir}/asm +} + +STAGE_TEMP="${WORKDIR}/temp-staging" + +do_stage () { + set_arch + rm -rf ${STAGE_TEMP} + mkdir -p ${STAGE_TEMP} + oe_runmake headers_install INSTALL_HDR_PATH=${STAGE_TEMP}${exec_prefix} ARCH=${ARCH} + if [ "${ARCH}" == "arm" ]; then + cp include/asm-arm/procinfo.h ${STAGE_TEMP}${includedir}/asm + fi + install -d ${STAGING_INCDIR} + rm -rf ${STAGING_INCDIR}/linux ${STAGING_INCDIR}/asm ${STAGING_INCDIR}/asm-generic + cp -pfLR ${STAGE_TEMP}${includedir}/linux ${STAGING_INCDIR}/ + cp -pfLR ${STAGE_TEMP}${includedir}/asm ${STAGING_INCDIR}/ + cp -pfLR ${STAGE_TEMP}${includedir}/asm-generic ${STAGING_INCDIR}/ + # Add UTS_RELEASE to version.h. UTS_RELEASE was moved from version.h to + # utsrelease.h in order to avoid recompiling a kernel every time a localversion + # changed. Since the our headers are static and we're not compiling an + # actual kernel, re-adding UTS_RELEASE does't hurt, and it allows uclibc to + # compile with kernel headers that work with EABI on ARM + echo '#define UTS_RELEASE "2.6.18"' >> ${STAGING_INCDIR}/linux/version.h +} + +do_stage_append_nylon () { + cp -pPR include/asm-${ARCH}/* ${STAGING_INCDIR}/asm/ + cp -pPR include/asm-${ARCH}/* ${CROSS_DIR}/${TARGET_SYS}/include/asm/ + cp -pPR include/linux/* ${STAGING_INCDIR}/linux/ + cp -pPR include/linux/* ${CROSS_DIR}/${TARGET_SYS}/include/linux/ +} + |