diff options
author | David Srbecky <dsrbecky@google.com> | 2023-12-07 15:35:24 +0000 |
---|---|---|
committer | David Srbecky <dsrbecky@google.com> | 2023-12-08 17:51:22 +0000 |
commit | d4587475a672d269d402b2c8158feaa10197ad9e (patch) | |
tree | aeb097697fffc1f4cb42665b1681982b5020fa29 | |
parent | c70f0674018b1f09161864ecd836e9b449c67444 (diff) | |
download | google-smali-d4587475a672d269d402b2c8158feaa10197ad9e.tar.gz |
Ensure the baksmali command works on Android
Bug: 2859888
Test: m smali-baksmali && smali-baksmali
Change-Id: Ibff68f3b627b3e2e067b93a820e07d0cdfeab081
-rw-r--r-- | baksmali/Android.bp | 2 | ||||
-rw-r--r-- | baksmali/manifest.txt | 1 | ||||
-rwxr-xr-x | scripts/baksmali | 14 |
3 files changed, 10 insertions, 7 deletions
diff --git a/baksmali/Android.bp b/baksmali/Android.bp index ad333f86..6fc3f7ea 100644 --- a/baksmali/Android.bp +++ b/baksmali/Android.bp @@ -32,7 +32,7 @@ java_binary_host { ":third_party-smali-baksmali", ], - // manifest: "manifest.txt", + manifest: "manifest.txt", static_libs: [ "smali-dexlib2", diff --git a/baksmali/manifest.txt b/baksmali/manifest.txt new file mode 100644 index 00000000..b3eba648 --- /dev/null +++ b/baksmali/manifest.txt @@ -0,0 +1 @@ +Main-Class: com.android.tools.smali.baksmali.Main diff --git a/scripts/baksmali b/scripts/baksmali index bd3f820e..21622d4d 100755 --- a/scripts/baksmali +++ b/scripts/baksmali @@ -29,9 +29,6 @@ prog="$0" while [ -h "${prog}" ]; do newProg=`/bin/ls -ld "${prog}"` - echo ${newProg} - - newProg=`expr "${newProg}" : ".* -> \(.*\)$"` if expr "x${newProg}" : 'x/' >/dev/null; then prog="${newProg}" @@ -48,10 +45,15 @@ prog="${progdir}"/`basename "${prog}"` cd "${oldwd}" -jarfile=baksmali.jar +jarfile=smali-baksmali.jar libdir="$progdir" -if [ ! -r "$libdir/$jarfile" ] -then + +if [ ! -r "$libdir/$jarfile" ]; then + # set location for the Android tree case + libdir=`dirname "$progdir"`/framework +fi + +if [ ! -r "$libdir/$jarfile" ]; then echo `basename "$prog"`": can't find $jarfile" exit 1 fi |