Re: installation with opam install files
On 21/07/2017 21:49, Hendrik Tews wrote:
>> But this adds opam to bdeps, whitch itself bdeps on cmdliner...
>
> OK, now we have a real cycle in the build dependencies. At the
> moment I see the following solutions:
>
> ignore: prepare and upload the new topkg package with using
> opam-installer, introducing a cycle in the build
> dependencies
I'm afraid this won't work at the moment. On bytecode architectures, the
opam binary package depends on runtime packages of its dependencies [1].
There is no runtime package for cmdliner, but there is for uutf and
jsonm (I guess those will start depending on topkg as well). Now,
imagine we start a transition from $ABI to $ABI+1. Suddenly, the whole
cycle becomes uninstallable on bytecode architectures.
> install-script: add an install script to the new topkg package,
> the output of opam-installer --script might provide a
> starting point. This script will need manual work for
> each new upstream release.
This could work for packages that ship a static install file. But what
happens for packages that generate their install file during the build?
All in all, I'm not very seduced by this approach.
> perl-installer: write a replacement for opam-installer, for
> instance in perl.
This is my preference.
> Any preferences?
Among the proposed choices, my preference goes to the Perl approach.
>> By the way, it makes me think that the dependencies automatically filled
>> by dh_ocaml are too coarse. If pkg ocaml-depends on Module and provides
>> it, there is (probably) no need to depend on libmodule-ocaml.
>
> I don't understand this. Is there a relation to the dependency
> cycle opam -> cmdliner -> topkg -> opam?
I meant, if opam didn't depend on runtime packages of its dependencies,
then the dependency cycle wouldn't be a problem. But forget about my
ramblings... the dependency on the runtime ocaml-base-nox-$ABI would
still be needed and causing trouble on transitions... Unless... we
compile opam with -custom. I have to think more about it.
Cheers,
--
Stéphane
Reply to: