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

Commit 8b50dea6 authored by Yi Kong's avatar Yi Kong
Browse files

Fix arguments passed to llvm-readobj

Upstream llvm-readobj no longer accepts single dash prefix for long
options. Changed to double dash.

Also let the script to raise exception if rc is non-zero, to avoid
getting confusing error later in the program.

Test: build
Bug: 197230471
Change-Id: I364f51322904431d430549f79af58f455f47e028
parent 48662b25
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -195,10 +195,12 @@ class ELFParser(object):
  @classmethod
  def _read_llvm_readobj(cls, elf_file_path, header, llvm_readobj):
    """Run llvm-readobj and parse the output."""
    proc = subprocess.Popen(
      [llvm_readobj, '-dynamic-table', '-dyn-symbols', elf_file_path],
      stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    cmd = [llvm_readobj, '--dynamic-table', '--dyn-symbols', elf_file_path]
    proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    out, _ = proc.communicate()
    rc = proc.returncode
    if rc != 0:
      raise subprocess.CalledProcessError(rc, cmd, out)
    lines = out.splitlines()
    return cls._parse_llvm_readobj(elf_file_path, header, lines)