Driver: Handle virtual libraries better
Virtual libraries are implemented by effectively just separating where the
mli and ml files are found. We have one mli and multiple ml files. Before this
commit, the mli files would be ignored as we use archives to define libraries.
Then each implemention of the virtual library would use the cmt from the ml file,
meaning that we exposed all the internals of the library that aren't actually
accessible.
After this commit, we now document mli-only libraries, and we effectively copy
the cmti files into the implementation libraries and use them rather than the cmts.
This means that every implementation will have docs that look identical to the
main virtual library. However, since the cmts are different, the source links
will go to the correct place in the implementation.
b5fca7
-
Oct 08 10:56 +00:00