Exemple #1
0
    def __init__(self,
                 build_directory,
                 package_name,
                 pyelftools_dir=None,
                 adb='adb'):
        self._build_directory = build_directory
        if not os.path.exists(self._build_directory):
            logging.fatal("Please pass a valid build directory")
            sys.exit(1)
        self._package_name = package_name
        self._adb = adb
        self._remote_file_cache = os.path.join(os.getenv('HOME'),
                                               '.mojosymbols')

        if pyelftools_dir != None:
            sys.path.append(pyelftools_dir)
        try:
            import elftools.elf.elffile as elffile
        except ImportError:
            logging.fatal("Unable to find elftools module; please install it "
                          "(for exmple, using 'pip install elftools')")
            sys.exit(1)

        self._elffile_module = elffile

        self._libraries = self._find_libraries(build_directory)
        self._rfc = RemoteFileConnection('localhost', 10000)
        self._remote_file_reader_process = None
        if not os.path.exists(self._remote_file_cache):
            os.makedirs(self._remote_file_cache)
        self._done_mapping = set()
        self._downloaded_files = []
Exemple #2
0
    def __init__(self, build_directory_list, package_name, pyelftools_dir,
                 adb):
        build_directories = build_directory_list.split(',')
        if len(build_directories) == 0 or not all(
                map(os.path.exists, build_directories)):
            logging.fatal("Please pass a list of valid build directories")
            sys.exit(1)
        self._package_name = package_name
        self._adb = adb
        self._remote_file_cache = os.path.join(os.getenv('HOME'),
                                               '.mojosymbols')

        if pyelftools_dir != None:
            sys.path.append(pyelftools_dir)
        try:
            import elftools.elf.elffile as elffile
        except ImportError:
            logging.fatal(
                "Unable to find elftools module; please install pyelftools "
                "and specify its path on the command line using "
                "--pyelftools-dir.")
            sys.exit(1)

        self._elffile_module = elffile

        self._libraries = self._find_libraries(build_directories)
        self._rfc = RemoteFileConnection('localhost', 10000)
        self._remote_file_reader_process = None
        if not os.path.exists(self._remote_file_cache):
            os.makedirs(self._remote_file_cache)
        self._done_mapping = set()
        self._downloaded_files = []