Subject: SoC project
To: None <tech-pkg@netbsd.org>
From: Joerg Sonnenberger <joerg@britannica.bec.de>
List: tech-pkg
Date: 03/12/2007 16:52:25
Hi all,
if possible I'd like to work on three topic this year.

(a) the cross-compilation for modular xorg (_except_ the server)
(b) the refinement and integration of the new bulk build code
(c) providing an interface for bulk build data from "official" builds
similiar to pgksrc.se and pointyhat.

Let me go somewhat in detail and I'm interested to hear your feedback.

For a)
This is an item from the main project list. Being able to compile
modular Xorg from pkgsrc will basically allow us to get rid of xsrc,
reducing maintaince and improving hardware support on many newer
architectures. The Xorg server is not included for now, because it is
one of the pieces which include a lot of platform specific magic and is
therefore a lot more special. This is not such a big problem from the
NetBSD perspective as many of the slower platforms have more special
needs in that area anyway.

From the pkgsrc perspective, I need to clean up the tool dependencies
and verify the correctness of possible buildlink dependencies. The goal
would be to make all native programs needed for cross-compilation use
the tool framework and not depend on b3.mk.

A side dependency for this is the DESTDIR support, but I have the
missing pieces for proper working support mostly done in pre-commit
state. The Xorg packages I've commited myself already support this
anyway as should most, if not all of the dependencies.

For b)
This is also a long running item from the project list. The short answer
is that the code is working and in active use for the DragonFly bulk
builds. There's at least one other developer using it as well.

The system needs quite a bit of hand-holding right now and doesn't
support some of the features of the old infrastructure (e.g. limited
bulk builds). The code is flexible enough that it should be possible to
handle that, but I want to extend it in some areas anyway. Wish list
items are welcome.

The project would of course be to get it ready for full inclusion and as
replacement of mk/bulk in all cases.

For c)
This is an area which interests me most. I want to establish something
similiar to FreeBSD's automatic build system (http://pointyhat.freebsd.org)
with the focus on the following items:
(1) Which package is broken on which platforms?
(2) How did that change over time?
(3) Do I (as maintainer) want to be informed about changes automatically
or not?

This is meant to reduce the workload for wizd, but with some computation
power in the backend this will help every user of pkgsrc. With the help
of (b), it is possible for me to do a full (!) bulk build in around 4
days for DragonFly, at least the other AMD64 and IA32 systems should be
similiar. That helps to catch a lot of common regressions fast, but
catching them and fixing them is not the same. For the latter, you have
to be know about the breakage :-)

Joerg