diff options
author | Joshua Kinard <kumba@gentoo.org> | 2009-03-24 05:33:37 +0000 |
---|---|---|
committer | Joshua Kinard <kumba@gentoo.org> | 2009-03-24 05:33:37 +0000 |
commit | e8fff37418379a031f7e4c0b0eff8a7d56368e00 (patch) | |
tree | e07b7c6a00fec6d3e1ed5e7ca820fa6e920c177d /sys-kernel | |
parent | 1.35.0-r{3,4} need boost-build-1.35.0-r2 to build. (diff) | |
download | gentoo-2-e8fff37418379a031f7e4c0b0eff8a7d56368e00.tar.gz gentoo-2-e8fff37418379a031f7e4c0b0eff8a7d56368e00.tar.bz2 gentoo-2-e8fff37418379a031f7e4c0b0eff8a7d56368e00.zip |
Update to 2.6.27.21, 2.6.28.9, and add the newly-released 2.6.29 ebuild, plus an updated src_unpack eblit to factor in a new local USE flag -- impactdebug. USE 'impactdebug' will apply a patch that enables a very-early, direct framebuffer device for Octane and IP28 systems that have an ImpactSR or SolidImpact graphics boardset. It is useful for debugging kernel problems that occur before the console or serial drivers are ready.
(Portage version: 2.1.6.10/cvs/Linux mips64)
Diffstat (limited to 'sys-kernel')
-rw-r--r-- | sys-kernel/mips-sources/ChangeLog | 19 | ||||
-rw-r--r-- | sys-kernel/mips-sources/files/eblits/src_unpack-v2.eblit | 60 | ||||
-rw-r--r-- | sys-kernel/mips-sources/metadata.xml | 2 | ||||
-rw-r--r-- | sys-kernel/mips-sources/mips-sources-2.6.27.21.ebuild (renamed from sys-kernel/mips-sources/mips-sources-2.6.27.20.ebuild) | 2 | ||||
-rw-r--r-- | sys-kernel/mips-sources/mips-sources-2.6.28.9.ebuild (renamed from sys-kernel/mips-sources/mips-sources-2.6.28.8.ebuild) | 2 | ||||
-rw-r--r-- | sys-kernel/mips-sources/mips-sources-2.6.29.ebuild | 162 |
6 files changed, 244 insertions, 3 deletions
diff --git a/sys-kernel/mips-sources/ChangeLog b/sys-kernel/mips-sources/ChangeLog index 329489822083..6ee4a5087130 100644 --- a/sys-kernel/mips-sources/ChangeLog +++ b/sys-kernel/mips-sources/ChangeLog @@ -1,6 +1,23 @@ # ChangeLog for sys-kernel/mips-sources # Copyright 2002-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/mips-sources/ChangeLog,v 1.126 2009/03/22 03:34:07 kumba Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/mips-sources/ChangeLog,v 1.127 2009/03/24 05:33:37 kumba Exp $ + +*mips-sources-2.6.29 (24 Mar 2009) +*mips-sources-2.6.28.9 (24 Mar 2009) +*mips-sources-2.6.27.21 (24 Mar 2009) + + 24 Mar 2009; Joshua Kinard <kumba@gentoo.org> + +files/eblits/src_unpack-v2.eblit, metadata.xml, + -mips-sources-2.6.27.20.ebuild, +mips-sources-2.6.27.21.ebuild, + -mips-sources-2.6.28.8.ebuild, +mips-sources-2.6.28.9.ebuild, + +mips-sources-2.6.29.ebuild: + Update to 2.6.27.21, 2.6.28.9, and add the newly-released 2.6.29 ebuild, + plus an updated src_unpack eblit to factor in a new local USE flag -- + impactdebug. USE 'impactdebug' will apply a patch that enables a + very-early, direct framebuffer device for Octane and IP28 systems that + have an ImpactSR or SolidImpact graphics boardset. It is useful for + debugging kernel problems that occur before the console or serial drivers + are ready. 22 Mar 2009; Joshua Kinard <kumba@gentoo.org> -mips-sources-2.6.27.18.ebuild, +mips-sources-2.6.27.20.ebuild, diff --git a/sys-kernel/mips-sources/files/eblits/src_unpack-v2.eblit b/sys-kernel/mips-sources/files/eblits/src_unpack-v2.eblit new file mode 100644 index 000000000000..aa46025cc0ab --- /dev/null +++ b/sys-kernel/mips-sources/files/eblits/src_unpack-v2.eblit @@ -0,0 +1,60 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/mips-sources/files/eblits/src_unpack-v2.eblit,v 1.1 2009/03/24 05:33:37 kumba Exp $ + +# Eblit to handle src_unpack. + +eblit-mips-sources-src_unpack() { + # Unpack the kernel sources, update to the latest rev (if needed), + # and apply the latest patch from linux-mips git. + kernel-2_src_unpack + + # Unpack the mips-sources patchset to ${WORKDIR}/mips-patches-${F_KV}. + echo -e "" + cd "${WORKDIR}" + unpack "${PN}-${F_KV}-patches-v${GENPATCHREV}.tar.bz2" + + # Create a new folder, patch-symlinks, and create symlinks to + # mips-patches in there. If we want to exclude a patch, we'll + # just delete the symlink instead of the actual patch. + local psym="patch-symlinks" + mkdir "${psym}" + cd "${psym}" + for x in ../mips-patches-${F_KV}/*.patch; do + ln -s "${x}" "${x##../mips-patches-*/}" + done + + # With symlinks created, setup the variables referencing external + # machine patches and if a machine USE flag is enabled, then unset + # its corresponding variable. + # See 0000_README for the patch numbers and their meanings. + local p_generic="501*" + local p_ip27="502*" p_ip28="503*" p_ip30="504*" p_ip32r10k="6001*" p_impactdebug="6002*" + use ip27 && unset p_generic p_ip27 + use ip28 && unset p_ip28 + use ip30 && unset p_generic p_ip30 + use ip32r10k && unset p_ip32r10k + use impactdebug && unset p_impactdebug + + # Remove symlinks for any patches that we don't want applied. We do + # this by looping through all the above variables, and deleting + # matching symlinks that point to the corresponding patches. + # The remaining symlinks will be applied to the kernel source. + local patchlist="${p_generic} ${p_ip27} ${p_ip28} ${p_ip30} ${p_ip32r10k} ${p_impactdebug}" + for x in $patchlist; do rm -f "./${x}"; done + + # Rename the source tree to match the linux-mips git checkout date and + # machine type. + local v="${F_KV}${EXTRAVERSION}-${GITDATE}" + for x in {ip27,ip28,ip30,cobalt}; do use ${x} && v="${v}.${x}" && break; done + mv "${WORKDIR}/linux-${F_KV}${EXTRAVERSION}" "${WORKDIR}/linux-${v}" + S="${WORKDIR}/linux-${v}" + + # Now go into the kernel source and patch it. + cd "${S}" + epatch "${WORKDIR}/${psym}"/*.patch + + # Set the EXTRAVERSION to linux-VERSION-mipsgit-GITDATE + EXTRAVERSION="${EXTRAVERSION}-mipsgit-${GITDATE}" + unpack_set_extraversion +} diff --git a/sys-kernel/mips-sources/metadata.xml b/sys-kernel/mips-sources/metadata.xml index a722807d1b3d..ce4f120398b9 100644 --- a/sys-kernel/mips-sources/metadata.xml +++ b/sys-kernel/mips-sources/metadata.xml @@ -20,6 +20,8 @@ 'Speedracer')</flag> <flag name='ip32r10k'>Enables experimental support for IP32 R10K kernels (SGI O2, 'Moosehead')</flag> + <flag name='impactdebug'>Enables use of the Impact Early Console Hack. + FOR DEBUGGING ONLY!</flag> </use> </pkgmetadata> diff --git a/sys-kernel/mips-sources/mips-sources-2.6.27.20.ebuild b/sys-kernel/mips-sources/mips-sources-2.6.27.21.ebuild index fff2b67b365b..7d63b4666788 100644 --- a/sys-kernel/mips-sources/mips-sources-2.6.27.20.ebuild +++ b/sys-kernel/mips-sources/mips-sources-2.6.27.21.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2009 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.27.20.ebuild,v 1.1 2009/03/22 03:34:07 kumba Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/mips-sources/mips-sources-2.6.27.21.ebuild,v 1.1 2009/03/24 05:33:37 kumba Exp $ # INCLUDED: # 1) linux sources from kernel.org diff --git a/sys-kernel/mips-sources/mips-sources-2.6.28.8.ebuild b/sys-kernel/mips-sources/mips-sources-2.6.28.9.ebuild index d04d3c16a212..c7f1f834d352 100644 --- a/sys-kernel/mips-sources/mips-sources-2.6.28.8.ebuild +++ b/sys-kernel/mips-sources/mips-sources-2.6.28.9.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2009 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.28.8.ebuild,v 1.1 2009/03/22 03:34:07 kumba Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/mips-sources/mips-sources-2.6.28.9.ebuild,v 1.1 2009/03/24 05:33:37 kumba Exp $ # INCLUDED: # 1) linux sources from kernel.org diff --git a/sys-kernel/mips-sources/mips-sources-2.6.29.ebuild b/sys-kernel/mips-sources/mips-sources-2.6.29.ebuild new file mode 100644 index 000000000000..61d3f3c5dfb7 --- /dev/null +++ b/sys-kernel/mips-sources/mips-sources-2.6.29.ebuild @@ -0,0 +1,162 @@ +# Copyright 1999-2009 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.29.ebuild,v 1.1 2009/03/24 05:33:37 kumba Exp $ + +# INCLUDED: +# 1) linux sources from kernel.org +# 2) linux-mips.org GIT snapshot diff +# 3) Generic Fixes +# 4) Patch for the IOC3 Metadriver (IP27, IP30) +# 5) Patch for IP30 Support +# 6) Patch for IP28 Graphics Support (SolidImpact) +# 7) Experimental patches (if needed) + +#//------------------------------------------------------------------------------ + +# Version Data +OKV=${PV/_/-} +GITDATE="20090324" # Date of diff between kernel.org and lmo GIT +GENPATCHREV="1" # Tarball revision for patches + +# Directories +S="${WORKDIR}/linux-${OKV}-${GITDATE}" +MIPS_PATCHES="${WORKDIR}/mips-patches" + +# Kernel-2 Vars +K_SECURITY_UNSUPPORTED="1" +K_NOUSENAME="0" +K_NOUSEPR="0" +K_USEPV="0" +ETYPE="sources" + +# Inherit Eclasses +inherit kernel-2 eutils +detect_version + +# Version Data +F_KV="${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}" +[[ "${EXTRAVERSION}" = -rc* ]] && KVE="${EXTRAVERSION}" + +# Portage Vars +HOMEPAGE="http://www.linux-mips.org/ http://www.gentoo.org/" +SLOT="${OKV}" +PROVIDE="virtual/linux-sources virtual/alsa" +KEYWORDS="-* ~mips" +IUSE="cobalt ip27 ip28 ip30 ip32r10k impactdebug" +DEPEND=">=sys-devel/gcc-4.1.1" +RDEPEND="" + +# Machine Support Control Variables +DO_IP22="yes" # If "yes", enable IP22 support (SGI Indy, Indigo2 R4x00) +DO_IP27="yes" # IP27 support (SGI Origin) +DO_IP28="yes" # IP28 support (SGI Indigo2 Impact R10000) +DO_IP30="yes" # IP30 support (SGI Octane) +DO_IP32="yes" # IP32 support (SGI O2, R5000/RM5200 Only) +DO_CBLT="yes" # Cobalt Support (Cobalt Microsystems) + +# Machine Stable Version Variables +SV_IP22="" # If set && DO_IP22 == "no", indicates last "good" IP22 version +SV_IP27="" # DO_IP27 == "no", IP27 +SV_IP28="" # DO_IP28 == "no", IP28 +SV_IP30="" # DO_IP30 == "no", IP30 +SV_IP32="" # DO_IP32 == "no", IP32 +SV_CBLT="" # DO_CBLT == "no", Cobalt + + +DESCRIPTION="Linux-Mips GIT sources for MIPS-based machines, dated ${GITDATE}" +SRC_URI="${KERNEL_URI} + mirror://gentoo/mipsgit-${F_KV}${KVE}-${GITDATE}.diff.bz2 + mirror://gentoo/${PN}-${F_KV}-patches-v${GENPATCHREV}.tar.bz2" + + +UNIPATCH_STRICTORDER="1" +UNIPATCH_LIST="${DISTDIR}/mipsgit-${F_KV}${KVE}-${GITDATE}.diff.bz2" + +#//------------------------------------------------------------------------------ + +# Eblit Handling Functions +# +# They'll likely be superseded someday by better ideas, possibly elibs. + +# eblit-core +# Usage: <function> [version] +# Main eblit engine +eblit-core() { + local e v func=$1 ver=$2 + for v in ${ver:+-}${ver} -${PVR} -${PV} "" ; do + e="${FILESDIR}/eblits/${func}${v}.eblit" + if [[ -e ${e} ]] ; then + . "${e}" + [[ ${func} == pkg_* ]] && eval "${func}() { eblit-run ${func} ${ver} ; }" + return 0 + fi + done + return 1 +} + +# eblit-include +# Usage: [--skip] <function> [version] +# Includes an "eblit" -- a chunk of common code among ebuilds in a given +# package so that its functions can be sourced and utilized within the +# ebuild. +eblit-include() { + local skipable=false r=0 + [[ $1 == "--skip" ]] && skipable=true && shift + [[ $1 == pkg_* ]] && skipable=true + + [[ -z $1 ]] && die "Usage: eblit-include <function> [version]" + eblit-core $1 $2 + r="$?" + ${skipable} && return 0 + [[ "$r" -gt "0" ]] && die "Could not locate requested eblit '$1' in ${FILESDIR}/eblits/" +} + +# eblit-run-maybe +# Usage: <function> +# Runs a function if it is defined in an eblit +eblit-run-maybe() { + [[ $(type -t "$@") == "function" ]] && "$@" +} + +# eblit-run +# Usage: <function> [version] +# Runs a function defined in an eblit +eblit-run() { + eblit-include --skip common "${*:2}" + eblit-include "$@" + eblit-run-maybe eblit-$1-pre + eblit-${PN}-$1 + eblit-run-maybe eblit-$1-post +} + +# eblit-pkg +# Usage: <phase> [version] +# Runs the pkg_* functions AND evals them so they're included in the binpkgs +eblit-pkg() { + [[ -z $1 ]] && die "Usage: eblit-pkg <phase> [version]" + eblit-core pkg_$1 $2 +} + +#//------------------------------------------------------------------------------ + +# All are in ${FILESDIR}/eblits +# If a message for a given machine needs to change, +# then we create a new eblit and increment the +# version and reference it here. +eblit-include err_disabled_mach v1 +eblit-include err_only_one_mach_allowed v1 +eblit-include show_ip22_info v1 +eblit-include show_ip27_info v1 +eblit-include show_ip28_info v1 +eblit-include show_ip30_info v1 +eblit-include show_ip32_info v1 +eblit-include show_cobalt_info v1 + +# This makes sure pkg_setup & pkg_postinst gets into any binpkg. +# Neccessary because we can't guarantee FILESDIR is around for binpkgs. +eblit-pkg setup v1 +eblit-pkg postinst v1 + +src_unpack() { eblit-run src_unpack v2 ; } + +#//------------------------------------------------------------------------------ |