forked from BeastRoms-Devices/kernel_xiaomi_raphael
-
Notifications
You must be signed in to change notification settings - Fork 44
/
build.sh
executable file
·121 lines (104 loc) · 1.99 KB
/
build.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
#!/bin/bash
rm .version
# Bash Color
green='\033[01;32m'
red='\033[01;31m'
blink_red='\033[05;31m'
restore='\033[0m'
clear
# Resources
export CLANG_PATH=~/tc/neutron-clang/bin
export PATH=${CLANG_PATH}:${PATH}
export THINLTO_CACHE=~/ltocache/
DEFCONFIG="raphael_defconfig"
# Kernel Details
REV="R6.6"
EDITION="BLACK"
VER="$EDITION"-"$REV"
# Vars
BASE_AK_VER="SOVIET-"
DATE=`date +"%Y%m%d-%H%M"`
AK_VER="$BASE_AK_VER$VER"
ZIP_NAME="$AK_VER"-"$DATE"
export ARCH=arm64
export SUBARCH=arm64
export KBUILD_BUILD_USER=NATO66613
export KBUILD_BUILD_HOST=KREMLIN
# Paths
KERNEL_DIR=`pwd`
REPACK_DIR=~/AnyKernel3
ZIP_MOVE=~/AK-releases
# Functions
function clean_all {
rm -rf $REPACK_DIR/Image* $REPACK_DIR/dtbo.img
cd $KERNEL_DIR
echo
make clean && make mrproper
}
function make_kernel {
echo
make LLVM=1 LLVM_IAS=1 CC="ccache clang" $DEFCONFIG
make LLVM=1 LLVM_IAS=1 CC="ccache clang" -j$(grep -c ^processor /proc/cpuinfo)
}
function make_zip {
cp out/arch/arm64/boot/Image.gz-dtb $REPACK_DIR
cp out/arch/arm64/boot/dtbo.img $REPACK_DIR
cd $REPACK_DIR
zip -r9 `echo $ZIP_NAME`.zip *
mv `echo $ZIP_NAME`*.zip $ZIP_MOVE
cd $KERNEL_DIR
}
DATE_START=$(date +"%s")
echo -e "${green}"
echo "-----------------"
echo "Making Kernel:"
echo "-----------------"
echo -e "${restore}"
echo
while read -p "Do you want to clean stuffs (y/n)? " cchoice
do
case "$cchoice" in
y|Y )
clean_all
echo
echo "All Cleaned now."
break
;;
n|N )
break
;;
* )
echo
echo "Invalid try again!"
echo
;;
esac
done
echo
while read -p "Do you want to build?" dchoice
do
case "$dchoice" in
y|Y )
make_kernel
make_zip
break
;;
n|N )
break
;;
* )
echo
echo "Invalid try again!"
echo
;;
esac
done
echo -e "${green}"
echo "-------------------"
echo "Build Completed in:"
echo "-------------------"
echo -e "${restore}"
DATE_END=$(date +"%s")
DIFF=$(($DATE_END - $DATE_START))
echo "Time: $(($DIFF / 60)) minute(s) and $(($DIFF % 60)) seconds."
echo