﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	field_blocks	field_dependson	field_seealso
413	Port GNU Compiler Collection (gcc) to HelenOS	Jakub Jermář	Vojtech Horky	"Port the GNU Compiler Collection to HelenOS.

 Details::
 HelenOS already contains a simple C compiler in the form of the Portable C Compiler (```pcc```) which was ported to it during GSoC 2011. ```pcc``` is sufficient for compiling simple userspace programs under HelenOS/ia32, but unfortunately is not powerful enough to build the entire HelenOS without substantial modifications in places where ```pcc``` does not follow ```gcc``` close enough. Which is worse, ```pcc``` does not support the full range of platforms supported by HelenOS, which makes it a non-starter for the use as the main HelenOS compiler (both cross and native). This last criterion basically leaves us with only ```gcc``` as the only choice for achieving our long-term goal of becoming self-hosting.

 The goal of this project is to port at least the C compiler part of ```gcc``` to HelenOS.

 What Gains and Benefits will this bring?::
 One of the strategic goals for HelenOS is becoming self-hosting. Since most of the HelenOS code is written in C, having a portable, full-fledged native C compiler is a prerequisite to reaching this goal. Using the same compiler for cross-compilation and building HelenOS from itself is also a benefit of its own.

 Difficulty::
 Medium. The effort will be somewhat easier especially thanks to GSoC 2011 projects that have paved the way for this project by porting GNU binutils and the Portable C Compiler to HelenOS and creating a POSIX-compatibility library.

 Required skills::
 A successful applicant will have good skills of programming in the C language and the ability to survive in a non-standard non-POSIX application environment. The applicant should also be familiar with the basic concepts behind compilers and the build toolchain.

 Documentation::
 - [wiki:DeveloperDocs#Clanguage]
 - [http://gcc.gnu.org GCC, The GNU Compiler Collection]

 Possible mentors::
 HelenOS Core Team, Jakub Jermar, Jiri Svoboda"	enhancement	closed	major	0.6.0	helenos/app/other	mainline	fixed	gsoc12	vivek.cs.iitr@…			
