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

Re: Make ocaml-best-compilers non-virtual



Ximin Luo:
> Johannes Schauer:
>> 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})
>>
> 
> Thanks for the tip! I've done this now instead of making ocaml-best-compilers non-virtual. I think it works. I made a minor mistake in debian/rules, I should have written $${} instead. I'm testing this now on eller/minkus and will upload in the morning. Hopefully we'll have a green build on all arches then.
> 

Funnily the Build-Depends: ocaml-best-compilers (>= 4.03.0) seems to work only on hurd-i386: 

https://buildd.debian.org/status/fetch.php?pkg=ocamlbuild&arch=hurd-i386&ver=0.9.3-3&stamp=1478129717

Merged Build-Depends: debhelper (>= 9), dh-ocaml, ocaml-best-compilers (>= 4.03.0)

No sign of it on amd64:

https://buildd.debian.org/status/fetch.php?pkg=ocamlbuild&arch=amd64&ver=0.9.3-3&stamp=1478168281

┌──────────────────────────────────────────────────────────────────────────────┐
│ Install ocamlbuild build dependencies (aspcud-based resolver)                │
└──────────────────────────────────────────────────────────────────────────────┘

Reading package lists...
Building dependency tree...
Reading state information...
aspcud is already the newest version (1:1.9.1-2).
apt-cudf is already the newest version (5.0.1-6+b1).
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
Installing build dependencies
Reading package lists...
Building dependency tree...
Reading state information...
Execute external solver...
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 sbuild-build-depends-ocamlbuild-dummy : Depends: ocaml-best-compilers (>= 4.03.0)
E: Broken packages
apt-get failed.

This is several hours after 4.03.0-5 was built and uploaded into FTP. Are you guys sure that aspcud/apt-cudf can support versioned virtual Build-Depends?

X

-- 
GPG: ed25519/56034877E1F87C35
GPG: rsa4096/1318EFAC5FBBDBCE
https://github.com/infinity0/pubkeys.git


Reply to: