blob: 22b39e62d44771299a30f477986ea71f1daf3a0b (
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
|
#!/bin/env bash
_major_ver=$(echo $pkgver | cut -d '.' -f 1-2)
pkgbase="${pkgbase}-cpu-opt"
pkgdesc="${pkgdesc} (with CPU optimizations patch)"
sources+=("enable-cpu-optimizations-universal.patch::https://gitweb.gentoo.org/proj/linux-patches.git/plain/5013_enable-cpu-optimizations-universal.patch?h=${_major_ver}")
function configure_arch() {
microarch=$(echo -march=x86-64 $CFLAGS | sed -r 's/.*-march=([a-z0-9-]+).*/\1/')
echo "Prepare for ${microarch} microarchitecture..."
_config_param_name=""
case "$microarch" in
native|k6|k7|k8|k10|bulldozer|piledriver|steamroller|excavator|atom|nehalem|westmere|silvermont|goldmont|sandybridge|ivybridge|haswell|broadwell|skylake|icelake|core2)
_config_param_name="M$(echo $microarch | awk '{ print toupper($0) }')";;
znver1) _config_param_name="MZEN";;
znver2) _config_param_name="MZEN2";;
znver3) _config_param_name="MZEN3";;
x86-64-v2) _config_param_name="GENERIC_CPU2";;
x86-64-v3) _config_param_name="GENERIC_CPU3";;
x86-64-v4) _config_param_name="GENERIC_CPU4";;
*)
echo "Unrecognized microarch '${microarch}, using 'x86-64-v3' by default'"
_config_param_name="GENERIC_CPU3" ;;
esac
if [[ ! -z "${_config_param_name}" ]]; then
echo -e "\nCONFIG_M${_config_param_name}=y" >> .config
sed -e 's|^CONFIG_GENERIC_CPU=y|# CONFIG_GENERIC_CPU is not set|g' -i .config
fi
}
|