blob: d7340af20f1f7253a6a6ff4e97297f97010542fc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
|
# Copyright 2018 Redcore Linux Project
# Distributed under the terms of the GNU General Public License v2
SUMMARY="Redcore Linux Project LTS Kernel Sources"
DESCRIPTION="Redcore Linux Project LTS Kernel Sources"
HOMEPAGE="https://redcorelinux.org"
DOWNLOADS="https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-${PV}.tar.xz"
LICENCES="GPL-2"
SLOT="${PV}"
PLATFORMS="~amd64"
EXTRAVERSION="redcore-lts"
KV_FULL=""${PV}"-"${EXTRAVERSION}""
MYOPTIONS=""
DEPENDENCIES="
build:
app-arch/xz
sys-apps/bc
sys-devel/make
"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/introduce-NUMA-identity-node-sched-domain.patch
"${FILES}"/k10temp-add-ZEN-support.patch
"${FILES}"/mute-pps_state_mismatch.patch
"${FILES}"/restore-SD_PREFER_SIBLING-on-MC-domains.patch
"${FILES}"/Revert-ath10k-activate-user-space-firmware-loading.patch
"${FILES}"/linux-hardened.patch
"${FILES}"/uksm-linux-hardened.patch
"${FILES}"/0001-MuQSS-version-0.162-CPU-scheduler-linux-hardened.patch
"${FILES}"/0002-Make-preemptible-kernel-default.patch
"${FILES}"/0003-Expose-vmsplit-for-our-poor-32-bit-users.patch
"${FILES}"/0004-Create-highres-timeout-variants-of-schedule_timeout-.patch
"${FILES}"/0005-Special-case-calls-of-schedule_timeout-1-to-use-the-.patch
"${FILES}"/0006-Convert-msleep-to-use-hrtimers-when-active.patch
"${FILES}"/0007-Replace-all-schedule-timeout-1-with-schedule_min_hrt.patch
"${FILES}"/0008-Replace-all-calls-to-schedule_timeout_interruptible-.patch
"${FILES}"/0009-Replace-all-calls-to-schedule_timeout_uninterruptibl.patch
"${FILES}"/0010-Don-t-use-hrtimer-overlay-when-pm_freezing-since-som.patch
"${FILES}"/0011-Make-hrtimer-granularity-and-minimum-hrtimeout-confi.patch
"${FILES}"/0012-Reinstate-default-Hz-of-100-in-combination-with-MuQS.patch
"${FILES}"/0013-Make-threaded-IRQs-optionally-the-default-which-can-.patch
"${FILES}"/0014-Swap-sucks.patch
"${FILES}"/0015-MuQSS.c-needs-irq_regs.h-to-use-get_irq_regs.patch
"${FILES}"/0016-unfuck-MuQSS-on-linux-4_14_15+.patch
"${FILES}"/0001-BFQ-v8r12-20171108.patch
"${FILES}"/0002-BFQ-v8r12-20180404.patch
"${FILES}"/0001-pkg-config.patch
"${FILES}"/0002-objtool-dont-hardcore-ar.patch
)
WORK="${WORKBASE}"/linux-"${PV}"
pkg_setup() {
export KBUILD_BUILD_USER="nexus"
export KBUILD_BUILD_HOST="nexus.redcorelinux.org"
export REAL_ARCH="$ARCH"
unset ARCH ; unset LDFLAGS #will interfere with Makefile if set
}
src_prepare() {
default
src_prepare_params=(
CC="${CC}"
HOSTCC="${CC}"
)
edo emake \
"${src_prepare_params[@]}" \
mrproper
edo sed -ri "s|^(EXTRAVERSION =).*|\1 -${EXTRAVERSION}|" Makefile
edo cp "${FILES}"/"${EXTRAVERSION}"-amd64.config .config
edo rm -rf $(find . -type f|grep -F \.orig)
}
src_compile() {
src_compile_params=(
AR="${AR}"
AS="${AS}"
CC="${CC}"
HOSTCC="${CC}"
HOSTLD="${LD}"
LD="${LD}"
NM="${NM}"
OBJCOPY="${OBJCOPY}"
OBJDUMP="${OBJDUMP}"
)
edo emake \
"${src_compile_params[@]}" \
prepare modules_prepare
}
src_install() {
dodir /usr/src/linux-"${KV_FULL}"
edo cp -ax "${WORK}"/* "${IMAGE}"usr/src/linux-"${KV_FULL}"
}
_kernel_sources_delete() {
rm -rf "${ROOT}"usr/src/linux-"${KV_FULL}"
}
pkg_postrm() {
_kernel_sources_delete
}
|