Bug#823616: fpga-icestorm-chipdb: please make the build reproducible (randomness)

Ruben Undheim ruben.undheim at beebeetle.com
Fri May 6 18:41:23 UTC 2016


Hi Daniel,

Thanks a lot for figuring out why it wasn't reproducible. I wasn't sure where to start.

I will apply your patch.

Cheers!
Ruben

On Fri, May 06, 2016 at 05:08:10PM +0000, Daniel Shahaf wrote:
> Source: fpga-icestorm
> Version: 0~20160218gitf2b2549-1
> Severity: wishlist
> Tags: upstream patch
> User: reproducible-builds at lists.alioth.debian.org
> Usertags: randomness
> 
> Dear Maintainer,
> 
> While working on the “reproducible builds” effort [1], we have noticed
> that fpga-icestorm-chipdb could not be built reproducibly: the order of
> ".pins" sections in chipdb-1k.txt and chipdb-8k.txt is random [2].
> 
> The attached patch ensures a stable section order in those two files.
> I believe with this patch, fpga-icestorm will be fully reproducible.
> 
> Best,
> 
> Daniel
> 
>  [1]: https://wiki.debian.org/ReproducibleBuilds
>  [2]: https://tests.reproducible-builds.org/rb-pkg/unstable/amd64/fpga-icestorm.html

> diff --git a/debian/patches/reproducible.patch b/debian/patches/reproducible.patch
> new file mode 100644
> index 0000000..43779cb
> --- /dev/null
> +++ b/debian/patches/reproducible.patch
> @@ -0,0 +1,17 @@
> +Description: make the build reproducible
> +Author: Daniel Shahaf <danielsh at apache.org>
> +Bug-Debian: https://bugs.debian.org/-1
> +Last-Update: 2016-05-06
> +
> +--- fpga-icestorm-0~20160218gitf2b2549.orig/icebox/icebox_chipdb.py
> ++++ fpga-icestorm-0~20160218gitf2b2549/icebox/icebox_chipdb.py
> +@@ -172,7 +172,7 @@ all_group_segments = ic.group_segments(a
> + print(".device %s %d %d %d" % (ic.device, ic.max_x+1, ic.max_y+1, len(all_group_segments)))
> + print()
> + 
> +-for key in list(icebox.pinloc_db.keys()):
> ++for key in sorted(icebox.pinloc_db.keys()):
> +     key_dev, key_package = key.split("-")
> +     if key_dev == ic.device:
> +         print(".pins %s" % (key_package))
> +
> diff --git a/debian/patches/series b/debian/patches/series
> index 0353649..e512c55 100644
> --- a/debian/patches/series
> +++ b/debian/patches/series
> @@ -3,3 +3,4 @@
>  03_cxxflags.patch
>  override-CXX.patch
>  fix_spelling_in_binaries.patch
> +reproducible.patch

> -- 
> debian-science-maintainers mailing list
> debian-science-maintainers at lists.alioth.debian.org
> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/debian-science-maintainers



More information about the debian-science-maintainers mailing list