-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathexport
executable file
·187 lines (179 loc) · 3.95 KB
/
export
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
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
#!/bin/bash
build=/home/savoca/downloads/furnace/galbi/aosp
kernel="furnace"
toolchain=/home/savoca/storage/toolchains/android-toolchain-eabi/bin/
toolchain2="arm-eabi-"
kerneltype="zImage"
jobcount="-j$(grep -c ^processor /proc/cpuinfo)"
base=0x00000000
pagesize=2048
ramdisk_offset=0x05000000
tags_offset=0x04800000
echo "Pick variant..."
select choice in d800 d801 d802 d803 ls980 vs980 f320x
do
case "$choice" in
"d800")
variant="d800"
config="d800_defconfig"
ramdisk=ramdisk/d800.lz4
break;;
"d801")
variant="d801"
config="d801_defconfig"
ramdisk=ramdisk/d801.lz4
break;;
"d802")
variant="d802"
config="d802_defconfig"
ramdisk=ramdisk/d802.lz4
break;;
"d803")
variant="d803"
config="d803_defconfig"
ramdisk=ramdisk/d803.lz4
break;;
"ls980")
variant="ls980"
config="ls980_defconfig"
ramdisk=ramdisk/ls980.lz4
break;;
"vs980")
variant="vs980"
config="vs980_defconfig"
ramdisk=ramdisk/vs980.lz4
break;;
"f320x")
variant="f320x"
config="f320x_defconfig"
ramdisk=ramdisk/f320x.lz4
break;;
esac
done
echo "Panel variant..."
select panel in lgd jdi
do
case "$panel" in
"lgd")
cmdline="console=ttyHSL0,115200,n8 androidboot.hardware=g2 user_debug=31 msm_rtb.filter=0x0 mdss_mdp.panel=1:dsi:0:qcom,mdss_dsi_g2_lgd_cmd"
version="2.2.3-lgd"
break;;
"jdi")
cmdline="console=ttyHSL0,115200,n8 androidboot.hardware=g2 user_debug=31 msm_rtb.filter=0x0 mdss_mdp.panel=1:dsi:0:qcom,mdss_dsi_g2_jdi_cmd"
version="2.2.3-jdi"
break;;
esac
done
echo "Pick target..."
select target in lg aosp
do
case "$target" in
"lg")
# Already set
rdflag=1
rom="lg"
break;;
"aosp")
rdflag=2
rom="aosp"
ramdisk=ramdisk_aosp
break;;
esac
done
# Begin commands
rm -rf out
mkdir out
mkdir out/tmp
echo "Checking for build..."
if [ -f ozip/boot.img ]; then
read -p "Previous build found, clean working directory..(y/n)? : " cchoice
case "$cchoice" in
y|Y )
export ARCH=arm
export CROSS_COMPILE=$toolchain/"$toolchain2"
rm -rf ozip/{system,boot.img}
rm -rf arch/arm/boot/"$kerneltype"
mkdir -p ozip/system/lib/modules
make clean && make mrproper
echo "Working directory cleaned...";;
n|N )
exit 0;;
* )
echo "Invalid...";;
esac
read -p "Begin build now..(y/n)? : " dchoice
case "$dchoice" in
y|Y)
make "$config"
make "$jobcount"
exit 0;;
n|N )
exit 0;;
* )
echo "Invalid...";;
esac
fi
if [ -f arch/arm/boot/"$kerneltype" ]; then
cp arch/arm/boot/"$kerneltype" out
rm -rf ozip/system
mkdir -p ozip/system/lib/modules
find . -name "*.ko" -exec cp {} ozip/system/lib/modules \;
else
echo "Nothing has been made..."
read -p "Clean working directory..(y/n)? : " achoice
case "$achoice" in
y|Y )
export ARCH=arm
export CROSS_COMPILE=$toolchain/"$toolchain2"
rm -rf ozip/{system,boot.img}
rm -rf arch/arm/boot/"$kerneltype"
mkdir -p ozip/system/lib/modules
make clean && make mrproper
echo "Working directory cleaned...";;
n|N )
exit 0;;
* )
echo "Invalid...";;
esac
read -p "Begin build now..(y/n)? : " bchoice
case "$bchoice" in
y|Y)
make "$config"
make "$jobcount"
exit 0;;
n|N )
exit 0;;
* )
echo "Invalid...";;
esac
fi
if [ $rdflag = 1 ]; then
echo "Using prebuilt ramdisk..."
elif [ $rdflag = 2 ]; then
mkbootfs $ramdisk | gzip > out/ramdisk.gz
ramdisk=out/ramdisk.gz
else
echo "No ramdisk found..."
exit 0;
fi
echo "Making DT.img..."
if [ -f arch/arm/boot/$kerneltype ]; then
dtbTool -s 2048 -o out/dt.img arch/arm/boot/
else
echo "No build found..."
exit 0;
fi
echo "Making boot.img..."
if [ -f arch/arm/boot/"$kerneltype" ]; then
mkbootimg --kernel out/"$kerneltype" --ramdisk $ramdisk --cmdline "$cmdline" --base $base --pagesize $pagesize --ramdisk_offset $ramdisk_offset --tags_offset $tags_offset --dt out/dt.img -o ozip/boot.img
else
echo "No build found..."
exit 0;
fi
echo "Zipping..."
cd ozip
zip -r ../"$kernel"-$version-"$rom"_"$variant".zip .
mv ../"$kernel"-$version-"$rom"_"$variant".zip $build
cd ..
rm -rf out
echo "Done..."