diff options
Diffstat (limited to 'sys-kernel/mips-sources/mips-sources-2.6.9-r8.ebuild')
-rw-r--r-- | sys-kernel/mips-sources/mips-sources-2.6.9-r8.ebuild | 151 |
1 files changed, 151 insertions, 0 deletions
diff --git a/sys-kernel/mips-sources/mips-sources-2.6.9-r8.ebuild b/sys-kernel/mips-sources/mips-sources-2.6.9-r8.ebuild new file mode 100644 index 000000000000..72bfc261218a --- /dev/null +++ b/sys-kernel/mips-sources/mips-sources-2.6.9-r8.ebuild @@ -0,0 +1,151 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/mips-sources/mips-sources-2.6.9-r8.ebuild,v 1.1 2005/01/06 05:20:39 kumba Exp $ + + +# Version Data +OKV=${PV/_/-} +CVSDATE="20041022" # Date of diff between kernel.org and lmo CVS +COBALTPATCHVER="1.8" # Tarball version for cobalt patches +SECPATCHVER="1.9" # Tarball version for security patches +GENPATCHVER="1.4" # Tarball version for generic patches +EXTRAVERSION="-mipscvs-${CVSDATE}" +KV="${OKV}${EXTRAVERSION}" + +# Miscellaneous stuff +S=${WORKDIR}/linux-${OKV}-${CVSDATE} + +# Eclass stuff +ETYPE="sources" +inherit kernel eutils + + +# INCLUDED: +# 1) linux sources from kernel.org +# 2) linux-mips.org CVS snapshot diff from 22 Oct 2004 +# 3) Generic Fixes +# 4) Security fixes +# 5) Patches for Cobalt support (http://www.colonel-panic.org/cobalt-mips/) +# 6) Patch for IP30 Octane Support (http://helios.et.put.poznan.pl/~sskowron/ip30/) + +HOMEPAGE="http://www.linux-mips.org/" +SLOT="${OKV}" +PROVIDE="virtual/linux-sources" +KEYWORDS="-* ~mips" +IUSE="cobalt ip30 livecd" + +DESCRIPTION="Linux-Mips CVS sources for MIPS-based machines, dated ${CVSDATE}" +SRC_URI="mirror://kernel/linux/kernel/v2.6/linux-${OKV}.tar.bz2 + mirror://gentoo/mipscvs-${OKV}-${CVSDATE}.diff.bz2 + mirror://gentoo/${PN}-security_patches-${SECPATCHVER}.tar.bz2 + mirror://gentoo/${PN}-generic_patches-${GENPATCHVER}.tar.bz2 + cobalt? ( mirror://gentoo/cobalt-patches-26xx-${COBALTPATCHVER}.tar.bz2 )" + +pkg_setup() { + # See if we're on a cobalt system (must use the cobalt-mips profile) + if use cobalt; then + echo -e "" + einfo "Please keep in mind that the 2.6 kernel will NOT boot on Cobalt" + einfo "systems that are still using the old Cobalt bootloader. In" + einfo "order to boot a 2.6 kernel on Cobalt systems, you must be using" + einfo "Peter Horton's new bootloader, which does not have the kernel" + einfo "size limitation that the older bootloader has. If you want" + einfo "to use the newer bootloader, make sure you have sys-boot/colo" + einfo "installed and setup." + echo -e "" + fi + + # See if we're using IP30 (Octane) - XXX - Not Implemented + if use ip30; then + echo -e "" + einfo "Octane Support is EXPERIMENTAL! Note the use of caps and the word" + einfo "EXPERIMENTAL. That said, while current tests of Octane support" + einfo "generally have worked well, there are some known drawbacks, including" + einfo "lack of an X driver (Octane only works in console framebuffer for" + einfo "now, but this will likely change). Also, and this is important," + einfo "but you can ONLY use ONE scsi disk in the Octane. Use of a second or" + einfo "more disks will oops the kernel. It is hoped the move to the qla1280" + einfo "scsi driver will resolve this bug, but that is in the future. For now," + einfo "the qlogicisp driver is the only thing available, and thus limits us to" + einfo "one scsi disk." + echo -e "" + einfo "Also, Octane can only be netbooted. There is no support for disk-booting" + einfo "as of yet. Disk-booting will require a 64bit Arcboot or an entirely new" + einfo "bootloader, and both are non-existant at this point in time." + echo -e "" + fi +} + +src_unpack() { + unpack ${A} + mv ${WORKDIR}/linux-${OKV} ${WORKDIR}/linux-${OKV}-${CVSDATE} + cd ${S} + + # Update the vanilla sources with linux-mips CVS changes + epatch ${WORKDIR}/mipscvs-${OKV}-${CVSDATE}.diff + + # Generic patches we always include + echo -e "" + einfo ">>> Generic Patches" + # IP32 Patches + epatch ${WORKDIR}/mips-patches/misc-2.6-ip32-onion2-gbefb-fixes-20041029.patch + epatch ${WORKDIR}/mips-patches/misc-2.6.9-ths-ip32-misc.patch + epatch ${WORKDIR}/mips-patches/misc-2.6-ip32-tweak-makefile.patch + epatch ${WORKDIR}/mips-patches/misc-2.6-ip32-fix-rm7k.patch + + # Generic + epatch ${WORKDIR}/mips-patches/misc-2.6-fix-prologue-error.patch + epatch ${WORKDIR}/mips-patches/misc-2.6-new-ramdisk-code.patch + epatch ${WORKDIR}/mips-patches/misc-2.6-kconfig-tweak + eend + + + # IP30 (Octane) Patch + if use ip30; then + echo -e "" + einfo ">>> Patching kernel for SGI Octane (IP30) support ..." + epatch ${WORKDIR}/mips-patches/misc-2.6.9-ip30-octane-support.patch + mv ${WORKDIR}/linux-${OKV}-${CVSDATE} ${WORKDIR}/linux-${OKV}-${CVSDATE}.ip30 + S="${S}.ip30" + fi + + + # Patches used in building LiveCDs /* EXPERIMENTAL */ + if use livecd; then + epatch ${WORKDIR}/mips-patches/misc-2.6-livecd-partitioned-cdroms.patch + fi + + + # Cobalt Patches + if use cobalt; then + echo -e "" + einfo ">>> Patching kernel for Cobalt support ..." + for x in ${WORKDIR}/cobalt-patches-26xx-${COBALTPATCHVER}/*.patch; do + epatch ${x} + done + cp ${WORKDIR}/cobalt-patches-26xx-${COBALTPATCHVER}/cobalt-patches.txt ${S} + mv ${WORKDIR}/linux-${OKV}-${CVSDATE} ${WORKDIR}/linux-${OKV}-${CVSDATE}.cobalt + S="${S}.cobalt" + fi + + + # Security Fixes + echo -e "" + ebegin ">>> Applying Security Fixes" + epatch ${WORKDIR}/security/CAN-2004-0883-2.6.9-smbfs_remote_overflows.patch + epatch ${WORKDIR}/security/CAN-2004-1016-dos-scm_send.patch + epatch ${WORKDIR}/security/CAN-2004-1056-2.6.9-dos_drm.patch + epatch ${WORKDIR}/security/CAN-2004-1068-2.6-af_unix-kern-mem.patch + epatch ${WORKDIR}/security/CAN-2004-1069-2.6-af_unix-network-sec.patch + epatch ${WORKDIR}/security/CAN-2004-1074-2.6-kernel_dos_aout.patch + epatch ${WORKDIR}/security/CAN-2004-1074-2.6.9-kernel_dos_vma.patch + epatch ${WORKDIR}/security/CAN-2004-1137-igmp_vuln.patch + + epatch ${WORKDIR}/security/security-2.6.9-binfmt_elf-fixes.patch + epatch ${WORKDIR}/security/security-2.6.9-mips-ptrace.patch + epatch ${WORKDIR}/security/security-2.6.9-shm_unlock.patch + eend + + + kernel_universal_unpack +} |