Merged revisions 79548,79557,79616-79617,79716,79778,79795,79803,79896 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r79548 | martin.v.loewis | 2010-04-01 02:40:51 -0500 (Thu, 01 Apr 2010) | 3 lines

  Issue #8032: For gdb7, a python-gdb.py file is added to the build,
  allowing to use advanced gdb features when debugging Python.
........
  r79557 | antoine.pitrou | 2010-04-01 12:56:57 -0500 (Thu, 01 Apr 2010) | 5 lines

  Issue #8281: rename test_gdb_sample.py to gdb_sample.py, otherwise it gets picked
  as a regular test by regrtest.py, and fails.
........
  r79616 | mark.dickinson | 2010-04-02 15:22:21 -0500 (Fri, 02 Apr 2010) | 1 line

  Add python.exe-gdb.py to svn:ignore, for the benefit of OS X developers.
........
  r79617 | mark.dickinson | 2010-04-02 15:34:26 -0500 (Fri, 02 Apr 2010) | 1 line

  Add python-gdb.py and python.exe-gdb.py to distclean target in Makefile.
........
  r79716 | martin.v.loewis | 2010-04-03 13:54:07 -0500 (Sat, 03 Apr 2010) | 2 lines

  Don't install python-gdb.py as an executable.
........
  r79778 | r.david.murray | 2010-04-04 20:34:50 -0500 (Sun, 04 Apr 2010) | 3 lines

  Issue 8287: try to fix the gdb-python install errors on Solaris
  and FreeBSD.  Patch by Dave Malcolm.
........
  r79795 | ronald.oussoren | 2010-04-05 06:21:21 -0500 (Mon, 05 Apr 2010) | 7 lines

  Ensure that the gdb hooks can be installed when
  srcdir != builddir.

  Without this patch it is no longer possible to
  build python when you don't run configure from
  the root of the source tree.
........
  r79803 | r.david.murray | 2010-04-05 11:28:49 -0500 (Mon, 05 Apr 2010) | 3 lines

  Issue 8316: make test_gdb robust in the face of differing terminal
  widths.  Patch by Dave Malcolm.
........
  r79896 | martin.v.loewis | 2010-04-07 14:11:32 -0500 (Wed, 07 Apr 2010) | 2 lines

  Issue #8337: Disable the remaining test also for now.
........
diff --git a/Makefile.pre.in b/Makefile.pre.in
index c74b200..eaff822 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -378,7 +378,7 @@
 
 # Default target
 all:		build_all
-build_all:	$(BUILDPYTHON) oldsharedmods sharedmods
+build_all:	$(BUILDPYTHON) oldsharedmods sharedmods gdbhooks
 
 # Compile a binary with gcc profile guided optimization.
 profile-opt:
@@ -451,6 +451,17 @@
 libpython$(VERSION).sl: $(LIBRARY_OBJS)
 	$(LDSHARED) $(LDFLAGS) -o $@ $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST)
 
+# Copy up the gdb python hooks into a position where they can be automatically
+# loaded by gdb during Lib/test/test_gdb.py
+#
+# Distributors are likely to want to install this somewhere else e.g. relative
+# to the stripped DWARF data for the shared library.
+gdbhooks: $(BUILDPYTHON)-gdb.py
+
+SRC_GDB_HOOKS=$(srcdir)/Tools/gdb/libpython.py
+$(BUILDPYTHON)-gdb.py: $(SRC_GDB_HOOKS)
+	$(INSTALL_DATA) $(SRC_GDB_HOOKS) $(BUILDPYTHON)-gdb.py
+
 # This rule is here for OPENSTEP/Rhapsody/MacOSX. It builds a temporary
 # minimal framework (not including the Lib directory and such) in the current
 # directory.
@@ -1187,6 +1198,7 @@
 	-rm -f core Makefile Makefile.pre config.status \
 		Modules/Setup Modules/Setup.local Modules/Setup.config \
 		Misc/python.pc
+	-rm -f python*-gdb.py
 	find $(srcdir) '(' -name '*.fdc' -o -name '*~' \
 			   -o -name '[@,#]*' -o -name '*.old' \
 			   -o -name '*.orig' -o -name '*.rej' \
@@ -1250,5 +1262,6 @@
 .PHONY: frameworkinstallmaclib frameworkinstallapps frameworkinstallunixtools
 .PHONY: frameworkaltinstallunixtools recheck autoconf clean clobber distclean 
 .PHONY: smelly funny patchcheck
+.PHONY: gdbhooks
 
 # IF YOU PUT ANYTHING HERE IT WILL GO AWAY