Commit Graph

138 Commits

Author SHA1 Message Date
Rudi Grinberg 7b17fa013f Fix #717
Extensions should be removed from the map of basenames to mld paths
2018-04-29 00:52:29 +07:00
Jérémie Dimino 53202d0a09
Make -j default to the number of CPUs (#726) 2018-04-26 16:10:14 +01:00
Jérémie Dimino 2af69cb303
Make sure all_lib_deps_by_context doesn't report invalid contexts (#723) 2018-04-25 15:04:57 +01:00
Rudi Grinberg e467cafed0 Tweak CHANGELOG
Use github handles - those are useful for automatic pings when making making
releases.

Fix some typos
2018-04-18 09:50:29 +07:00
Jeremie Dimino 5228b431e1 Update changelog 2018-04-17 15:51:29 +01:00
Rudi Grinberg 5d9a99d28b Update CHANGELOG 2018-04-17 18:52:42 +07:00
Jeremie Dimino 294d693749 Do not load the user configuration file when INSIDE_DUNE is set 2018-04-12 12:43:14 +01:00
Rudi Grinberg 01326fb312 Fix CHANGELOG entry 2018-04-10 21:49:29 +07:00
Rudi Grinberg bfffb60ed2 Update CHANGELOG for beta 20 2018-04-10 21:43:44 +07:00
Jeremie Dimino 02b04e1eff Update changelog 2018-04-09 06:31:52 +08:00
Jeremie Dimino c7b9c2cd3e Fix #661: better error when a public library is defined twice 2018-03-29 15:04:14 -04:00
Jeremie Dimino ad00c1509f Fix #657 2018-03-27 17:25:25 -04:00
Rudi Grinberg bc2286215b undo beta20-rc1 releaes 2018-03-24 22:43:50 +08:00
Rudi Grinberg 1c4efab060 Update changelog for rc1 2018-03-24 01:01:08 +08:00
Rudi Grinberg 3b694b0abe Update CHANGELOG for odoc include dir fix 2018-03-24 01:00:57 +08:00
Rudi Grinberg a40a82b1e6 Update CHANGELOG 2018-03-24 00:19:50 +08:00
Rudi Grinberg ab37e8ec22 Update CHANEGLOG regarding missing asm fix 2018-03-22 22:15:05 +08:00
Rudi Grinberg 5d3f015f9b Update CHANGELOG 2018-03-22 22:12:57 +08:00
Jeremie Dimino a6959d3df3 Update changelog 2018-03-22 10:05:46 -04:00
Rudi Grinberg 54b17cc2ee Use the original changelog text but update the credits + PR 2018-03-21 00:35:37 +08:00
Rudi Grinberg a3793d986e Update CHANGES for 1.0+beta19.1 2018-03-21 00:34:19 +08:00
Jérémie Dimino 3f22d9f82b
Do not pass -runtime-variant _pic on Windows (#635) 2018-03-19 19:13:02 -04:00
Rudi Grinberg 9c349d4164 Update CHANGELOG 2018-03-19 02:06:35 +08:00
Rudi Grinberg 019740a115 Update CHANGELOG for next 2018-03-18 20:07:09 +08:00
Rudi Grinberg be0cbf8e8d Update CHANGELOG for documentation feature 2018-03-18 17:47:23 +08:00
Rudi Grinberg 08df147d60 Update CHANGELOG
add beta18.1 and update beta 19
2018-03-14 21:26:05 +08:00
Jeremie Dimino 8559d2f7ff Update changelog 2018-03-14 12:37:26 +00:00
Jeremie Dimino e2adf9d44a Allow to depend on the universe
Fix #255
2018-03-13 19:12:57 +00:00
Rudi Grinberg ad14b4b180 CHANGELOG for beta 19 2018-03-13 03:43:43 +07:00
Jérémie Dimino ca5c383b3b
Fix locations reported by the parser (#609)
The start position of atoms wasn't saved by the parser.
2018-03-12 18:41:49 +00:00
François Bobot feba0827b8 Allow to link executables as static or shared objects (#23)
- Setup the rules to use the `-output-complete-obj` option of OCaml
- Introduce a `best` mode in addition to `byte` and `native`
- Extend the `modes` field of executables to mean "linking modes", and add linking modes for static and shared objects
2018-03-12 11:40:53 +00:00
Jeremie Dimino 5286b42f58 Fix #597 2018-03-10 08:25:45 +07:00
Jeremie Dimino 8b5e2c4503 Update changelog 2018-03-09 19:55:51 +00:00
David Allsopp b604871aab Limit number of simultaneously opened fds (#578)
Non-optimal solution: only handles the common case.
2018-03-08 18:28:14 +00:00
Jeremie Dimino 7494834b50 Update changelog 2018-03-07 09:41:31 +00:00
Jeremie Dimino 256c3d9969 Update changelog 2018-03-07 09:40:08 +00:00
Jérémie Dimino dfdb6c09f4
Allow to set the library path at configure time (#575)
This allow to drop the dependency on ocamlfind
2018-03-06 14:56:24 +00:00
Jeremie Dimino 2acbc72f76 Update changelog 2018-03-06 12:59:01 +00:00
Jérémie Dimino cd6812f269
Accept and ignore ppx.driver fields (#588) 2018-03-05 17:59:56 +00:00
Jérémie Dimino 4857ed444a
Reduce interleaving in the scheduler (#586) 2018-03-05 17:52:21 +00:00
Jeremie Dimino d1feb062b6 Add a workaround for broken META file for builtin packages
Fixes #563
2018-03-03 11:33:40 +00:00
Jeremie Dimino 1bc7462ca7 Update changelog 2018-03-01 23:41:46 +00:00
Jeremie Dimino 72af61f2a5 Fix PR number in changelog 2018-03-01 07:05:02 +00:00
Jérémie Dimino 4cf7dc558b
Fix generation of the alias module with 4.02 (#549) 2018-02-25 12:58:40 +00:00
Rudi Grinberg 8a81c79531 Update CHANGELOG for beta 18 2018-02-25 02:56:56 +07:00
Jeremie Dimino 41b5017eb2 Fix #534 2018-02-21 13:35:47 +00:00
Rudi Grinberg 6bde0c21b3 beta18 changelog 2018-02-21 11:04:46 +07:00
Jérémie Dimino 9e4cc84370
Refactor library management (#516)
Lib module
----------

We have a new module Lib that replaces Lib, parts of Lib_db and parts
of Findlib. It is used to manage all libraries (internal and
extrernal). Lib.t represent a completely resolved library, i.e. where
all the dependencies have been resolved. Lib.Compile is used to
provide what is necessary to build the library itself. Lib.Meta
provides what is necessary to generate the META file for the library.

We also have library databases represented as Lib.DB.t. A library
database is simply a mapping from names to Lib.t values and and
created from a resolve function that looks up a name and return a
Lib.Info.t. A Lib.Info.t is the same as a Lib.t except that
dependencies are not resolved.

A library database can have a parent database that is used to lookup
names that are not found in the current database. In practice we have
the following hierarchy:

1. For every scope, we have a library database that holds all the
   libraries of this scope. In this DB, a library can be referred by
   either it's name or public name

2. the parent of each of these databases is a database that holds all
   the public libraries of the workspace. In this DB libraries must be
   referred by their public name

3. the parent of this DB is for installed libraries

(1) databases are accessible via Scope.libs
    (Super_context.find_scope_by_{name,dir} sctx xxx)
(2) is accessible via Super_context.public_libs sctx
(3) is accessible via Super_context.installed_libs sctx

The dependencies of a library are always resolved inside the DB it is
part of. When we compute a transitive closure, we check that we don't
have two libraries from two different DB with the same name. So for
instance linting Base should now supported.

Jbuild.Scope_info
-----------------

Jbuild.Scope was renamed Jbuild.Scope_info

Scope module
------------

This replaces Lib_db. A Scope.t is now just a pair of a
Jbuild.Scope_info.t and a Lib.DB.t. Scope.DB.t is an object used to
lookup scopes by either name or directory.

We no longer have an external scope or special anonymous
scope. Instead one should use Super_context.installed_libs or
Super_context.public_libs depending on the context.
2018-02-20 11:46:10 +00:00
Rudi Grinberg a6e6136f3a
Merge pull request #521 from rgrinberg/build-only-public-docs
Change @doc to only build public docs
2018-02-19 19:00:27 +07:00
Rudi Grinberg c067a638a6 Update CHANGES 2018-02-16 20:48:41 +07:00