This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Google Summer of Code projects for the GNU C Library.


Hi!

On Wed, 26 Feb 2014 10:23:28 +0100, I wrote:
> On Wed, 19 Feb 2014 19:14:45 -0500, "Carlos O'Donell" <carlos@redhat.com> wrote:
> > The GNU Project is participating in GSoC 2014 and have asked
> > individual GNU projects to nominate their own GSoC projects
> > under their umbrella.
> > 
> > We have proposed an initial three projects for the GNU C Library
> > and you can see them here:
> > http://www.gnu.org/software/soc-projects/ideas-2014.html

JosÃ, please apply the following patch to ideas-2014.html:

> I have just added ÂImplement Missing Interfaces for GNU HurdÂ,
> <https://sourceware.org/glibc/wiki/GSoC#Implement_Missing_Interfaces_for_GNU_Hurd>:

> Please review/edit/amend/polish this (please shout if you need to be
> added to <https://sourceware.org/glibc/wiki/EditorGroup>), and then I'll
> soon ask Josà to also include it on
> <http://www.gnu.org/software/soc-projects/ideas-2014.html> as well as put
> it on/link to it from
> <http://www.gnu.org/software/hurd/community/gsoc/project_ideas.html>.

diff --git ideas-2014.html ideas-2014.html
index d9fa315..56a5657 100644
--- ideas-2014.html
+++ ideas-2014.html
@@ -232,6 +232,28 @@ for all functions. This work can stop at any point and we will have
 made progress against testing the current implementation.
 </p>
 
+<h4 id="glibc_hurd_missing_interfaces">Implement Missing Interfaces for GNU Hurd</h4>
+<p>
+In glibc's Linux kernel port, most simple POSIX interfaces are in fact just forwarded to (implemented by) Linux kernel system calls.
+In contrast, in the <a href="http://www.gnu.org/software/hurd/glibc.html";>GNU Hurd port</a>, the POSIX (and other) interfaces are actually implemented in glibc on top of the <a href="http://www.gnu.org/software/hurd/hurd/rpc.html";>Hurd RPC protocols</a>.
+A few examples:
+<a href="https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/mach/hurd/getuid.c";>getuid</a>,
+<a href="https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/mach/hurd/open.c";>open</a>,
+<a href="https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/mach/hurd/rmdir.c";>rmdir</a>,
+<a href="https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/mach/hurd/setresuid.c";>setresuid</a>,
+<a href="https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/mach/hurd/socketpair.c";>socketpair</a>.
+</p>
+
+<p>
+When new interfaces are added to glibc (new editions of POSIX and similar standards, support for new editions of C/C++ standards, new GNU-specific extensions), generally <a href="https://sourceware.org/git/?p=glibc.git;a=blob;f=posix/execve.c";>ENOSYS stubs</a> are added, which are then used as long as there is no real implementation, and often these real implementations are only done for the Linux kernel port, but not GNU Hurd.
+(This is because most of the contributors are primarily interested in using glibc on Linux-based systems.)
+Also, there is quite a backlog of <a href="http://darnassus.sceen.net/~hurd-web/open_issues/glibc/#missing";>missing implementations</a> for GNU Hurd.
+</p>
+
+<p>
+In coordination with the <a href="mailto:bug-hurd@gnu.org";>GNU Hurd developers</a>, you'd work on implementing such missing interfaces.
+</p>
+
 <h3 id="gdb"><a href="http://www.gnu.org/software/gdb";>GDB</a></h3>
 <p>
 GDB, the GNU Project debugger, allows you to see what is going on
@@ -455,7 +477,7 @@ results.
 <strong>Mentor</strong>: <a href="mailto:ludo@gnu.org";>Ludovic Court&egrave;s</a>
 
 
-<h4>Porting Guix to GNU/Hurd</h4>
+<h4 id="guix_hurd">Porting Guix to GNU/Hurd</h4>
 
 <p>
   GNU Guix currently supports building packages for GNU/Linux only.  The
@@ -704,7 +726,10 @@ implemented by the Unix kernel or similar kernels (such as Linux).
 
 <p>Please see
   this <a href="/software/hurd/community/gsoc/project_ideas.html">separate
-  page for our project ideas</a>, as well as -
+  page for our project ideas</a>, as well as
+  on this page <a href="#glibc_hurd_missing_interfaces">glibc: Implement
+  Missing Interfaces for GNU Hurd</a> and <a href="#guix_hurd">Porting Guix to
+  GNU/Hurd</a>, and also
   our <a href="/software/hurd/community/gsoc/student_application_form.html">student
   application form</a>.</p>
 


GrÃÃe,
 Thomas

Attachment: pgpSaMsH2mppB.pgp
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]