Processed: Re: Bug#909089: debhelper: GNU configure $prefix expanded too early?

2018-09-19 Thread Debian Bug Tracking System
Processing commands for cont...@bugs.debian.org:

> clone 909089 -1
Bug #909089 [debhelper] debhelper: GNU configure $prefix expanded too early?
Bug 909089 cloned as bug 909168
> notfound -1 11.4
Bug #909168 [debhelper] debhelper: GNU configure $prefix expanded too early?
No longer marked as found in versions debhelper/11.4.
> reassign -1 src:gforth
Bug #909168 [debhelper] debhelper: GNU configure $prefix expanded too early?
Bug reassigned from package 'debhelper' to 'src:gforth'.
Ignoring request to alter found versions of bug #909168 to the same values 
previously set
Ignoring request to alter fixed versions of bug #909168 to the same values 
previously set
> retitle -1 [src:gforth] Installs the gforth package files into the wrong 
> directory
Bug #909168 [src:gforth] debhelper: GNU configure $prefix expanded too early?
Changed Bug title to '[src:gforth] Installs the gforth package files into the 
wrong directory' from 'debhelper: GNU configure $prefix expanded too early?'.
> found -1 0.7.3+dfsg-1
Bug #909168 [src:gforth] [src:gforth] Installs the gforth package files into 
the wrong directory
Marked as found in versions gforth/0.7.3+dfsg-1.
> severity 909089 minor
Bug #909089 [debhelper] debhelper: GNU configure $prefix expanded too early?
Severity set to 'minor' from 'serious'
> retitle 909089 [debhelper] Actually exposes long-standing bugs in source 
> packages
Bug #909089 [debhelper] debhelper: GNU configure $prefix expanded too early?
Changed Bug title to '[debhelper] Actually exposes long-standing bugs in source 
packages' from 'debhelper: GNU configure $prefix expanded too early?'.
> thanks
Stopping processing here.

Please contact me if you need assistance.
-- 
909089: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=909089
909168: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=909168
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems



Bug#909089: debhelper: GNU configure $prefix expanded too early?

2018-09-19 Thread Peter Pentchev
clone 909089 -1
notfound -1 11.4
reassign -1 src:gforth
retitle -1 [src:gforth] Installs the gforth package files into the wrong 
directory
found -1 0.7.3+dfsg-1
severity 909089 minor
retitle 909089 [debhelper] Actually exposes long-standing bugs in source 
packages
thanks

On Wed, Sep 19, 2018 at 06:15:00AM +, Niels Thykier wrote:
> Sven Joachim:
> > On 2018-09-18 14:09 +0300, Peter Pentchev wrote:
> > 
> >> Package: debhelper
> >> Version: 11.4
> >> Severity: serious
> >>
> >> Hi,
> >>
> >> Thanks for maintaining and extending debhelper!
> >>
> >> I don't have much information right now, maybe I'll look into it in
> >> the evening (Eastern European time), but trying to build gforth in
> >> a chroot containing debhelper-11.4 results in a package where all
> >> the paths passed to the GNU configure script as "\$prefix/something"
> >> are actually defined as "/something", thus placing binaries in /bin,
> >> include files in /include, etc.  Installing debhelper-11.3.5 fixes
> >> the problem.
> > 
> > Bisection shows that commit a7ec05c10093f ("dh: Track which options have
> > been passed") has triggered the problem.  I had a look at the gforth
> > build logs with debhelper 11.3.5 and 11.4, but could not spot an obvious
> > cause.  Maybe Niels has more luck.
> > 
> > Cheers,
> >Sven

Thanks a lot for taking the time to look into this!  However, see below...

> 
> Hi,
> 
> @Sven: Thanks for bisecting it.  FTR, which version of gforth did you
> test with?
[snip]
> @Peter:  Could you try to add a "dh_installdirs" (or mkdir -p $(DG)/)
> before the following line?
> 
> mv /<>/debian/tmp/* /<>/debian/gforth/

Of course you are right... :)

Actually the "culprit" was b4d25f15, "dh: Remove broken (and obsolete)
compat item" - the change that dropped the "create package build dirs if
a command is skipped" functionality and, well, exposed bugs in source
packages that depended on it.

My bad; I do make a point of reading the "vXX" notes in the debhelper
manual page before I bump the compat level of each of my packages and
thinking whether any of these affect the package in question, and I
guess I did not realize that this change really affects
gforth-0.7.3+dfsg-1 where I bumped the compat level to 10 *immediately
after* introducing the "install into the temp directory and then move
files to the actual package build dirs if needed so that we can properly
build both arch-indep and arch-dep packages".  It really was immediately
afterwards... and I completely missed it.  Of course, it didn't break
back then, but that's no excuse :)

Sorry for raising a serious bug, and thanks A LOT for taking a look at
it quickly and figuring out what the problem was!  Feel free to close
this bug, since it is really not a bug in debhelper, but in any other
source packages; of course, feel free to also use it as reference if
anybody else comes screaming "debhelper 11.4 broke my package and I did
not change anything, I swear!" :)

So, yeah, thanks again to everyone who chimed in, sorry for the
confusion, and keep up the great work!

G'luck,
Peter

-- 
Peter Pentchev  roam@{ringlet.net,debian.org,FreeBSD.org} p...@storpool.com
PGP key:http://people.FreeBSD.org/~roam/roam.key.asc
Key fingerprint 2EE7 A7A5 17FC 124C F115  C354 651E EFB0 2527 DF13


signature.asc
Description: PGP signature


Bug#909089: debhelper: GNU configure $prefix expanded too early?

2018-09-18 Thread Niels Thykier
Sven Joachim:
> On 2018-09-18 14:09 +0300, Peter Pentchev wrote:
> 
>> Package: debhelper
>> Version: 11.4
>> Severity: serious
>>
>> Hi,
>>
>> Thanks for maintaining and extending debhelper!
>>
>> I don't have much information right now, maybe I'll look into it in
>> the evening (Eastern European time), but trying to build gforth in
>> a chroot containing debhelper-11.4 results in a package where all
>> the paths passed to the GNU configure script as "\$prefix/something"
>> are actually defined as "/something", thus placing binaries in /bin,
>> include files in /include, etc.  Installing debhelper-11.3.5 fixes
>> the problem.
> 
> Bisection shows that commit a7ec05c10093f ("dh: Track which options have
> been passed") has triggered the problem.  I had a look at the gforth
> build logs with debhelper 11.3.5 and 11.4, but could not spot an obvious
> cause.  Maybe Niels has more luck.
> 
> Cheers,
>Sven
> 

Hi,

@Sven: Thanks for bisecting it.  FTR, which version of gforth did you
test with?

@Both: I checked the configure lines and they are identical
(bit-for-bit) in the log, so we are probably looking for something
different.

I have compared the build logs from Peter with the amd64 build on the
buildds (with some messaging) and I do not see any obvious problems (I
assume the differences shown are due to -6 vs. -7).

"""
Generated the files with:

grep dh_  \
   | grep -v 'The use of "debhelper-compat (= 11)" is experimental' \
   | sed 's/-a //'

--- dh_broken.log   2018-09-19 08:00:04.640018651 +0200
+++ dh_ok.log   2018-09-19 08:00:20.952018495 +0200
@@ -1,6 +1,5 @@
debian/rules override_dh_auto_clean
 dh_auto_clean
-   dh_autoreconf_clean -O--no-parallel
dh_clean -O--no-parallel
dh_update_autotools_config -O--no-parallel
dh_autoreconf -O--no-parallel
@@ -15,8 +14,7 @@
debian/rules override_dh_install
dh_installdocs -O--no-parallel
debian/rules override_dh_installchangelogs
-dh_installchangelogs -X ChangeLog
-set -e; for p in $(dh_listpackages); do \
+dh_installchangelogs NEWS
dh_installman -O--no-parallel
dh_installemacsen -O--no-parallel
dh_lintian -O--no-parallel
"""

The dh_autoreconf_clean omission is expected (dh-autoreconf made it
optional so we could avoid calling it in the initial clean where it is
always a no-op) and the remaining diffs looks like a change to the rules.

I also checked the make install part and both logs installs the files
into /<>/debian/tmp/usr/...


@Peter:  Could you try to add a "dh_installdirs" (or mkdir -p $(DG)/)
before the following line?

mv /<>/debian/tmp/* /<>/debian/gforth/


https://sources.debian.org/src/gforth/0.7.3+dfsg-6/debian/rules/#L81

Thanks,
~Niels



Bug#909089: debhelper: GNU configure $prefix expanded too early?

2018-09-18 Thread Sven Joachim
On 2018-09-18 14:09 +0300, Peter Pentchev wrote:

> Package: debhelper
> Version: 11.4
> Severity: serious
>
> Hi,
>
> Thanks for maintaining and extending debhelper!
>
> I don't have much information right now, maybe I'll look into it in
> the evening (Eastern European time), but trying to build gforth in
> a chroot containing debhelper-11.4 results in a package where all
> the paths passed to the GNU configure script as "\$prefix/something"
> are actually defined as "/something", thus placing binaries in /bin,
> include files in /include, etc.  Installing debhelper-11.3.5 fixes
> the problem.

Bisection shows that commit a7ec05c10093f ("dh: Track which options have
been passed") has triggered the problem.  I had a look at the gforth
build logs with debhelper 11.3.5 and 11.4, but could not spot an obvious
cause.  Maybe Niels has more luck.

Cheers,
   Sven



Bug#909089: debhelper: GNU configure $prefix expanded too early?

2018-09-18 Thread Niels Thykier
Control: tags -1 moreinfo

On Tue, 18 Sep 2018 14:09:03 +0300 Peter Pentchev  wrote:
> Package: debhelper
> Version: 11.4
> Severity: serious
> 
> Hi,
> 
> Thanks for maintaining and extending debhelper!
> 
> I don't have much information right now, maybe I'll look into it in
> the evening (Eastern European time), but trying to build gforth in
> a chroot containing debhelper-11.4 results in a package where all
> the paths passed to the GNU configure script as "\$prefix/something"
> are actually defined as "/something", thus placing binaries in /bin,
> include files in /include, etc.  Installing debhelper-11.3.5 fixes
> the problem.
> 
> Thanks again for everything you're doing for debhelper and Debian,
> and keep up the great work!
> 
> G'luck,
> Peter
> 
> [...]

Hi Peter,


Could you please provide the logs of the build (preferably with "export
DH_VERBOSE=1")?

Thanks,
~Niels



Bug#909089: debhelper: GNU configure $prefix expanded too early?

2018-09-18 Thread Peter Pentchev
Package: debhelper
Version: 11.4
Severity: serious

Hi,

Thanks for maintaining and extending debhelper!

I don't have much information right now, maybe I'll look into it in
the evening (Eastern European time), but trying to build gforth in
a chroot containing debhelper-11.4 results in a package where all
the paths passed to the GNU configure script as "\$prefix/something"
are actually defined as "/something", thus placing binaries in /bin,
include files in /include, etc.  Installing debhelper-11.3.5 fixes
the problem.

Thanks again for everything you're doing for debhelper and Debian,
and keep up the great work!

G'luck,
Peter

-- System Information:
Debian Release: buster/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'testing-debug')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.18.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=bg_BG.UTF-8, LC_CTYPE=bg_BG.UTF-8 (charmap=UTF-8), 
LANGUAGE=bg_BG.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages debhelper depends on:
ii  autotools-dev20180224.1
ii  dh-autoreconf19
ii  dh-strip-nondeterminism  0.042-1
ii  dpkg 1.19.0.5+b1
ii  dpkg-dev 1.19.0.5
ii  dwz  0.12-2
ii  file 1:5.34-2
ii  libdpkg-perl 1.19.0.5
ii  man-db   2.8.4-2
ii  perl 5.26.2-7
ii  po-debconf   1.0.20


debhelper recommends no packages.

Versions of packages debhelper suggests:
pn  dh-make  

-- no debconf information


signature.asc
Description: PGP signature