forked from nian0114/patchrom_miui_oneplus
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcustomize_framework.sh
executable file
·91 lines (80 loc) · 2.43 KB
/
customize_framework.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
#!/bin/bash
# $1: dir for miui
# $2: dir for original
APKTOOL="$PORT_ROOT/tools/apktool --quiet"
BUILD_OUT=out
GIT_APPLY=$PORT_ROOT/tools/git.apply
SEP_FRAME="framework2.jar.out"
TMP_FILE=$BUILD_OUT/tmp.smali
function appendSmaliPart() {
for file in `find $1/smali -name *.part`
do
filepath=`dirname $file`
filename=`basename $file .part`
dstfile="out/$filepath/$filename"
cat $file >> $dstfile
done
}
function overlaySmali() {
for file in `find $1/smali -name *.smali`
do
filepath=`dirname $file`
cp -f $file out/$filepath
done
}
function applyPatch() {
for file in $1/*.patch
do
cp $file out/
cd out
git.apply `basename $file`
for file2 in `find $2 -name *.rej`
do
echo "$file2 fail"
exit 1
done
cd ..
done
}
if [ $2 = "$BUILD_OUT/framework" ]
then
# remove all files at out/framework those exist in framework2.jar.out
for file2 in `find framework2.jar.out -name *.smali`; do
file=${file2/framework2.jar.out/$BUILD_OUT\/framework}
echo "rm file: $file"
rm -rf "$file"
done
rm -f $2/smali/android/text/util/LinkSpec.smali
for file in `find $2 -name Linkify*`; do
sed -i "s/android\/text\/util\/LinkSpec;/android\/text\/util\/Linkify\$LinkSpec;/g" $file
done
for file2 in `find telephony-common.jar.out -name *.smali`; do
file=${file2/telephony-common.jar.out/$BUILD_OUT\/framework}
echo "rm file: $file"
rm -rf "$file"
done
cp -rf ../android/Editor/* $BUILD_OUT/framework/smali/android/widget/
fi
if [ $2 = "$BUILD_OUT/framework2" ]
then
# remove all files at out/framework1 those exist in framework.jar.out
for file2 in `find framework.jar.out -name *.smali`; do
file=${file2/framework.jar.out/$BUILD_OUT\/framework2}
echo "rm file: $file"
rm -rf "$file"
done
# remove all files at out/framework_ext those exist in telephony-common.jar.out
for file2 in `find telephony-common.jar.out -name *.smali`; do
file=${file2/telephony-common.jar.out/$BUILD_OUT\/framework2}
echo "rm file: $file"
rm -rf "$file"
done
fi
if [ $2 = "$BUILD_OUT/telephony-common" ]
then
for file2 in `find framework -name *.smali`; do
file=${file2/framework/$BUILD_OUT\/telephony-common}
echo "rm file: $file"
rm -rf "$file"
done
fi