Hi,
2017-10-11 00:03 Manuel A. Fernandez Montecelo:
Hi,
2017-08-15 12:20 Helmut Grohne:
Package: libvoikko-dev
Version: 4.1.1-1
Severity: important
User: [email protected]
Usertags: rebootstrap
Control: affects -1 + src:tmispell-voikko
tmispell-voikko fails to cross build from source, because it cannot find
-lvoikko in the public shared library search path. It requested
libvoikko-dev its Build-Depends. The build architecture libvoikko-dev
was installed, because libvoikko-dev is wrongly marked Multi-Arch:
foreign.
libvoikko-dev was probably marked Multi-Arch: foreign, because it also
contains tools in /usr/bin that are expected to be executable. For
practical cross building, those tools will need to be installed for a
different architecture than the .so symlink. Thus the only viable long
term solution is to split libvoikko-dev into two packages, one of them
being Multi-Arch: foreign and the other Multi-Arch: same. Typically, the
package containing the programs would be called libvoikko-dev-bin and
libvoikko-dev would depend on it.
As a short term solution (closing this bug), please remove Multi-Arch:
foreign from libvoikko-dev as it does more harm than good.
This seem to be an important package to build enchant and, through it,
many other packages. So I think that it would be nice if this is
solved.
Will it help if I prepare an NMU?
Since the repo is in collab-maint and I am about to NMU (due to the lack
of feedback to the original report and my follow-up), I just pushed this:
https://anonscm.debian.org/cgit/collab-maint/libvoikko.git/log/
in particular:
https://anonscm.debian.org/cgit/collab-maint/libvoikko.git/commit/?id=94e7ce125739e59241c04034f5b0615e93c3cc49
Please review. Explanations follow.
===========
Context: Contrary to the initial assumptions by Helmut, as I understood
them, the binaries are not needed for compilation at all, they are not
pre-processors or similar tools -- they are instead like "examples" or
derived tools of the library, that others can use. It's like if an XML
library provides a parser or coloriser as a tool.
So my change splits the package to put the libraries (libvoikko-bin, not
-dev-bin as initially suggested), makes -dev recommend it (for possible
r-depends using it, like voikko-fi using the binary programs in rules),
and -dev is marked as "Multi-Arch: same" while -bin one is not marked at
all (implicit "no", IIRC).
However, I am not sure if a "M-A: same" recommending/depending on a
"M-A: no" renders the ": same" unusable, please advise (esp. Helmut).
I'd appreciate review on the changes as a whole anyway, since the
changes in this NMU are a bit more intrusive than others and the
suggested initial fix (just remove the "Multi-Arch: foreign").
If everything is OK, I plan to upload the NMU in the next few days.
Cheers.
--
Manuel A. Fernandez Montecelo <[email protected]>