You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
84 lines
2.6 KiB
84 lines
2.6 KiB
#!/bin/bash |
|
|
|
if ! which xmlstarlet > /dev/null |
|
then |
|
echo "You need to have the 'xmlstarlet' command in your path" |
|
exit |
|
fi |
|
|
|
apps=$1 |
|
CWD=$(pwd)/ |
|
if [ "$apps" = "" ] |
|
then |
|
echo "Please specify the path to an application, or '--all' to process all applications" |
|
exit |
|
elif [ "$apps" = "--all" ] |
|
then |
|
apps=$ANDROID_BUILD_TOP/packages/apps/* |
|
fi |
|
|
|
BASE=$(pwd)/$(dirname $0) |
|
|
|
for app in $apps |
|
do |
|
pushd $app |
|
$BASE/findunusedresources -p . | { |
|
read LINE NUM |
|
while [ "$LINE" != "" ] |
|
do |
|
if [ "Z$LINE" = "Z-----------------------------------------------------------" ] |
|
then |
|
# skip |
|
true |
|
elif [ "$LINE" = "$app" ] |
|
then |
|
# skip |
|
true |
|
else |
|
# try to find the missing resource |
|
find res | grep -w $LINE | { |
|
read RESLINE |
|
while [ "$RESLINE" != "" ] |
|
do |
|
if [ -f $RESLINE ] |
|
then |
|
echo REMOVING FILE: $RESLINE |
|
git rm $RESLINE > /dev/null |
|
else |
|
echo WARNING unexpected result for $LINE |
|
fi |
|
read RESLINE |
|
done |
|
} |
|
grep -Rwl $LINE res | { |
|
read RESLINE |
|
while [ "$RESLINE" != "" ] |
|
do |
|
ISSTRING=$(echo "$RESLINE" | grep -w "strings\.xml") |
|
if [ -n "$ISSTRING" ] |
|
then |
|
echo REMOVING STRING $LINE from $RESLINE |
|
xmlstarlet ed -P -S -d "/resources/string[@name='$LINE']" $RESLINE > tf$$ |
|
mv tf$$ $RESLINE |
|
git add $RESLINE |
|
else |
|
echo REMOVING $LINE from $RESLINE |
|
xmlstarlet ed -P -S -d "/resources/*[@name='$LINE']" $RESLINE > tf$$ |
|
mv tf$$ $RESLINE |
|
git add $RESLINE |
|
fi |
|
read RESLINE |
|
done |
|
} |
|
fi |
|
read LINE NUM |
|
done |
|
} |
|
popd |
|
done |
|
echo |
|
echo "Done." |
|
echo "Please rebuild the updated applications to make sure that everything still builds." |
|
echo "After rebuilding, rerun 'findunusedresources' or 'removeunusedresources' to see if any more resources are now unused." |
|
echo "When you're done, you can 'git commit' the change." |
|
echo
|
|
|