[[!meta copyright="Copyright © 2013, 2018 Free Software Foundation, Inc."]]

[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
id="license" text="Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation; with no Invariant
Sections, no Front-Cover Texts, and no Back-Cover Texts.  A copy of the license
is included in the section entitled [[GNU Free Documentation
License|/fdl]]."]]"""]]

[[!meta title="Improve the GDB Port for GNU Hurd"]]

[[!tag open_issue_gdb]]

[[!template id=highlight text="""/!\ Obsolete /!\

---

This is no longer valid as a Google Summer of Code project; existing work needs
to be integrated first."""]]


[[/GDB]] is available and working on GNU Hurd.  However, there are some bugs
and there is missing functionality compared to a port targeting the Linux
kernel ([[tag/Open_Issue_GDB]], [diff of
testresults](https://git.savannah.gnu.org/cgit/hurd/web.git/tree/gdb/test.diff?h=toolchain/logs/master)).
For example, there is no port of [[open_issues/gdb/gdbserver]] available yet.
Identifying (together with the mentors), and then addressing one or a few of
these items is the goal of this project.

Required knowledge: Have an understanding about how GDB works generally, how it
interacts with an operating system.  Some GNU Mach and Hurd knowledge will have
to be acquired while working on the project.

Possible mentors: [[Thomas Schwinge (tschwinge)|tschwinge]].

Exercise: Begin writing a document to describe how the GNU Hurd port of GDB
works internally, how it interacts with the Hurd system, and compare it to a
port targeting the Linux kernel.  Fix one of the Open Issues or testsuite
failures.