75 lines
2.1 KiB
Bash
75 lines
2.1 KiB
Bash
# Copyright 1999-2015 Gentoo Foundation
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
# $Id$
|
|
|
|
EAPI="5"
|
|
ETYPE="sources"
|
|
K_DEBLOB_AVAILABLE="0"
|
|
inherit kernel-2 subversion git-r3
|
|
detect_version
|
|
detect_arch
|
|
|
|
KEYWORDS=""
|
|
HOMEPAGE="https://dev.gentoo.org/~mpagano/genpatches"
|
|
IUSE="deblob experimental"
|
|
|
|
DESCRIPTION="Full sources including the Gentoo patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree"
|
|
SRC_URI="https://www.kernel.org/pub/linux/kernel/v3.x/linux-${KV_MAJOR}.${KV_MINOR}.tar.xz ${ARCH_URI}"
|
|
ESVN_REPO_URI="svn://anonsvn.gentoo.org/linux-patches/genpatches-2.6/trunk/${KV_MAJOR}.${KV_MINOR}"
|
|
EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git
|
|
https://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git
|
|
https://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git"
|
|
|
|
S="${WORKDIR}/linux-${KV_MAJOR}.${KV_MINOR}.9999"
|
|
|
|
UNIPATCH_DOCS="${UNIPATCH_DOCS} ../work/0000_README"
|
|
|
|
pkg_postinst() {
|
|
kernel-2_pkg_postinst
|
|
einfo "For more info on this patchset, and how to report problems, see:"
|
|
einfo "${HOMEPAGE}"
|
|
}
|
|
|
|
pkg_postrm() {
|
|
kernel-2_pkg_postrm
|
|
}
|
|
|
|
src_unpack() {
|
|
unpack ${A}
|
|
|
|
mv "${WORKDIR}/linux-${KV_MAJOR}.${KV_MINOR}" "${S}" || die
|
|
cd "${S}" || die
|
|
|
|
subversion_src_unpack
|
|
EGIT_CHECKOUT_DIR="${WORKDIR}/stable-queue" git-r3_src_unpack
|
|
}
|
|
|
|
src_prepare() {
|
|
# First do previous versions, ...
|
|
for p in 1[0123]*.patch* ; do
|
|
UNIPATCH_LIST+=" ${p}"
|
|
done
|
|
unipatch "${UNIPATCH_LIST}"
|
|
|
|
# ... then do the stable queue, as they are not ordered by name; we apply them one by one ...
|
|
local patch_dir="${WORKDIR}/stable-queue/queue-${KV_MAJOR}.${KV_MINOR}"
|
|
for p in $(cat ${patch_dir}/series | tr '\n' ' ') ; do
|
|
if [[ -f "${patch_dir}/${p}" ]] ; then
|
|
UNIPATCH_LIST="${patch_dir}/${p}"
|
|
unipatch "${UNIPATCH_LIST}"
|
|
fi
|
|
done
|
|
|
|
# ... and finally do the rest of the genpatches.
|
|
UNIPATCH_LIST=""
|
|
for p in 1[4-9]*.patch* [2-4]*.patch* 50*.patch* ; do
|
|
if ! use experimental ; then
|
|
[[ ${p} == "50"*_*.patch* ]] && continue
|
|
fi
|
|
UNIPATCH_LIST+=" ${p}"
|
|
done
|
|
unipatch "${UNIPATCH_LIST}"
|
|
|
|
rm *.patch* || die
|
|
mv 0000_README ../ || die
|
|
}
|