Bug#886239: librsvg: please make the build reproducible
Simon McVittie
smcv at debian.org
Wed Jan 3 12:51:35 UTC 2018
On Wed, 03 Jan 2018 at 12:25:42 +0000, Chris Lamb wrote:
> This is due to the binary including the absolute build path so that
> it can find test data.
It should probably use g_test_build_filename() now that that exists
(relative to $G_TEST_SRCDIR or $G_TEST_BUILDDIR as appropriate, falling
back to dirname(argv[0]) for both if unspecified).
I'm surprised this wasn't done as part of
https://gitlab.gnome.org/GNOME/librsvg/commit/b7e9ae8ce57a553add0cbd34ba7863b441178097
or at a similar time - perhaps GNOME always runs its installed-tests
with the built directory still visible?
> Patch attached that simply uses a relative source directory instead.
This isn't going to be upstreamable, since it won't work for
srcdir != builddir as far as I can see. I want to add autopkgtests at
some point anyway; I'll take a look at this as part of that work.
> Another solution might be to Build-Depend on fonts-liberation and
> specify /path/to/LiberationSans.ttf manually.
It needs to be the bundled copy, because rsvg's tests assert
almost-pixel-perfect rendering against a reference image (there's a small
amount of tolerance to account for rounding errors), so any improvements
to the font hinting etc. in fonts-liberation would result in failure.
> (Given it encodes the absolute *build* path, it's clearly not "meant"
> to work outside of build-time as this won't exist at runtime.)
IMO that's a bug, and should be fixed at some point so that rsvg's
installed-tests can be used as autopkgtests.
smcv
More information about the pkg-gnome-maintainers
mailing list