• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2015 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5# Helper script to run dump_syms on Chrome Linux executables and strip
6# them if needed.
7
8import os
9import subprocess
10import sys
11
12if len(sys.argv) != 5:
13  print "dump_app_syms.py <dump_syms_exe> <strip_binary>"
14  print "                 <binary_with_symbols> <symbols_output>"
15  sys.exit(1)
16
17dumpsyms = sys.argv[1]
18strip_binary = sys.argv[2]
19infile = sys.argv[3]
20outfile = sys.argv[4]
21
22# Dump only when the output file is out-of-date.
23if not os.path.isfile(outfile) or \
24   os.stat(outfile).st_mtime > os.stat(infile).st_mtime:
25  with open(outfile, 'w') as outfileobj:
26    subprocess.check_call([dumpsyms, '-r', infile], stdout=outfileobj)
27
28if strip_binary != '0':
29  subprocess.check_call(['strip', infile])
30