After getting some positive feedback on this from a blog entry and personal mail, I wondered if the idea deserves a wider airing.
http://www.linux.codehelp.co.uk/serendipity/index.php?/archives/18-Mandatory-dbg-packages-for-libraries.html Others have expressed the same idea: http://ze-dinosaur.livejournal.com/7036.html Certain packages have already had bug reports requesting a -dbg package. I'd like to see all library source packages having a minimum of 4 binary packages required by Policy: the SONAME, the -dev, the -dbg and a -doc package. (Libraries for perl or other non-compiled languages would be exempt from -dbg packages but not -doc.) Alternatively, all lib packages should at least provide a -dev and -dbg package provide and either man (3) content or preferably a full -doc package. Currently, only a -dev is mandated. I'm currently writing a GtkHTML extension for the new Gtk2 version of quicklist (in experimental) and writing code to use an undocumented library is a PITA. Libraries without a -dbg are worse because Debian doesn't need any upstream involvement to create -dbg packages. Things like that make Debian a nicer environment to be upstream, not just a nice environment to be a DD or user. I'm upstream for many of my Debian packages and I'd like to think that Debian unstable would be the distribution of choice for upstream development. Of course, the problem is that -dbg packages are necessarily larger than the ordinary lib and putting all the affected libraries into the NEW queue to get the -dbg package added to the override file is going to make the NEW queue truly enormous. (Then again if our new DPL is able to put some of his platform ideas into practise, maybe new binaries from an existing source package can be fast-tracked through NEW.) Apart from those limitations, is there a *technical* reason why -dbg packages should not be available? Is it worth taking to -policy? Possible policy amendment: "Any library source package capable of building with debug information (i.e. with -g) must do so. Any such library source package must strip the debug symbols into separate objects, provide a binary package librarynamesoversion-dbg containing these separate objects as /usr/lib/debug/path/to/ELF/object for each /path/to/ELF/object in the main library package, and reference these separate objects in a .gnu_debuglink section in the corresponding unstripped object." (Thanks to Josh Triplett) I'd like to add something on -doc to that proposition but haven't decided how just yet. -- Neil Williams ============= http://www.data-freedom.org/ http://www.nosoftwarepatents.com/ http://www.linux.codehelp.co.uk/
pgpHWFVDMN4uP.pgp
Description: PGP signature