Advertisement
Guest User

Untitled

a guest
Jul 17th, 2018
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.06 KB | None | 0 0
  1. #!/bin/bash
  2. #functions
  3. function echo() {
  4. command echo -e "$@"
  5. }
  6.  
  7. function header_success() {
  8. echo ${GREEN}
  9. echo "====$(for i in $(seq ${#1}); do echo "=\c"; done)===="
  10. echo "== ${1} =="
  11. echo "====$(for i in $(seq ${#1}); do echo "=\c"; done)===="
  12. echo ${RST}
  13. }
  14.  
  15. function header_error() {
  16. echo ${RED}
  17. echo "====$(for i in $(seq ${#1}); do echo "=\c"; done)===="
  18. echo "== ${1} =="
  19. echo "====$(for i in $(seq ${#1}); do echo "=\c"; done)===="
  20. echo ${RST}
  21. }
  22.  
  23. #colors
  24. RED="\033[0;31m"
  25. GREEN="\033[0;32m"
  26. RST="\033[0m"
  27. BROWN="\033[0;33m"
  28. CYAN="\033[0;36m"
  29. NC="\033[0m"
  30. BOLD="\033[1m"
  31.  
  32. #directories
  33. KERNEL_DIR=$PWD
  34. KERN_IMG=$KERNEL_DIR/arch/arm64/boot/Image.gz-dtb
  35. CONFIG_DIR=$KERNEL_DIR/arch/arm64/configs
  36.  
  37. #export
  38. export CROSS_COMPILE="$HOME/aarch64-linux-android-4.9/bin/aarch64-linux-android-"
  39. export ARCH=arm64
  40. export SUBARCH=arm64
  41. export KBUILD_BUILD_USER=AnggaSyncVeganaShooter
  42.  
  43. #misc
  44. CONFIG=lineageos_kenzo_defconfig
  45. THREAD="-j$(grep -c ^processor /proc/cpuinfo)"
  46.  
  47. #main script
  48. while true; do
  49. echo -e "\n${NC}[1]Build kernel"
  50. echo -e "[2]Regenerate defconfig"
  51. echo -e "[3]Source cleanup"
  52. echo -e "[4]Quit${NC}"
  53. echo -ne "\n${CYAN}Please enter a choice[1-4]:${NC} "
  54.  
  55. read choice
  56.  
  57. if [ "$choice" == "1" ]; then
  58. echo " "
  59. BUILD_START=$(date +"%s")
  60. DATE=`date`
  61. echo "${NC}Build started at $DATE${NC}"
  62. make lineageos_kenzo_defconfig
  63. make menuconfig
  64. make $THREAD
  65.  
  66. if ! [ -a $KERN_IMG ]; then
  67. header_error "KERNEL COMPILATION FAILED"
  68. exit 1
  69. fi
  70. BUILD_END=$(date +"%s")
  71. DIFF=$(($BUILD_END - $BUILD_START))
  72. header_success "BUILD SUCCESSFUL"
  73. echo "${BOLD}Script duration: $(($DIFF / 60)) MINUTES AND $(($DIFF % 60)) SECONDS.${NC}"
  74. fi
  75.  
  76.  
  77. if [ "$choice" == "2" ]; then
  78. echo " "
  79. make $CONFIG
  80. cp .config $CONFIG_DIR/$CONFIG
  81. header_success "DEFCONFIG GENERATED"
  82. fi
  83.  
  84.  
  85. if [ "$choice" == "3" ]; then
  86. make clean &>/dev/null
  87. make mrproper &>/dev/null
  88. header_success "KERNEL SOURCES CLEANED"
  89. fi
  90.  
  91.  
  92. if [ "$choice" == "4" ]; then
  93. exit 1
  94. fi
  95. done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement