News for hackers. Stuff that matters.
Re:Debian reproducibility statistics by entelechy on Thursday August 24, 2017 @10:04AM (#15090186)
I wonder if switching from cmake to buck[1] and buckaroo[2] would simplify and increase reproducibility.

[1] https://buckbuild.com

[2] https://buckaroo.pm

Re:Debian reproducibility statistics by guipsp on Thursday August 24, 2017 @01:16PM (#15091991)
^CEO of LoopPerfect, which maintains Buckaroo

Might want to disclose that.

Re:Debian reproducibility statistics by sfrigon on Thursday August 24, 2017 @11:04AM (#15090671)
Is there any known problems / pitfalls regarding cmake and reproducible builds? Just curious to know.
Re:Debian reproducibility statistics by jwilk on Thursday August 24, 2017 @04:35PM (#15093822)
cmake uses absolute paths almost everywhere.

This is a big problem if you want reproducible builds with varying build directory.

https://lists.alioth.debian.org/pipermail/reproducible-build...

Re:Debian reproducibility statistics by geofft on Thursday August 24, 2017 @02:04PM (#15092491)
Well, this is Debian - they generally don't maintain the software, they just package it. Small changes can be pushed upstream, but "Here's a brand new build system that we promise is super cool" is generally not a patch that people like taking :)
Re:Debian reproducibility statistics by rstuart4133 on Thursday August 24, 2017 @07:28PM (#15094962)
> Well, this is Debian - they generally don't maintain the software

They definitely maintain software. There is a whole pile of packages that aren't maintained upstream any more that are still maintained in Debian, they write things like manual pages for commands that don't have then, they bash the build scripts into something that works on a whole pile of architectures the author never considers, they manage what is probably the worlds biggest issue track system, and then there is the security team producing patches for versions upstream no longer supports.

But probably it's just your wording. While they do maintain software, they are mostly concerned with packaging existing software, not writing new stuff.

Re:Debian reproducibility statistics by geofft on Thursday August 24, 2017 @08:44PM (#15095272)
They generally don't maintain the software. Things like manual pages and architecture porting can be pushed upstream, and are fine to maintain as diffs if not; buildsystem changes are usually hard, and maintaining that as a delta makes it hard to incorporate new versions.

(One of the packages I maintain in Debian is apparently dead upstream as of the last year or so, but even so I'm not very interested in becoming the new upstream and adopting big changes like a new build system.)

Re:Debian reproducibility statistics by moosingin3space on Thursday August 24, 2017 @11:03AM (#15090664)
Based on the experiences of systemd, gtk, and X11 in switching to Meson, I'd think Meson might be the best choice here. While Buck, Bazel, Pants, etc. are designed for large projects, Meson is designed for small-to-medium-size projects and integrates with pkg-config, which in turn should provide simpler integration with distribution package managers. My experiences with Bazel demonstrated that integration with distribution packages can be quite difficult.
Re:Debian reproducibility statistics by entelechy on Friday August 25, 2017 @10:04AM (#15098487)
why I'm consider that using pkg-config in buck may break reproducibility: https://github.com/facebook/buck/issues/1430
Re:Debian reproducibility statistics by entelechy on Thursday August 24, 2017 @11:51AM (#15091110)
Although never mentioned, you can use pkg-config with buck by embedding your pkg-config command into the compiler flags eg.:

cxxflags = ${pkg-config opencv python --cflags --libs}

Furthermore I don't see the reason why you woudn't use buck for small projects. What makes you think buck is less suitable for small projects ?

Re:Debian reproducibility statistics by philippnagel on Thursday August 24, 2017 @10:11AM (#15090224)
Also interesting: https://bazel.build/
Re:Debian reproducibility statistics by yorwba on Thursday August 24, 2017 @02:15PM (#15092569)
Funny that you should mention bazel on the topic of reproducible builds. When I last used it to build TensorFlow, the build was very much not reproducible. I took me three rebuilds with same flags to finally get GPU support compiled in.