diff options
-rw-r--r-- | .SRCINFO | 20 | ||||
-rw-r--r-- | PKGBUILD | 44 | ||||
-rwxr-xr-x | choose-gcc-optimization.sh | 180 |
3 files changed, 115 insertions, 129 deletions
@@ -1,7 +1,7 @@ pkgbase = linux-xanmod-edge - pkgdesc = Linux Xanmod - Latest Mainline (EDGE) - pkgver = 6.0.5 - pkgrel = 1 + pkgdesc = Linux Xanmod - Rolling Release [EDGE] + pkgver = 6.4.3 + pkgrel = 2 url = http://www.xanmod.org/ arch = x86_64 license = GPL2 @@ -13,16 +13,16 @@ pkgbase = linux-xanmod-edge makedepends = tar makedepends = xz options = !strip - source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.0.tar.xz - source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.0.tar.sign - source = https://github.com/xanmod/linux/releases/download/6.0.5-xanmod1/patch-6.0.5-xanmod1.xz + source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.4.tar.xz + source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.4.tar.sign + source = patch-6.4.3-xanmod1.xz::https://github.com/xanmod/linux/releases/download/6.4.3-xanmod1/patch-6.4.3-xanmod1.xz source = choose-gcc-optimization.sh validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886 validpgpkeys = 647F28654894E3BD457199BE38DBBDC86092693E - sha256sums = 5c2443a5538de52688efb55c27ab0539c1f5eb58c0cfd16a2b9fbb08fd81788e + sha256sums = 8fa0588f0c2ceca44cac77a0e39ba48c9f00a6b9dc69761c02a5d3efac8da7f3 sha256sums = SKIP - sha256sums = 267d9ad9422012e963a17666f8315186cd87b17e8d520597f6dc3ee4eb50ed7c - sha256sums = dda2e928f3b02c28e71d4e99f90b499b4c99a265d30fceec7dc1dd7082afc285 + sha256sums = c718aaba0f25cb90b9660ae4efeb0eca91e81c5573fea561deba20dce4bf8082 + sha256sums = a8b38eb482eb685944757182c4886404abc12703e5e56ec39c7d61298d17d71f pkgname = linux-xanmod-edge pkgdesc = The Linux kernel and modules with Xanmod patches @@ -37,5 +37,5 @@ pkgname = linux-xanmod-edge provides = NTFS3-MODULE pkgname = linux-xanmod-edge-headers - pkgdesc = Headers and scripts for building modules for the Linux Xanmod - Latest Mainline (EDGE) kernel + pkgdesc = Headers and scripts for building modules for the Linux Xanmod - Rolling Release [EDGE] kernel depends = pahole @@ -27,8 +27,9 @@ fi ## Stock Archlinux and Xanmod have this enabled. ## Set variable "use_tracers" to: n to disable (possibly increase performance) ## y to enable (stock default) +## y to enable (Archlinux default) if [ -z ${use_tracers+x} ]; then - use_tracers=y + use_tracers=n fi # Unique compiler supported upstream is GCC @@ -38,8 +39,8 @@ if [ "${_compiler}" = "clang" ]; then _compiler_flags="CC=clang HOSTCC=clang LLVM=1 LLVM_IAS=1" fi -# Choose between the 4 main configs for EDGE branch. Default x86-64-v2 which use CONFIG_GENERIC_CPU2: -# Possible values: config_x86-64 / config_x86-64-v2 (default) / config_x86-64-v3 / config_x86-64-v4 +# Choose between the 4 main configs for stable branch. Default x86-64-v1 which use CONFIG_GENERIC_CPU2: +# Possible values: config_x86-64-v2 (default) / config_x86-64-v3 / config_x86-64-v4 # This will be overwritten by selecting any option in microarchitecture script # Source files: https://github.com/xanmod/linux/tree/5.17/CONFIGS/xanmod/gcc if [ -z ${_config+x} ]; then @@ -71,12 +72,13 @@ fi ### IMPORTANT: Do no edit below this line unless you know what you're doing pkgbase=linux-xanmod-edge -_major=6.0 -pkgver=${_major}.5 +_major=6.4 +pkgver=${_major}.3 _branch=6.x xanmod=1 -pkgrel=${xanmod} -pkgdesc='Linux Xanmod - Latest Mainline (EDGE)' +_revision= +pkgrel=2 +pkgdesc='Linux Xanmod - Rolling Release [EDGE]' url="http://www.xanmod.org/" arch=(x86_64) @@ -91,7 +93,7 @@ options=('!strip') _srcname="linux-${pkgver}-xanmod${xanmod}" source=("https://cdn.kernel.org/pub/linux/kernel/v${_branch}/linux-${_major}.tar."{xz,sign} - "https://github.com/xanmod/linux/releases/download/${pkgver}-xanmod${xanmod}/patch-${pkgver}-xanmod${xanmod}.xz" + "patch-${pkgver}-xanmod${xanmod}${_revision}.xz::https://github.com/xanmod/linux/releases/download/${pkgver}-xanmod${xanmod}${_revision}/patch-${pkgver}-xanmod${xanmod}.xz" choose-gcc-optimization.sh) #"patch-${pkgver}-xanmod${xanmod}.xz::https://sourceforge.net/projects/xanmod/files/releases/stable/${pkgver}-xanmod${xanmod}/patch-${pkgver}-xanmod${xanmod}.xz/download" validpgpkeys=( @@ -107,10 +109,10 @@ for _patch in ${_patches[@]}; do source+=("${_patch}::https://raw.githubusercontent.com/archlinux/svntogit-packages/${_commit}/trunk/${_patch}") done -sha256sums=('5c2443a5538de52688efb55c27ab0539c1f5eb58c0cfd16a2b9fbb08fd81788e' +sha256sums=('8fa0588f0c2ceca44cac77a0e39ba48c9f00a6b9dc69761c02a5d3efac8da7f3' 'SKIP' - '267d9ad9422012e963a17666f8315186cd87b17e8d520597f6dc3ee4eb50ed7c' - 'dda2e928f3b02c28e71d4e99f90b499b4c99a265d30fceec7dc1dd7082afc285') + 'c718aaba0f25cb90b9660ae4efeb0eca91e81c5573fea561deba20dce4bf8082' + 'a8b38eb482eb685944757182c4886404abc12703e5e56ec39c7d61298d17d71f') export KBUILD_BUILD_HOST=${KBUILD_BUILD_HOST:-archlinux} export KBUILD_BUILD_USER=${KBUILD_BUILD_USER:-makepkg} @@ -120,12 +122,11 @@ prepare() { cd linux-${_major} # Apply Xanmod patch - patch -Np1 -i ../patch-${pkgver}-xanmod${xanmod} + patch -Np1 -i ../patch-${pkgver}-xanmod${xanmod}${_revision} msg2 "Setting version..." - scripts/setlocalversion --save-scmversion echo "-$pkgrel" > localversion.10-pkgrel - echo "${pkgbase#linux-xanmod-edge}" > localversion.20-pkgname + echo "${pkgbase#linux-xanmod}" > localversion.20-pkgname # Archlinux patches local src @@ -152,12 +153,17 @@ prepare() { scripts/config --enable CONFIG_IKCONFIG \ --enable CONFIG_IKCONFIG_PROC + # Requested by Alexandre Frade to fix issues in python-gbinder + scripts/config --enable CONFIG_ANDROID_BINDERFS + scripts/config --enable CONFIG_ANDROID_BINDER_IPC + # User set. See at the top of this file - if [ "$use_tracers" = "n" ]; then - msg2 "Disabling FUNCTION_TRACER/GRAPH_TRACER only if we are not compiling with clang..." + if [ "$use_tracers" = "y" ]; then + msg2 "Enabling CONFIG_FTRACE only if we are not compiling with clang..." if [ "${_compiler}" = "gcc" ]; then - scripts/config --disable CONFIG_FUNCTION_TRACER \ - --disable CONFIG_STACK_TRACER + scripts/config --enable CONFIG_FTRACE \ + --enable CONFIG_FUNCTION_TRACER \ + --enable CONFIG_STACK_TRACER fi fi @@ -274,7 +280,7 @@ _package-headers() { install -Dt "$builddir/tools/objtool" tools/objtool/objtool # required when DEBUG_INFO_BTF_MODULES is enabled - if [ -f "$builddir/tools/bpf/resolve_btfids" ]; then install -Dt "$builddir/tools/bpf/resolve_btfids" tools/bpf/resolve_btfids/resolve_btfids ; fi + if [ -f "tools/bpf/resolve_btfids/resolve_btfids" ]; then install -Dt "$builddir/tools/bpf/resolve_btfids" tools/bpf/resolve_btfids/resolve_btfids ; fi msg2 "Installing headers..." cp -t "$builddir" -a include diff --git a/choose-gcc-optimization.sh b/choose-gcc-optimization.sh index 3422f1b18be9..38772443028a 100755 --- a/choose-gcc-optimization.sh +++ b/choose-gcc-optimization.sh @@ -11,54 +11,44 @@ cat << EOF Available CPU microarchitectures: - 1) AMD K6/K6-II/K6-III - 2) AMD Athlon/Duron/K7 - 3) AMD Opteron/Athlon64/Hammer/K8 - 4) AMD Opteron/Athlon64/Hammer/K8 with SSE3 - 5) AMD 61xx/7x50/PhenomX3/X4/II/K10 - 6) AMD Family 10h (Barcelona) - 7) AMD Family 14h (Bobcat) - 8) AMD Family 16h (Jaguar) - 9) AMD Family 15h (Bulldozer) - 10) AMD Family 15h (Piledriver) - 11) AMD Family 15h (Steamroller) - 12) AMD Family 15h (Excavator) - 13) AMD Family 17h (Zen) - 14) AMD Family 17h (Zen 2) - 15) AMD Family 19h Zen 3 processors (Zen 3) - 16) Transmeta Crusoe - 17) Transmeta Efficeon - 18) IDT Winchip C6 - 19) Winchip-2/Winchip-2A/Winchip-3 - 20) AMD Elan - 21) Geode GX1 (Cyrix MediaGX) - 22) AMD Geode GX and LX - 23) Cyrix III or C3 - 24) VIA C3 "Nehemiah" - 25) VIA C7 - 26) Intel Pentium 4, Pentium D and older Nocona/Dempsey Xeon CPUs with Intel 64bit - 27) Intel Atom - 28) Intel Core 2 and newer Core 2 Xeons (Xeon 51xx and 53xx) - 29) Intel 1st Gen Core i3/i5/i7-family (Nehalem) - 30) Intel 1.5 Gen Core i3/i5/i7-family (Westmere) - 31) Intel Silvermont - 32) Intel Goldmont (Apollo Lake and Denverton) - 33) Intel Goldmont Plus (Gemini Lake) - 34) Intel 2nd Gen Core i3/i5/i7-family (Sandybridge) - 35) Intel 3rd Gen Core i3/i5/i7-family (Ivybridge) - 36) Intel 4th Gen Core i3/i5/i7-family (Haswell) - 37) Intel 5th Gen Core i3/i5/i7-family (Broadwell) - 38) Intel 6th Gen Core i3/i5/i7-family (Skylake) - 39) Intel 6th Gen Core i7/i9-family (Skylake X) - 40) Intel 8th Gen Core i3/i5/i7-family (Cannon Lake) - 41) Intel 8th Gen Core i7/i9-family (Ice Lake) - 42) Xeon processors in the Cascade Lake family - 43) Intel Xeon (Cooper Lake) - 44) Intel 3rd Gen 10nm++ i3/i5/i7/i9-family (Tiger Lake) - 45) Intel Sapphire Rapids - 46) Intel Rocket Lake - 47) Intel Alder Lake + 1) AMD Opteron/Athlon64/Hammer/K8 + 2) AMD Opteron/Athlon64/Hammer/K8 with SSE3 + 3) AMD 61xx/7x50/PhenomX3/X4/II/K10 + 4) AMD Family 10h (Barcelona) + 5) AMD Family 14h (Bobcat) + 6) AMD Family 16h (Jaguar) + 7) AMD Family 15h (Bulldozer) + 8) AMD Family 15h (Piledriver) + 9) AMD Family 15h (Steamroller) + 10) AMD Family 15h (Excavator) + 11) AMD Family 17h (Zen) + 12) AMD Family 17h (Zen 2) + 13) AMD Family 19h (Zen 3) + 14) AMD Family 19h (Zen 4) + 15) Intel P4 / older Netburst based Xeon + 16) Intel Core 2 and newer Core 2 Xeons (Xeon 51xx and 53xx) + 17) Intel Atom + 18) Intel 1st Gen Core i3/i5/i7-family (Nehalem) + 19) Intel 1.5 Gen Core i3/i5/i7-family (Westmere) + 20) Intel Silvermont + 21) Intel Goldmont (Apollo Lake and Denverton) + 22) Intel Goldmont Plus (Gemini Lake) + 23) Intel 2nd Gen Core i3/i5/i7-family (Sandybridge) + 24) Intel 3rd Gen Core i3/i5/i7-family (Ivybridge) + 25) Intel 4th Gen Core i3/i5/i7-family (Haswell) + 26) Intel 5th Gen Core i3/i5/i7-family (Broadwell) + 27) Intel 6th Gen Core i3/i5/i7-family (Skylake) + 28) Intel 6th Gen Core i7/i9-family (Skylake X) + 29) Intel 8th Gen Core i3/i5/i7-family (Cannon Lake) + 30) Intel 8th Gen Core i7/i9-family (Ice Lake) + 31) Xeon processors in the Cascade Lake family + 32) Intel Xeon (Cooper Lake) + 33) Intel 3rd Gen 10nm++ i3/i5/i7/i9-family (Tiger Lake) + 34) Intel Sapphire Rapids + 35) Intel Rocket Lake + 36) Intel Alder Lake + 91) Generic-x86-64-v1 (LEGACY < 2003. Not supported by XanMod project) 92) Generic-x86-64-v2 (Nehalem and newer) 93) Generic-x86-64-v3 (Haswell and newer) 94) Generic-x86-64-v4 (AVX512 CPUs) @@ -74,59 +64,49 @@ sleep 1 answer=$1 case $answer in - 1) Microarchitecture=CONFIG_MK6 ;; - 2) Microarchitecture=CONFIG_MK7 ;; - 3) Microarchitecture=CONFIG_MK8 ;; - 4) Microarchitecture=CONFIG_MK8SSE3 ;; - 5) Microarchitecture=CONFIG_MK10 ;; - 6) Microarchitecture=CONFIG_MBARCELONA ;; - 7) Microarchitecture=CONFIG_MBOBCAT ;; - 8) Microarchitecture=CONFIG_MJAGUAR ;; - 9) Microarchitecture=CONFIG_MBULLDOZER ;; - 10) Microarchitecture=CONFIG_MPILEDRIVER ;; - 11) Microarchitecture=CONFIG_MSTEAMROLLER ;; - 12) Microarchitecture=CONFIG_MEXCAVATOR ;; - 13) Microarchitecture=CONFIG_MZEN ;; - 14) Microarchitecture=CONFIG_MZEN2 ;; - 15) Microarchitecture=CONFIG_MZEN3 ;; - 16) Microarchitecture=CONFIG_MCRUSOE ;; - 17) Microarchitecture=CONFIG_MEFFICEON ;; - 18) Microarchitecture=CONFIG_MWINCHIPC6 ;; - 19) Microarchitecture=CONFIG_MWINCHIP3D ;; - 20) Microarchitecture=CONFIG_MELAN ;; - 21) Microarchitecture=CONFIG_MGEODEGX1 ;; - 22) Microarchitecture=CONFIG_MGEODE_LX ;; - 23) Microarchitecture=CONFIG_MCYRIXIII ;; - 24) Microarchitecture=CONFIG_MVIAC3_2 ;; - 25) Microarchitecture=CONFIG_MVIAC7 ;; - 26) Microarchitecture=CONFIG_MPSC ;; - 27) Microarchitecture=CONFIG_MATOM ;; - 28) Microarchitecture=CONFIG_MCORE2 ;; - 29) Microarchitecture=CONFIG_MNEHALEM ;; - 30) Microarchitecture=CONFIG_MWESTMERE ;; - 31) Microarchitecture=CONFIG_MSILVERMONT ;; - 32) Microarchitecture=CONFIG_MGOLDMONT ;; - 33) Microarchitecture=CONFIG_MGOLDMONTPLUS ;; - 34) Microarchitecture=CONFIG_MSANDYBRIDGE ;; - 35) Microarchitecture=CONFIG_MIVYBRIDGE ;; - 36) Microarchitecture=CONFIG_MHASWELL ;; - 37) Microarchitecture=CONFIG_MBROADWELL ;; - 38) Microarchitecture=CONFIG_MSKYLAKE ;; - 39) Microarchitecture=CONFIG_MSKYLAKEX ;; - 40) Microarchitecture=CONFIG_MCANNONLAKE ;; - 41) Microarchitecture=CONFIG_MICELAKE ;; - 42) Microarchitecture=CONFIG_MCASCADELAKE ;; - 43) Microarchitecture=CONFIG_MCOOPERLAKE ;; - 44) Microarchitecture=CONFIG_MTIGERLAKE ;; - 45) Microarchitecture=CONFIG_MSAPPHIRERAPIDS ;; - 46) Microarchitecture=CONFIG_MROCKETLAKE ;; - 47) Microarchitecture=CONFIG_MALDERLAKE ;; - 92) Microarchitecture=CONFIG_GENERIC_CPU2 ;; - 93) Microarchitecture=CONFIG_GENERIC_CPU3 ;; - 94) Microarchitecture=CONFIG_GENERIC_CPU4 ;; - 98) Microarchitecture=CONFIG_MNATIVE_INTEL ;; - 99) Microarchitecture=CONFIG_MNATIVE_AMD ;; - *) default=CONFIG_GENERIC_CPU2 ;; + 1) Microarchitecture=CONFIG_MK8 ;; + 2) Microarchitecture=CONFIG_MK8SSE3 ;; + 3) Microarchitecture=CONFIG_MK10 ;; + 4) Microarchitecture=CONFIG_MBARCELONA ;; + 5) Microarchitecture=CONFIG_MBOBCAT ;; + 6) Microarchitecture=CONFIG_MJAGUAR ;; + 7) Microarchitecture=CONFIG_MBULLDOZER ;; + 8) Microarchitecture=CONFIG_MPILEDRIVER ;; + 9) Microarchitecture=CONFIG_MSTEAMROLLER ;; + 10) Microarchitecture=CONFIG_MEXCAVATOR ;; + 11) Microarchitecture=CONFIG_MZEN ;; + 12) Microarchitecture=CONFIG_MZEN2 ;; + 13) Microarchitecture=CONFIG_MZEN3 ;; + 14) Microarchitecture=CONFIG_MZEN4 ;; + 15) Microarchitecture=CONFIG_MPSC ;; + 16) Microarchitecture=CONFIG_MCORE2 ;; + 17) Microarchitecture=CONFIG_MATOM ;; + 18) Microarchitecture=CONFIG_MNEHALEM ;; + 19) Microarchitecture=CONFIG_MWESTMERE ;; + 20) Microarchitecture=CONFIG_MSILVERMONT ;; + 21) Microarchitecture=CONFIG_MGOLDMONT ;; + 22) Microarchitecture=CONFIG_MGOLDMONTPLUS ;; + 23) Microarchitecture=CONFIG_MSANDYBRIDGE ;; + 24) Microarchitecture=CONFIG_MIVYBRIDGE ;; + 25) Microarchitecture=CONFIG_MHASWELL ;; + 26) Microarchitecture=CONFIG_MBROADWELL ;; + 27) Microarchitecture=CONFIG_MSKYLAKE ;; + 28) Microarchitecture=CONFIG_MSKYLAKEX ;; + 29) Microarchitecture=CONFIG_MCANNONLAKE ;; + 30) Microarchitecture=CONFIG_MICELAKE ;; + 31) Microarchitecture=CONFIG_MCASCADELAKE ;; + 32) Microarchitecture=CONFIG_MCOOPERLAKE ;; + 33) Microarchitecture=CONFIG_MTIGERLAKE ;; + 34) Microarchitecture=CONFIG_MSAPPHIRERAPIDS ;; + 35) Microarchitecture=CONFIG_MROCKETLAKE ;; + 36) Microarchitecture=CONFIG_MALDERLAKE ;; + 91) Microarchitecture=CONFIG_GENERIC_CPU ;; + 92) Microarchitecture=CONFIG_GENERIC_CPU2 ;; + 93) Microarchitecture=CONFIG_GENERIC_CPU3 ;; + 94) Microarchitecture=CONFIG_GENERIC_CPU4 ;; + 98) Microarchitecture=CONFIG_MNATIVE_INTEL ;; + 99) Microarchitecture=CONFIG_MNATIVE_AMD ;; + *) default=CONFIG_GENERIC_CPU2 ;; esac warning "According to PKGBUILD variable _microarchitecture, your choice is $answer" |