Package: debhelper
Version: 12.2.3
File: /usr/bin/dh_dwz
User: helm...@debian.org
Usertags: rebootstrap

dh_dwz is not being helpful here. I managed to get this output with
DH_VERBOSE=1:

| dh_dwz -Nlibglib2.0-udeb
|         install -d debian/libglib2.0-0/usr/lib/debug/.dwz/aarch64-linux-gnu
|         dwz -q 
-mdebian/libglib2.0-0/usr/lib/debug/.dwz/aarch64-linux-gnu/libglib2.0-0.debug 
-M/usr/lib/debug/.dwz/aarch64-linux-gnu/libglib2.0-0.debug -- 
debian/libglib2.0-0/usr/lib/aarch64-linux-gnu/glib-2.0/gio-launch-desktop 
debian/libglib2.0-0/usr/lib/aarch64-linux-gnu/glib-2.0/gio-querymodules 
debian/libglib2.0-0/usr/lib/aarch64-linux-gnu/glib-2.0/glib-compile-schemas 
debian/libglib2.0-0/usr/lib/aarch64-linux-gnu/libgio-2.0.so.0.6000.6 
debian/libglib2.0-0/usr/lib/aarch64-linux-gnu/libglib-2.0.so.0.6000.6 
debian/libglib2.0-0/usr/lib/aarch64-linux-gnu/libgmodule-2.0.so.0.6000.6 
debian/libglib2.0-0/usr/lib/aarch64-linux-gnu/libgobject-2.0.so.0.6000.6 
debian/libglib2.0-0/usr/lib/aarch64-linux-gnu/libgthread-2.0.so.0.6000.6
| dwz: Too few files for multifile optimization
|         aarch64-linux-gnu-objcopy --compress-debug-sections 
debian/libglib2.0-0/usr/lib/debug/.dwz/aarch64-linux-gnu/libglib2.0-0.debug
| aarch64-linux-gnu-objcopy: 
'debian/libglib2.0-0/usr/lib/debug/.dwz/aarch64-linux-gnu/libglib2.0-0.debug': 
No such file
| dh_dwz: aarch64-linux-gnu-objcopy --compress-debug-sections 
debian/libglib2.0-0/usr/lib/debug/.dwz/aarch64-linux-gnu/libglib2.0-0.debug 
returned exit code 1

What is dh_dwz trying to tell me here?

Kindly, dh_dwz passes -q. Doing so an important aspect. For each file
passed, dwz without -q says ".debug_info section not present". What it
is trying to convey here is that the build was performed without the
"-g" option to gcc and no debug symbols were generated. Obvious, isn't
it?

I propose that after running dwz, the destination file is checked for
existence. If it is missing, dh_dwz aborts rather than running objcopy.
Before exiting with a failure dh_dwz should do one of two possible
things:

a) Run the same dwz invocation again. This time dropping -q.
b) Check the passed objects for debug symbols and emit an appropriate
   message if they go missing.

Helmut

Reply via email to