* László Böszörményi (GCS) <g...@debian.org> [2020-07-12 10:56]:
Since ignition-msgs is the only package that has this issue, something
like the following should be enough:

In debian/control:

Depends: libprotobuf-dev (>= ${protobuf:Upstream-Version}), libprotobuf-dev (< 
${protobuf:Upstream-Version}.1)

In debian/rules:

override_dh_gencontrol:
        dh_gencontrol -- -Vprotobuf:Upstream-Version="$(shell dpkg-query -W -f 
'$${Source:Upstream-Version}' libprotobuf-dev)"

Thanks Sebastian for coming up with this :).

(This might be a little to tight and depending on >= X.Y, < X.(Y+1)
would be enough).
Right, in minor versions Google does not intend to change ABI I'm pretty sure.

So maybe something like this?

Depends: libprotobuf-dev (>= ${protobuf:Upstream-Version}), libprotobuf-dev (< 
${protobuf:Upstream-Version}a)

override_dh_gencontrol:
        dh_gencontrol -- -Vprotobuf:Upstream-Version="$(shell dpkg-query -W -f 
'$${Source:Upstream-Version}' libprotobuf-dev | cut -d. -f1-2)"

Or would there be a better way?

But yes, depending on a protobuf-abi-$VER provided by libprotobuf-dev
could also work. It wouldn't work if provided by the shared library,
though, as they are co-installable.
This is correct - I just feel misunderstandable that -dev would
provide an ABI version and will change that to API if needed.
@Jochen: You need to update ignition-fuel-tools anyway. Would a
stricter dependency on libprotobuf-dev be enough for you or should I
provide an API string in libprotobuf-dev for you?

I think the question is who is in control of bumping the ABI/API version. If you think the hack above is enough, then that's fine with me. If you want to be in control of it, upstream changes the logic, or more packages need it, then a provides makes more sense to me.

Cheers Jochen

Attachment: signature.asc
Description: PGP signature

Reply via email to