diff options
Diffstat (limited to 'community/gsoc/project_ideas')
-rw-r--r-- | community/gsoc/project_ideas/gnat.mdwn | 32 | ||||
-rw-r--r-- | community/gsoc/project_ideas/language_bindings.mdwn | 14 | ||||
-rw-r--r-- | community/gsoc/project_ideas/pthreads.mdwn | 49 |
3 files changed, 1 insertions, 94 deletions
diff --git a/community/gsoc/project_ideas/gnat.mdwn b/community/gsoc/project_ideas/gnat.mdwn deleted file mode 100644 index ba34cc9c..00000000 --- a/community/gsoc/project_ideas/gnat.mdwn +++ /dev/null @@ -1,32 +0,0 @@ -[[!meta copyright="Copyright © 2009, 2011, 2012 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="Porting GNAT (GCC)"]] - -An initial port of the GNU Ada Translator (GNAT) is available for the Hurd. - -The goal of this project is getting GNAT fully working in Debian GNU/Hurd. It -requires implementing some explicitly system-specific stuff in GNAT (mostly in -its runtime libraries), and for that also address a number of issues in Hurd -and other libraries. Knowledge of Ada is a must; some Hurd -knowledge will have to be acquired while working on the project. - -Designing and implementing [[language_bindings]] is a follow-up project. - -Possible mentors: [[Samuel Thibault (youpi)|samuelthibault]], [[Thomas Schwinge -(tschwinge)|tschwinge]]. - -Exercise: Fix one of the known issues of GNAT on the Hurd. - ---- - -[[Open Issue page|open_issues/gnat]]. [Entry in the GCC -wiki](http://gcc.gnu.org/wiki/SummerOfCode#gnat_hurd). diff --git a/community/gsoc/project_ideas/language_bindings.mdwn b/community/gsoc/project_ideas/language_bindings.mdwn index d9a426be..61a3fa01 100644 --- a/community/gsoc/project_ideas/language_bindings.mdwn +++ b/community/gsoc/project_ideas/language_bindings.mdwn @@ -1,4 +1,4 @@ -[[!meta copyright="Copyright © 2008, 2009, 2010, 2011, 2012 Free Software +[[!meta copyright="Copyright © 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable @@ -47,18 +47,6 @@ In his [[2011 GSoC project|2011]], Jérémie Koenig designed and began implementing an object-oriented interface; see his [[Java status page|user/jkoenig/java]] for details. -There is another possible reason for preferring lower-level bindings: -Presently, the Hurd server libraries use the cthreads threading library, which -predates the pthread standard prevalent today. There is a -[[pthread library for the Hurd|libpthread]] -as well, but it's not possible to use both cthreads and pthreads in -the same executable. Thus, until -[[porting_the_Hurd_libraries_to_pthreads|community/gsoc/project_ideas/pthreads]] -is finished, implementing bindings for any language that uses pthreads (in the -runtime environment or the actual programs) is only possible when not using the -standard Hurd server libraries at all -- i.e. when binding at MIG stub level or -interface definition level. - The task is to create easy to use Hurd bindings for a language of the student's choice, and some example servers to prove that it works well in practice. This project will require gaining a very good understanding of the various Hurd diff --git a/community/gsoc/project_ideas/pthreads.mdwn b/community/gsoc/project_ideas/pthreads.mdwn deleted file mode 100644 index 2270c774..00000000 --- a/community/gsoc/project_ideas/pthreads.mdwn +++ /dev/null @@ -1,49 +0,0 @@ -[[!meta copyright="Copyright © 2008, 2009, 2010 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="Convert Hurd Libraries and Servers to pthreads"]] - -[[!tag open_issue_libpthread]] - -The Hurd was originally created at a time when the [pthreads -standard](http://www.opengroup.org/onlinepubs/009695399/basedefs/pthread.h.html) -didn't exist yet. Thus all Hurd servers and libraries are using the old -[[cthreads|hurd/libcthreads]] package that came with [[microkernel/Mach]], -which is not compatible with pthreads. - -Not only does that mean that people hacking on Hurd internals have to deal with -a non-standard thread package, which nobody is familiar with. Although a -[[pthreads implementation for the Hurd|libpthread]] -was created in the meantime, it's not -possible to use both cthreads and pthreads in the same program. Consequently, -pthreads can't presently be used in any Hurd servers -- including translators. - -(Thus it's impossible to use the [Hurd -libfuse](http://www.nongnu.org/hurdextras/#libfuse) with any FUSE modules -depending on pthreads for example.) - -Most of the conversion has already been done in previous efforts (see -[[!GNU_Savannah_task 5487]]) -- but the tricky parts are still missing. - -The goal of this project is to have all the Hurd code use pthreads. Should any -limitations in the existing pthreads implementation turn up that hinder this -transition, they will have to be fixed as well. - -This project requires relatively little Hurd-specific knowledge. Experience -with multithreaded programming in general and pthreads in particular is -required, though. - -Possible mentors: Barry deFreese (bddebian), Samuel Thibault (youpi) - -Exercise: Try to fix one of the outstanding issues with the work done so far. -It's not yet complete, and there hasn't been much debugging yet, so it should -not be too hard to find something needing improvement -- but if you don't see -anything obvious, feel free to talk to us about an alternative exercise task. |