Jeremie Dimino
81e6ebd09b
Simplify inference
2017-05-30 17:39:23 +01:00
Jeremie Dimino
acd1e3e571
Do not fail immediately when expanding actions and a program isn't found
2017-05-30 17:35:49 +01:00
Jeremie Dimino
4e7cb253e1
Add support for reading files from actions
...
- ${read:<filename>} -> expand to the contents of the file
- ${read-lines:<filename>} -> expand to the list of lines in the file
- ${read-strings:<filename> -> expand to the list of lines in the file,
unescaped using OCaml escaping rules
Generalize ${!...} form
2017-05-30 17:02:45 +01:00
Jeremie Dimino
a8a43e4b22
Add ${!^} and ${!@} and document them
2017-05-29 19:12:37 +01:00
Jeremie Dimino
116769724f
Allow to use ${^} in actions in conjunction with (glob_files ...) and (file_recursively_in ...)
2017-05-29 18:53:54 +01:00
Thomas Refis
a5af8efa0a
Revert "Only build the toplevel module for wrapped libraries with odoc"
...
odoc is not ready for that as it turns out.
This reverts commit 5bd391e224
.
2017-05-29 15:49:29 +01:00
Jeremie Dimino
5bd391e224
Only build the toplevel module for wrapped libraries with odoc
2017-05-29 14:52:20 +01:00
Jeremie Dimino
1d3341ed28
Add a (mkdir ...) action
2017-05-29 14:51:46 +01:00
Jeremie Dimino
85ae1c75e4
Hack for latest odoc
2017-05-29 14:28:07 +01:00
Jeremie Dimino
65150b4166
Add -debug-backtrace
2017-05-29 14:18:07 +01:00
Jeremie Dimino
9f8803af67
Add (modes ...) for executables
2017-05-29 14:18:07 +01:00
Thomas Refis
b52d778d4c
Fix .merlin generation: add all workspaces projects to merlin's source path
...
(otherwise "locate" doesn't work)
2017-05-29 13:22:24 +01:00
Jeremie Dimino
c73b1f1fe3
Add a --no-buffer option
...
Following #107
2017-05-29 10:57:04 +01:00
Jeremie Dimino
5372ebdea1
Remove jane_street version
...
It's not used. We'll re-add it if really necessary.
2017-05-29 09:54:56 +01:00
Jérémie Dimino
f1ebc0ed7d
Add (mli-to-ml ...) as a hack for mli only modules
2017-05-29 07:51:52 +01:00
Jérémie Dimino
c6cc8204bf
Add (foreach ...) form
2017-05-29 07:51:52 +01:00
Jérémie Dimino
1e41feaf8a
Add simplified version of rules
2017-05-29 07:51:52 +01:00
Jérémie Dimino
7c9dcbf284
Added deps/targets inference
2017-05-29 07:51:52 +01:00
Jérémie Dimino
b9c9b19f0a
Refactoring
2017-05-29 07:51:52 +01:00
Jérémie Dimino
73a4cef9f8
Move the context out of Action.t
...
And add it to the rule. It is never dynamic, so it is simpler this
way, we just set it in Super_context.add_rule.
2017-05-29 07:51:52 +01:00
Jérémie Dimino
7f0a2d7e12
Remove unused function
2017-05-29 07:51:52 +01:00
Jeremie Dimino
500f224098
Delete old odoc artifacts before running odoc
2017-05-26 18:34:49 +01:00
Jeremie Dimino
37d7131a11
Simplify hack for not deleting odoc files
2017-05-26 18:34:49 +01:00
Jeremie Dimino
35ba1bc0f1
Remove the dir field in Action.t
...
Simplify things for Build.progn
2017-05-26 18:34:49 +01:00
Jeremie Dimino
0a1f4f5658
Replace Build.and_... by Build.progn
2017-05-26 18:34:49 +01:00
Jeremie Dimino
23f00abf18
Update odoc rules
2017-05-26 18:34:49 +01:00
Jeremie Dimino
d9165fc53e
Memoize a computation in odoc.ml
2017-05-26 18:34:49 +01:00
Jeremie Dimino
76d637fa74
Fix dependencies
2017-05-26 18:34:49 +01:00
Jeremie Dimino
43f413a59a
Support library indexes
2017-05-26 18:34:49 +01:00
Jeremie Dimino
7f8f4b23ee
Start of odoc rules
2017-05-26 18:34:49 +01:00
Jeremie Dimino
60d09f7e27
Print background process failures when exiting
2017-05-26 17:30:34 +01:00
Jeremie Dimino
550a8d8f57
Fix #101
2017-05-26 17:23:49 +01:00
Jeremie Dimino
9f9660b91a
Remove the global ppx_drivers variable in super_context.ml
...
Fix #100
2017-05-26 14:25:51 +01:00
Jeremie Dimino
1de95b9d81
Print the contents of OCAMLPARAM in the log
2017-05-26 14:07:21 +01:00
Jeremie Dimino
f3cdbfa66f
Fix Path.rm_rf
...
It didn't delete the toplevel directory
2017-05-26 11:37:10 +01:00
Richard Davison
91d03de221
Add clean subcommand ( #89 )
2017-05-26 11:32:32 +01:00
Jeremie Dimino
2e7140dfef
Fix #86
2017-05-22 10:37:42 +01:00
Jeremie Dimino
d01270757f
Remove ocamllex/ocamlyacc from the context
...
They were unused and this prevent jbuilder to be used with
opam-cross-windows.
Fixes #75
2017-05-19 15:24:55 +01:00
Jeremie Dimino
4dd0de1723
Fix #72
2017-05-19 14:16:00 +01:00
Jeremie Dimino
c6dac87ee9
Ignore all directories starting with '.' pr '_'
2017-05-19 12:36:06 +01:00
Jérémie Dimino
0a2157919c
Split more long lines in makefiles
2017-05-19 08:27:21 +01:00
Jérémie Dimino
42cb733c6a
Remove --debug-{actions,rules}
...
They are superseeded by 'jbuilder rules'
2017-05-19 08:27:21 +01:00
Jérémie Dimino
00ddd7f7a2
Improve formatting
2017-05-19 08:27:21 +01:00
Jérémie Dimino
0a98963293
fix
2017-05-19 08:27:21 +01:00
Jérémie Dimino
fe30935fa2
Rename 'extract-makefile' to 'rules'
2017-05-19 08:27:21 +01:00
Jeremie Dimino
d219020b2f
added jbuilder extract-makefile
2017-05-18 19:05:01 +01:00
Jeremie Dimino
a3ee81055d
Refactor IO functions and fix invalid IOs in gen_rules
2017-05-18 17:12:32 +01:00
Jeremie Dimino
9df1bad58c
Change an error into a warning
...
Otherwise this breaks the build of atd.
2017-05-18 16:50:53 +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
08af136c97
Fix another stupid bug
2017-05-17 15:24:09 +01:00
Jeremie Dimino
80792e4e74
Handle the alternative findlib directory layout
...
Some packages still use this, such as ocp-blah and llvm
2017-05-17 15:12:11 +01:00
Jeremie Dimino
b2a9d6dc51
Add: jbuilder installed-libraries --not-available
2017-05-17 14:56:53 +01:00
Jeremie Dimino
1814fc4299
Much better for findlib packages not found
2017-05-17 14:56:53 +01:00
Jeremie Dimino
4621e554d2
Really ignore invalid findlib packages
2017-05-16 15:46:53 +01:00
Jeremie Dimino
60ad83c522
Improve opam parsing errors & use opam-file-format to extract the version
2017-05-16 14:47:52 +01:00
Jeremie Dimino
f2a857f406
Fix Super_context.expand_and_eval_set
...
It declared its own dependencies as action dependencies rather than
rule dependencies
2017-05-16 12:19:18 +01:00
Jeremie Dimino
bd62dc8306
Merge build_interpret functions
2017-05-15 15:15:20 +01:00
Jeremie Dimino
9a5bb0ca1f
Compute dynamic dependencies correctly for memoized arrows
2017-05-15 15:09:56 +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
Rudi Grinberg
5adfe2d668
Ignore local switch directory ( #77 )
...
This makes jbuilder usable for building projects that use a local switch
2017-05-15 10:30:02 +01:00
Jérémie Dimino
be3593e449
Distinguish rule dependencies from action dependencies
2017-05-15 09:37:46 +01:00
Jérémie Dimino
b7ad08df84
Make targets explicit
2017-05-15 09:37:46 +01:00
Jérémie Dimino
b6b417e640
simplification
2017-05-15 09:37:46 +01:00
Jérémie Dimino
e73fd90b65
Get rid of Vfile
...
replace it by just memoize
2017-05-15 09:37:46 +01:00
Jérémie Dimino
f5192122f8
add Build.memoize
2017-05-15 09:37:46 +01:00
Jeremie Dimino
dd79bdd8d1
Suffix all alias files, to avoid clashes with doc
2017-05-15 09:37:46 +01:00
Jeremie Dimino
87c958f2e0
Add Build.if_file_exists
2017-05-15 09:37:46 +01:00
hhugo
c880cd3e2d
disable warning 60 with --dev
2017-05-14 13:06:22 +01:00
Jeremie Dimino
4c9f894fe4
fix stupid bug
2017-05-10 16:44:01 +01:00
Jeremie Dimino
76db4d5641
Use OCAML_COLOR and stop using OCAMLPARAM when possible
2017-05-10 16:31:44 +01:00
Jeremie Dimino
b514644f9b
Revert "Add support for hooks"
...
This reverts commit c937dc9183
.
2017-05-09 15:11:09 +01:00
Jérémie Dimino
c937dc9183
Add support for hooks
2017-05-09 08:18:10 +01:00
Jeremie Dimino
add2a063c0
Detect the package name as topkg-jbuilder does
2017-05-08 16:56:21 +01:00
Jeremie Dimino
221baefb81
Make subst add the version to the opam file
2017-05-08 16:56:21 +01:00
Jeremie Dimino
61f0f8fd0e
Fix bootstrap
2017-05-08 16:56:21 +01:00
Jeremie Dimino
6d0c8198eb
Substitute watermarks for jbuilder itself
2017-05-08 16:56:21 +01:00
Jeremie Dimino
87df38d1f6
Fix call to git describe
2017-05-08 16:56:21 +01:00
Jeremie Dimino
dce491e661
Add a subst command for watermarking files
2017-05-08 16:56:21 +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
fbe0810156
Improve location of errors for mispelled package in jbuild files
2017-05-05 10:59:07 +01:00
Jeremie Dimino
f017e810d8
Remove some dead code
...
vjs is mostly unused now given that Jane Street jbuild files are
automatically rewritten. We keep the Vjs version though, just in case.
2017-05-02 13:34:52 +01:00
Jeremie Dimino
b73e672cad
Move js_of_ocaml to Buildable
2017-05-02 13:30:58 +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
Rudi Grinberg
afce8c7f4f
Specify package for aliases
...
Useful for running tests for a specific package
2017-05-02 09:57:03 +01:00
Jeremie Dimino
416d4c6ead
Move rules for module compilation in their own file
2017-04-28 15:13:43 +01:00
Jeremie Dimino
a8c2dcc928
Move expand_and_eval_set to Super_context
2017-04-28 15:01:19 +01:00
Jeremie Dimino
5f270372bf
Move Merlin rules to their own file
2017-04-28 14:54:16 +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
c6080880b3
Move ocamldep stuff to Ocamldep
2017-04-28 14:19:21 +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
c18eabec72
Move a few more things to Utils and document them
2017-04-28 13:26:16 +01:00
Jeremie Dimino
1b6bc01a2d
Split out Ocaml_flags
2017-04-28 13:19:33 +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
Jeremie Dimino
d1d51595d2
Remove overlays for Mode and Cm_kind in Gen_rules
2017-04-28 10:40:09 +01:00
Jeremie Dimino
9498cb7013
Improve the error message for the last commit
2017-04-26 15:10:59 +01:00
Jeremie Dimino
2c124a0221
Detect conflicts between internal and external libraries
2017-04-26 15:04:32 +01:00
Jeremie Dimino
30ef4012e4
use code_errorf in Map.of_alist_exn
2017-04-26 13:41:10 +01:00
Jeremie Dimino
47d62fec04
typo
2017-04-26 13:38:28 +01:00
Jeremie Dimino
89cdd70563
Check for inconsistent (libraries ...) fields
...
Better fix for for #62
2017-04-26 13:36:52 +01:00
Jeremie Dimino
43572595b4
Detect clauses that are always false in (select ...) forms
2017-04-26 13:21:59 +01:00
Jeremie Dimino
05581ed8bc
Don't crash when a dependency is duplicated
...
Fix #62
2017-04-26 13:00:10 +01:00
Jeremie Dimino
83f686a821
Hint for mistyped targets
2017-04-25 16:22:17 +01:00
Jeremie Dimino
ee43c2718f
Environment variable names are not case sensitive on Windows
2017-04-24 12:53:18 +01:00
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
Jeremie Dimino
c437069fff
Improve package not found errors
2017-03-14 15:57:22 +00:00
Jeremie Dimino
6ae036a318
Fix fix for #20
2017-03-14 08:02:01 +00:00
Jeremie Dimino
132ddca42b
generate @canonical doc tags
2017-03-13 14:08:15 +00:00
Jeremie Dimino
020da39542
as-ppx.exe --> ppx.exe
2017-03-13 13:36:01 +00:00
Hugo Heuzard
63462fd452
Fix deps with multiple glob_files
2017-03-13 10:13:39 +00:00
Jérémie Dimino
1dcf38af93
Fix Path.extract_build* functions when applied on the build_dir itself
...
This should fix #20
2017-03-13 08:53:41 +00:00
Jérémie Dimino
ba08f27678
Add a few more redirections
...
- with-{stdout,stderr,outputs}-to
- ignore-{stdout,stderr,outputs}
- variable ${null} for /dev/null or NUL on Win32
2017-03-13 08:10:59 +00:00
Jeremie Dimino
99d7a26f28
Fix previous commit
2017-03-10 16:32:08 +00:00
Jeremie Dimino
dd6a23ec18
Fix #15
...
When there are no <pkg>.opam files in parent directories, use the
whole workspace as scope
2017-03-10 15:44:17 +00:00
Jeremie Dimino
df7658914d
Fix a bug where the findlib search path contained duplicates
2017-03-10 15:35:43 +00:00
Jeremie Dimino
d959b0f928
Add a Log module and print out the context in the log file
2017-03-10 12:32:27 +00:00
Jeremie Dimino
563cc6059c
Add Context.sexp_of_t
2017-03-10 11:22:01 +00:00
Jeremie Dimino
629b4d0044
Use Path.absolute for OCAML_TOPLEVEL_PATH
2017-03-10 10:57:09 +00:00
Jeremie Dimino
3cb0372f8b
Force the recording of backtraces
2017-03-10 10:53:34 +00:00
Jérémie Dimino
74e015923a
Ignore <package>.opam when <package> is empty
2017-03-09 06:41:42 +00:00
Jeremie Dimino
6ac0200d95
Fix the interpretation of inside actions
2017-03-08 15:28:32 +00:00
Jeremie Dimino
8f78118ff5
Fix error message printing format syntax
2017-03-08 15:13:33 +00:00
Jeremie Dimino
7e36b3cd86
Add self_build_stubs_archive to v1
2017-03-07 13:21:54 +00:00
Jeremie Dimino
d5d861b40c
Support architectures without natdynlink
2017-03-07 11:36:59 +00:00
Jeremie Dimino
3db4514d3a
Delete pending targets when a command fails
2017-03-07 10:14:16 +00:00
Jeremie Dimino
427e8582c0
Make sure migrate_driver_main comes last
2017-03-07 09:50:38 +00:00
Jeremie Dimino
18e3530c0a
Don't generate -embed-errors for merlin
2017-03-07 09:39:14 +00:00
Jeremie Dimino
c848e6ae97
Print a message when waiting for jobs
2017-03-07 09:34:16 +00:00
Jeremie Dimino
54197cc70d
Pass -embed-errors=false to ppx_driver
2017-03-06 16:18:51 +00:00
Jeremie Dimino
78e47bafa8
Don't save the db if _build doesn't exist
2017-03-06 15:33:03 +00:00
Jeremie Dimino
cac1dc0e3e
fixes
2017-03-06 15:14:57 +00:00
Jeremie Dimino
7850bf67f5
Write_file --> Update_file
2017-03-06 14:34:53 +00:00
Jeremie Dimino
da43937663
Allow arbitrary flags in (pps ...) forms
2017-03-06 13:54:08 +00:00
Jeremie Dimino
a26b787456
Fix expansion of user actions
2017-03-06 12:22:44 +00:00
Jeremie Dimino
a07a9a84ec
Use more standard command line options for ppx drivers
2017-03-06 11:59:21 +00:00
Jeremie Dimino
df883bef75
Fix Build.and_create_file
2017-03-06 10:41:51 +00:00
Jeremie Dimino
f21217dfbc
Improving errors when an alias is not found
2017-03-06 10:30:57 +00:00
Jeremie Dimino
35ac2e84ed
Switch to ocaml-migrate-parsetree.driver-main
2017-03-06 10:22:00 +00:00
Jérémie Dimino
9423e5ae74
Avoid stupid warning about trigraph on OSX
2017-03-05 21:07:40 +00:00
Jérémie Dimino
0b7d664f49
Don't recompile everything when the .merlin changes
2017-03-05 20:58:51 +00:00
Jérémie Dimino
fb6d135de6
Support ppx in .merlin files
2017-03-05 13:16:25 +00:00
Jérémie Dimino
95eca26bf0
Don't delete targets before executing a rule
...
At the moment, this breaks incremental builds
2017-03-05 12:33:54 +00:00
Jérémie Dimino
292f423cda
Build.t doesn't need Future to be interpreted
2017-03-05 12:11:48 +00:00
Jérémie Dimino
ca4b6fbf41
All IO must go through Build
2017-03-05 12:04:19 +00:00
Jérémie Dimino
6364f70245
Fix a few ppx related issues
2017-03-05 11:57:27 +00:00
Jérémie Dimino
05830fc809
Pass common flags to merlin
2017-03-05 10:32:04 +00:00
Jérémie Dimino
d58528d14c
Better error message when the ppx driver is missing
2017-03-05 10:17:35 +00:00
Jérémie Dimino
ba80202747
Implem of Build.progn
2017-03-05 10:05:05 +00:00
Jérémie Dimino
9013a836f0
Check that rules do produce the expected targets
2017-03-05 09:53:28 +00:00
Jérémie Dimino
cef3847977
Do no require ppx_driver
2017-03-05 09:38:39 +00:00
Jérémie Dimino
c03a4fb7df
Fix
2017-03-03 17:10:15 +00:00
Jeremie Dimino
a188fcacf4
Start incremental compilation
2017-03-03 15:26:14 +00:00
Jeremie Dimino
87fa4c080a
Fix the use of Path.reach for program names
2017-03-03 13:53:34 +00:00
Jeremie Dimino
65f06e7454
fix
2017-03-03 13:47:51 +00:00
Jeremie Dimino
470d791bac
fix
2017-03-03 13:23:44 +00:00
Jeremie Dimino
c3c3e9e9b5
Force users to write (bash ...) when they want it
2017-03-03 13:18:52 +00:00
Jeremie Dimino
e300ca0f16
Simplify actions
...
Make Bash a normal action
2017-03-03 12:59:52 +00:00
Jeremie Dimino
581c63f6ca
Added --debug-action
2017-03-03 12:46:54 +00:00
Jeremie Dimino
adf423a595
Change the rule signature
...
Now rules are arrows of type: (unit, Action.t) Build.t
They don't execute command directly, but instead build a serializable
action to execute.
2017-03-03 12:27:34 +00:00
Jeremie Dimino
2967987356
add a few more actions
2017-03-03 09:18:03 +00:00
Jeremie Dimino
987d437a99
Revert name change
2017-03-03 08:57:20 +00:00
Jeremie Dimino
cd359538b0
simplify
2017-03-03 08:47:58 +00:00
Jeremie Dimino
304e4d9a7a
prepare for change
2017-03-03 08:18:10 +00:00
Jeremie Dimino
4fa0844e42
Remove build-package in favor of --only-packages
2017-03-02 18:21:19 +00:00
Jeremie Dimino
591bc9f724
Fix the setting of CAML_LD_LIBRARY_PATH
2017-03-02 17:40:16 +00:00
Jeremie Dimino
a1bcf263c3
Fix for 4.04
2017-03-02 17:01:56 +00:00
Jeremie Dimino
51ce0c2daf
Restrict the scope of internal names
...
Otherwise building several packages at once doesn't always work
2017-03-02 16:57:28 +00:00
Jeremie Dimino
2628eba306
Don't install jbuilder as a library
...
The API is not stable at all, so let's not do it until the Jenga
bridge is ready
2017-03-02 14:53:33 +00:00
Jeremie Dimino
d858bfdda9
Make vjs closer to v1 to prepare for the next Jane Street release
2017-03-02 14:50:44 +00:00
Jeremie Dimino
16bd433e4e
Do not compute external library dependencies eagerly
2017-03-02 11:34:13 +00:00
Jeremie Dimino
2183a6f2d8
Remove support for (object_public_name ...)
...
Installing libraries from an executables stanza is just weird.
2017-03-02 10:06:05 +00:00
Jeremie Dimino
97de72c8dd
Improve the external-lib-deps command
2017-03-01 19:19:43 +00:00
Jeremie Dimino
27e44cd72b
Fix a problem when opam files are in sub-directories
2017-03-01 18:07:16 +00:00
Jeremie Dimino
b80b3c20ce
Install the non preprocessed modules
2017-03-01 17:27:25 +00:00
Jeremie Dimino
3aef1d6f3c
Revert "Rename _build to _jbuild ( #13 )"
...
This reverts commit 89c15ca2c5
.
Keep _build as the build directory until we get a better consensus.
2017-03-01 16:09:02 +00:00
Jeremie Dimino
c16fac59ed
Fix ocamlyacc rule
2017-03-01 15:18:09 +00:00
Jeremie Dimino
6f2a10c908
Install libexec files in sub-directories as well
2017-03-01 15:11:50 +00:00
Jeremie Dimino
c999039aa7
Install sub-libraries into sub-directories
...
Otherwise we have a problem when two libraries of the same package
define the same module.
2017-03-01 15:03:09 +00:00
Rudi Grinberg
89c15ca2c5
Rename _build to _jbuild ( #13 )
...
_build is already quite overloaded.
2017-03-01 13:37:05 +00:00
Jeremie Dimino
4ee2e74131
Make build-package work
2017-03-01 13:25:18 +00:00
Jeremie Dimino
ddd7f182f1
Extend MANPATH in 'jbuilder exec'
2017-03-01 12:56:31 +00:00
Jeremie Dimino
c88bf33131
Add jbuilder exec
2017-03-01 12:09:57 +00:00
Jeremie Dimino
d5f78a1462
Clean the _build/install directory as well
2017-03-01 11:39:41 +00:00
Jeremie Dimino
56f6e5bca3
Install from the symlink directory
2017-03-01 11:38:02 +00:00
Jeremie Dimino
c3228ee95e
fix ocamllex/ocamlyacc rules
2017-03-01 11:34:51 +00:00
Jeremie Dimino
6e25a7dfe5
Remove (provides ...) and uses (install ...) instead
2017-03-01 11:20:17 +00:00
Jeremie Dimino
60be8f7734
Remove the Ocamllex/Ocamlyacc modules and desugar them instead
2017-03-01 09:21:34 +00:00
Jérémie Dimino
d627744513
Fix the interpretation of
2017-02-28 23:26:53 +00:00
Jérémie Dimino
157ecaab60
Resolve path properly in actions
2017-02-28 23:23:51 +00:00
Jeremie Dimino
2e7d592f66
implement the manual properly for (install ...) stanzas
2017-02-28 18:17:15 +00:00
Jeremie Dimino
55405f7f25
Rework the readme
2017-02-28 17:20:41 +00:00
Jeremie Dimino
0b30f795b2
fix guess_modules
2017-02-28 15:49:02 +00:00
Jeremie Dimino
fad2873ad7
Update warning for .mli only modules
2017-02-28 13:20:35 +00:00
Jeremie Dimino
951132023c
Allow .mli only modules
...
Closes #9
2017-02-28 11:11:19 +00:00
Jeremie Dimino
98c083db21
Uncomment check for executable names
2017-02-28 10:37:10 +00:00
Jeremie Dimino
dc5c5851ff
Execute preprocess commands using the system shell
2017-02-28 10:32:57 +00:00
Jérémie Dimino
19dae96f1a
Simplify ocamllex/ocamlyacc rules
...
They are tricky and don't work properly
2017-02-28 07:27:32 +00:00