This repository has been archived by the owner on Aug 1, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathcompile_kernel.sh
executable file
·67 lines (56 loc) · 1.7 KB
/
compile_kernel.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
#!/bin/bash
#
# Copyright © 2018, "Vipul Jha" aka "LordArcadius" <[email protected]>
# Copyright © 2018, "penglezos" <[email protected]>
# Copyright © 2018, "reza adi pangestu" <[email protected]>
# Copyright © 2018, "beamguide" <[email protected]>
# Customized by "DerFlacco" <[email protected]>
# Customized by "robante15" <[email protected]>
BUILD_START=$(date +"%s")
DATE=$(date +%Y%m%d-%H%M)
KERNEL_DIR=$PWD
REPACK_DIR=$KERNEL_DIR/zip
OUT=$KERNEL_DIR/output
#EXPORT VARIABLES
VERSION="SDM660_Halium"
ZIP_NAME="Kernel-${VERSION}-${DATE}.zip"
#BUILD VARIABLES
read -p "Enter your defconfig [jasmine-perf_defconfig]: " DEFCONFIG
DEFCONFIG=${DEFCONFIG:-jasmine-perf_defconfig}
echo $DEFCONFIG
read -p "Enter the number of jobs [8]: " JOBS
JOBS=${JOBS:-8}
echo $JOBS
OUTPUT=output
export ARCH=arm64
export SUBARCH=arm64
export CROSS_COMPILE="/mnt/LinuxGames/Mi_A2/Esencial/toolchain/bin/aarch64-linux-gnu-"
export CROSS_COMPILE_ARM32="/mnt/LinuxGames/Mi_A2/Esencial/toolchain32/bin/arm-linux-gnueabihf-"
make_zip(){
cd $REPACK_DIR
cp $KERNEL_DIR/$OUTPUT/arch/arm64/boot/Image.gz-dtb $REPACK_DIR/
zip -r9 "${ZIP_NAME}" *
cp *.zip $OUT
rm *.zip
rm -rf kernel
rm -rf dtbs
cd $KERNEL_DIR
}
make clean && make mrproper
make O=$OUTPUT $DEFCONFIG
# make -j$(nproc --all) O=$OUTPUT 2>&1 | tee kernel.log
make -j$JOBS O=$OUTPUT 2>&1 | tee kernel.log
make_zip
BUILD_END=$(date +"%s")
DIFF=$(($BUILD_END - $BUILD_START))
rm -rf zip/kernel
rm -rf zip/Image.gz-dtb
rm -rf zip/dtbs
echo -e ""
echo -e ""
echo -e "Done!"
echo -e ""
echo -e ""
echo -e "Build completed in $(($DIFF / 60)) minute(s) and $(($DIFF % 60)) seconds."
echo -e "Configuration used:"
echo -e "defconfig: $DEFCONFIG"