summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoan Figueras2021-07-10 12:37:27 +0200
committerJoan Figueras2021-07-10 12:37:27 +0200
commit550f4b3152cfb706e3a8d829a48c1315fda96eee (patch)
tree53df26a433da3f16ca5013bff69b6c3e9f825074
parent2e2bb294e8c6135ccbfcde34702f9ac16f538e1d (diff)
downloadaur-550f4b3152cfb706e3a8d829a48c1315fda96eee.tar.gz
5.13.1-rt1-xanmod1
-rw-r--r--.SRCINFO14
-rw-r--r--PKGBUILD55
2 files changed, 45 insertions, 24 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 4201679552a..0fc53b4f77b 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = linux-xanmod-rt
pkgdesc = Linux Xanmod real-time version
- pkgver = 5.11.12
+ pkgver = 5.13.1
pkgrel = 1
url = http://www.xanmod.org/
arch = x86_64
@@ -12,16 +12,16 @@ pkgbase = linux-xanmod-rt
makedepends = libelf
makedepends = cpio
options = !strip
- source = https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.11.tar.xz
- source = https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.11.tar.sign
- source = https://github.com/xanmod/linux/releases/download/5.11.12-rt11-xanmod1/patch-5.11.12-rt11-xanmod1.xz
+ source = https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.13.tar.xz
+ source = https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.13.tar.sign
+ source = https://github.com/xanmod/linux/releases/download/5.13.1-rt1-xanmod1/patch-5.13.1-rt1-xanmod1.xz
source = choose-gcc-optimization.sh
validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886
validpgpkeys = 647F28654894E3BD457199BE38DBBDC86092693E
- sha256sums = 04f07b54f0d40adfab02ee6cbd2a942c96728d87c1ef9e120d0cb9ba3fe067b4
+ sha256sums = 3f6baa97f37518439f51df2e4f3d65a822ca5ff016aa8e60d2cc53b95a6c89d9
sha256sums = SKIP
- sha256sums = 0872bff9cdaf3924c7e6ad7a47cd822fd5239408a315286ea62cc10f6153a02a
- sha256sums = 03bb8b234a67b877a34a8212936ba69d8700c54c7877686cbd9742a536c87134
+ sha256sums = 5b8a5dceb10f17f2f8324cdee6a2aa23707ca9384e5046f8c7fbe1d4aa9d2442
+ sha256sums = 1ac18cad2578df4a70f9346f7c6fccbb62f042a0ee0594817fdef9f2704904ee
pkgname = linux-xanmod-rt
pkgdesc = The Linux kernel and modules with Xanmod patches
diff --git a/PKGBUILD b/PKGBUILD
index bacf13b8f96..7cdf15cb9c7 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,12 +8,12 @@
##
## The following variables can be customized at build time. Use env or export to change at your wish
##
-## Example: env _microarchitecture=99 use_numa=n use_tracers=n use_pds=n makepkg -sc
+## Example: env _microarchitecture=98 use_numa=n use_tracers=n makepkg -sc
##
## Look inside 'choose-gcc-optimization.sh' to choose your microarchitecture
## Valid numbers between: 0 to 99
## Default is: 0 => generic
-## Good option if your package is for one machine: 99 => native
+## Good option if your package is for one machine: 98 (Intel native) or 99 (AMD native)
if [ -z ${_microarchitecture+x} ]; then
_microarchitecture=0
fi
@@ -34,6 +34,11 @@ if [ -z ${use_tracers+x} ]; then
use_tracers=y
fi
+## Choose between GCC and CLANG config (default is GCC)
+if [ -z ${_compiler+x} ]; then
+ _compiler=gcc
+fi
+
# Compile ONLY used modules to VASTLY reduce the number of modules built
# and the build time.
#
@@ -52,19 +57,23 @@ _makenconfig=
### IMPORTANT: Do no edit below this line unless you know what you're doing
pkgbase=linux-xanmod-rt
-_major=5.11
-pkgver=${_major}.12
+_major=5.13
+pkgver=${_major}.1
_branch=5.x
-_rt=11
+_rt=1
xanmod=1
pkgrel=${xanmod}
pkgdesc='Linux Xanmod real-time version'
url="http://www.xanmod.org/"
arch=(x86_64)
+
license=(GPL2)
makedepends=(
xmlto kmod inetutils bc libelf cpio
)
+if [ "${_compiler}" = "clang" ]; then
+ makedepends+=(clang llvm lld python)
+fi
options=('!strip')
_srcname="linux-${pkgver}-rt${_rt}-xanmod${xanmod}"
@@ -84,10 +93,10 @@ for _patch in ${_patches[@]}; do
source+=("${_patch}::https://raw.githubusercontent.com/archlinux/svntogit-packages/${_commit}/trunk/${_patch}")
done
-sha256sums=('04f07b54f0d40adfab02ee6cbd2a942c96728d87c1ef9e120d0cb9ba3fe067b4'
+sha256sums=('3f6baa97f37518439f51df2e4f3d65a822ca5ff016aa8e60d2cc53b95a6c89d9'
'SKIP'
- '0872bff9cdaf3924c7e6ad7a47cd822fd5239408a315286ea62cc10f6153a02a'
- '03bb8b234a67b877a34a8212936ba69d8700c54c7877686cbd9742a536c87134')
+ '5b8a5dceb10f17f2f8324cdee6a2aa23707ca9384e5046f8c7fbe1d4aa9d2442'
+ '1ac18cad2578df4a70f9346f7c6fccbb62f042a0ee0594817fdef9f2704904ee')
export KBUILD_BUILD_HOST=${KBUILD_BUILD_HOST:-archlinux}
export KBUILD_BUILD_USER=${KBUILD_BUILD_USER:-makepkg}
@@ -114,6 +123,15 @@ prepare() {
patch -Np1 < "../$src"
done
+ # Applying configuration
+ cp -vf CONFIGS/xanmod/${_compiler}/config .config
+ # enable LTO_CLANG_THIN
+ if [ "${_compiler}" = "clang" ]; then
+ scripts/config --disable LTO_CLANG_FULL
+ scripts/config --enable LTO_CLANG_THIN
+ _LLVM=1
+ fi
+
# CONFIG_STACK_VALIDATION gives better stack traces. Also is enabled in all official kernel packages by Archlinux team
scripts/config --enable CONFIG_STACK_VALIDATION
@@ -123,9 +141,11 @@ prepare() {
# User set. See at the top of this file
if [ "$use_tracers" = "n" ]; then
- msg2 "Disabling FUNCTION_TRACER/GRAPH_TRACER..."
- scripts/config --disable CONFIG_FUNCTION_TRACER \
- --disable CONFIG_STACK_TRACER
+ msg2 "Disabling FUNCTION_TRACER/GRAPH_TRACER only if we are not compiling with clang..."
+ if [ "${_compiler}" = "gcc" ]; then
+ scripts/config --disable CONFIG_FUNCTION_TRACER \
+ --disable CONFIG_STACK_TRACER
+ fi
fi
if [ "$use_numa" = "n" ]; then
@@ -152,35 +172,36 @@ prepare() {
cp -f "${_myconfig}" .config
fi
echo
+ break
fi
done
- make olddefconfig
-
### Optionally load needed modules for the make localmodconfig
# See https://aur.archlinux.org/packages/modprobed-db
if [ "$_localmodcfg" = "y" ]; then
if [ -f $HOME/.config/modprobed.db ]; then
msg2 "Running Steven Rostedt's make localmodconfig now"
- make LSMOD=$HOME/.config/modprobed.db localmodconfig
+ make LLVM=$_LLVM LLVM_IAS=$_LLVM LSMOD=$HOME/.config/modprobed.db localmodconfig
else
msg2 "No modprobed.db data found"
exit
fi
fi
+ make LLVM=$_LLVM LLVM_IAS=$_LLVM olddefconfig
+
make -s kernelrelease > version
msg2 "Prepared %s version %s" "$pkgbase" "$(<version)"
- [[ -z "$_makenconfig" ]] || make nconfig
+ [[ -z "$_makenconfig" ]] || make LLVM=$_LLVM LLVM_IAS=$_LLVM nconfig
# save configuration for later reuse
- cat .config > "${startdir}/config.last"
+ cat .config > "${SRCDEST}/config.last"
}
build() {
cd linux-${_major}
- make all
+ make LLVM=$_LLVM LLVM_IAS=$_LLVM all
}
_package() {