diff options
Diffstat (limited to 'sys-kernel/mips-sources/mips-sources-4.8.15.ebuild')
-rw-r--r-- | sys-kernel/mips-sources/mips-sources-4.8.15.ebuild | 175 |
1 files changed, 175 insertions, 0 deletions
diff --git a/sys-kernel/mips-sources/mips-sources-4.8.15.ebuild b/sys-kernel/mips-sources/mips-sources-4.8.15.ebuild new file mode 100644 index 000000000000..e419d9b0a3bb --- /dev/null +++ b/sys-kernel/mips-sources/mips-sources-4.8.15.ebuild @@ -0,0 +1,175 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +# EAPI Version +EAPI="5" + +#//------------------------------------------------------------------------------ + +# Version Data +GITDATE="20161016" # 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="yes" +K_NOUSENAME="yes" +K_NOSETEXTRAVERSION="yes" +K_NOUSEPR="yes" +K_BASE_VER="4.7" +K_FROM_GIT="yes" +ETYPE="sources" + +# Inherit Eclasses +inherit kernel-2 eutils +detect_version + +# EPATCH Vars +# XXX: Required to properly apply Impact/Odyssey driver patches. +EPATCH_OPTS="-F3" + +# Version Data +F_KV="${PVR}" +BASE_KV="$(get_version_component_range 1-2).0" +[[ "${EXTRAVERSION}" = -rc* ]] && KVE="${EXTRAVERSION}" + +# Portage Vars +HOMEPAGE="http://www.linux-mips.org/ http://www.gentoo.org/" +KEYWORDS="-* ~mips" +IUSE="experimental ip27 ip28 ip30" +RDEPEND="" +DEPEND="${RDEPEND} + >=sys-devel/gcc-4.7.0 + >=sys-devel/patch-2.7.4" + +# Specify any patches or patch familes to NOT apply here. +# Use only the 4-digit number followed by a '*'. +P_EXCLUDE="" + +# Machine Support Control Variables +DO_IP22="test" # If "yes", enable IP22 support (SGI Indy, Indigo2 R4x00) +DO_IP27="yes" # IP27 support (SGI Origin) +DO_IP28="test" # IP28 support (SGI Indigo2 Impact R10000) +DO_IP30="yes" # IP30 support (SGI Octane) +DO_IP32="yes" # IP32 support (SGI O2, R5000/RM5200 Only) + +# 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 + +DESCRIPTION="Linux-Mips GIT sources for MIPS-based machines, dated ${GITDATE}" +SRC_URI="${KERNEL_URI} + mirror://gentoo/mipsgit-${BASE_KV}${KVE}-${GITDATE}.diff.xz + mirror://gentoo/${PN}-${BASE_KV}-patches-v${GENPATCHREV}.tar.xz" + +UNIPATCH_STRICTORDER="yes" +UNIPATCH_LIST="${DISTDIR}/mipsgit-${BASE_KV}${KVE}-${GITDATE}.diff.xz" + +#//------------------------------------------------------------------------------ + +# 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 +} + +#//------------------------------------------------------------------------------ + +load_eblit_funcs() { + # This is a sanity check to avoid QA issues. It prevents + # eblits from being referenced during metadata operations. + [ -n "${MIPS_SOURCES_EBLITS_LOADED}" ] && return + + # 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 v3 + eblit-include show_ip27_info v4 + eblit-include show_ip28_info v1 + eblit-include show_ip30_info v5 + eblit-include show_ip32_info v5 + + # 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 v2 + eblit-pkg postinst v2 + + # Eblit load complete + MIPS_SOURCES_EBLITS_LOADED=1 +} + +pkg_setup() { + load_eblit_funcs + pkg_setup +} + +src_unpack() { eblit-run src_unpack v7 ; } + +#//------------------------------------------------------------------------------ |