Re: [Reproducible-builds] please don't build on archs that packages don't declare support for

2016-02-14 Thread Steven Chamberlain
Michael R. Crusoe wrote:
> It looks fixed on my end; thanks!
> https://tests.reproducible-builds.org/rb-pkg/testing/armhf/khmer.html

Yep!  khmer will now only build its arch-dep and -indep binaries on
amd64.

https://tests.reproducible-builds.org/unstable/armhf/index_not_for_us.html
now has 255 packages, up from 249.  So there weren't many cases of this
really.

https://tests.reproducible-builds.org/unstable/amd64/index_not_for_us.html
now has 90 packages, up from 85.  One new one is:
https://buildd.debian.org/status/package.php?p=fso-frameworkd=unstable
which didn't actually FTBFS on amd64, but it only produces armel and
arch:all binaries, so it is quite reasonable that this is now only built
and tested for reproducibility on armhf.

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

Re: [Reproducible-builds] please don't build on archs that packages don't declare support for

2016-02-09 Thread Holger Levsen
Hi,

On Dienstag, 9. Februar 2016, Steven Chamberlain wrote:
> I think bin/reproducible_build.sh makes a too broad assumption, that
> packages producing arch:all parts can build on "any" arch.

indeed
 
> dpkg-buildpackage proceeds, I think, because there are arch-indep parts
> that 'might' be able to build.  But since this package has no separate
> binary-indep target, debian/rules tries to build the arch-dep parts
> and fails there.

indeed
 
> The code has been much refactored since then.  Does my patch below seem
> a neat way to try to fix this again?  (Though I totally have not tested
> it).

I think it does. 
 
> Where I set ARCHITECTURES="any", that will not be a regression over
> current behaviour, but can be substituted for ARCHITECTURES="amd64" if
> too many arch:all packages FTBFS on armhf.
> 
> From a759d049b1fd6deeb24985e57a3b6f4fa2e1f72b Mon Sep 17 00:00:00 2001
> From: Steven Chamberlain 
> Date: Tue, 9 Feb 2016 13:02:13 +
> Subject: [PATCH] reproducible: don't always build arch:all on "any" arch
> 
> If a package builds arch-dep parts on a restricted set of arches,
> don't assume the arch-indep parts can build on "any" arch.
> 
> If a package *only* lists Architecture: all, keep the current behaviour:
> (linux-)amd64 will most likely work;  armhf is less likely but is nice
> to try anyway.

I've applied and deployed this patch now, thanks Steven! Currently 
https://tests.reproducible-builds.org/unstable/amd64/index_not_for_us.html 
lists 84 packages, I'm curious how many there will be listed in a week ;-)

For comparison in 42 days or so: https://tests.reproducible-
builds.org/unstable/armhf/index_not_for_us.html today lists 235 packages.


cheers,
Holger


signature.asc
Description: This is a digitally signed message part.
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

Re: [Reproducible-builds] please don't build on archs that packages don't declare support for

2016-02-09 Thread Steven Chamberlain
Hi,

Holger Levsen wrote:
> khmer is being tried to build (on armhf), because it has "all" in the 
> Architecture field

I think bin/reproducible_build.sh makes a too broad assumption, that
packages producing arch:all parts can build on "any" arch.

dpkg-buildpackage proceeds, I think, because there are arch-indep parts
that 'might' be able to build.  But since this package has no separate
binary-indep target, debian/rules tries to build the arch-dep parts
and fails there.

It seems there was an attempt to fix this before:
https://anonscm.debian.org/cgit/qa/jenkins.debian.net.git/commit/bin/reproducible_build.sh?id=c1157ef4d
but reverted:
https://anonscm.debian.org/cgit/qa/jenkins.debian.net.git/commit/bin/reproducible_build.sh?id=cdbb4ce
https://anonscm.debian.org/cgit/qa/jenkins.debian.net.git/commit/bin/reproducible_build.sh?id=89b4833f

I checked the archive of this mailing list but can't find the reason it
was reverted?

The code has been much refactored since then.  Does my patch below seem
a neat way to try to fix this again?  (Though I totally have not tested
it).

Where I set ARCHITECTURES="any", that will not be a regression over
current behaviour, but can be substituted for ARCHITECTURES="amd64" if
too many arch:all packages FTBFS on armhf.

From a759d049b1fd6deeb24985e57a3b6f4fa2e1f72b Mon Sep 17 00:00:00 2001
From: Steven Chamberlain 
Date: Tue, 9 Feb 2016 13:02:13 +
Subject: [PATCH] reproducible: don't always build arch:all on "any" arch

If a package builds arch-dep parts on a restricted set of arches,
don't assume the arch-indep parts can build on "any" arch.

If a package *only* lists Architecture: all, keep the current behaviour:
(linux-)amd64 will most likely work;  armhf is less likely but is nice
to try anyway.
---
 bin/reproducible_build.sh | 8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/bin/reproducible_build.sh b/bin/reproducible_build.sh
index 4d5dd4b..7b11cef 100755
--- a/bin/reproducible_build.sh
+++ b/bin/reproducible_build.sh
@@ -525,8 +525,14 @@ check_suitability() {
# check whether the package is not for us...
local SUITABLE=false
local ARCHITECTURES=$(grep "^Architecture: " ${SRCPACKAGE}_*.dsc| cut 
-d " " -f2- | sed -s "s# #\n#g" | sort -u)
+
+   # packages that are *only* arch:all can be tried on any arch
+   if [ "$ARCHITECTURES" = "all" ]; then
+   ARCHITECTURES="any"
+   fi
+
for arch in ${ARCHITECTURES} ; do
-   if [ "$arch" = "any" ] || [ "$arch" = "$ARCH" ] || [ "$arch" = 
"linux-any" ] || [ "$arch" = "linux-$ARCH" ] || [ "$arch" = "any-$ARCH" ] || [ 
"$arch" = "all" ] ; then
+   if [ "$arch" = "any" ] || [ "$arch" = "$ARCH" ] || [ "$arch" = 
"linux-any" ] || [ "$arch" = "linux-$ARCH" ] || [ "$arch" = "any-$ARCH" ] ; then
SUITABLE=true
break
fi

Regards,
-- 
Steven Chamberlain
ste...@pyro.eu.org


signature.asc
Description: Digital signature
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

Re: [Reproducible-builds] please don't build on archs that packages don't declare support for

2016-02-08 Thread Holger Levsen
Hi Michael,

thanks for reaching out to us and reporting this…! 

On Samstag, 6. Februar 2016, Michael R. Crusoe wrote:
> I think you all are the bee's knees. However, some of the packages I
> maintain aren't compatible with 32 bit architectures, like armhf, and are
> explicitly marked as such. Yet the reproducible builds infrastructure still
> tries to build on the incompatible architecture and I get an error on
> tracker.d.o and elsewhere.
> 
> Here is an example:
> https://tests.reproducible-builds.org/rb-pkg/unstable/amd64/khmer.html
> 
> Package: khmer
> Architecture: amd64 any-arm64 any-mips64 any-mips64el any-ia64 any-ppc64el
> any-sparc64
> (from https://sources.debian.net/src/khmer/2.0%2Bdfsg-4/debian/control/ )

khmer is being tried to build (on armhf), because it has "all" in the 
Architecture field, at least as seen on 
https://tests.reproducible-
builds.org/rbuild/testing/armhf/khmer_2.0+dfsg-3.rbuild.log where the line 
reads: 
"Architecture: any-amd64 any-arm64 any-mips64 any-mips64el any-ia64 any-
ppc64el any-sparc64 any-s390x all ppc64"

This line is coming from the .dsc file, see 
http://httpredir.debian.org/debian/pool/main/k/khmer/khmer_2.0+dfsg-3.dsc

I have no idea why the .dsc file differs from the control file.

> Could, perhaps, this not happen?

That's surely the idea as you can see if you compare 
https://tests.reproducible-builds.org/unstable/amd64/index_not_for_us.html 
with
https://tests.reproducible-builds.org/unstable/armhf/index_not_for_us.html

however there's a bug somewhere.


cheers,
Holger


signature.asc
Description: This is a digitally signed message part.
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

Re: [Reproducible-builds] please don't build on archs that packages don't declare support for

2016-02-08 Thread Michael R. Crusoe
On Mon, Feb 8, 2016 at 10:13 AM Holger Levsen  wrote:

> Hi Michael,
>
> thanks for reaching out to us and reporting this…!
>

Of course!

On Samstag, 6. Februar 2016, Michael R. Crusoe wrote:
> > I think you all are the bee's knees. However, some of the packages I
> > maintain aren't compatible with 32 bit architectures, like armhf, and are
> > explicitly marked as such. Yet the reproducible builds infrastructure
> still
> > tries to build on the incompatible architecture and I get an error on
> > tracker.d.o and elsewhere.
> >
> > Here is an example:
> > https://tests.reproducible-builds.org/rb-pkg/unstable/amd64/khmer.html
> >
> > Package: khmer
> > Architecture: amd64 any-arm64 any-mips64 any-mips64el any-ia64
> any-ppc64el
> > any-sparc64
> > (from https://sources.debian.net/src/khmer/2.0%2Bdfsg-4/debian/control/
> )
>
> khmer is being tried to build (on armhf), because it has "all" in the
> Architecture field, at least as seen on
> https://tests.reproducible-
> builds.org/rbuild/testing/armhf/khmer_2.0+dfsg-3.rbuild.log where the line
> reads:
> "Architecture: any-amd64 any-arm64 any-mips64 any-mips64el any-ia64 any-
> ppc64el any-sparc64 any-s390x all ppc64"
>
> This line is coming from the .dsc file, see
> http://httpredir.debian.org/debian/pool/main/k/khmer/khmer_2.0+dfsg-3.dsc
>
> I have no idea why the .dsc file differs from the control file.
>

One of the binary packages, khmer-common, is Architecture: All, Multi-Arch:
foreign. Perhaps that is why?


>
> > Could, perhaps, this not happen?
>
> That's surely the idea as you can see if you compare
> https://tests.reproducible-builds.org/unstable/amd64/index_not_for_us.html
> with
> https://tests.reproducible-builds.org/unstable/armhf/index_not_for_us.html
>
> however there's a bug somewhere.
>
>
> cheers,
> Holger
>
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

[Reproducible-builds] please don't build on archs that packages don't declare support for

2016-02-06 Thread Michael R. Crusoe
Hello reproducible builds team!

I think you all are the bee's knees. However, some of the packages I
maintain aren't compatible with 32 bit architectures, like armhf, and are
explicitly marked as such. Yet the reproducible builds infrastructure still
tries to build on the incompatible architecture and I get an error on
tracker.d.o and elsewhere.

Here is an example:
https://tests.reproducible-builds.org/rb-pkg/unstable/amd64/khmer.html

Package: khmer
Architecture: amd64 any-arm64 any-mips64 any-mips64el any-ia64 any-ppc64el
any-sparc64
(from https://sources.debian.net/src/khmer/2.0%2Bdfsg-4/debian/control/ )

Could, perhaps, this not happen?

Thanks in advance,
___
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds