Commit Graph

21 Commits (master)

Author SHA1 Message Date
Thomas Refis 9fdc759ac0
Centralized tracking of frontend's global state (#9963)
import Local_store from merlin, with a simplified API following review comments
2020-10-15 14:47:19 +02:00
Xavier Leroy 86c8a98f3c
Merge pull request #9948 from nojb/remove_spacetime
The Spacetime memory profiler is not going to be supported in Multicore OCaml, and  is already broken by some of the related changes in OCaml 4.12.  The core development team decided to remove Spacetime support from OCaml 4.12.
2020-10-09 14:43:23 +02:00
Nicolás Ojeda Bär 540996d21e Remove Spacetime 2020-10-08 20:28:12 +02:00
Greta Yorsh 04bceec6cc
Save Linear IR before emit (#8939)
* Save IR before emit

* Update .depend for linear_format

* Test for -save-ir-after command-line option

* Address review comments

* Add Changes entry
2020-10-07 11:32:40 +01:00
David Allsopp 720b8c9b99 Fix ocamlcommon.cmxa/ocamlopttoplevel.cmxa rules
Depending on ocamlopt meant they were always rebuilt on Windows/Cygwin
builds.
2020-09-12 08:11:03 +01:00
Xavier Leroy 0802bacf4b
Merge pull request #9551 from nojb/microbfd
Implement (in utils/binutils.ml) a simple parser for ELF, Mach-O and PE shared object files.  Use it to get rid of libbfd in ocamlobjinfo and to improve the checking of external primitives during linking in ocamlc.
2020-07-14 10:47:12 +02:00
Nicolás Ojeda Bär 34ff264937 Add module utils/binutils 2020-07-02 06:40:10 +02:00
Stephen Dolan 81618f7b61 Move code of main and optmain to compilerlibs 2020-06-30 10:57:09 +01:00
Gabriel Scherer ffb6caef8b patterns: move Parmatch.Pattern_head into Patterns.Head
The aim is to also move the Simple/Half_simple/General stuff from
matching, but we need to split in those modules the part that are
purely structural (they go in Patterns) and the parts that are
actually compilation logic (Half_simple.of_clause), those stay in
Matching.
2020-05-14 10:11:36 +02:00
Gabriel Scherer 67f6128ebd [minor] Makefile: move ARCH_SPECIFIC back to the main Makefile
(This is a small, independent readability fix.)

ARCH_SPECIFIC was moved into Makefile.compilerlibs by mistake; it is
not used in Makefile.compilerlibs (in particular the
ARCH_SPECIFIC_ASMCOMP_* variables do not depend on it), and it is used
in the main Makefile.
2020-05-06 12:10:02 +02:00
Nicolás Ojeda Bär 68e4ec5b58
Tweak Makefile variable (#9488) 2020-04-23 12:19:44 +02:00
David Allsopp 13786d7d12 Ensure make distclean works on an unconfigured tree 2019-10-15 11:46:36 +01:00
Nicolás Ojeda Bär 57d329e07b
Deprecate -annot (#2141)
* Move driver code from Cmt2annot to Read_cmt
* Move cmt2annot.ml into typing/
* make depend
* Use standard error handling
* Move specific logic to read_cmt
* Do not pass full cmt record as argument
* Better locations
* Emit .annot files produced from cmt data
* Remove direct calls to Stypes
* Deprecate -annot
* Changes
* make depend
* Adapt doc
* make -C tools depend
2020-03-13 12:59:34 +01:00
Rodolphe Lepigre beb750b5ee typedecl_separability: interfaces and basic definitions, implementations missing 2020-01-28 11:39:52 +01:00
Gabriel Scherer 9f9bab72be fix a typo in #9211
(The typo was caught by make's undefined-variables warning on the INRIA CI)
2020-01-08 10:32:46 +01:00
David Allsopp 90c495d3ce
Remove unneeded .gitignore (#9224) 2020-01-06 13:27:56 +00:00
Gabriel Scherer 52b5815d7e compilerlibs archives: add dependencies on .mli-only compilation units
Before this commit, the Makefile for compilerlibs archives only tracks
their dependencies on implementation object files (.cmo,
.cmx). .mli-only files in those directories result in a .cmi without
a .cmo.

The main makefile uses dependencies on compilerlibs archives as
a proxy for all dependencies on the corresponding compiler
modules. This assumption was broken by .mli-only modules not being
dependencies on the archives.

For example, rebuilding compilerlibs archives would not refresh
file_format/cmxs_format.cmi. The following steps would lead to a build
failure:

    make core
    make ocamltools
    <add a new blank line at the beginning of utils/misc.mli>
    make ocamltools

    File "/home/gasche/Prog/ocaml/github-trunk/tools/objinfo.ml", line 1:
    Error: The files /home/gasche/Prog/ocaml/github-trunk/utils/misc.cmi
           and /home/gasche/Prog/ocaml/github-trunk/file_formats/cmxs_format.cmi
           make inconsistent assumptions over interface Misc
2019-12-26 21:09:13 +01:00
Gabriel Scherer cfb67f8153 Makefile: move the targets for compilerlibs archives to an included Makefie 2019-12-26 14:32:33 +01:00
Damien Doligez 49a8bfb5a9 add a file in compilerlibs to make git happy 2016-02-19 14:11:01 +01:00
Damien Doligez 8bcc792919 remove useless compilerlibs/.gitignore 2016-02-16 13:22:07 +01:00
Xavier Leroy 1e3bd1c332 Install compiler internals (as libraries + compiled interfaces + start modules)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12469 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-17 16:04:13 +00:00