Bug#794138: reopening 794138

2017-11-14 Thread Petter Reinholdtsen
[Helmut Grohne]
> I traced down the debhelper git history and it did that since the
> invention of dh_auto_test in version 7.0.0. Support for nocheck came
> later.

Thank you for checking.  The build depend is already on dh >= 9, so
there should be no chance of creating a broken package.

-- 
Happy hacking
Petter Reinholdtsen



Bug#794138: reopening 794138

2017-11-14 Thread Helmut Grohne
On Mon, Nov 13, 2017 at 06:33:20AM +0100, Petter Reinholdtsen wrote:
> I added this in 2014, to ensure it was impossible for a autobuilder to
> build a package that did not handle the test suite, to avoid ending up
> with unbootable systems on some of the less used architectures.  I
> believe this is an important safety fuse in the build system.  As long
> as the default build will run the check, I am fine with the change.

Unless DBE_BUILD_OPTIONS contains nocheck, dh_auto_test will run the
target.

I do note that some autobuilders (maybe m68k?) set that, but that seems
like deliberately accepting breakage to me. (Cross builders of course
do.)

> If dh_auto_test now run 'make check' automatically, can you figure out
> which version of it started doing this, and update the build
> dependencies, to ensure it still is impossible to build the source
> without checking that it work?

I traced down the debhelper git history and it did that since the
invention of dh_auto_test in version 7.0.0. Support for nocheck came
later.

Helmut



Bug#794138: reopening 794138

2017-11-12 Thread Petter Reinholdtsen
[Helmut Grohne]
> I'm sorry and stand corrected. Thank you for insisting. The patch is
> applied in git and in unstable.

No worries.  Then I know we talk about the same thing.  No need to
apology.

> The problem now is: Someone added the check target to dh_auto_build
> for running tests. Now tests are run even when DEB_BUILD_OPTIONS
> contains nocheck. Typically test suites fail during cross compilation
> with an expected "Exec format error", which is why cross builds set
> nocheck.  That's what happens for startpar. Simply removing check from
> dh_auto_build is ok, because dh_auto_test (which honours the nocheck
> setting) correctly detects the check target and runs it. I hope this
> is correct or do we need to pass EXTRACFLAGS and friends to
> dh_auto_test now?

I added this in 2014, to ensure it was impossible for a autobuilder to
build a package that did not handle the test suite, to avoid ending up
with unbootable systems on some of the less used architectures.  I
believe this is an important safety fuse in the build system.  As long
as the default build will run the check, I am fine with the change.

> diff --minimal -Nru startpar-0.59/debian/changelog 
> startpar-0.59/debian/changelog
> --- startpar-0.59/debian/changelog2017-11-07 00:17:03.0 +0100
> +++ startpar-0.59/debian/changelog2017-11-12 14:00:14.0 +0100
> @@ -1,3 +1,10 @@
> +startpar (0.59-3.3) UNRELEASED; urgency=medium
> +
> +  * Non-maintainer upload.
> +  * Do not run tests when DEB_BUILD_OPTIONS contains nocheck. (Closes: #-1)
> +
> + -- Helmut Grohne   Sun, 12 Nov 2017 14:00:14 +0100
> +
>  startpar (0.59-3.2) unstable; urgency=medium

If dh_auto_test now run 'make check' automatically, can you figure out
which version of it started doing this, and update the build
dependencies, to ensure it still is impossible to build the source
without checking that it work?

-- 
Happy hacking
Petter Reinholdtsen



Bug#794138: reopening 794138

2017-11-12 Thread Helmut Grohne
On Sun, Nov 12, 2017 at 08:58:44AM +0100, Petter Reinholdtsen wrote:
> I do not understand.  The change is in commit
> 82b9903afb8b5d7d5b5d4e44e375d1eedc50 in git, which should have been
> included in 0.59-3.2.

I'm sorry and stand corrected. Thank you for insisting. The patch is
applied in git and in unstable.

> Is the collab-maint git not reflecting what was uploaded to the archive?
> As far as I can tell, the patch was applied and included in the upload.

Still, startpar fails to cross build from source. For simplicities sake
I am gonna reuse this bug number for the "new" bug and attach a patch
for that (unless you ask me to close and make a new bug).

The problem now is: Someone added the check target to dh_auto_build for
running tests. Now tests are run even when DEB_BUILD_OPTIONS contains
nocheck. Typically test suites fail during cross compilation with an
expected "Exec format error", which is why cross builds set nocheck.
That's what happens for startpar. Simply removing check from
dh_auto_build is ok, because dh_auto_test (which honours the nocheck
setting) correctly detects the check target and runs it. I hope this is
correct or do we need to pass EXTRACFLAGS and friends to dh_auto_test
now?

I hope you accept my apology and let us move on.

Helmut
diff --minimal -Nru startpar-0.59/debian/changelog 
startpar-0.59/debian/changelog
--- startpar-0.59/debian/changelog  2017-11-07 00:17:03.0 +0100
+++ startpar-0.59/debian/changelog  2017-11-12 14:00:14.0 +0100
@@ -1,3 +1,10 @@
+startpar (0.59-3.3) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Do not run tests when DEB_BUILD_OPTIONS contains nocheck. (Closes: #-1)
+
+ -- Helmut Grohne   Sun, 12 Nov 2017 14:00:14 +0100
+
 startpar (0.59-3.2) unstable; urgency=medium
 
   [ Manuel A. Fernandez Montecelo ]
diff --minimal -Nru startpar-0.59/debian/rules startpar-0.59/debian/rules
--- startpar-0.59/debian/rules  2017-11-07 00:17:03.0 +0100
+++ startpar-0.59/debian/rules  2017-11-12 14:00:12.0 +0100
@@ -21,7 +21,7 @@
dh $@
 
 override_dh_auto_build:
-   $(MAKE) EXTRACPPFLAGS="$(CPPFLAGS)" EXTRACFLAGS="$(CFLAGS)" 
EXTRALDFLAGS="$(LDFLAGS)" CC=$(CC) startpar check
+   $(MAKE) EXTRACPPFLAGS="$(CPPFLAGS)" EXTRACFLAGS="$(CFLAGS)" 
EXTRALDFLAGS="$(LDFLAGS)" CC=$(CC) startpar
 ifeq ($(DEB_HOST_ARCH_OS),linux)
$(MAKE) EXTRACPPFLAGS="$(CPPFLAGS)" EXTRACFLAGS="$(CFLAGS)" 
EXTRALDFLAGS="$(LDFLAGS)" CC=$(CC) startpar-upstart-inject
 endif


Bug#794138: reopening 794138

2017-11-12 Thread Petter Reinholdtsen

[Helmut Grohne]
> The patch was not applied. The changelog entry is simply wrong. It
> still fails in the very same way. You can try yourself with sbuild
> --host or pbuilder --host-arch.

I do not understand.  The change is in commit
82b9903afb8b5d7d5b5d4e44e375d1eedc50 in git, which should have been
included in 0.59-3.2.

Is the collab-maint git not reflecting what was uploaded to the archive?
As far as I can tell, the patch was applied and included in the upload.

-- 
Happy hacking
Petter Reinholdtsen



Bug#794138: reopening 794138

2017-11-11 Thread Helmut Grohne
On Sun, Nov 12, 2017 at 08:05:53AM +0100, Petter Reinholdtsen wrote:
> Hi.  Why was the cross build bug reopened?  Was the fix in 0.59-3.2
> not working?

The patch was not applied. The changelog entry is simply wrong. It still
fails in the very same way. You can try yourself with sbuild --host or
pbuilder --host-arch.

Helmut



Bug#794138: reopening 794138

2017-11-11 Thread Petter Reinholdtsen
Hi.  Why was the cross build bug reopened?  Was the fix in 0.59-3.2
not working?
-- 
Happy hacking
Petter Reinholdtsen