obazl / rules_ocaml

A Bazel Language Support Package for OCaml

Home Page:https://obazl.github.io/docs_obazl

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

fix ocaml_archive

mobileink opened this issue · comments

Currently ocaml_archive behaves like ocaml_library; depend on it and you get its contents, rather than the archive file.

Archive files are really for distribution, not internal use. They should not be dependencies within a project. In fact the compiler will reject an archive if you try to use it as a module dependency. You can use an archive to build an executable, but that's not necessary when you can achieve the same thing using ocaml_library.

It follows that ocaml_archive does not need to store its dependencies in depsets the way other rules do. It just needs to deliver an archive file. Also storing deps makes it impossible to use the archive as a dependency since that results in duplicate module deps.