GDB 7.3
Summary
Update the system GNU Debugger (GDB) in Fedora from 7.2 to 7.3. Existing and new Archer branches get ported along.
Owner
- Name: Jan Kratochvil
- Email: jan.kratochvil@redhat.com
Current status
- Targeted release: Fedora 15
- Last updated: 2011-03-28
- Percentage of completion: 100%
Detailed Description
Rawhide already contains updates from upstream CVS HEAD such as gdb-7.2.50.20110117-12.fc15.
Benefit to Fedora
Improved debugging experience on Fedora by making the debugger more powerful.
Scope
Systemtap markers support is a work in progress (archer-sergiodj-stap branch).
Other Fedora packages bound to GDB are pretty-printers (libstdc++
and glib2-devel
) and a package based on the Python binding (gdb-heap
). ABRT uses basic commands from GDB for applications backtraces.
How To Test
GDB provides substantial GDB testsuite being regression tested with each new build. rpmbuild --with testsuite -bb gdb.spec 2>&1|tee log
produces output which can be processed by uudecode
and tar xjf
, resulting *.sum
files should be compared against last stable release by diff
. There should be no PASS
->FAIL
cases (regressions).
libstdc++
and glib2-devel
pretty-printers and also gdb-heap
should be tested by hand for compatibility. ABRT is dependent on GDB but incompatibilities are not expected there.
User Experience
This new GDB release 7.3 together with Archer and Fedora extensions improves debugging experience on Fedora by making the debugger more powerful. The majority of these features were written by Red Hat engineers, thus benefiting all gdb users. New features for the Fedora 15 release are not limited to:
- Support for breakpoints at SystemTap markers (probes)
- Support for using labels in the program's source
- OpenCL language debugging support
- Thread debugging of core dumps - priting
pthread_t
of threads and their TLS variables - Python scripting improvements not limited to:
- GDB values in Python are now callable if the value represents a function address.
- New module gdb.types for inferior types.
- New module gdb.printing for writing and registering pretty-printers.
More features are listed upstream above the line *** Changes in GDB 7.2
.
Numerous important packages within Fedora are pre-built with SystemTap static markers, and these can now be used as the target for breakpoints in gdb.
Dependencies
Python is not expect to break its API.
Upstream may not release final 7.3 version in time for Fedora 15.
SystemTap markers (probes) require SystemTap version 1.4. This version is now already present in Rawhide.
Contingency Plan
HEAD snapshot 7.2.50.x is perfectly fine to be release for Fedora. Later final upstream release will be provided as a Bodhi update.
If the breakpoints at SystemTap markers (probes) support is not completed in time the feature can be dropped.
Documentation
Documented upstream above the line *** Changes in GDB 7.2
.
SystemTap markers (probes) are documented in he archer-sergiodj-stap branch (before it gets merged).
Release Notes
This new GDB release 7.3 together with Archer and Fedora extensions improves debugging experience on Fedora by making the debugger more powerful. The majority of these features were written by Red Hat engineers, thus benefiting all gdb users. New features for the Fedora 15 release are not limited to:
- Support for breakpoints at SystemTap markers (probes)
- Support for using labels in the program's source
- OpenCL language debugging support
- Thread debugging of core dumps - priting
pthread_t
of threads and their TLS variables - Python scripting improvements not limited to:
- GDB values in Python are now callable if the value represents a function address.
- New module gdb.types for inferior types.
- New module gdb.printing for writing and registering pretty-printers.
More features are listed upstream above the line *** Changes in GDB 7.2
.
Numerous important packages within Fedora are pre-built with SystemTap static markers, and these can now be used as the target for breakpoints in gdb.