Commit Graph

250 Commits

Author SHA1 Message Date
Jeremie Dimino 229e7fa883 A couple of fixes for Windows
- open files in text mode when reading lines
- open files used for redirections with O_SHARE_DELETE
2017-04-21 17:22:41 +01:00
Rudi Grinberg 66f973cd4c Add Reason support (#58)
jbuilder now recognizes .re/.rei files as modules and pass them through refmt
2017-04-20 16:41:16 +01:00
Jeremie Dimino de0f65b4f4 Remove hard-coded knowledge of a a few specific ppx rewriters 2017-04-17 13:48:52 +01:00
Jeremie Dimino 238c22f3b8 Remove hardcoded PORTABLE_INT63 2017-04-17 13:35:42 +01:00
Jeremie Dimino 31922a590f Make sure the action working directory exist 2017-04-17 13:35:05 +01:00
Jeremie Dimino 2f4ec1c281 refactoring 2017-04-17 13:20:21 +01:00
Jeremie Dimino 07871b1190 Add support for ${lib-available:<name>} forms 2017-04-17 12:48:54 +01:00
Jeremie Dimino 72550dc3e0 Add a -p/--for-release-of-packages command line argument
`-p pkgs` is the equivalent of `--root . --only-packages pkgs`
2017-04-10 10:44:49 +01:00
Jeremie Dimino eb68c98f01 remove unused function 2017-04-10 10:10:49 +01:00
Jeremie Dimino d948edbc4c Add a (no_dynlink) field 2017-04-10 10:10:15 +01:00
Jeremie Dimino cc7ea35a14 Split the building of the .so and .a when needed 2017-04-10 10:10:15 +01:00
Jeremie Dimino d8f7d77a75 Don't generate an "exists_if ..." line in META files
This is useless sine the jbuild is auto-generated
2017-04-10 10:10:15 +01:00
Rudi Grinberg 3e3d92c9e5 Add menhir support (#42)
Adds the menhir stanza which desugars into a Rule.t with Support for:
* ocamlyacc like use
* modular parsers with --base
* passing extra flags

Also add tests and documentation.
2017-04-03 16:25:43 +01:00
Jeremie Dimino 4c3036b3cc Don't fail when opam return the same envirnonemt variable several times
Instead, print a warning and take the last bindings.

Fixes #46
2017-03-31 17:45:38 +01:00
Jeremie Dimino 83c1a6f5bd Fix compat with 4.06 2017-03-31 17:31:55 +01:00
Jeremie Dimino a7dbc12bac Sandbox different actions in different directories 2017-03-31 15:29:47 +01:00
Jeremie Dimino ffa1662ce9 Sandbox the build of the alias module with 4.02
To prevent the compiler from reading the cmi of the aliased modules.
2017-03-31 15:15:54 +01:00
Jeremie Dimino b9976773a3 Add support for sandboxing 2017-03-31 15:06:53 +01:00
Jeremie Dimino 21b29b0cb6 Refactor the job printing code
Fix #50
2017-03-31 13:44:53 +01:00
Jeremie Dimino 99b0d94335 Fixed the implementation of Filename.{split_,}ext 2017-03-31 13:34:30 +01:00
Jeremie Dimino d62429455b Add -keep-locs to the dev mode
Related to #44
2017-03-31 11:01:52 +01:00
Jeremie Dimino be75c8a4c9 Use -short-paths by default in dev-mode
Related to #44
2017-03-30 18:29:23 +01:00
Stephen Dolan b5ae1b1f52 Quieter output (#40)
Makes the output quieter by default and add a `--verbose` argument. Print a message when waiting for background jobs to finish only it it takes more than 0.5 seconds.
2017-03-30 17:36:58 +01:00
Jeremie Dimino d5b5322f12 Fix a bug in the interpretation of META files
Before this commit, when there was more than one applicable
assignment, the one with the lowest number of formal predicates was
selected instead of the one with the biggest number of formal predicates
2017-03-29 17:47:17 +01:00
Jeremie Dimino acb54677d4 Ignore test/ and example/ during bootstrap 2017-03-29 16:51:48 +01:00
Jeremie Dimino 1dda1179aa Add some doc in Path 2017-03-28 14:50:04 +01:00
François Bobot 5cca590e34 Don't use color feature for ocaml 4.02.3 2017-03-27 18:31:26 +01:00
François Bobot 2bf15067cb Remove comment for 4.02.3 2017-03-27 18:31:26 +01:00
Jeremie Dimino c48e90e357 Don't pass specific arguments when not using ppx_driver.runner
Fix #37
2017-03-27 14:31:00 +01:00
Jeremie Dimino 8e64aa0990 Lookup bash in the PATH
Closes #36
2017-03-24 11:04:24 +00:00
Jeremie Dimino 37b1125f03 Remove some unused functions 2017-03-23 10:45:09 +00:00
Jeremie Dimino 3ae53de431 Add an "executable" stanza and make it easier to install executables
(executable ...) is easier to use where there is a single executable.

Also add a (package ...) and (public_name <name>)/(public_names
(<names)) to executable/executables stanzas, to make it easier to
install executables.

Closes #33
2017-03-22 15:09:26 +00:00
Jeremie Dimino 48970caca3 Make sure the build of jbuilder doesn't call ocamlfind or opam 2017-03-22 08:19:26 +00:00
Jeremie Dimino 0c6b30efea tweaks for specific ppxs 2017-03-21 17:22:29 +00:00
Jeremie Dimino d2b8acc3b7 refactoring 2017-03-21 17:17:25 +00:00
Jeremie Dimino a1e898af5b Better error when plugins don't call the send function 2017-03-21 14:03:33 +00:00
Jeremie Dimino 9a8483c615 Give ocamlfind precedence over opam
If ocamlfind is present, don't try to call `opam config var lib`. The
previous behavior was breaking Facebook builds.

Also add ocamlfind as an optional dependency, to avoid race conditions
when installing ocamlfind in parallel.
2017-03-21 10:26:36 +00:00
Jeremie Dimino 34722a921a Ignore all errors while running `ocamlfind printconf path` 2017-03-20 14:34:28 +00:00
Jeremie Dimino 48ac99797e Improve error messages about invalid/missing pkg.opam files 2017-03-17 10:51:22 +00:00
Jeremie Dimino 6d1bb607c9 Fix #25 2017-03-15 15:44:27 +00:00
Jeremie Dimino 3b0c6403ee Fix a bug in Findlib.available
Fix #24
2017-03-15 12:07:20 +00:00
Jeremie Dimino 34a8951292 Improve dependency path printing 2017-03-15 11:49:31 +00:00
Jeremie Dimino 0dd24399ca Ignore opam files in ignored sub-trees 2017-03-15 11:41:44 +00:00
Jeremie Dimino bf4a4ba5f9 Add a regression test for #20 2017-03-15 11:13:49 +00:00
Jeremie Dimino dac70f4d72 Fix generation of @canonical tags 2017-03-15 10:44:55 +00:00
Jeremie Dimino 6cf93d69b5 Fix a bug in incremental compilation
If a rule had no dependencies and targets where missing, it wasn't
re-run.

Refactor the code and fix this bug.
2017-03-15 10:43:03 +00:00
Jeremie Dimino ec6b89ea11 Improve errors for ${lib:...} 2017-03-15 09:46:42 +00:00
Jeremie Dimino 2a5dc053fb Fix sexp_of_t (Update_file ...) 2017-03-15 09:15:47 +00:00
Jeremie Dimino e7b543e7cb Don't scan the tree a second time for files_recursively_in 2017-03-15 09:10:22 +00:00
Jeremie Dimino a04b0c4dcc Improve 'required_by ...' messages 2017-03-15 08:59:00 +00:00