Commit Graph

738 Commits

Author SHA1 Message Date
Kevin Ji 86e667a1b6 README: Use the SVG Travis badge 2017-10-05 23:59:58 -07:00
David Allsopp 04860e4ce9 Temporarily re-order the stages
OSX often builds more slowly, and it's useful to get an answer from the
Test stage sooner.

See also https://github.com/travis-ci/beta-features/issues/28
2017-09-30 08:42:11 +01:00
David Allsopp 5fb66b9c24 Include macOS in the Test stage
Signed-off-by: David Allsopp <david.allsopp@metastack.com>
2017-09-30 08:42:11 +01:00
David Allsopp 26b2c40606 Build opam, rather than installing it
Signed-off-by: David Allsopp <david.allsopp@metastack.com>
2017-09-30 08:42:11 +01:00
David Allsopp 51d6421ae4 Run tests on Travis
Signed-off-by: David Allsopp <david.allsopp@metastack.com>
2017-09-30 08:42:11 +01:00
Jeremie Dimino a47e3ab78a Fix cram tests 2017-09-29 17:22:15 +01:00
David Allsopp 0e46cdd4e3 Clflags.workspace_root needs to be absolute
Since the fix for #262 in 3fb19150 it is necessary for workspace_root to
be absolute. In particular, `jbuilder build -p foo` (which implies
`--root=.`) needs to evaluate what that root is.
2017-09-29 14:14:21 +01:00
Jeremie Dimino 5de73ca740 Add support for locks in rules
This is to allow users define more complicated tests without having
to resort to -j1.
2017-09-29 12:20:08 +01:00
Jeremie Dimino 24e9fbf046 Update changelog 2017-09-29 12:04:27 +01:00
Jeremie Dimino 30076e7d79 Fix #264 2017-09-29 12:01:47 +01:00
Jeremie Dimino 50cbbe2ac5 Add ${path-no-dep:...}
To be able to resolve path names that are not dependencies.
2017-09-29 11:55:23 +01:00
Jeremie Dimino 726e738bb6 Expose bug described in #264 2017-09-29 11:28:36 +01:00
Jeremie Dimino 8383a00e4c Generate man page for 'jbuilder utop' 2017-09-29 11:28:01 +01:00
Jeremie Dimino cc0bf2dfb7 Rephrase the doc for (merlin) in jbuild-workspace
Related to #257
2017-09-22 12:20:22 +01:00
Jeremie Dimino 3fb1915033 Fix #262
Use the absolute path when evaluating a jbuild file in OCaml syntax.
2017-09-22 11:20:13 +01:00
Jeremie Dimino c636331148 Update changelog 2017-09-22 02:26:39 +01:00
Jeremie Dimino e37e630da5 Allow to use utop when the library has C stubs 2017-09-22 02:22:46 +01:00
Jeremie Dimino b965c66af5 Avoid generating useless .utop/.merlin files 2017-09-22 02:16:26 +01:00
Jeremie Dimino dd3eaf2695 Fix quoting of generated strings in utop.ml
It was broken in Windows
2017-09-22 02:04:57 +01:00
Jeremie Dimino 157e4d6548 Print "Entering directory '...'" when necessary
When the root of the workspace is not the current directory, print:

  Entering directory '<absolute path to root>'

This way editors such as emacs or vim knows how to interpret filenames
reported by the compiler.

Fixes #138
2017-09-22 01:59:45 +01:00
Jeremie Dimino b2e7720b41 Interpret empty jbuild-workspace files as default configuration
If a workspace file is empty, interpret it the same as if it contained:

  (context default)

As discussed in #234
2017-09-22 01:59:45 +01:00
Jeremie Dimino c71acbd930 Make the testsuite pass on Windows
Thought it still requires `sh` and a few Unix tools
2017-09-22 01:59:40 +01:00
Jeremie Dimino af5208416f Simplify overrides in the bootstrap path
- vendored libraries are replaced by files in `vendor/boot`
- files named `XXX.boot.EXT` replace their `XXX.EXT` equivalent

For instance, to build boot.exe, we use `src/glob_lexer.boot.ml`
rather than `src/glob_lexer.ml` (which would be generated from
`src/glob_lexer.mll`).
2017-09-22 01:52:04 +01:00
Jeremie Dimino 059e0dab66 Add an 'accept-corrections' target
To copy over all the .corrected files
2017-09-22 01:51:16 +01:00
Jeremie Dimino aca4cd47d2 Include Makefile.dev in Makefile
So that we can define a different default target while developping.
2017-09-22 01:50:59 +01:00
Jeremie Dimino 47d1f74ef0 Explain the difference between copy_files and copy_files# 2017-09-10 02:39:34 +01:00
Jeremie Dimino e27f7a8368 Update Changelog 2017-09-10 02:36:02 +01:00
François Bobot cecf0a2aaf Add (copy_files <glob>) stanza (#35)
Add (copy_files <glob>) and (copy_files# <glob>) stanzas. These
stanzas setup rules for copying files from a sub-directory to the
current directory.

This provides a reasonable way to support multi-directory
library/executables in jbuilder.
2017-09-10 02:31:07 +01:00
Jeremie Dimino d55c807d51 Allow to localize the error reported by Path.relative/of_string
Since these are often used to parse user input.
2017-09-10 01:26:06 +01:00
Rudi Grinberg ee63bcafaf Update CHANGES for 1.0+beta13 2017-09-05 20:51:11 -04:00
Rudi Grinberg 1da474bc4a Merge branch 'pr/238' 2017-09-05 20:41:19 -04:00
David Allsopp 6a3c51c358 Ensure executables also depend on archive files
Signed-off-by: David Allsopp <david.allsopp@metastack.com>
2017-09-05 19:53:08 -04:00
Rudi Grinberg a7067f5aa8 Merge pull request #224 from samoht/doc-index
Add a toplevel html index to the docs
2017-08-27 15:55:50 -04:00
David Allsopp da240468d0 Ensure .cmxs depends on archive file
Signed-off-by: David Allsopp <david.allsopp@metastack.com>
2017-08-26 15:06:32 +01:00
David Allsopp 1053d4e65a Ensure .cmxa files depend on object files
Signed-off-by: David Allsopp <david.allsopp@metastack.com>
2017-08-26 15:05:54 +01:00
David Allsopp 77c79ebff8 Ensure executables depend on object files
Previously, in Mode.Native, executables depended on .cmx files only.
This was fine when changes were detected by timestamp, but it is
possible to semantically alter an .ml such that only the .o/.obj file
alters. In this situation, Jbuilder would rebuild the .cmx file, but not
relink the executable.

Fixes #237.

Signed-off-by: David Allsopp <david.allsopp@metastack.com>
2017-08-26 14:01:20 +01:00
David Allsopp 9180f88dc3 Add Path.change_extension
Signed-off-by: David Allsopp <david.allsopp@metastack.com>
2017-08-26 14:01:12 +01:00
Rudi Grinberg a7406ab169 Merge pull request #233 from dra27/improve-include-error
Improve error handling for (:include )
2017-08-25 14:00:48 -04:00
David Allsopp 2d100b1150 Improve error handling for (:include )
The form (:include $(SCOPE_ROOT)\foo) requires quoting, but the error
message was cryptic ("Error: undefined symbol include").

Signed-off-by: David Allsopp <david.allsopp@metastack.com>
2017-08-25 11:12:15 +01:00
Thomas Gazagnaire 71952a0983 Add a toplevel html index to the docs 2017-08-22 11:12:33 +02:00
David Allsopp 7031e78778 Don't require chocolatey 2017-08-22 10:01:51 +01:00
Rudi Grinberg 1c85e646bc Update changelog for 1.0+beta12 release 2017-08-18 19:51:31 -04:00
Jeremie Dimino 374f548eab Update changelog 2017-08-17 15:13:11 +01:00
Jeremie Dimino 297e82061e Update_file --> Write_file
The difference is not meaningful anymore. Also expose Write_file as
write-file.
2017-08-17 15:13:11 +01:00
Jeremie Dimino 7a8fa99f5a Remove Create_file action
Makes no sense now that we use digests rather than timestamps
2017-08-17 15:13:11 +01:00
Jeremie Dimino 508c90201f Replace timestamp checks by file contents checks 2017-08-17 15:13:11 +01:00
Jérémie Dimino ca81d1704e Get rid of the deprecated-ppx-method sub-package (#222)
Instead, inline the fields it contains into the parent package
2017-08-17 12:41:49 +01:00
David Allsopp 7d1e0c47e2 Allow bootstrap.ml to be compiled (#221)
Signed-off-by: David Allsopp <david.allsopp@metastack.com>
2017-08-16 16:08:03 +01:00
Jérémie Dimino 6bed864057 Better behavior when the targets of a rule already exist in the source tree (#218)
Warn when a file is both present in the source tree and generated by
a rule. Before, jbuilder would silently ignore the rule. One now has
to add a field `(fallback)` to custom rules to keep the current
behavior.
2017-08-15 11:16:11 +01:00
Nicolás Ojeda Bär 3b1182c23a Fix typos 2017-08-15 07:32:17 +01:00