Blame scripts/toolchains_path.py

Packit Service b1ea74
#!/usr/bin/env python3
Packit Service b1ea74
"""
Packit Service b1ea74
    Get the toolchains path
Packit Service b1ea74
    https://proandroiddev.com/tutorial-compile-openssl-to-1-1-1-for-android-application-87137968fee
Packit Service b1ea74
"""
Packit Service b1ea74
import argparse
Packit Service b1ea74
import atexit
Packit Service b1ea74
import inspect
Packit Service b1ea74
import os
Packit Service b1ea74
import shutil
Packit Service b1ea74
import stat
Packit Service b1ea74
import sys
Packit Service b1ea74
import textwrap
Packit Service b1ea74
Packit Service b1ea74
def get_host_tag_or_die():
Packit Service b1ea74
    """Return the host tag for this platform. Die if not supported."""
Packit Service b1ea74
    if sys.platform.startswith('linux'):
Packit Service b1ea74
        return 'linux-x86_64'
Packit Service b1ea74
    elif sys.platform == 'darwin':
Packit Service b1ea74
        return 'darwin-x86_64'
Packit Service b1ea74
    elif sys.platform == 'win32' or sys.platform == 'cygwin':
Packit Service b1ea74
        host_tag = 'windows-x86_64'
Packit Service b1ea74
        if not os.path.exists(os.path.join(NDK_DIR, 'prebuilt', host_tag)):
Packit Service b1ea74
            host_tag = 'windows'
Packit Service b1ea74
        return host_tag
Packit Service b1ea74
    sys.exit('Unsupported platform: ' + sys.platform)
Packit Service b1ea74
Packit Service b1ea74
Packit Service b1ea74
def get_toolchain_path_or_die(ndk, host_tag):
Packit Service b1ea74
    """Return the toolchain path or die."""
Packit Service b1ea74
    toolchain_path = os.path.join(ndk, 'toolchains/llvm/prebuilt',
Packit Service b1ea74
                                  host_tag, 'bin')
Packit Service b1ea74
    if not os.path.exists(toolchain_path):
Packit Service b1ea74
        sys.exit('Could not find toolchain: {}'.format(toolchain_path))
Packit Service b1ea74
    return toolchain_path
Packit Service b1ea74
Packit Service b1ea74
def main():
Packit Service b1ea74
    """Program entry point."""
Packit Service b1ea74
    parser = argparse.ArgumentParser(description='Optional app description')
Packit Service b1ea74
    parser.add_argument('--ndk', required=True,
Packit Service b1ea74
                    help='The NDK Home directory')
Packit Service b1ea74
    args = parser.parse_args()
Packit Service b1ea74
Packit Service b1ea74
    host_tag = get_host_tag_or_die()
Packit Service b1ea74
    toolchain_path = get_toolchain_path_or_die(args.ndk, host_tag)
Packit Service b1ea74
    print(toolchain_path)
Packit Service b1ea74
Packit Service b1ea74
if __name__ == '__main__':
Packit Service b1ea74
    main()