Bug#939386: FTBFS with OCaml 4.08.0 (embeds .cmi in source package)
Stéphane Glondu
glondu at debian.org
Wed Sep 4 11:56:24 BST 2019
Package: src:diffoscope
Version: 122
Severity: important
User: debian-ocaml-maint at lists.debian.org
Usertags: ocaml-4.08-transition
Dear Maintainer,
Your package diffoscope FTBFS with OCaml 4.08.0.
The failure is due to a test that inspects a .cmi file that is shipped
by the source package, using the "ocamlobjinfo" command. This cannot
work.
Indeed there is no compatibility guarantee on .cmi (or any other type
of object files) between different versions of OCaml. And this
incompatibility is what hurts here: the .cmi shipped in the source
package was made with OCaml < 4.08.0. The difference in version can be
seen with the "file" command.
I have two suggestions:
- Handle gracefully the case where ocamlobjinfo rejects an object file
because it was not compiled with the same version of OCaml.
- Instead of shipping a .cmi file in the source package, generate one
at build time.
Cheers,
--
Stéphane
-- System Information:
Debian Release: bullseye/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 5.2.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), LANGUAGE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
More information about the Reproducible-builds
mailing list