diff options
Diffstat (limited to 'sys-kernel/ck-sources/ck-sources-4.9.18.ebuild')
-rw-r--r-- | sys-kernel/ck-sources/ck-sources-4.9.18.ebuild | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/sys-kernel/ck-sources/ck-sources-4.9.18.ebuild b/sys-kernel/ck-sources/ck-sources-4.9.18.ebuild new file mode 100644 index 000000000000..98a2c4b44893 --- /dev/null +++ b/sys-kernel/ck-sources/ck-sources-4.9.18.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" +ETYPE="sources" +KEYWORDS="~amd64 ~x86" + +HOMEPAGE="https://dev.gentoo.org/~mpagano/genpatches/ + http://users.tpg.com.au/ckolivas/kernel/" + +K_WANT_GENPATCHES="base extras experimental" +K_EXP_GENPATCHES_PULL="1" +K_EXP_GENPATCHES_NOUSE="1" +K_GENPATCHES_VER="20" +K_SECURITY_UNSUPPORTED="1" +K_DEBLOB_AVAILABLE="1" + +PYTHON_COMPAT=( python2_7 ) +inherit python-any-r1 kernel-2 +detect_version +detect_arch + +DEPEND="deblob? ( ${PYTHON_DEPS} )" + +K_BRANCH_ID="${KV_MAJOR}.${KV_MINOR}" + +DESCRIPTION="Con Kolivas' high performance patchset and Gentoo's genpatches for Linux ${K_BRANCH_ID}" + +#-- If Gentoo-Sources don't follow then extra incremental patches are needed - + +XTRA_INCP_MIN="" +XTRA_INCP_MAX="" + +#-- + +CK_VERSION="1" + +CK_FILE="patch-${K_BRANCH_ID}-ck${CK_VERSION}.xz" + +CK_BASE_URL="http://ck.kolivas.org/patches/4.0" +CK_LVER_URL="${CK_BASE_URL}/${K_BRANCH_ID}/${K_BRANCH_ID}-ck${CK_VERSION}" +CK_URI="${CK_LVER_URL}/${CK_FILE}" + +# solves bug #606866 (Fix build for CONFIG_FREEZER disabled.x) +FRZR_HASH="7de569950716147ed436b27936628ee3ab5b45cc" +FRZR_FILE="${PN}-4.9-freezer-fix.patch" +FRZR_URI="https://github.com/ckolivas/linux/commit/${FRZR_HASH}.patch -> ${FRZR_FILE}" + +#-- Build extra incremental patches list -------------------------------------- + +LX_INCP_URI="" +LX_INCP_LIST="" +if [ -n "${XTRA_INCP_MIN}" ]; then + LX_INCP_URL="${KERNEL_BASE_URI}/incr" + for i in `seq ${XTRA_INCP_MIN} ${XTRA_INCP_MAX}`; do + LX_INCP[i]="patch-${K_BRANCH_ID}.${i}-$(($i+1)).bz2" + LX_INCP_URI="${LX_INCP_URI} ${LX_INCP_URL}/${LX_INCP[i]}" + LX_INCP_LIST="${LX_INCP_LIST} ${DISTDIR}/${LX_INCP[i]}" + done +fi + +#-- CK needs sometimes to patch itself... --------------------------- + +CK_INCP_URI="" +CK_INCP_LIST="" + +#-- Local patches needed for the ck-patches to apply smoothly ------- + +PRE_CK_FIX="" +POST_CK_FIX="" + +#-- + +SRC_URI="${KERNEL_URI} ${LX_INCP_URI} ${GENPATCHES_URI} ${ARCH_URI} ${CK_INCP_URI} ${CK_URI} ${FRZR_URI}" + +UNIPATCH_LIST="${LX_INCP_LIST} ${PRE_CK_FIX} ${DISTDIR}/${CK_FILE} ${CK_INCP_LIST} ${POST_CK_FIX} ${DISTDIR}/${FRZR_FILE}" +UNIPATCH_STRICTORDER="yes" + +#-- Starting with 4.8, CK patches include BFQ, so exclude genpatches experimental BFQ patches - + +K_EXP_GENPATCHES_LIST="5010_*.patch*" + +pkg_setup() { + use deblob && python-any-r1_pkg_setup + kernel-2_pkg_setup +} + +src_prepare() { + +#-- Comment out CK's EXTRAVERSION in Makefile --------------------------------- + + # linux-info eclass cannot handle recursively expanded variables in Makefile #490328 + sed -i -e 's/\(^EXTRAVERSION :=.*$\)/# \1/' "${S}/Makefile" || die + + kernel-2_src_prepare +} |