summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorMike Pagano <mpagano@gentoo.org>2021-04-30 14:19:51 -0400
committerMike Pagano <mpagano@gentoo.org>2021-04-30 14:19:51 -0400
commit330123f3a98e3ad9ca8e49d942ee813ede0d0211 (patch)
treeb829e225839a672c42d94e8c9511245f9be4662a /eclass
parentnet-libs/grpc: revbump 1.37.1, add subslot, remove libressl flag (diff)
downloadgentoo-330123f3a98e3ad9ca8e49d942ee813ede0d0211.tar.gz
gentoo-330123f3a98e3ad9ca8e49d942ee813ede0d0211.tar.bz2
gentoo-330123f3a98e3ad9ca8e49d942ee813ede0d0211.zip
kernel-2.eclass: Simplify and streamline code for the CPU OPT patch
Signed-off-by: Mike Pagano <mpagano@gentoo.org>
Diffstat (limited to 'eclass')
-rw-r--r--eclass/kernel-2.eclass29
1 files changed, 27 insertions, 2 deletions
diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass
index 67ad4acc1fef..f1f23f6a0e46 100644
--- a/eclass/kernel-2.eclass
+++ b/eclass/kernel-2.eclass
@@ -1241,8 +1241,32 @@ unipatch() {
local GCC_MAJOR_VER=$(gcc-major-version)
local GCC_MINOR_VER=$(gcc-minor-version)
- # optimization patch for gcc < 8.X and kernel > 4.13
- if kernel_is ge 4 13 ; then
+ # this section should be the target state to handle the cpu opt
+ # patch for kernels > 4.19.189, 5.4.115, 5.10.33 and 5.11.17,
+ # 5.12.0 and gcc >= 9 The patch now handles the
+ # gcc version enabled on the system through the Kconfig file as
+ # 'depends'. The legacy section can hopefully be retired in the future
+ # Note the patch for 4.19-5.8 version are the same and the patch for
+ # 5.8+ version is the same
+ # eventually we can remove everything except the gcc ver <9 check
+ # based on stablization, time, kernel removals or a combo of all three
+ if ( kernel_is eq 4 19 && kernel_is gt 4 19 189 ) ||
+ ( kernel_is eq 5 4 && kernel_is gt 5 4 115 ) ||
+ ( kernel_is eq 5 10 && kernel_is gt 5 10 33 ) ||
+ ( kernel_is eq 5 11 && kernel_is gt 5 11 17 ) ||
+ ( kernel_is eq 5 12 && kernel_is gt 5 12 0 ); then
+ UNIPATCH_DROP+=" 5010_enable-additional-cpu-optimizations-for-gcc.patch"
+ UNIPATCH_DROP+=" 5010_enable-additional-cpu-optimizations-for-gcc-4.9.patch"
+ UNIPATCH_DROP+=" 5011_enable-cpu-optimizations-for-gcc8.patch"
+ UNIPATCH_DROP+=" 5012_enable-cpu-optimizations-for-gcc91.patch"
+ UNIPATCH_DROP+=" 5013_enable-cpu-optimizations-for-gcc10.patch"
+ if [[ ${GCC_MAJOR_VER} -lt 9 ]]; then
+ UNIPATCH_DROP+=" 5010_enable-cpu-optimizations-universal.patch"
+ fi
+ # this legacy section should be targeted for removal
+ # optimization patch for gcc < 8.X and kernel > 4.13 and < 4.19
+ elif kernel_is ge 4 13; then
+ UNIPATCH_DROP+=" 5010_enable-cpu-optimizations-universal.patch"
if [[ ${GCC_MAJOR_VER} -lt 8 ]] && [[ ${GCC_MAJOR_VER} -gt 4 ]]; then
UNIPATCH_DROP+=" 5011_enable-cpu-optimizations-for-gcc8.patch"
UNIPATCH_DROP+=" 5012_enable-cpu-optimizations-for-gcc91.patch"
@@ -1272,6 +1296,7 @@ unipatch() {
UNIPATCH_DROP+=" 5013_enable-cpu-optimizations-for-gcc10.patch"
fi
else
+ UNIPATCH_DROP+=" 5010_enable-cpu-optimizations-universal.patch"
UNIPATCH_DROP+=" 5010_enable-additional-cpu-optimizations-for-gcc.patch"
UNIPATCH_DROP+=" 5010_enable-additional-cpu-optimizations-for-gcc-4.9.patch"
UNIPATCH_DROP+=" 5011_enable-cpu-optimizations-for-gcc8.patch"