blob: ecdcd2171de5ecd4261528b074cfe212514ac468 (
plain)
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
function gettop()
{
echo $(dirname $0)/../../..
}
function genmcctable()
{
local PYTHON=$(which python)
if [ ! -x "$PYTHON" ]; then
echo "Python not found"
return
fi
T=$(gettop)
if [ ! "$T" ]; then
echo "Couldn't locate the top of the tree. Try setting TOP."
return
fi
local MCC="$T/frameworks/base/telephony/java/com/android/internal/telephony/MccTable.java"
if [ ! -f "$MCC" ]; then
echo "File not found: $MCC"
return
fi
local TMP=$(tempfile)
if [ -z "$TMP" ] || [ ! -f "$TMP" ]; then
echo "Couldn't create temporary file"
return
fi
trap "rm -f -- '$TMP'" EXIT
cat $MCC > $TMP
echo -n "" > $MCC
local LINE=
local PY=
local IFS=$'\n'
cat $TMP | while read -r LINE; do
if echo "$LINE" | grep -P '^\s*mcc_table\s*=\s*\[' > /dev/null; then
echo "$LINE" >> $MCC
PY="$LINE"
while read -r LINE; do
echo "$LINE" >> $MCC
if echo "$LINE" | grep -P '^\s*\*+/' > /dev/null; then
break
else
PY="$PY
$LINE"
fi
done
elif echo "$LINE" | grep -P '^\s*public\s+final\s+class\s+MccTable' > /dev/null; then
echo "$LINE" >> $MCC
echo "{" >> $MCC
echo "$PY" | "$PYTHON" - >> $MCC
while read -r LINE; do
if echo "$LINE" | grep -P '^\s*static\s+final\s+String\s+LOG_TAG\s*=\s*"MccTable"' > /dev/null; then
echo "$LINE" >> $MCC
break
fi
done
else
echo "$LINE" >> $MCC
fi
done
rm -f -- "$TMP"
trap - EXIT
}
genmcctable
|