[mercury-users] Newbie question: what all these folders for?

Julien Fischer juliensf at csse.unimelb.edu.au
Tue Sep 30 17:12:48 AEST 2008

On Tue, 30 Sep 2008, Peter Lemenkov wrote:

> Hello All!
> I finally compiled Mercury and build RPM for it, but some things still
> remains unclear for me.
> I found that compiled Mercury has very complex layout - there are many
> different directories with content mysterious for newbies. Namely
> * conf - (just guessing) info about how Mercury was built, unneeded
> for Mercury runtime)

Very much needed at runtime (at least by the compiler).  The files
here contain information about the system the compiler is installed
on, what library grades are installed, which C compiler to use etc.

> * elisp - utility for emacs users (likewise, unneeded for runtime, may
> be safely separated from main package, into its own sub-package)


> * ints - kind of include headers (required, I guess)

These are interface files for the library modules.  Their function
is described in the ``File naming conventions'' section of the Mercury
User's guide.

> * lib - also stronlgy required for Mercury to work. There are some
> static libraries inside - we (at Fedora) have strict policy not to
> package static libs until it would be absolutely necessary - I think
> that's exactly the very case.

In general both static and shared versions of the libraries are

> * mdb - no idea

Configuration files and scripts used with the Mercury debugger (mdb)

> * mmake - seems that's also strongly required for Mercury

The files in this directory are used by the Mercury make tool `mmake'.
It is described in the ``Using Mmake'' section of the User's Guide.

> * modules - likewise

These directories contains the .init files - they contain extra
information that compiler needs in order to use the libraries.

> * reconf - seems useless w/o sources, so should be removed from binary package.

Used for reconfiguring the binary package we distribution ourselves.
Doing so doesn't require the sources, the files that it recreates are,
for example, the ones in the conf directory.

> Please, correct me If I wrong in my estimates. BTW maybe I'm missing
> something and there is a text, describing the layout of Mercury in
> details?

Sadly, no.

mercury-users mailing list
Post messages to:       mercury-users at csse.unimelb.edu.au
Administrative Queries: owner-mercury-users at csse.unimelb.edu.au
Subscriptions:          mercury-users-request at csse.unimelb.edu.au

More information about the users mailing list