Commit Graph

65 Commits

Author SHA1 Message Date
Jeremie Dimino 23f00abf18 Update odoc rules 2017-05-26 18:34:49 +01:00
Jeremie Dimino a399d9df8a Declare dependencies on external library files
This way, when an external library is reinstalled, jbuilder knows to
rebuild things.

Currently, because the library dependencies transitive closures are
computed dynamically and jbuilder doesn't yet support dynamic targets,
every single rule has to depend on all the external files.

When jbuilder support dynamic targets, we can setup one alias per
external directory.

Tested the build of 97 Jane Street repository at once. No slow down
observed for the initial build.

Then a null build goes from ~1.5s to 2s. The test case is a bit
extreme so it's bot that bad given the benefits.
2017-05-18 13:52:35 +01:00
Jeremie Dimino 648b2b2990 Revert some changes:
- Make targets explicit b7ad08df84.
- Get rid of Vfile      e73fd90b65.

Without vfile we need some new concepts to avoid parsing the requires
file multiple times and with vfile it's annoying to specify the
dependencies by hand.

Will leave that for future work. Just use memoize where it make sense,
for instance when we read the result from only the current directory
(for instance the ocamldep stuff).
2017-05-15 14:58:37 +01:00
Jérémie Dimino b7ad08df84 Make targets explicit 2017-05-15 09:37:46 +01:00
Jeremie Dimino 4130bc2f63 Add support for ${version:<package>} 2017-05-05 12:26:56 +01:00
Jeremie Dimino ef6be544a3 Keep the package context after parsing 2017-05-05 11:21:46 +01:00
Jeremie Dimino 411d1a2f2c Refactoring
- add Super_context.resolve_program and use it everywhere.
- add src/js_of_ocaml.mli
2017-05-02 12:01:27 +01:00
hhugo 86a4f0324a Add js_of_ocaml support (#60)
Add rules for building .js files from .bc files using js_of_ocaml as well as rules for separate js compilation when --dev is passed.
2017-05-02 11:25:37 +01:00
Jeremie Dimino a8c2dcc928 Move expand_and_eval_set to Super_context 2017-04-28 15:01:19 +01:00
Jeremie Dimino 3a266c686e Cleanup lib stuff 2017-04-28 14:50:24 +01:00
Jeremie Dimino 130cadf855 Move pp stuff to Super_context.PP 2017-04-28 14:40:33 +01:00
Jeremie Dimino 17ae22295d Move Action_interpret to Super_context 2017-04-28 14:24:02 +01:00
Jeremie Dimino 6a40b7602c Move Dep_conf_interpret to Super_context 2017-04-28 14:01:47 +01:00
Jeremie Dimino 32c20cc561 Move var expansions to Super_context 2017-04-28 13:53:44 +01:00
Jeremie Dimino c7add98ea6 Add a new Super_context module
Moved most of the global values computed at the beginning of
Gen_rules.Gen to Super_context.t. This will allow to split
gen_rules.ml into multiple files.
2017-04-28 11:58:41 +01:00