Dear Maintainer,
git-buildpackage (or dpkg-buildpackage, or whatever) clears CC and CXX.
Cool. Except
$ env -i make -f <(printf '%s\n' '_:' ' echo $(CC) $(CXX)')
echo cc g++
So C++ programs are built with GCC but C programs are built with the
system C compiler. That's fine, right, no iss
dh_dwz -a
install -m0755 -d debian/systemd-cron/usr/lib/debug/.dwz/x86_64-linux-gnu
dwz -mdebian/systemd-cron/usr/lib/debug/.dwz/x86_64-linux-gnu/systemd-cron.debug -M/usr/lib/debug/.dwz/x86_64-linux-gnu/systemd-cron.debug -- debian/systemd-cron/lib/systemd/system-generators/systemd-crontab-generator debian/systemd-cron/usr/bin/crontab debian/systemd-cron/usr/libexec/systemd-cron/crontab_setgid
dwz: debian/systemd-cron/usr/libexec/systemd-cron/crontab_setgid: Unknown debugging section .debug_addr
dwz: debian/systemd-cron/usr/libexec/systemd-cron/crontab_setgid: Unknown debugging section .debug_addr
dh_dwz: error: dwz -mdebian/systemd-cron/usr/lib/debug/.dwz/x86_64-linux-gnu/systemd-cron.debug -M/usr/lib/debug/.dwz/x86_64-linux-gnu/systemd-cron.debug -- debian/systemd-cron/lib/systemd/system-generators/systemd-crontab-generator debian/systemd-cron/usr/bin/crontab debian/systemd-cron/usr/libexec/systemd-cron/crontab_setgid returned exit code 1
dh_dwz: error: Aborting due to earlier error
make: *** [debian/rules:16: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
debuild: fatal error at line 1182:
dpkg-buildpackage -us -uc -ui -i -I -sa -d failed
gbp:error: 'debuild -i -I -sa -d' failed: it exited with 29
Every time. Well, almost every time. Every package that builds a C
program, since dwz(1) says
(note: "using DWARF 4 or higher will work much better" while
simultaneously "DWARF 5 [laundry list] aren't supported").
So, either, in decreasing order of meme:
(a) have dwz actually process .debug_addr
(b) make dwz not consider encountering .debug_addr a fatal error
(since AIUI it's supposed to just... pre-optimise the debug
sections? why is it fatal?)
(c) have dh_dwz not consider dwz being broken a fatal error
(d) have gbp-buildpackage force GCC to work around a known
long-standing dwz bug
Setting CC CXX and then running dpkg-buildpackage works,
so option (d) is probably the least meme
(replace "unset CC CXX" with "export CC=gcc CXX=g++").
Best,
наб