Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ec701ded authored by Cole Faust's avatar Cole Faust
Browse files

Cleanup dirmods, outmod, and pathmod

- Use argparse for parsing
- Correct copy/pasted documentation
- Misc small tweaks

Bug: 340648588
Test: manually
Change-Id: I11373bd25712b6880517efbb7aefabf70d29a771
parent 5f2be113
Loading
Loading
Loading
Loading
+15 −13
Original line number Diff line number Diff line
@@ -14,25 +14,27 @@
# See the License for the specific language governing permissions and
# limitations under the License.

'''
Lists all modules in the given directory or its decendant directories, as cached
in module-info.json. If any build change is made, and it should be reflected in
the output, you should run 'refreshmod' first.
'''

import sys
sys.dont_write_bytecode = True

import modinfo

import argparse
import os

# Get the path of a specific module in the android tree, as cached in module-info.json.
# If any build change is made, and it should be reflected in the output, you should run
# 'refreshmod' first.  Note: This is the inverse of pathmod.
import modinfo


def main(argv):
    if len(argv) != 2:
        sys.stderr.write("usage: usage: dirmods <path>\n")
        sys.exit(1)
def main():
    parser = argparse.ArgumentParser(description=__doc__)
    parser.add_argument('path')
    args = parser.parse_args()

    d = argv[1]
    while d.endswith('/'):
        d = d[:-1]
    d = os.path.normpath(args.path)
    prefix = d + '/'

    module_info = modinfo.ReadModuleInfo()
@@ -49,4 +51,4 @@ def main(argv):
        print(name)

if __name__ == "__main__":
    main(sys.argv)
    main()
+15 −12
Original line number Diff line number Diff line
@@ -14,26 +14,29 @@
# See the License for the specific language governing permissions and
# limitations under the License.

# Get the path of a specific module in the android tree, as cached in module-info.json.
# If any build change is made, and it should be reflected in the output, you should run
# 'refreshmod' first.  Note: This is the inverse of dirmods.
'''
Lists the output files of a specific module in the android tree, as cached in
module-info.json. If any build change is made, and it should be reflected in the
output, you should run 'refreshmod' first.
'''

import sys
sys.dont_write_bytecode = True

import modinfo

import argparse
import os

import modinfo


def main(argv):
    if len(argv) != 2:
        sys.stderr.write("usage: outmod <module>\n")
        sys.exit(1)
def main():
    parser = argparse.ArgumentParser(description=__doc__)
    parser.add_argument('module')
    args = parser.parse_args()

    for output in modinfo.GetModule(modinfo.ReadModuleInfo(), argv[1])['installed']:
        print(os.path.join(os.getenv("ANDROID_BUILD_TOP"), output))
    for output in modinfo.GetModule(modinfo.ReadModuleInfo(), args.module)['installed']:
        print(os.path.join(os.getenv("ANDROID_BUILD_TOP", ""), output))

if __name__ == "__main__":
    main(sys.argv)
    main()
+14 −11
Original line number Diff line number Diff line
@@ -14,25 +14,28 @@
# See the License for the specific language governing permissions and
# limitations under the License.

# Get the path of a specific module in the android tree, as cached in module-info.json.
# If any build change is made, and it should be reflected in the output, you should run
# 'refreshmod' first.  Note: This is the inverse of dirmods.
'''
Get the path of a specific module in the android tree, as cached in module-info.json.
If any build change is made, and it should be reflected in the output, you should run
'refreshmod' first.  Note: This is the inverse of dirmods.
'''

import sys
sys.dont_write_bytecode = True

import modinfo

import argparse
import os

import modinfo


def main(argv):
    if len(argv) != 2:
        sys.stderr.write("usage: pathmod <module>\n")
        sys.exit(1)
def main():
    parser = argparse.ArgumentParser(description=__doc__)
    parser.add_argument('module')
    args = parser.parse_args()

    path = modinfo.GetModule(modinfo.ReadModuleInfo(), argv[1])['path'][0]
    path = modinfo.GetModule(modinfo.ReadModuleInfo(), args.module)['path'][0]
    print(os.path.join(os.getenv("ANDROID_BUILD_TOP", ""), path))

if __name__ == "__main__":
    main(sys.argv)
    main()