[opam-devel] opam 2 containers/building toplevel

David Allsopp dra-news at metastack.com
Wed Jun 1 16:05:40 BST 2016


Louis Gesbert wrote:
> Le mercredi 1 juin 2016, 14:29:45 David Allsopp a écrit :
> > Anil Madhavapeddy wrote:
> > > > On 31 May 2016, at 14:36, Louis Gesbert
> > > > <louis.gesbert at ocamlpro.com>
> > >
> > > wrote:
> > <snip>
> >
> > > > The issue with `make lib-ext` may be that `opam-admin.top` can't
> > > > find the proper opam libraries installed. The Makefile in
> > > > `admin-scripts/` has a quick hack to build bytecode versions, but
> > > > that reiles on `ocamlfind` to locate the installed versions of the
> > > > dependencies; it wouldn't be difficult to improve it to work with
> `lib-ext` though.
> > >
> > > It would be very useful if they could work with lib-ext and the
> > > toplevel be built by default.  Right now there is some oddness where
> > > the extlib interactive installer is run if I build `opam-admin.top`
> > > manually, so I gave up around there.
> >
> > lib-ext isn't very well-conceived/constructed, IMNRHO! See
> > https://github.com/dra27/opam/commit/f740058a639306c093de3b4f7425a0174
> > 7239e 97. Part of my reason for spending time last year implementing
> > lib-pkg in the build system ...
> 
> Nice fix,  I'd gladly merge the PR

Feel free to cherry-pick it (it's on https://github.com/dra27/opam/commits/windows-build) - while Git is wonderful, I found working on OCaml earlier in the year that it's not wonderful when you're trying to maintain a large number of pull requests and a rebasing branch of all of those PRs in one! So for now, I'd prefer to keep my contributions in one branch only, until the darned thing's actually finished, just for my own sanity! :o) The rebase does a good job of noticing when fixes like that have been superseded.

> For lib-ext... well, we needed a build system:
> - for OCaml
> - with no dependencies
> 
> and it's just to bootstrap. Yes obviously, lib-ext is an ugly hack, and I
> am not proud of it; the doc+Makefiles makes sure you only use it for
> building the opam binary and not for usable libraries though
> 
> The previous solution was cleaner, but relied on ocp-build. Migrating to
> OCamlMakefile was a painful experience, but I can't see a better option
> around. Also, it manages to not be too much trouble to maintain.

https://github.com/dra27/opam/commit/8ccda84b17ffd57543a15e4a09072ba9a237fefe :o)


David


More information about the opam-devel mailing list