automatic debug packages
Hello.
I suggest the attached update to the policy, now that debhelper
handles packages containing debug symbols.
https://lists.debian.org/debian-devel/2015/12/msg00262.html
--- debian-ada-policy.texi 624fca334250dca52abf31fd163833c439630a81
+++ debian-ada-policy.texi d3c97063465adc77c0e0d84a86d59354bccba9f6
@@ -662,7 +662,6 @@ @subsection Scenario: multiple versions
@example
libfoo-dev (= 1.2.3-1)
libfoo1 (= 1.2.3-1)
-libfoo1-dbg (= 1.2.3-1)
@end example
The shared object version of libfoo is 1, while the source version is
@@ -694,7 +693,6 @@ @subsection Scenario: multiple versions
@example
libfoo-dev (= 2.1-5)
libfoo2 (= 2.1-5)
-libfoo2-dbg (= 2.1-5)
@end example
Charlie then writes the program @code{chaliesmusic} which he packages.
@@ -1495,9 +1493,14 @@ @subsection Package names
@item libLIBRARY[[-]V]-doc
the documentation (optional), in section @code{doc}.
-@item libLIBRARY[[-]N]-dbg
+@item libLIBRARY[-]V-dev-dbgsym
the separate debugging information for the shared library, in section
@code{debug}.
+
+@item libLIBRARY[-]N-dbgsym
+the separate debugging information for the static library, in section
+@code{debug}.
+
@end table
where:
@@ -1545,13 +1548,13 @@ @subsection Inter-package dependencies
previous versions of the package, if any, that ever depended on the
same @code{gnat-X.Y} package.
-Rule: the @code{-dbg} package SHALL Depend: on the exact version of
-the corresponding shared library package.
+Rule: the @code{-dbgsym} packages SHALL Depend: on the exact version of
+the corresponding package.
-Rationale: the @code{-dbg} package is useless without the shared
-library package.
+Rationale: the @code{-dbgsym} package is useless without the
+corresponding package.
-Rule: the @code{-doc}, @code{-dbg} and any other packages produced
+Rule: the @code{-doc} and any other packages produced
from the same source package, SHALL Suggest: the package @code{gnat}.
Rationale: this makes all the packages visible in aptitude and other
@@ -1871,21 +1874,15 @@ @section The separate debugging informat
(this section is normative.)
-Rule: the package maintainer SHALL provide a package containing the
-debugging symbols for the shared library.
+Rule: the package maintainer SHALL provide packages containing the
+debugging symbols for the shared and static libraries.
-Rationale: Debian has a mechanism for producing and using @code{-dbg}
+Rationale: Debian has a mechanism for producing and using @code{-dbgsym}
packages containing debugging information. For this to work, you must
-compile the shared library with @samp{-g} and the @code{-dbg} package
-must appear in @file{debian/control}. Then, you call @samp{dh_strip
--plibLIBRARYN --dbg-package=libLIBRARY-dbg} from within
-@file{debian/rules}. Since that's all there is to it, package
-maintainers have little excuse not to provide a @code{-dbg} package.
+compile the shared library with @samp{-g}.
+Since that's all there is to it, package
+maintainers have little excuse not to provide @code{-dbgsym} package.
-Recommendation:
-If @code{DEB_HOST_MULTIARCH} has been used, the @code{-dbg} package
-should be declared @code{Multiarch: same}.
-
@node Debian for Ada programmers
@chapter Debian for Ada programmers
@@ -2127,7 +2124,12 @@ @section Debugging programs that use sha
@node Debugging programs that use shared libraries
@section Debugging programs that use shared libraries
-If the package maintainer provides a @code{-dbg} package, you simply
+The @code{-dbgsym} packages require a line like
+
+@code{deb http://debug.mirrors.debian.org/debian-debug/ unstable-debug main}
+
+in your @code{apt-sources} list.
+Then, you simply
@samp{apt-get install} it and launch @command{gdb} on your program
(preferably inside an integrated development environment).
@command{gdb} automagically looks for the debugging symbols for the
Reply to: