Re: findlib 1.x's features (includes shining new METAs for lablg*)
On Sun, Jan 11, 2004 at 06:27:38PM +0100, Stefano Zacchiroli wrote:
> Gerd released a fixed findlib (1.0.2), I've just upload the package.
>
> This version of findlib ships two new features that are of interest for
> debian:
>
> 1) subpackages, i.e. the possibility to define arbitrarly nested findlib
> packages in the same META file. Subpackages are accessed via dot
> notation (e.g. "p1.p2.p3")
>
> 2) additions, i.e. the possibility to append values to a findlib
> variable inside a META file (e.g. 'archive += "foo.cma"')
>
> Used together these two features permit us to minimize the number of
> predicates in the META files we distribute. Predicates are indeed good
> only to express conditions that are global for the compilation process
> (e.g. byte/native, multi-threaded/single-threaded, ...), but are bad(TM)
> to express per package conditions as we used it in lablgtk for example
> (predicates: "init", "gnome", ...). Used in this way predicates soon or
> later will clash.
>
> I attach three shining new META for lablgtk, lablgtk2 and lablgl. Using
> them, to link a source file which uses gtkgl and need gtk intialization
> one will simply do:
>
> ocamlfind ocamlc -linkpkg -package "lablgtk2.gtkgl lablgtk2.init" foo.ml
>
> Another advantage is in the writing of META files themselves, now we
> could add as many subpackages as we wish (if needed :) avoiding
> exponential explosion of the META file in the number of predicates.
>
> If nobody complains I'm here asking Sven to update the corresponding
> debian packages so that they include these METAs. I've done some test on
> them, but some more will be appreciated.
>
> Cheers.
>
> PS the new META for lablgtk2 will also add support for gnomecanvas and
> rsvg which is missing in the META currently in unstable
>
Hello,
This functionality is indeed very interessant...
Thanks for the example.
Regard
Sylvain LE GALL
Reply to: