diff options
author | Joshua Kinard <kumba@gentoo.org> | 2004-08-30 22:59:20 +0000 |
---|---|---|
committer | Joshua Kinard <kumba@gentoo.org> | 2004-08-30 22:59:20 +0000 |
commit | e84ac9507491784644d00f0c87447b44d0370b48 (patch) | |
tree | 379229a2c73977b23f6218d17cf8babe7eeb0523 /sys-kernel/mips-headers/mips-headers-2.6.6-r1.ebuild | |
parent | 1/2: fix patch for pwlib (#62192, need to commit with -n...) (diff) | |
download | gentoo-2-e84ac9507491784644d00f0c87447b44d0370b48.tar.gz gentoo-2-e84ac9507491784644d00f0c87447b44d0370b48.tar.bz2 gentoo-2-e84ac9507491784644d00f0c87447b44d0370b48.zip |
Imported changes from linux26-headers, fixes Bug #61884
Diffstat (limited to 'sys-kernel/mips-headers/mips-headers-2.6.6-r1.ebuild')
-rw-r--r-- | sys-kernel/mips-headers/mips-headers-2.6.6-r1.ebuild | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/sys-kernel/mips-headers/mips-headers-2.6.6-r1.ebuild b/sys-kernel/mips-headers/mips-headers-2.6.6-r1.ebuild new file mode 100644 index 000000000000..914b55d0562f --- /dev/null +++ b/sys-kernel/mips-headers/mips-headers-2.6.6-r1.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/mips-headers/mips-headers-2.6.6-r1.ebuild,v 1.1 2004/08/30 22:59:20 kumba Exp $ + +ETYPE="headers" +inherit kernel eutils + +OKV=${PV/_/-} +CVSDATE="20040604" +EXTRAVERSION=-mipscvs-${CVSDATE} +COBALTPATCHVER="1.4" +KV="${OKV}${EXTRAVERSION}" +S=${WORKDIR}/linux-${KV} + +# What's in this kernel? + +# INCLUDED: +# 1) linux sources from kernel.org +# 2) linux-mips.org CVS snapshot diff from 04 Jun 2004 + +DESCRIPTION="Linux Headers from Linux-Mips CVS, dated ${CVSDATE}" +SRC_URI="mirror://kernel/linux/kernel/v2.6/linux-${OKV}.tar.bz2 + mirror://gentoo/mipscvs-${OKV}-${CVSDATE}.diff.bz2" +HOMEPAGE="http://www.linux-mips.org/" +LICENSE="GPL-2" +SLOT="0" +PROVIDE="virtual/os-headers" +KEYWORDS="-*" +IUSE="" + +src_unpack() { + unpack ${A} + mv ${WORKDIR}/linux-${OKV} ${S} + cd ${S} + + # Update the vanilla sources with linux-mips CVS changes + epatch ${WORKDIR}/mipscvs-${OKV}-${CVSDATE}.diff + + # Cobalt Patches + if [ "${PROFILE_ARCH}" = "cobalt" ]; then + echo -e "" + einfo ">>> Patching kernel for Cobalt support ..." + for x in ${WORKDIR}/cobalt-patches-26xx-${COBALTPATCHVER}/*.patch; do + epatch ${x} + done + fi + + # Do Stuff + kernel_universal_unpack + + # User-space patches for various things + epatch ${FILESDIR}/${PN}-2.6.6-appCompat.patch + epatch ${FILESDIR}/${PN}-2.6.3-strict-ansi-fix.patch + epatch ${FILESDIR}/${PN}-2.6.0-sysctl_h-compat.patch + epatch ${FILESDIR}/${PN}-2.6.0-fb.patch + + epatch ${FILESDIR}/${PN}-2.6.6-spaces_h-kernel.patch +} + +src_compile() { + local my_defconfig hcflags + + # Avoid issues w/ ARCH + set_arch_to_kernel + + # Imported from linux26-headers + # autoconf.h isnt generated unless it already exists. plus, we have no guarentee that + # any headers are installed on the system... + [ -f ${ROOT}/usr/include/linux/autoconf.h ] || touch ${S}/include/linux/autoconf.h + + # CFLAGS for the kernel defconfig + hcflags="-Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -I${S}/include/" + + # Set the right defconfig + if [ "${PROFILE_ARCH}" = "cobalt" ]; then + my_defconfig="cobalt_defconfig" + else + # SGI Machine? + case "$(uname -i)" in + "SGI Indy"|"SGI Indigo2"|"SGI IP22") my_defconfig="ip22_defconfig" ;; + "SGI Origin"|"SGI IP27") my_defconfig="ip27_defconfig" ;; + "SGI Octane"|"SGI IP30") my_defconfig="ip30_defconfig" ;; + "SGI O2"|"SGI IP32") my_defconfig="ip32_defconfig" ;; + esac + fi + + # Run defconfig + make ${my_defconfig} HOSTCFLAGS="${hcflags}" + + # "Prepare" certain files + make prepare HOSTCFLAGS="${hcflags}" + + # Back to normal + set_arch_to_portage +} + +src_install() { + # XXX Bug in Kernel.eclass requires this fix for now. + # XXX Remove when kernel.eclass is fixed. + # XXX 2.4 kernels symlink 'asm' to 'asm-${ARCH}' in include/ + # XXX 2.6 kernels don't, however. So we fix this here so kernel.eclass can find the include/asm folder + if [ "`KV_to_int ${OKV}`" -ge "`KV_to_int 2.6.0`" ]; then + ln -sf ${S}/include/asm-${ARCH} ${S}/include/asm + fi + + # Do normal src_install stuff + kernel_src_install + + # If this is 2.5 or 2.6 headers, then we need asm-generic too + if [ "`KV_to_int ${OKV}`" -ge "`KV_to_int 2.6.0`" ]; then + dodir /usr/include/asm-generic + cp -ax ${S}/include/asm-generic/* ${D}/usr/include/asm-generic + fi +} + +pkg_postinst() { + kernel_pkg_postinst + + einfo "Kernel headers are usually only used when recompiling glibc, as such, following the installation" + einfo "of newer headers, it is advised that you re-merge glibc as follows:" + einfo "emerge glibc" + einfo "Failure to do so will cause glibc to not make use of newer features present in the updated kernel" + einfo "headers." +} |