From e59f5b292fb9b38d0c727455e3c1211542861778 Mon Sep 17 00:00:00 2001 From: Andre Ramnitz Date: Fri, 18 Apr 2025 16:12:50 +0200 Subject: [PATCH] upgrayyedd: old habits die hard --- dot-local/bin/upgrayyedd | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/dot-local/bin/upgrayyedd b/dot-local/bin/upgrayyedd index 300546fa..80599958 100755 --- a/dot-local/bin/upgrayyedd +++ b/dot-local/bin/upgrayyedd @@ -30,8 +30,8 @@ case "$1" in $precmd /usr/bin/emerge -avuDe --with-bdeps=y --usepkg=n --keep-going=y @world "${@:3}" exit 0 ;; - depclean) - $precmd /usr/bin/emerge -a --depclean "${@:2}" + clean) + $precmd /usr/bin/emerge -a --clean "${@:2}" exit 0 ;; kbuild-gentoo) @@ -52,6 +52,24 @@ case "$1" in echo "Build completed. Remember to upgrayyedd /usr/src/config-* if necessary." exit 0 ;; + kbuild-llvm) + MOSTRECENT=$(command ls -1 /usr/src/ | grep -P "^linux-(\\d+\\.)?(\\d+\\.)?(\\*|\\d+)-gentoo$" | tail -n1) + test -h "/usr/src/linux" && sudo rm -f "/usr/src/linux" + sudo ln -sf "/usr/src/${MOSTRECENT}/" "/usr/src/linux" + echo "Building $MOSTRECENT" + echo "" + cd "/usr/src/linux" || exit 1 + sudo make mrproper + sudo cp "/usr/src/config-gentoo" "./.config" || exit 1 + sudo schedtool -B -n \-19 -e make oldconfig + sudo schedtool -B -n \-19 -e make modules_prepare + sudo LLVM=1 LLVM_IAS=1 LDFLAGS="${LDFLAGS} -fuse-ld=mold" schedtool -B -n \-19 -e make -j28 || exit 1 + sudo emerge @module-rebuild + sudo schedtool -B -n \-19 -e make modules_install + sudo schedtool -B -n \-19 -e make install + echo "Build completed. Remember to upgrayyedd /usr/src/config-* if necessary." + exit 0 + ;; kbuild-git) MOSTRECENT=$(command ls -1 /usr/src/ | grep -P "^linux-(\\d+\\.)?(\\*|\\d+)-rc" | tail -n1) test -n "$MOSTRECENT" || exit 1 @@ -88,6 +106,6 @@ case "$1" in echo "${@:2}" ;; *) - echo "Currently available commands: 'refresh', 'again', 'skipkernel', 'depclean', 'log', 'kbuild-gentoo', 'kbuild-git', 'kbuild-server', 'clean-kernels'" + echo "Currently available commands: 'refresh', 'again', 'skipkernel', 'clean', 'log', 'kbuild-gentoo', 'kbuild-llvm', 'kbuild-git', 'kbuild-server', 'clean-kernels'" ;; esac -- 2.51.2