[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Make ocaml-best-compilers non-virtual



Hi,

Quoting Ralf Treinen (2016-11-02 08:56:32)
> On Mon, Oct 31, 2016 at 09:13:19AM +0100, Johannes Schauer wrote:
> > Quoting Ximin Luo (2016-10-31 08:35:00)
> > > However, if I simply add "ocaml-best-compilers (>= 4.03.0)" into
> > > Build-Depends I still get an error like:
> > > 
> > > dpkg-checkbuilddeps: error: Unmet build dependencies: ocaml-best-compilers (>= 4.03.0)
> > > 
> > > so it looks like we can't do this for virtual packages. (Yes, I do have
> > > 4.03.0 installed For Sure Totally).
> > 
> > yes, see policy §7.5:
> > 
> > "If a relationship field has a version number attached, only real packages will
> > be considered to see whether the relationship is satisfied"
> 
> Policy is lagging behind reality in this respect, but it is not the only
> place where policy is not up to date. We have versionend provides since
> quite some time, and we have versionend dependencies on virtual packages
> in the archive (on python-cffi-backend-api-min, for instance).

indeed. So while you cannot do "ocaml-best-compilers (>= 4.03.0)" and expect it
to resolve to a package which just

Provides: ocaml-best-compilers

It will work for a package which states:

Provides: ocaml-best-compilers (= 4.03.0)

Notice, that only the "=" relationship can (so far) be used in the Provides
field. So the following might work in debian/control:

Provides: ocaml-best-compilers (= ${binary:Version})

> However,it is quite possible that the build-demons are not able yet to
> resolve these. On a related note: I recently tried a build-dependency on
> "ocamlbuild|ocaml-nox (<<4.03)", which works on pbuilder, but not on the
> build-demons. So, I don't have any other solution to propose either than the
> one proposed by Ximin.

Packages are scheduled by wanna-build and as long as that is using a suitable
dose3 version (IIRC the one in should backports should suffice), versioned
provides should not be an issue. When the build is then started on the buildds,
the chroot will contain apt and dpkg from Debian unstable where versioned
provides are also supported.

Thanks!

cheers, josch

Attachment: signature.asc
Description: signature


Reply to: