summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-kernel/gentoo-sources/gentoo-sources-2.4.20-r8.ebuild')
-rw-r--r--sys-kernel/gentoo-sources/gentoo-sources-2.4.20-r8.ebuild154
1 files changed, 154 insertions, 0 deletions
diff --git a/sys-kernel/gentoo-sources/gentoo-sources-2.4.20-r8.ebuild b/sys-kernel/gentoo-sources/gentoo-sources-2.4.20-r8.ebuild
new file mode 100644
index 000000000000..aef9e7a2bccf
--- /dev/null
+++ b/sys-kernel/gentoo-sources/gentoo-sources-2.4.20-r8.ebuild
@@ -0,0 +1,154 @@
+# Copyright 1999-2003 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/gentoo-sources/gentoo-sources-2.4.20-r8.ebuild,v 1.1 2003/10/21 16:44:59 plasmaroo Exp $
+
+IUSE="build crypt evms2 aavm usagi"
+
+# OKV=original kernel version, KV=patched kernel version. They can be the same.
+
+# Kernel ebuilds using the kernel.eclass can remove any patch that you
+# do not want to apply by simply setting the KERNEL_EXCLUDE shell
+# variable to the string you want to exclude (for instance
+# KERNEL_EXCLUDE="evms" would not patch any patches whose names match
+# *evms*). Kernels are only tested in the default configuration, but
+# this may be useful if you know that a particular patch is causing a
+# conflict with a patch you personally want to apply, or some other
+# similar situation.
+
+ETYPE="sources"
+
+inherit kernel
+OKV="2.4.20"
+# Documentation on the patches contained in this kernel will be installed
+# to /usr/share/doc/gentoo-sources-${PV}/patches.txt.gz
+
+DESCRIPTION="Full sources for the Gentoo Kernel."
+SRC_URI="mirror://kernel/linux/kernel/v2.4/linux-${OKV}.tar.bz2
+ mirror://gentoo/patches-${KV/8/5}.tar.bz2"
+HOMEPAGE="http://www.gentoo.org/ http://www.kernel.org/"
+LICENSE="GPL-2"
+KEYWORDS="x86 -ppc -sparc -alpha -hppa -mips -arm"
+SLOT="${KV}"
+
+
+src_unpack() {
+ unpack ${A}
+ mv linux-${OKV} linux-${KV} || die "Error moving kernel source tree to linux-${KV}"
+
+ cd ${WORKDIR}/${KV/8/5}
+
+ # This is the *ratified* aavm USE flag, enables aavm support in this kernel
+ if [ -z "`use aavm`" ]; then
+ einfo "Setting up kernel for rmap support(default)."
+ for file in *.aavm ;do
+ einfo "Dropping ${file}..."
+ rm -f ${file}
+ done
+ else
+ einfo "Setting up kernel for aavm support."
+ for file in *.rmap ;do
+ einfo "Dropping ${file}..."
+ rm -f ${file}
+ done
+ fi
+
+ # If the compiler isn't gcc>3.1 drop the gcc>=3.1 patches
+ if [[ "${COMPILER}" == "gcc3" ]]; then
+ einfo "Enabling gcc > 3.1 processor optimizations..."
+ einfo "To use them, choose the processor families labelled with (gcc>31)"
+ einfo "in \"Processor type and features -> Processor Family\""
+ else
+ einfo "Your compiler is not gcc3, dropping patches..."
+ for file in *gcc3*;do
+ einfo "Dropping ${file}..."
+ rm -f ${file}
+ done
+ fi
+
+ # This is the *ratified* evms2 USE flag, enables evms2 support
+ if [ -z "`use evms2`" ]; then
+ einfo "Setting up kernel for EVMS 1.2.1 support (default)..."
+ for file in 2* ;do
+ einfo "Dropping ${file}..."
+ rm -f ${file}
+ done
+ else
+ einfo "Setting up kernel for EVMS 2.0.1 support..."
+ ewarn "This is very beta. Please read the 'evms2' doc provided with this kernel."
+ ewarn "It is the install doc from the evms 2.0.1 tarball."
+ for file in 1* ;do
+ einfo "Dropping ${file}..."
+ rm -f ${file}
+ done
+ fi
+
+ # This is the crypt USE flag, keeps {USAGI/superfreeswan/patch-int/loop-jari}
+ if [ -z "`use crypt`" ]; then
+ einfo "No Cryptographic support, dropping patches..."
+ for file in 6* 8* ;do
+ einfo "Dropping ${file}..."
+ rm -f ${file}
+ done
+ else
+ einfo "Cryptographic patches will be applied."
+ fi
+
+ # This is the usagi USE flag, keeps USAGI, drops {superfreeswan/patch-int/loop-jari}
+ # Using USAGI will also cause you to drop all iptables ipv6 patches
+ if [ -z "`use usagi`" ]; then
+ einfo "Keeping {superfreeswan/patch-int/loop-jari} patches, dropping USAGI"
+ for file in 6* ;do
+ einfo "Dropping ${file}..."
+ rm -f ${file}
+ done
+ else
+ einfo "Keeping USAGI patch, dropping {superfreeswan/patch-int/loop-jari}"
+ for file in *.ipv6 8* ;do
+ einfo "Dropping ${file}..."
+ rm -f ${file}
+ done
+ fi
+
+ kernel_src_unpack
+
+ epatch ${FILESDIR}/security.patch1
+ epatch ${FILESDIR}/security.patch2
+ epatch ${FILESDIR}/security.patch3
+ epatch ${FILESDIR}/security.patch4
+ epatch ${FILESDIR}/gentoo-sources-2.4.20-gcc33.patch
+ epatch ${FILESDIR}/gentoo-sources-2.4.20-cs46xx-gcc33.patch
+ epatch ${FILESDIR}/gentoo-sources-2.4.20-grsec-datasize_fix.patch
+ epatch ${FILESDIR}/gentoo-sources-2.4.20-grsec-disabled.patch
+ epatch ${FILESDIR}/gentoo-sources-2.4.20-sched-interrupt.patch
+ epatch ${FILESDIR}/gentoo-sources-2.4.20-mdcount.patch
+ epatch ${FILESDIR}/gentoo-sources-2.4.20-devfs-snd-fix.patch
+ epatch ${FILESDIR}/gentoo-sources-2.4.20-ipt-realm.patch
+
+}
+
+pkg_postinst() {
+
+ kernel_pkg_postinst
+
+ echo
+ ewarn "There is no xfs support in this kernel."
+ ewarn "If you need xfs support, emerge xfs-sources."
+ echo
+ ewarn "If iptables/netfilter behaves abnormally, such as 'Invalid Argument',"
+ ewarn "you will need to re-emerge iptables to restore proper functionality."
+ echo
+ einfo "This set contains the ptrace patch as part of grsecurity."
+ echo
+ einfo "If there are issues with it, read the docs and associated help provided."
+ einfo "Next you should check http://forums.gentoo.org/ for assistance."
+ echo
+ einfo "Otherwise check http://bugs.gentoo.org/ for an existing bug."
+ einfo "Only create a new bug if you have not found one that matches your issue."
+ einfo "It is best to do an advanced search to increase search yield."
+ echo
+ einfo "Please assign bugs to x86-kernel@gentoo.org"
+ echo
+ einfo "Please read the ChangeLog and associated docs for more information."
+ echo
+
+}