Source: libvoikko
Version: 4.1.1-1
Severity: wishlist
User: helm...@debian.org
Usertags: rebootstrap


Hello,

Stemming from #872251, these are the findings that we explained there and in IRC
discussions, I will try to summarise it as best as I can (corrections welcome):

- The binaries in the -dev package are not purely "test programs" or examples,
  because they are used by different packages [1] [2]

  + It is unfortunate that they are bundled together, because they make some
    cases of co-installation with multi-arch or cross-compilation more difficult
    or less correct, they preclude some combinations and uses

  + The annotation of "Multi-Arch: foreign" is simply wrong and it causes
    problems to cross-compile, so better than this would even be to be marked as
    (implicit, by removing the line) "Multi-Arch: no" as it is proposed for
    #872251

  + Transitions to split the package while preserving the rev-depends or
    previous systems with this package installed unbroken through upgrades are
    more complicated now, read on

- It seems that the binaries can be split in a new -bin and be marked as
  "Multi-Arch: foreign", because the spell/grammar checkers and the rest of the
  tools should have the same behaviour, e.g. output the same content for the
  same input, independent of the architecture, but I'm/we're not 100% sure.

  + In that case, -dev should be "Multi-Arch: same" and -bin "Multi-Arch:
    foreign", and -dev should Depend on -bin (to not break reverse-dependencies,
    although many will not actually need those binaries), while -bin should
    include Breaks/Replaces on older versions of -dev (because it takes over
    some files)

    For reference, the following commit (later reverted) attempted to do what's
    needed, except that I failed to reach the correct solution for not marking
    -bin as "Multi-Arch: foreign" and using Recommends instead of Depends (which
    can cause upgradability problems, or satisfiability problems when building
    in buildd):

      
https://anonscm.debian.org/cgit/collab-maint/libvoikko.git/commit/?id=94e7ce125739e59241c04034f5b0615e93c3cc49

  + If they do not behave the same way across architectures, the package can be
    marked as "Multi-Arch: no" and the few reverse-deps can change the
    dependency to use :native, but this is better known to the maintainer, and
    you're also the maintainer of voikko-fi so you can easily change them in
    lock-step.


Hope that helps, and that it's clear what to do once you know the tools and what
they're supposed to do and how they are used.

If you have any questions just ask, we'll try to help.


Cheers.


[1] https://codesearch.debian.net/search?q=voikkospell&perpkg=1
    giella-core_0.1.1~r129227+svn121148-1/scripts/run_voikko_speller.sh

[2] https://codesearch.debian.net/search?q=voikkovfstc&perpkg=1
    voikko-fi_2.2-1/Makefile


Cheers.

Reply via email to