This page lists ideas for projects which GDB would like to have implemented by GSoC students. We may also consider items which are not in this list. Please discuss your chosen idea with the GDB community before applying for the GSoC. You can find us in the #gdb channel at Freenode, but we prefer that GSoC discussions happen in the GDB mailing list, namely gdb [at] sourceware.org
Important: GDB is a project under the Free Software Foundation, which requires that all contributions incorporated by its projects have their copyrights assigned to the FSF. Because of this, you need to have your copyright assignment papers on file before you can start working on any GSoC project for GDB. More information about this is in this page. Please contact the GDB community (on IRC or mailing list) if you have questions about this requirement.
Students can work on GDB ideas through the GNU Project organization. Please read the GNU guidelines for Summer of Code projects, it has good tips which will help you submit a proposal with more chances of being successful.
We collect ideas for the GDB project in the ProjectIdeas page. The ones we think would make interesting GSoC projects were cherry-picked to this page, and expanded. You are of course welcome to submit proposals for other ideas from that page, or even ideas of your own.
If you are seriously considering and preparing to work on a GSoC project in GDB, read the DeveloperTips, the GDB Internals document (very incomplete, but gives an idea on how GDB is organized internally) and the CONTRIBUTE document in <gdb-src>/gdb/CONTRIBUTE.
Help with Python scripting support
Some things a student could work on:
- Support for writing useful "executables" purely in Python. This would mean modifying the gdb startup sequence (so a script could be used in a pipeline) and maybe adding command-line options. One example of a tool like this would be a generalized strace, like frysk's ftrace. There's initial support for this already, but it needs to be expanded.
The PythonGdb page has more ideas for future work.
Support pipes in the run command (this may be too small for a GSoC)
An interested student mentioned that he will work on this while GSoC doesn't start.
Implement "invisible" mode
It would be useful if GDB had an "invisible" mode, where it handles I/O redirection to the inferior properly, and where it defers showing the CLI until some events occurs.
Features in bugzilla
There are more possible features to implement in Bugzilla. You'll have to dig a little to find them. The key thing for SoC is to pick one that is neither too big nor too small.