Jérémie Dimino
eab1ff6c7b
Add promote actions and include stanzas ( #402 )
...
Add a promote action that allows to copy over generated files as
source files and an include stanza allowing to include a file in a
jbuild file.
2018-01-15 13:24:25 +00:00
Christophe Troestler
f8617b5721
Let "concat" or "split" be a quality of the variable ( #336 )
...
* Let variables say whether they are Concat or Split
To concatenate the contents of a split variable, put it in a string:
"${var} ".
Fixes #300
See also https://github.com/janestreet/jbuilder/issues/408
* Issue a deprecation warning for ${!...}
* Treat ${CC}, ${<}, ${^} and ${read-lines:...} as split vars
* Change ${!^} into ${^} for this project jbuild rules
2018-01-15 09:32:40 +00:00
Rudi Grinberg
3fea0db9cd
Merge pull request #409 from janestreet/alias-refactor
...
Alias/Action refactorings
2018-01-13 20:03:26 +08:00
Jérémie Dimino
d3410e0659
Refactor alias handling
...
* Improve documentation of alias module
* Add add_alias helper function to help create rules in alias
2018-01-13 19:51:24 +08:00
Jérémie Dimino
a1026f46d1
Add action helpers
...
Add constructor functions for Actions
2018-01-13 19:51:18 +08:00
Jérémie Dimino
e28344a24b
Do not use the transitive closure in generated META files ( #405 )
2018-01-12 16:41:23 +00:00
Anil Madhavapeddy
528d8987a5
Add link to jbuilder-universe in the README ( #406 )
2018-01-12 15:54:59 +00:00
Rudi Grinberg
92d4cbb7be
Merge pull request #404 from janestreet/make-lint-standard
...
Make lint alias standard
2018-01-12 15:46:26 +08:00
Rudi Grinberg
6bd46a76f8
Make lint alias standard
2018-01-11 16:20:19 +08:00
Rudi Grinberg
3776acd8d2
Fix c_compiler parsing for OCaml >= 4.06.0 ( #393 )
2018-01-10 16:54:25 +00:00
Rudi Grinberg
9ed300e5a2
Merge pull request #359 from rgrinberg/lint2
...
Implement lint field and run linting with @lint alias.
2018-01-11 00:01:25 +08:00
Rudi Grinberg
f490540538
Update tests for linting
2018-01-10 22:45:50 +08:00
Rudi Grinberg
ca1c8dd897
Add -null option to linters
...
Since the omp driver doesn't support this option yet, we must add it
conditionally. This is a temporary workaround.
2018-01-10 22:45:50 +08:00
Rudi Grinberg
1fc0ef0ab1
Add lint rules
2018-01-10 22:45:50 +08:00
Rudi Grinberg
6d2152e7b1
Add Alias.add_{stamp,action}_dep
...
These functions will be useful to construct alias elsewhere
2018-01-10 22:45:50 +08:00
Rudi Grinberg
bfbfc0bf30
Change lint option to be the same as preprocessing
2018-01-10 22:45:50 +08:00
Rudi Grinberg
66fc8db600
add lint alias
2018-01-10 22:45:49 +08:00
Rudi Grinberg
897c1e2e5e
Add helper functions
...
* Path.Set.sexp_of_t
* Module.iter
* List.last
2018-01-10 22:45:31 +08:00
Rudi Grinberg
5dd8d028ae
Improve reason tests
...
* Test that modules are actually built by running their code.
* Make reasonlypp to also be a linter
* Make the reason only pp double as linter When ran with the -lint flag
2018-01-10 02:15:17 +08:00
Jeremie Dimino
469079f9c6
Connect usexp errors to the error reporter
...
Fix #384
2018-01-09 09:55:01 +00:00
Rudi Grinberg
5cb909bb80
Merge pull request #380 from rgrinberg/yy
...
Cross Compilation
2018-01-01 22:47:44 +08:00
Jeremie Dimino
f68c1dd042
Add blackbox test for cross compilation
2018-01-01 22:34:41 +08:00
Jeremie Dimino
ce567be675
Update changelog
2018-01-01 22:34:41 +08:00
Jeremie Dimino
2b49123ae1
Update documentation to reflect cross compilation
...
Describes how to setup targets and toolchains and the changes to the workspace
syntax.
2018-01-01 22:34:41 +08:00
Rudi Grinberg
1ff8a7989c
Cross compilation support
...
In a host/target setup, all binaries that are built (including preprocessors)
are ran using the host *for* building targets. Final target artifacts are
compiled using the target toolchain
2018-01-01 22:34:41 +08:00
Jeremie Dimino
6e64156913
Add target support
...
* Create targets from findlib toolchains by reading findlib configs
* Define targets inside workspace files
* Set cross compilation targets with -x argument
2018-01-01 22:34:41 +08:00
Jeremie Dimino
afb602d7ef
Add add_install_prefix function
...
To control installation prefix
2018-01-01 21:48:25 +08:00
Jeremie Dimino
86dc606fef
Add Utils.install_file
...
Determines the .install depending on the toolchain for x compilation
2018-01-01 21:48:25 +08:00
Jeremie Dimino
5d451e7034
Add cstr_record
2018-01-01 21:48:25 +08:00
Jeremie Dimino
e06c060121
Add module to parse findlib config
...
Necessary to read toolchains
2018-01-01 21:48:25 +08:00
Rudi Grinberg
1a8c328b2d
Make is_directory work when dir doesn't exist
2018-01-01 21:48:25 +08:00
Rudi Grinberg
829b85ec44
Add Path.drop_prefix
2018-01-01 21:48:25 +08:00
Rudi Grinberg
1de1ced82b
Merge pull request #388 from rgrinberg/sub-lib-sub-dir
...
Add test for sub library in sub dir
2017-12-28 16:38:35 +08:00
Rudi Grinberg
6422cd606d
Add test for sub library in sub dir
...
Makes sure that that directory option is used appropriately in the META
2017-12-28 16:03:44 +08:00
Rudi Grinberg
dfe0001b5a
Simple stubs test
...
C stub library and executable that will run it
2017-12-23 11:29:41 +08:00
Rudi Grinberg
7d8ca23b62
Test install_c_headers stanza
2017-12-23 11:25:05 +08:00
Rudi Grinberg
5e890ccd67
Merge pull request #382 from rgrinberg/no-empty-modules
...
Add dummy module to make copy_files test pass on 4.02.3
2017-12-23 11:03:53 +08:00
François Bobot
9ec6b22066
Merge pull request #379 from janestreet/usexp
...
Replace the S-expression Parser by Usexp
2017-12-22 14:56:22 +01:00
Rudi Grinberg
7363c772aa
Add dummy module to make copy_files test pass on 4.02.3
2017-12-22 21:18:17 +08:00
Rudi Grinberg
35fccd8e4c
Merge pull request #383 from rgrinberg/utop-tests
...
Utop tests
2017-12-22 21:14:39 +08:00
Rudi Grinberg
01a21f91be
Add utop as a test dependency
2017-12-22 19:32:51 +08:00
Rudi Grinberg
a3806d7e3b
Add utop tests
2017-12-22 19:31:25 +08:00
Rudi Grinberg
f365e8f157
Improve copy_files test for c files to make sure source is tracked
2017-12-22 08:16:09 +01:00
David Allsopp
5901d7dee3
Update copy_files blackbox test to include C
...
Tests that the the directive emits #line instead of #n.
Signed-off-by: David Allsopp <david.allsopp@metastack.com>
2017-12-22 08:16:09 +01:00
David Allsopp
9d3c0b649c
Fix copy# for Microsoft C compiler
...
Microsoft CL doesn't support #n and requires the more strictly correct
directive #line
Signed-off-by: David Allsopp <david.allsopp@metastack.com>
2017-12-22 08:16:09 +01:00
Rudi Grinberg
7b6db8a3c2
Merge pull request #377 from rgrinberg/reason-test-changes
...
Reason test changes
2017-12-22 11:20:45 +08:00
Jeremie Dimino
3e525d8eec
Vendored usexp and switch to it
2017-12-21 13:13:47 +00:00
Rudi Grinberg
2025f1db58
Improve reason tests
...
Test that modules are actually built by running their code.
2017-12-21 20:20:43 +08:00
Rudi Grinberg
3ac73edb42
move copy-sources for reason tests to own dir
...
So that the originals aren't used accidentally
2017-12-20 17:23:26 +07:00
Rudi Grinberg
bbb6108924
Fix Path.descendent
...
It was broken for local paths with equal length
2017-12-20 09:06:12 +00:00