* Week 2-10: Fixing compiler errors in Debian packages. I will start with the simpler bugs, then work on the most difficult bugs. Eventually, some work on clang itself may have to be done (For example, the [[http://clang.debian.net/status.php?key=MISSING_OPTION_U|missing -U flag]]). If there is time or inclination, some work may be done on compile warnings as well as errors, to hopefully reduce bugs in the code.

* Week 2-end: Fixing compiler errors in Debian packages. I will start with the simpler bugs, then work on the most difficult bugs. Eventually, some work on clang itself may have to be done (For example, the [[http://clang.debian.net/status.php?key=MISSING_OPTION_U|missing -U flag]]). If there is time or inclination, some work may be done on compile warnings as well as errors, to hopefully reduce bugs in the code.

Charles Pigott

Background: I am a 1st year Maths/Computer Science undergraduate at the University of York. I am experienced in C, C++, C#(.NET) (3 years), Python and Java (2 years), along with some SQL. I have used Linux on my desktop(s) for 3 years now, using several different distros. I am already involved in the OSS community, being a regular contributor to OpenTTD and a developer for FreeRCT. Since joining University I have also got involved with the computing team for University Radio York (code) which has a lot of software which is needed to run the station and (often) needs maintenance.

Project title: Debian built with clang

Project details: Fix Debian packages so that they can be built with the clang compiler, rather than just GCC.

Synopsis: The goal of this project is to clean up the code of various Debian packages such that they will build with clang

Benefits to Debian: Because of clang's extra strictness on C/C++ programs, the quality of the code of the packages will increase, hopefully causing less bugs and bug reports. It will also open up the possibility of making clang the default compiler on Debian (similar to what FreeBSD has done).

Deliverables: Most, if not all Debian packages being able to be build with clang or patches which enable this.

Project schedule:

Week 1: Familiarising myself with the Debian bug tracker, and how to send patches to package maintainers.

Week 2-end: Fixing compiler errors in Debian packages. I will start with the simpler bugs, then work on the most difficult bugs. Eventually, some work on clang itself may have to be done (For example, the missing -U flag). If there is time or inclination, some work may be done on compile warnings as well as errors, to hopefully reduce bugs in the code.

Some significant work will have to be done to understand the structure of some older projects - several have not been touched upstream in the best part of a decade, and consist only of a dead ?SourceForge CVS project. I will have to work with package maintainers in attempting to get patches included upstream, if at all possible.

I have already began work on this, by fixing the clementine package, which was failing to build with clang on my system. I forwarded the bug straight to upstream, as I am currently more able to do that.

Exams and other commitments: Last exam is on 3rd June, and will be available pretty much constantly after that.

Other summer plans: Family do not plan ahead very well, but I am unlikely to be unavailable for more than a week in total.

Why Debian?: Ubuntu was the first Linux OS that I used and Debian was the first OS in which I first started doing any serious sort of development, and I want to give something back to the debian project (and by extension Ubuntu).