caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Kakadu <kakadu.hafanana@gmail.com>
To: Caml List <caml-list@inria.fr>
Subject: [Caml-list] Annoying warning about double installation of topdirs.cmi
Date: Tue, 16 Aug 2016 16:04:59 +0300	[thread overview]
Message-ID: <CAGmVoG0PChOr8brCm0W+OouUuEWUKBuFk9iX1XZhujcyAA+Cvg@mail.gmail.com> (raw)

Hey,

After introducing compiler-libs we have starting getting a warning
when we use compiler-libs as ocamlfind package.

findlib: [WARNING] Interface topdirs.cmi occurs in several
directories: /home/kakadu/.opam2/4.02.3/lib/ocaml,
/home/kakadu/.opam2/4.02.3/lib/ocaml/compiler-libs

(* It has its own mantis issue [1] where gasche have said that we
should discuss it in the mail list before fixing it. *)

It happens because we install topdirs.cmi both to `ocamlc -where` and
`ocamlc -where`/compiler-libs. Of course these are identical files
with the same size and MD5 checksum.

The obvious choice should be not installing this file to `ocamlc
-where` (I) or to `ocamlc -where`/compiler-libs (II).

(I) Seems to be the right solution architecture-wise but it can
introduce backward-incompatibility in OPAM: after initialization it
puts some code into ~/.ocamlinit which relies on topdirs.cmi [2].
Personally, I removed this line from my ~/.ocamlinit because it seems
useless for my case. So, by removing `topdirs.cmi` from `ocamlc
-where` we should probably release bugfix release for opam.

(II) removing `topdirs.cmi` from `ocamlfind query compiler-libs` means
that we split files for this library between two directories which is
not good in general. Also, there is a probability that we can break
compilation of some packages but I think that it is unlikely.

Patches implementing both approaches are very likely to be very
straightforward. We only need to decide right solution. Maybe we can
even get it into 4.04.

Kakadu

[1] http://caml.inria.fr/mantis/view.php?id=6754
[2]
let () =
  try Topdirs.dir_directory (Sys.getenv "OCAML_TOPLEVEL_PATH")
  with Not_found -> ()
;;

             reply	other threads:[~2016-08-16 13:05 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-16 13:04 Kakadu [this message]
2016-08-16 19:01 ` Gerd Stolpmann
2016-08-26 13:10 ` Louis Gesbert

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAGmVoG0PChOr8brCm0W+OouUuEWUKBuFk9iX1XZhujcyAA+Cvg@mail.gmail.com \
    --to=kakadu.hafanana@gmail.com \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).