Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(597)

Unified Diff: build/linux/dump_app_syms

Issue 126015: Extract breakpad symbol files for Linux official builds. (Closed)
Patch Set: shell out to helper script Created 11 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | build/linux/dump_signature.py » ('j') | build/linux/dump_signature.py » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: build/linux/dump_app_syms
diff --git a/build/linux/dump_app_syms b/build/linux/dump_app_syms
new file mode 100755
index 0000000000000000000000000000000000000000..85544be2cbeed467aa539b83bfcadd4940b0d2c2
--- /dev/null
+++ b/build/linux/dump_app_syms
@@ -0,0 +1,44 @@
+#!/bin/sh
Mark Mentovai 2009/06/12 17:30:10 svn:executable and svn:eol-style?
+
+# Copyright (c) 2009 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+#
+# Helper script to run dump_syms on Chrome Linux executables and "fixup" the
+# generated sigs (due to changes to the binary from stripping).
+
+set -e
+
+usage() {
+ echo "$0 <dump_syms_exe> <binary_with_symbols> <symbols_output>"
+}
+
+
+if [ $# -ne 3 ]; then
+ usage
+ exit 1
+fi
+
+SCRIPTDIR="$(readlink -f "$(dirname "$0")")"
+DUMPSYMS="$1"
+INFILE="$2"
+OUTFILE="$3"
+
+STRIPPED=$(mktemp -q -t stripped-XXXXX)
+if [ $? -ne 0 ]; then
+ echo "ERROR: Could not create temp stripped '$INFILE'"
Mark Mentovai 2009/06/12 17:30:10 echo blah >& 2 (also for usage()?)
+ exit 1
+fi
+
+# Dump the symbols from the given binary.
+"$DUMPSYMS" "$INFILE" > "$OUTFILE"
Mark Mentovai 2009/06/12 17:30:10 In the Mac version of this script, we have an -nt
+
+# Strip the binary and calculate the signature of that, since that's what ships.
+strip "$INFILE" -o "$STRIPPED"
+NEWSIG=$("$SCRIPTDIR/dump_signature.py" "$STRIPPED")
+rm "$STRIPPED"
+
+# Replace the old signature with the stripped signature in the symbols file.
+INFILE_BASE=$(basename "$INFILE")
+sed -i "1s/[0-9A-F]* $INFILE_BASE/$NEWSIG $INFILE_BASE/" "$OUTFILE"
Mark Mentovai 2009/06/12 17:30:10 This is slightly dangerous in the general case bec
+
Mark Mentovai 2009/06/12 17:30:10 nit: blank line at EOF doesn't contribute anything
« no previous file with comments | « no previous file | build/linux/dump_signature.py » ('j') | build/linux/dump_signature.py » ('J')

Powered by Google App Engine
This is Rietveld 408576698