Opened 13 years ago

Closed 13 years ago

#311 closed enhancement (fixed)

Port of Portable C Compiler (pcc) to HelenOS

Reported by: Jakub Jermář Owned by:
Priority: major Milestone: 0.5.0
Component: helenos/app/other Version:
Keywords: gsoc11 Cc:
Blocker for: Depends on:
See also: #315

Description (last modified by Jakub Jermář)

Port the Portable C Compiler to HelenOS.

The Portable C Compiler (pcc) is a multiplatform, BSD-licensed, simple and fast compiler of the C99 language. The origins of the compiler reach back to 1970's, but it is being actively developed even today. Its current version is now nearing the 1.0 release. Integrate a reasonably recent version of pcc into HelenOS so that it can be used to compile C programs from within HelenOS. In the absence of tools such as assembler and linker, focus on porting pcc to the extent that it can compile an input C source file into an output assembly file (skip the assembler and linking phase).
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 native C compiler is a prerequisite to reaching this goal. With a C compiler in place, the usability of HelenOS will also benefit as it will become possible to compile user programs from within HelenOS itself.
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.
Possible mentors
HelenOS Core Team, Jakub Jermar, Jiri Svoboda

Change History (7)

comment:1 by Jakub Jermář, 13 years ago

Keywords: gsoc11 added; gsoc2011 removed

comment:2 by Jakub Jermář, 13 years ago

Component: unspecifiedapp/other

comment:3 by Jakub Jermář, 13 years ago

Description: modified (diff)

comment:4 by Jakub Jermář, 13 years ago

Summary: Port Portable C Compiler (pcc) to HelenOSPort of Portable C Compiler (pcc) to HelenOS

comment:5 by Jakub Jermář, 13 years ago

See also: #315

comment:6 by Jakub Jermář, 13 years ago

Type: defectenhancement

comment:7 by Jakub Jermář, 13 years ago

Resolution: fixed
Status: newclosed

Merged in mainline,1211.

Note: See TracTickets for help on using tickets.