Alfie hat vorgeschlagen, dass wir etwas bei der G++ Transition, die zur Zeit in Unstable vollzogen wird, mithelfen könnten.

Worum geht es?

Debian benutzt zum Kompilieren von C und C++ Programmen GCC, die Gnu Compiler Collection. Von dieser wurde vor einiger Zeit eine neue Version (4.0) freigegeben. Bei dieser gibt es eine Änderung der C++ ABI, des C++ Binär-Interfaces. Das heißt, das C++ Programme und Bibliotheken die mit älteren Versionen von GCC kompiliert wurden nicht mehr mit den neu kompilierten Programmen/Bibliotheken funktionieren. Das hat zur Folge, dass in Debian jedes C++ Programm und jede C++ Bibliothek neu kompiliert werden müssen.

Hört sich nach sehr viel Arbeit an -- ist es auch ;)

Das Kompilieren selbst übernehmen die Debian Build Daemons, doch damit die wissen, was zu kompilieren ist, müssen die ganzen Pakete von Debian Developern neu hinaufgeladen werden. Das geht zZ. etwas schleppend, weil viele Developer (und noch mehr non-DDs, die Pakete betreuen) doch recht faul sind ;)

Da Alfie doch DD ist, hat er vorgeschlagen, dass wir gemeinsam doch da etwas mithelfen könnten.

Was ist zu tun

Hauptsächlich gilt es zu checken, welche Pakete noch einen reupload brauchen und ob diese sich denn auch einwandfrei mit GCC-4.0 bauen lassen. Sollte das nicht der Fall sein, muss man halt eventuell etwas fixen. Dieser Teil kann recht wenig oder sehr sehr viel Arbeit sein. Kommt auf's Paket an.

Wenn man schließlich das Paket soweit hat, dass es mit g++-4.0 kompiliert und auch funkioniert, kann man einen NMU vorbereiten (ich weiß nicht genau, was Alfie's Position dazu ist, aber ich nehm' mal an, dass es so schon passt).

Voraussetzungen

Das ganze ist natürlich eine sehr technische Sache, deshalb sollte man sich schon einigermaßen auskennen, v.a. wenn man auch selber NMUs schnüren will. Nur testen ob ein Paket mit gcc-4 baut kann im Prinzip jeder, ist aber keine besonders spannende Angelegenheit. Ob man hier mitmachen kann/will sollte man eh selber wissen.

Rest der Voraussetzungen als Checkliste:

Details

Listen von Paketen die wegen der Transition noch neu gebaut werden müssen gibt's mehrere, eine Gute ist http://people.debian.org/~mfurr/gxx/. Das Problem dort ist nur, dass man nicht gleich sieht, ob ein Paket wirklich noch einen reupload braucht, oder ob es nur darauf wartet auf einigen Architekturen kompiliert zu werden.

Ich (Gr0) hab deshalb meine eigene Variante zusammengehackt, die Informationen von eben dieser Transition Seite und aus dem Debian Package Tracking System extrahiert, und das alles in eine Tabelle packt. Das Ergebnis gibt's hier: http://greek0.net/div/transition/. (Die 2 Scripts die die Seite erzeugen liefern sich ein Kopf-an-Kopf Rennen um die grausligsten Scripts/Programme, die ich je geschrieben hab :-/ )

Man sucht sich aus einer der 2 Listen ein Paket raus, TRÄGT SICH UNTEN BEI DEN CLAIMS EIN, und werkelt dann an dem Paket rum. Wenn's fertig ist macht man sich halt irgendwie bemerkbar.

Claims

Hier wird festgehalten, wer sich um ein bestimmtes Paket kümmert. Sinn ist, dass nicht 2 Leute die gleiche Arbeit machen. Also bitte hier eintragen, wenn man ein Paket in Angriff nimmt.

In Arbeit

Ungetestet

Schon getestet

Maintainer informiert

Gefixt

DebianWiki: G++_Transition (last edited 2009-08-28 17:43:29 by GerfriedFuchs)