]> git.pld-linux.org Git - packages/gdb.git/blame - gdb-gdb-add-index-script.patch
- up to 7.3.1
[packages/gdb.git] / gdb-gdb-add-index-script.patch
CommitLineData
51a5ef0f
PS
1http://sourceware.org/ml/gdb-patches/2010-07/msg00184.html
2Subject: Re: [0/4] RFC: add DWARF index support
3
4Jan Kratochvil: Fixed $d -> $dir.
5Jan Kratochvil: Remove /dev/null redirection.
6
7>>>>> "Tom" == Tom Tromey <tromey@redhat.com> writes:
8
9Tom> This patch series adds support for a DWARF index to gdb.
10
11Roland suggested we wrap up the index-creation code into a helper
12script.
13
14I'm not sure if this is something people would want in gdb proper, but I
15figured I would send it here just in case.
16
17Tom
18
192010-07-09 Tom Tromey <tromey@redhat.com>
20
21 * Makefile.in (install-only): Install gdb-add-index.
22 * gdb-add-index: New file.
23
242010-07-09 Tom Tromey <tromey@redhat.com>
25
26 * gdb.texinfo (Index Files): Mention gdb-add-index.
27
28>From 30714fe719e61baea03d0dc5793eb0d564faebb7 Mon Sep 17 00:00:00 2001
29From: Tom Tromey <tromey@redhat.com>
30Date: Fri, 9 Jul 2010 11:17:54 -0600
31Subject: [PATCH 4/4] add gdb-add-index
32Subject: [PATCH 4/4] add gdb-add-index
33
34---
35 gdb/ChangeLog | 5 +++++
36 gdb/Makefile.in | 11 ++++++++++-
37 gdb/doc/ChangeLog | 4 ++++
38 gdb/doc/gdb.texinfo | 8 ++++++++
39 gdb/gdb-add-index | 30 ++++++++++++++++++++++++++++++
40 5 files changed, 57 insertions(+), 1 deletions(-)
41 create mode 100755 gdb/gdb-add-index
42
6ed6bacf
AM
43Index: gdb-7.2.50.20101116/gdb/Makefile.in
44===================================================================
45--- gdb-7.2.50.20101116.orig/gdb/Makefile.in 2010-11-16 08:03:17.000000000 +0100
46+++ gdb-7.2.50.20101116/gdb/Makefile.in 2010-11-16 08:47:45.000000000 +0100
47@@ -986,7 +986,16 @@ install-only: install-gstack $(CONFIG_IN
51a5ef0f
PS
48 $(SHELL) $(srcdir)/../mkinstalldirs \
49 $(DESTDIR)$(man1dir) ; \
50 $(INSTALL_DATA) $(srcdir)/gdb.1 \
51- $(DESTDIR)$(man1dir)/$$transformed_name.1
52+ $(DESTDIR)$(man1dir)/$$transformed_name.1; \
53+ transformed_name=`t='$(program_transform_name)'; \
54+ echo gdb-add-index | sed -e "$$t"` ; \
55+ if test "x$$transformed_name" = x; then \
56+ transformed_name=gdb-add-index ; \
57+ else \
58+ true ; \
59+ fi ; \
60+ $(INSTALL_PROGRAM) $(srcdir)/gdb-add-index \
61+ $(DESTDIR)$(bindir)/$$transformed_name$(EXEEXT)
62 @$(MAKE) DO=install "DODIRS=$(SUBDIRS)" $(FLAGS_TO_PASS) subdir_do
63 .PHONY: install-tui
64 install-tui:
6ed6bacf
AM
65Index: gdb-7.2.50.20101116/gdb/doc/gdb.texinfo
66===================================================================
67--- gdb-7.2.50.20101116.orig/gdb/doc/gdb.texinfo 2010-11-16 08:04:18.000000000 +0100
68+++ gdb-7.2.50.20101116/gdb/doc/gdb.texinfo 2010-11-16 08:56:30.000000000 +0100
69@@ -15500,6 +15500,14 @@ There are currently some limitation on i
51a5ef0f
PS
70 for DWARF debugging information, not stabs. And, they do not
71 currently work for programs using Ada.
72
73+@value{GDBN} comes with a program, @command{gdb-add-index}, which can
74+be used to add the index to a symbol file. It takes the symbol file
75+as its only argument:
76+
77+@smallexample
78+$ gdb-add-index symfile
79+@end smallexample
80+
51a5ef0f
PS
81 @node Symbol Errors
82 @section Errors Reading Symbol Files
6ed6bacf
AM
83
84Index: gdb-7.2.50.20101116/gdb/gdb-add-index
85===================================================================
86--- /dev/null 1970-01-01 00:00:00.000000000 +0000
87+++ gdb-7.2.50.20101116/gdb/gdb-add-index 2010-11-16 08:47:45.000000000 +0100
51a5ef0f
PS
88@@ -0,0 +1,30 @@
89+#! /bin/sh
90+
91+# Add a .gdb_index section to a file.
92+
93+# Copyright (C) 2010 Free Software Foundation, Inc.
94+# This program is free software; you can redistribute it and/or modify
95+# it under the terms of the GNU General Public License as published by
96+# the Free Software Foundation; either version 3 of the License, or
97+# (at your option) any later version.
98+#
99+# This program is distributed in the hope that it will be useful,
100+# but WITHOUT ANY WARRANTY; without even the implied warranty of
101+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
102+# GNU General Public License for more details.
103+#
104+# You should have received a copy of the GNU General Public License
105+# along with this program. If not, see <http://www.gnu.org/licenses/>.
106+
107+file="$1"
108+dir="${file%/*}"
109+
110+# We don't care if gdb gives an error.
111+gdb -nx --batch-silent -ex "file $file" -ex "save gdb-index $dir"
112+
113+if test -f "${file}.gdb-index"; then
114+ objcopy --add-section .gdb_index="${file}.gdb-index" --set-section-flags .gdb_index=readonly "$file" "$file"
115+ rm -f "${file}.gdb-index"
116+fi
117+
118+exit 0
This page took 1.107435 seconds and 4 git commands to generate.