Processed: Re: Bug#1012252: debhelper: execute_after not executed for binary-indep build

2022-06-04 Thread Debian Bug Tracking System
Processing control commands:

> tags -1 moreinfo
Bug #1012252 [debhelper] debhelper: execute_after not executed for binary-indep 
build
Added tag(s) moreinfo.

-- 
1012252: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1012252
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems



Bug#1012252: debhelper: execute_after not executed for binary-indep build

2022-06-04 Thread Niels Thykier
Control: tags -1 moreinfo

Drew Parsons:
> Package: debhelper
> Version: 13.7.1
> Severity: Serious
> Justification: FTBFS
> Control: block 1012022 by -1
> 
> fenics-basix 0.4.2-1exp1 is currently failing to build in a
> binary-indep build, see
> https://buildd.debian.org/status/logs.php?pkg=fenics-basix&arch=all
> 
> The problem occurs when building docs in an
> execute_before_dh_install-indep rule.  The doc build (via sphinx)
> expects the basix python module to have been built.  The rules file is
> available at
> https://tracker.debian.org/media/packages/f/fenics-basix/rules-0.4.2-1exp1
> 
> The python module build is supposed to have been performed already in
> an execute_after_dh_auto_install rule (after dh_auto_install has put
> the libbasix.so shared library in place).
> 
> We can see in the binary-indep log at
> https://buildd.debian.org/status/fetch.php?pkg=fenics-basix&arch=all&ver=0.4.2-1exp1&stamp=1654102080&raw=0
> that libbasix.so did get built by the override_dh_auto_build rule, and
> got installed by dh_auto_install -i.
> 
> But after dh_auto_install -i, the next rule that gets run is
> execute_before_dh_install-indep.  execute_after_dh_auto_install never
> gets run.
> 
> This doesn't meet the intention of the rules file.
> execute_after_dh_auto_install should be run after dh_auto_install,
> with or without the -i flag, shouldn't it?
> 
> In particular, dh --no-act indicates it should have been executed:
> 
> $ dh binary-indep --no-act
>dh_testroot -i
>dh_prep -i
>dh_installdirs -i
>dh_auto_install -i
>debian/rules execute_after_dh_auto_install
>debian/rules execute_before_dh_install-indep
>dh_install -i
>dh_installdocs -i
>...
> 
> 
> So it looks like a bug in dh during actual execution, that the
> execute_after_dh_auto_install rule is not getting executed.
> 
> This bug is blocking #1012022, which is Severity: serious (FTBFS),
> hence I'm marking this bug Severity: serious (FTBFS) to match.
> 
> 
> [...]

Hi,

The bug report contains inconsistent information.

The bug report says and includes a dh --no-act that implies there is a
rule called "execute_after_dh_auto_install" in debian/rules.

However, the rules files provided via
"https://tracker.debian.org/media/packages/f/fenics-basix/rules-0.4.2-1exp1";
does *not* have that rule.  Instead it has the
"execute_after_dh_auto_install-arch" rule, which would explain a lot of
the issues you are reporting.

If you have linked to the wrong debian/rules file, then please provide
an updated link.

Thanks,
~Niels



Processed: Re: Bug#1012252: debhelper: execute_after not executed for binary-indep build

2022-06-04 Thread Debian Bug Tracking System
Processing control commands:

> tags -1 moreinfo
Bug #1012252 [debhelper] debhelper: execute_after not executed for binary-indep 
build
Ignoring request to alter tags of bug #1012252 to the same tags previously set

-- 
1012252: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1012252
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems



Bug#1012252: debhelper: execute_after not executed for binary-indep build

2022-06-02 Thread Drew Parsons
Package: debhelper
Version: 13.7.1
Severity: Serious
Justification: FTBFS
Control: block 1012022 by -1

fenics-basix 0.4.2-1exp1 is currently failing to build in a
binary-indep build, see
https://buildd.debian.org/status/logs.php?pkg=fenics-basix&arch=all

The problem occurs when building docs in an
execute_before_dh_install-indep rule.  The doc build (via sphinx)
expects the basix python module to have been built.  The rules file is
available at
https://tracker.debian.org/media/packages/f/fenics-basix/rules-0.4.2-1exp1

The python module build is supposed to have been performed already in
an execute_after_dh_auto_install rule (after dh_auto_install has put
the libbasix.so shared library in place).

We can see in the binary-indep log at
https://buildd.debian.org/status/fetch.php?pkg=fenics-basix&arch=all&ver=0.4.2-1exp1&stamp=1654102080&raw=0
that libbasix.so did get built by the override_dh_auto_build rule, and
got installed by dh_auto_install -i.

But after dh_auto_install -i, the next rule that gets run is
execute_before_dh_install-indep.  execute_after_dh_auto_install never
gets run.

This doesn't meet the intention of the rules file.
execute_after_dh_auto_install should be run after dh_auto_install,
with or without the -i flag, shouldn't it?

In particular, dh --no-act indicates it should have been executed:

$ dh binary-indep --no-act
   dh_testroot -i
   dh_prep -i
   dh_installdirs -i
   dh_auto_install -i
   debian/rules execute_after_dh_auto_install
   debian/rules execute_before_dh_install-indep
   dh_install -i
   dh_installdocs -i
   ...


So it looks like a bug in dh during actual execution, that the
execute_after_dh_auto_install rule is not getting executed.

This bug is blocking #1012022, which is Severity: serious (FTBFS),
hence I'm marking this bug Severity: serious (FTBFS) to match.


-- System Information:
Debian Release: bookworm/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.17.0-3-amd64 (SMP w/8 CPU threads; PREEMPT)
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_AU:en
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages debhelper depends on:
ii  autotools-dev20220109.1
ii  dh-autoreconf20
ii  dh-strip-nondeterminism  1.13.0-1
ii  dpkg 1.21.8
ii  dpkg-dev 1.21.8
ii  dwz  0.14-1
ii  file 1:5.41-4
ii  libdebhelper-perl13.7.1
ii  libdpkg-perl 1.21.8
ii  man-db   2.10.2-1
ii  perl 5.34.0-4
ii  po-debconf   1.0.21+nmu1

debhelper recommends no packages.

Versions of packages debhelper suggests:
ii  dh-make  2.202201

-- no debconf information