aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlayman <layman@localhost>2018-12-28 22:58:38 +0000
committerAnthony G. Basile <blueness@gentoo.org>2018-12-28 18:05:57 -0500
commite5b532539496e940f4d1573a8807de7d63df4b83 (patch)
treedb385f480d8864d53234bc4a0e99a9eb755960f1
parentsys-apps/net-tools: fix the header patch (diff)
downloadmusl-e5b53253.tar.gz
musl-e5b53253.tar.bz2
musl-e5b53253.zip
sys-kernel/linux-headers: import changes from upstream
Package-Manager: Portage-2.3.51, Repoman-2.3.11 Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
-rw-r--r--sys-kernel/linux-headers/Manifest6
-rw-r--r--sys-kernel/linux-headers/linux-headers-4.14-r1.ebuild58
-rw-r--r--sys-kernel/linux-headers/linux-headers-4.15-r1.ebuild58
-rw-r--r--sys-kernel/linux-headers/linux-headers-4.16-r2.ebuild61
-rw-r--r--sys-kernel/linux-headers/linux-headers-4.17.ebuild15
-rw-r--r--sys-kernel/linux-headers/linux-headers-4.18.ebuild61
-rw-r--r--sys-kernel/linux-headers/linux-headers-4.19.ebuild61
-rw-r--r--sys-kernel/linux-headers/linux-headers-4.20.ebuild61
8 files changed, 372 insertions, 9 deletions
diff --git a/sys-kernel/linux-headers/Manifest b/sys-kernel/linux-headers/Manifest
index d7a9ac17..c8ab26c9 100644
--- a/sys-kernel/linux-headers/Manifest
+++ b/sys-kernel/linux-headers/Manifest
@@ -3,9 +3,15 @@ DIST gentoo-headers-4.14-1.tar.xz 4080 BLAKE2B 5d8bb4453d3b0b739922a86e0e45120fe
DIST gentoo-headers-4.15-1.tar.xz 4068 BLAKE2B fc99b99637a11dc0cc6b4d79be3e32242f4b4f3c86a4618b3a51839e902ebad045b335f531ca41c10a6a597111f2cf77a0ae17518fb17a8441b26f1bd98c19e7 SHA512 cb973625381ac0115344d9aa1ddd927d75f0c11961526844a9da6a0aebcd28b488a7af3b423ac8358808d998d9d00d51156780905a04c01c6c512215cad6de7d
DIST gentoo-headers-4.16-1.tar.xz 4044 BLAKE2B c35efb14266d7d7f06de79f584c6e13a700c38793d7df399e668d5de269088d8a441a10e9d0b7acc5b6d1a116343d516aba58a4823cf51845fe9913dea81cb76 SHA512 a1fdf775bc27e5db2ccf1f86f12e78a25a4127673eb0a87639d548dc6246b81e5df0e8d56c0314ba833fe82d2825f8620addd408782e2f5152fb0b056b870d7c
DIST gentoo-headers-4.17-1.tar.xz 4072 BLAKE2B 7de125ac87b0344a5ff7dfbbe3d15d62cd3364116750e35b72d9e404512267a497df1ce8c52df0ba97c836df68287fe239bf29fec25d43b11be67aa17833c097 SHA512 0a837b227b7e923232438f1961535fc9becb6ed4c95290da76631489ce318a875bd3cd12ec110dedf77026c5cb9761cf8ae5c9fcf2abd736f0f7b7249228efdd
+DIST gentoo-headers-4.18-1.tar.xz 4040 BLAKE2B fc4462bc8e59a58658c6bd2669840d7105f6bcde5e7cc2633f53ae4aaf44a67aebef24d944d9d3edb95abb4110ddeeb86a6fc0cbebcf6cbe23b59b97c16a0daf SHA512 8f58df3a5e5bf26e06c300354ec1e468f40593601e6645dc1b51491f5a678020598c1c72f72e616b499f503d98da4d4bf9cdf804a15cac73f51b7877756dd7fb
+DIST gentoo-headers-4.19-1.tar.xz 4040 BLAKE2B 4ccaf4fb6bde84f0b1f29534cf2f6effca48cb81d63b33086a1ec667069bcb57a3c3d5697c50bff8521343954d01d9c27139d62a9cf2c9f5f12bc0461441f4af SHA512 511accdfd104d9cc84b568132f1eb822f97d35120a438768c313c2cc2651197414dae7af05db81e26b32fb4febbf1e0812030fcb98395f6f65271f6605dc7bb6
+DIST gentoo-headers-4.20-1.tar.xz 4040 BLAKE2B 05f8cae4014a6f0ad926e704d5272b05228b91e29a4e14269695cd665110c054a69f0ecab5dec5d23c430cce0726aa7c5c34c85edde0df34dd0e7f8dd5ff7cb6 SHA512 19fa005b648e7dead85edc1b779595c392c28b4699cc4352e6996bbe37fb49de4d2d6b632303338e4db99a4e2e01b56ba1f3777646a416358dc509fb15623f99
DIST gentoo-headers-base-4.13.tar.xz 7951980 BLAKE2B 8b3b5d9152455b08bf06c275a69168f8a2418584058e23f784d3ab956d72b100b89d398bfeb351d8faa8285cd9ae8942726099ce9aa3fd94b8e0e92b8de1c217 SHA512 3b528e18199d43db3f51c8fb9a5a4c67b9317ea7e9b9fd82fe2cb4d704bbc1253f2af64dc79377ee8ec26511d0893409e3dddbb9a6ae11e8bb7f4ca4d8d3ac9a
DIST gentoo-headers-base-4.14.tar.xz 8017944 BLAKE2B e967a3f26fa002f62af72c165cf960e855f5d84dd105b3f136e5ae24f4cdfc9e5f8b217a83955b325ca4bd6bda0a9d4c4de02d8d79fd4aa72191bc63db96183a SHA512 2a4e83a9ee36ffa85b59ebac1e12f4f1c572825b767928a42c4748d924d04f0536bab4d9375ca68c11ad867c226f386c40c7c4d0158d1ab00c838eb5b2f9f21a
DIST gentoo-headers-base-4.15.tar.xz 8199628 BLAKE2B 79a4f694a8335ed4bf1df94ab7829f41d3476165d0ce822a13e47461d7e3ee4cdb5e88acb9960a92ba1142adeb9951c19e17405c37b80d461b8577c7d1dfa37a SHA512 7698ae90e356cb6105d3b1fc5351264774428b5caa405e8695925965ab2ff3a08c0dfe3587a69a87405ecc45c6cd3040c3a9f751d6e6dc8eddf8b28ded4e2584
DIST gentoo-headers-base-4.16-r1.tar.xz 8227040 BLAKE2B 95b2d64a614430e49d849ab54c58cbc3a850faea1bb5d9f7f43733d7b745ceb5ea3d1f8cc4dbb36c20797ae7d10bd736b99d17f5bfd0cdb90ecedb4eeb0f8610 SHA512 9b7cc82a322bd43dbf07c63d465200c87b838252e449028a363f3ff10921fe3889b503f20184168c7413d792c3d33b4324d89c89b95c8143a4a3c9c3e7e2d28e
DIST gentoo-headers-base-4.16.tar.xz 8222256 BLAKE2B a5065cb49b549ea5eff33bc3a60ed070511cc463258666c30681aceaba97a108be059e4fc175bd6ba4dd0b27cf8bab14e0a8225346811eaacb4ddf8b2ba5a147 SHA512 2a5beadc61532d23f999c24101f3ab6db5d184a7327fa26330e318ac6b5b38b14c0e73ead2f550707b4e24c1f4f1a11c306c97608d98d530978fdeb43b4d58d9
DIST gentoo-headers-base-4.17.tar.xz 7908432 BLAKE2B b0f39145db10dba1998e3facfb0565dd240ba26ce4b2744cfaaca8cfa2890f70a69cf65464163e053a05b0bf4d464f251d90f1cc266de604da2f8dc0889b34c3 SHA512 4d1f8f7a392a8ffdd1144c1d3126473f91cddfe1f750e9c7916e75aec4c571c1c3d2508c0967db12d8ed3e27623c8b2a5e2a47ff1710d55fbba91a84ec8434d4
+DIST gentoo-headers-base-4.18.tar.xz 7878256 BLAKE2B 9a97fed9ae4d16af57bb4aa069cceeb357ca79314ab57b6fbaec0dde75f9504b166a3b0017582bc00fc10b74298fcd4468332ef210e90e1e3daa4681b88e45f2 SHA512 c623b3962fe06150ecad60fa6c7c89e0ad83fad4c8886513f9948352ce0044420d8eb8ccdaa08f7bc957b892472041dd42709fbf396c93a0d0292ff7edbc713e
+DIST gentoo-headers-base-4.19.tar.xz 7956220 BLAKE2B 5b6868188b6cb505556b8f307972be6b27c0201e8287f6a2c4d0ac8bf16cfe048cb05afacf879731ba81de5e2a8c5afc4adad007e00b12efb8b2a158a666f4dd SHA512 ef0f159cb31651bf8e00c31d8ac807e64413c7bf88807e1ab4779524db10eec4726b65af0fad034a0cb2e000cd61a6008bcc174828061ffaf633c170dd09645c
+DIST gentoo-headers-base-4.20.tar.xz 8041716 BLAKE2B 09e95aedfd4288fb27ad6c1e4f53992d205e9402efb315a8c764a2836ba856c7ec3f509d30c21e656e1ca9fdeb4530d807a10e0a74e3510c8e90aa82b222bafe SHA512 705c0cf3244039ef319002f17ea702fa91673eac6bb6a790c8451cad1f16951328e1ca1e3d26043708fcdc78bfaa1ff065322947e23b41c4acb9ed2b8acba427
diff --git a/sys-kernel/linux-headers/linux-headers-4.14-r1.ebuild b/sys-kernel/linux-headers/linux-headers-4.14-r1.ebuild
new file mode 100644
index 00000000..e56f14c1
--- /dev/null
+++ b/sys-kernel/linux-headers/linux-headers-4.14-r1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+ETYPE="headers"
+H_SUPPORTEDARCH="alpha amd64 arc arm arm64 avr32 bfin cris frv hexagon hppa ia64 m32r m68k metag microblaze mips mn10300 nios2 openrisc ppc ppc64 s390 score sh sparc tile x86 xtensa"
+inherit kernel-2
+detect_version
+
+PATCH_VER="1"
+SRC_URI="mirror://gentoo/gentoo-headers-base-${PV}.tar.xz
+ ${PATCH_VER:+mirror://gentoo/gentoo-headers-${PV}-${PATCH_VER}.tar.xz}"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~x86"
+
+DEPEND="app-arch/xz-utils
+ dev-lang/perl"
+RDEPEND="!!media-sound/alsa-headers"
+
+S=${WORKDIR}/gentoo-headers-base-${PV}
+
+src_unpack() {
+ unpack ${A}
+}
+
+src_prepare() {
+ default
+
+ [[ -n ${PATCH_VER} ]] && eapply "${WORKDIR}/${PV}"/*.patch
+ eapply "${FILESDIR}"/libc-4.8-portability.patch
+}
+
+src_install() {
+ kernel-2_src_install
+
+ # hrm, build system sucks
+ find "${ED}" '(' -name '.install' -o -name '*.cmd' ')' -delete
+ find "${ED}" -depth -type d -delete 2>/dev/null
+}
+
+src_test() {
+ # Make sure no uapi/ include paths are used by accident.
+ egrep -r \
+ -e '# *include.*["<]uapi/' \
+ "${D}" && die "#include uapi/xxx detected"
+
+ einfo "Possible unescaped attribute/type usage"
+ egrep -r \
+ -e '(^|[[:space:](])(asm|volatile|inline)[[:space:](]' \
+ -e '\<([us](8|16|32|64))\>' \
+ .
+
+ einfo "Missing linux/types.h include"
+ egrep -l -r -e '__[us](8|16|32|64)' "${ED}" | xargs grep -L linux/types.h
+
+ emake ARCH=$(tc-arch-kernel) headers_check
+}
diff --git a/sys-kernel/linux-headers/linux-headers-4.15-r1.ebuild b/sys-kernel/linux-headers/linux-headers-4.15-r1.ebuild
new file mode 100644
index 00000000..253a0443
--- /dev/null
+++ b/sys-kernel/linux-headers/linux-headers-4.15-r1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+ETYPE="headers"
+H_SUPPORTEDARCH="alpha amd64 arc arm arm64 avr32 bfin cris frv hexagon hppa ia64 m32r m68k metag microblaze mips mn10300 nios2 openrisc ppc ppc64 riscv s390 score sh sparc tile x86 xtensa"
+inherit kernel-2
+detect_version
+
+PATCH_VER="1"
+SRC_URI="mirror://gentoo/gentoo-headers-base-${PV}.tar.xz
+ ${PATCH_VER:+mirror://gentoo/gentoo-headers-${PV}-${PATCH_VER}.tar.xz}"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~x86"
+
+DEPEND="app-arch/xz-utils
+ dev-lang/perl"
+RDEPEND="!!media-sound/alsa-headers"
+
+S=${WORKDIR}/gentoo-headers-base-${PV}
+
+src_unpack() {
+ unpack ${A}
+}
+
+src_prepare() {
+ default
+
+ [[ -n ${PATCH_VER} ]] && eapply "${WORKDIR}/${PV}"/*.patch
+ eapply "${FILESDIR}"/libc-4.15-portability.patch
+}
+
+src_install() {
+ kernel-2_src_install
+
+ # hrm, build system sucks
+ find "${ED}" '(' -name '.install' -o -name '*.cmd' ')' -delete
+ find "${ED}" -depth -type d -delete 2>/dev/null
+}
+
+src_test() {
+ # Make sure no uapi/ include paths are used by accident.
+ egrep -r \
+ -e '# *include.*["<]uapi/' \
+ "${D}" && die "#include uapi/xxx detected"
+
+ einfo "Possible unescaped attribute/type usage"
+ egrep -r \
+ -e '(^|[[:space:](])(asm|volatile|inline)[[:space:](]' \
+ -e '\<([us](8|16|32|64))\>' \
+ .
+
+ einfo "Missing linux/types.h include"
+ egrep -l -r -e '__[us](8|16|32|64)' "${ED}" | xargs grep -L linux/types.h
+
+ emake ARCH=$(tc-arch-kernel) headers_check
+}
diff --git a/sys-kernel/linux-headers/linux-headers-4.16-r2.ebuild b/sys-kernel/linux-headers/linux-headers-4.16-r2.ebuild
new file mode 100644
index 00000000..2f6c7c71
--- /dev/null
+++ b/sys-kernel/linux-headers/linux-headers-4.16-r2.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+ETYPE="headers"
+H_SUPPORTEDARCH="alpha amd64 arc arm arm64 avr32 bfin cris frv hexagon hppa ia64 m32r m68k metag microblaze mips mn10300 nios2 openrisc ppc ppc64 riscv s390 score sh sparc tile x86 xtensa"
+inherit kernel-2
+detect_version
+
+PATCH_VER="1"
+SRC_URI="mirror://gentoo/gentoo-headers-base-${PV}-r1.tar.xz
+ ${PATCH_VER:+mirror://gentoo/gentoo-headers-${PV}-${PATCH_VER}.tar.xz}
+ https://dev.gentoo.org/~slyfox/distfiles/gentoo-headers-base-${PV}-r1.tar.xz
+ ${PATCH_VER:+https://dev.gentoo.org/~slyfox/distfiles/gentoo-headers-${PV}-${PATCH_VER}.tar.xz}
+"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~x86"
+
+DEPEND="app-arch/xz-utils
+ dev-lang/perl"
+RDEPEND="!!media-sound/alsa-headers"
+
+S=${WORKDIR}/gentoo-headers-base-${PV}
+
+src_unpack() {
+ unpack ${A}
+}
+
+src_prepare() {
+ default
+
+ [[ -n ${PATCH_VER} ]] && eapply "${WORKDIR}/${PV}"/*.patch
+ eapply "${FILESDIR}"/libc-4.16-portability.patch
+}
+
+src_install() {
+ kernel-2_src_install
+
+ # hrm, build system sucks
+ find "${ED}" '(' -name '.install' -o -name '*.cmd' ')' -delete
+ find "${ED}" -depth -type d -delete 2>/dev/null
+}
+
+src_test() {
+ # Make sure no uapi/ include paths are used by accident.
+ egrep -r \
+ -e '# *include.*["<]uapi/' \
+ "${D}" && die "#include uapi/xxx detected"
+
+ einfo "Possible unescaped attribute/type usage"
+ egrep -r \
+ -e '(^|[[:space:](])(asm|volatile|inline)[[:space:](]' \
+ -e '\<([us](8|16|32|64))\>' \
+ .
+
+ einfo "Missing linux/types.h include"
+ egrep -l -r -e '__[us](8|16|32|64)' "${ED}" | xargs grep -L linux/types.h
+
+ emake ARCH=$(tc-arch-kernel) headers_check
+}
diff --git a/sys-kernel/linux-headers/linux-headers-4.17.ebuild b/sys-kernel/linux-headers/linux-headers-4.17.ebuild
index f8e71532..1a40ff2e 100644
--- a/sys-kernel/linux-headers/linux-headers-4.17.ebuild
+++ b/sys-kernel/linux-headers/linux-headers-4.17.ebuild
@@ -1,21 +1,18 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
ETYPE="headers"
-H_SUPPORTEDARCH="alpha amd64 arc arm arm64 avr32 bfin cris frv hexagon hppa ia64 m32r m68k metag microblaze mips mn10300 nios2 openrisc ppc ppc64 riscv s390 score sh sparc tile x86 xtensa"
+H_SUPPORTEDARCH="alpha amd64 arc arm arm64 avr32 cris frv hexagon hppa ia64 m32r m68k metag microblaze mips mn10300 nios2 openrisc ppc ppc64 riscv s390 score sh sparc x86 xtensa"
inherit kernel-2
detect_version
PATCH_VER="1"
SRC_URI="mirror://gentoo/gentoo-headers-base-${PV}.tar.xz
- ${PATCH_VER:+mirror://gentoo/gentoo-headers-${PV}-${PATCH_VER}.tar.xz}
- https://dev.gentoo.org/~slyfox/distfiles/gentoo-headers-base-${PV}.tar.xz
- ${PATCH_VER:+https://dev.gentoo.org/~slyfox/distfiles/gentoo-headers-${PV}-${PATCH_VER}.tar.xz}
-"
+ ${PATCH_VER:+mirror://gentoo/gentoo-headers-${PV}-${PATCH_VER}.tar.xz}"
-KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
DEPEND="app-arch/xz-utils
dev-lang/perl"
@@ -30,8 +27,8 @@ src_unpack() {
src_prepare() {
default
- [[ -n ${PATCH_VER} ]] && EPATCH_SUFFIX="patch" epatch "${WORKDIR}"/${PV}
- epatch "${FILESDIR}"/libc-4.16-portability.patch
+ [[ -n ${PATCH_VER} ]] && eapply "${WORKDIR}"/${PV}/*.patch
+ eapply "${FILESDIR}"/libc-4.16-portability.patch
}
src_install() {
diff --git a/sys-kernel/linux-headers/linux-headers-4.18.ebuild b/sys-kernel/linux-headers/linux-headers-4.18.ebuild
new file mode 100644
index 00000000..618a58ec
--- /dev/null
+++ b/sys-kernel/linux-headers/linux-headers-4.18.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+ETYPE="headers"
+H_SUPPORTEDARCH="alpha amd64 arc arm arm64 avr32 cris frv hexagon hppa ia64 m32r m68k metag microblaze mips mn10300 nios2 openrisc ppc ppc64 riscv s390 score sh sparc x86 xtensa"
+inherit kernel-2
+detect_version
+
+PATCH_VER="1"
+SRC_URI="mirror://gentoo/gentoo-headers-base-${PV}.tar.xz
+ https://dev.gentoo.org/~slyfox/distfiles/gentoo-headers-base-${PV}.tar.xz
+ ${PATCH_VER:+mirror://gentoo/gentoo-headers-${PV}-${PATCH_VER}.tar.xz}
+ ${PATCH_VER:+https://dev.gentoo.org/~slyfox/distfiles/gentoo-headers-${PV}-${PATCH_VER}.tar.xz}
+"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+DEPEND="app-arch/xz-utils
+ dev-lang/perl"
+RDEPEND=""
+
+S=${WORKDIR}/gentoo-headers-base-${PV}
+
+src_unpack() {
+ unpack ${A}
+}
+
+src_prepare() {
+ default
+
+ [[ -n ${PATCH_VER} ]] && eapply "${WORKDIR}"/${PV}/*.patch
+ eapply "${FILESDIR}"/libc-4.16-portability.patch
+}
+
+src_install() {
+ kernel-2_src_install
+
+ # hrm, build system sucks
+ find "${ED}" '(' -name '.install' -o -name '*.cmd' ')' -delete
+ find "${ED}" -depth -type d -delete 2>/dev/null
+}
+
+src_test() {
+ # Make sure no uapi/ include paths are used by accident.
+ egrep -r \
+ -e '# *include.*["<]uapi/' \
+ "${D}" && die "#include uapi/xxx detected"
+
+ einfo "Possible unescaped attribute/type usage"
+ egrep -r \
+ -e '(^|[[:space:](])(asm|volatile|inline)[[:space:](]' \
+ -e '\<([us](8|16|32|64))\>' \
+ .
+
+ einfo "Missing linux/types.h include"
+ egrep -l -r -e '__[us](8|16|32|64)' "${ED}" | xargs grep -L linux/types.h
+
+ emake ARCH=$(tc-arch-kernel) headers_check
+}
diff --git a/sys-kernel/linux-headers/linux-headers-4.19.ebuild b/sys-kernel/linux-headers/linux-headers-4.19.ebuild
new file mode 100644
index 00000000..618a58ec
--- /dev/null
+++ b/sys-kernel/linux-headers/linux-headers-4.19.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+ETYPE="headers"
+H_SUPPORTEDARCH="alpha amd64 arc arm arm64 avr32 cris frv hexagon hppa ia64 m32r m68k metag microblaze mips mn10300 nios2 openrisc ppc ppc64 riscv s390 score sh sparc x86 xtensa"
+inherit kernel-2
+detect_version
+
+PATCH_VER="1"
+SRC_URI="mirror://gentoo/gentoo-headers-base-${PV}.tar.xz
+ https://dev.gentoo.org/~slyfox/distfiles/gentoo-headers-base-${PV}.tar.xz
+ ${PATCH_VER:+mirror://gentoo/gentoo-headers-${PV}-${PATCH_VER}.tar.xz}
+ ${PATCH_VER:+https://dev.gentoo.org/~slyfox/distfiles/gentoo-headers-${PV}-${PATCH_VER}.tar.xz}
+"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+DEPEND="app-arch/xz-utils
+ dev-lang/perl"
+RDEPEND=""
+
+S=${WORKDIR}/gentoo-headers-base-${PV}
+
+src_unpack() {
+ unpack ${A}
+}
+
+src_prepare() {
+ default
+
+ [[ -n ${PATCH_VER} ]] && eapply "${WORKDIR}"/${PV}/*.patch
+ eapply "${FILESDIR}"/libc-4.16-portability.patch
+}
+
+src_install() {
+ kernel-2_src_install
+
+ # hrm, build system sucks
+ find "${ED}" '(' -name '.install' -o -name '*.cmd' ')' -delete
+ find "${ED}" -depth -type d -delete 2>/dev/null
+}
+
+src_test() {
+ # Make sure no uapi/ include paths are used by accident.
+ egrep -r \
+ -e '# *include.*["<]uapi/' \
+ "${D}" && die "#include uapi/xxx detected"
+
+ einfo "Possible unescaped attribute/type usage"
+ egrep -r \
+ -e '(^|[[:space:](])(asm|volatile|inline)[[:space:](]' \
+ -e '\<([us](8|16|32|64))\>' \
+ .
+
+ einfo "Missing linux/types.h include"
+ egrep -l -r -e '__[us](8|16|32|64)' "${ED}" | xargs grep -L linux/types.h
+
+ emake ARCH=$(tc-arch-kernel) headers_check
+}
diff --git a/sys-kernel/linux-headers/linux-headers-4.20.ebuild b/sys-kernel/linux-headers/linux-headers-4.20.ebuild
new file mode 100644
index 00000000..618a58ec
--- /dev/null
+++ b/sys-kernel/linux-headers/linux-headers-4.20.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+ETYPE="headers"
+H_SUPPORTEDARCH="alpha amd64 arc arm arm64 avr32 cris frv hexagon hppa ia64 m32r m68k metag microblaze mips mn10300 nios2 openrisc ppc ppc64 riscv s390 score sh sparc x86 xtensa"
+inherit kernel-2
+detect_version
+
+PATCH_VER="1"
+SRC_URI="mirror://gentoo/gentoo-headers-base-${PV}.tar.xz
+ https://dev.gentoo.org/~slyfox/distfiles/gentoo-headers-base-${PV}.tar.xz
+ ${PATCH_VER:+mirror://gentoo/gentoo-headers-${PV}-${PATCH_VER}.tar.xz}
+ ${PATCH_VER:+https://dev.gentoo.org/~slyfox/distfiles/gentoo-headers-${PV}-${PATCH_VER}.tar.xz}
+"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+DEPEND="app-arch/xz-utils
+ dev-lang/perl"
+RDEPEND=""
+
+S=${WORKDIR}/gentoo-headers-base-${PV}
+
+src_unpack() {
+ unpack ${A}
+}
+
+src_prepare() {
+ default
+
+ [[ -n ${PATCH_VER} ]] && eapply "${WORKDIR}"/${PV}/*.patch
+ eapply "${FILESDIR}"/libc-4.16-portability.patch
+}
+
+src_install() {
+ kernel-2_src_install
+
+ # hrm, build system sucks
+ find "${ED}" '(' -name '.install' -o -name '*.cmd' ')' -delete
+ find "${ED}" -depth -type d -delete 2>/dev/null
+}
+
+src_test() {
+ # Make sure no uapi/ include paths are used by accident.
+ egrep -r \
+ -e '# *include.*["<]uapi/' \
+ "${D}" && die "#include uapi/xxx detected"
+
+ einfo "Possible unescaped attribute/type usage"
+ egrep -r \
+ -e '(^|[[:space:](])(asm|volatile|inline)[[:space:](]' \
+ -e '\<([us](8|16|32|64))\>' \
+ .
+
+ einfo "Missing linux/types.h include"
+ egrep -l -r -e '__[us](8|16|32|64)' "${ED}" | xargs grep -L linux/types.h
+
+ emake ARCH=$(tc-arch-kernel) headers_check
+}