]> Freerunner's - dotfiles.git/commitdiff
upgrayyedd: old habits die hard
authorAndre Ramnitz <tux.rising@gmail.com>
Fri, 18 Apr 2025 14:12:50 +0000 (16:12 +0200)
committerAndre Ramnitz <tux.rising@gmail.com>
Fri, 18 Apr 2025 14:12:50 +0000 (16:12 +0200)
dot-local/bin/upgrayyedd

index 300546fae0b22abdf07d405d69bae287a6bac3ee..805999586d41bcf6b6ad743054a7c50717cef19a 100755 (executable)
@@ -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