Commit Graph

34 Commits (ee8f71101b80496b2ec2c996d29ac33bbaf7cf00)

Author SHA1 Message Date
Damien Doligez ee8f71101b clean up whitespace and cut long lines 2016-02-17 13:36:27 +01:00
Gabriel Scherer f8f2a6277f remove ocamlbuild from the compiler distribution 2016-02-01 15:05:18 -05:00
David Allsopp 4bf93642af Allow automatic re-running of failed tests
MAX_TESTSUITE_DIR_RETRIES (which defaults to 1 for the native Windows
ports and 0 for all other platforms) causes the `all` and `list` targets
to re-run any given test directory an additional number of times in
order to eliminate random failures during tests.
2016-01-26 14:46:22 +00:00
David Allsopp b505fc699c Improve threading tests on Windows
The `CANKILL` testsuite variable is eliminated in favour of testing for
`TOOLCHAIN`.

tests/lib-threads/signal.ml can be executed under native Windows by
means of a wrapper program to send CTRL+C.

tests/lib-threads/signal2.ml is not possible under native Windows
because Thread.sigmask is not implemented, so the precheck is updated to
reflect this, rather than the lack of kill -INT.

tests/lib-threads/sockets.ml is re-enabled, since the two MPRs affecting
it have been fixed.
2016-01-25 15:08:08 +00:00
alainfrisch 129df0ae09 Fix Changes file. 2016-01-18 11:11:39 +01:00
David Allsopp 2d05cfb0b4 Add missing FLAMBDA config for native Windows
Missing options from #425.
2016-01-15 17:43:58 +00:00
David Allsopp b46843fb69 Allow compilation using bootstrapped FlexDLL
Extend the previous patch allowing make -f Makefile.nt flexdll
install-flexdll not to require the install-flexdll stage.

OCAML_FLEXLINK is utilised as required to allow compilation of the entire
system using an in-tree compiled flexlink. The build process simply
required the flexdll target to appear before world.

opt.opt compiles a native code version of flexlink.exe as flexlink.opt.

install always installs flexlink.exe if it was compiled along with any
required .manifest files. It also installs the appropriate .o/.obj files
to $(INSTALL_LIBDIR).

At present, the bootstrapping is not extended to the Cygwin ports.
2016-01-15 17:07:12 +00:00
David Allsopp fe4b643c4e Support OCAML_FLEXLINK environment variable
OCAML_FLEXLINK is inspected by ocamlopt, ocamlc and ocamlmklib and allows
the flexlink command to be overriden. This is primarily intended as a
solution for bootstrapping OCaml with FlexDLL, thus allowing a bytecode
image of flexlink launched with ocamlrun to be executed, instead of
requiring flexlink to be in PATH.
2016-01-15 17:07:11 +00:00
David Allsopp 5da5d4ac7d Allow optional bootstrapping of FlexDLL on Windows
Allows the four native Windows ports to compile FlexDLL and flexlink
"in-tree" by placing the sources in directory `flexdll` and issuing
`make -f Makefile.nt flexdll`

FlexDLL must still be installed somewhere in PATH before OCaml itself
can be compiled. The `flexdll` target leaves the OCaml build tree in a
sufficiently clean state to allow `world` to be run after installation
of FlexDLL.
2016-01-15 17:01:30 +00:00
Damien Doligez 860c670848 merge branch 4.02 from 4.02.1 (rev 15540) to a few fixes after 4.02.2 (rev 16205)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16214 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2015-07-17 14:31:05 +00:00
Damien Doligez 20c278bf45 PR#6181 and PR#6590
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@15462 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2014-10-03 19:20:36 +00:00
Xavier Leroy f65785ae55 Un-bootstrapping of ocamlbuild: build it using a plain Makefile.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14347 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-12-12 17:38:43 +00:00
Xavier Leroy 33f242aaea Reverting the elimination of the ocamlcomp*.sh scripts, namely the following commits:
14278
14277
14276
14176
14175
14173
14172
14171
14169
14168
14167
These changes need to mature on their own branch.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14329 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-11-29 13:04:38 +00:00
Jérémie Dimino 5d917633ad remove camlp4
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/minus-camlp4@14309 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-11-21 16:23:28 +00:00
Wojciech Meyer 86f0519755 build: typo on config/Makefile.mingw64, msvc and msvc64.
(Patch by Adrien Nader!)

While trying to come up with the previous commit, I noticed that the
various Windows config files had diverged: all but config/Makefile.mingw
were lacking a '%' in a pattern and this prevents the pattern from matching
anything.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14176 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-22 22:33:23 +00:00
Wojciech Meyer 241585bc83 build: replace ocamlcomp*.sh.
This script was built from ocamlcomp.sh.in through sed and is called
instead of "ocamlc" (for instance).
It makes it possible to switch from "ocamlc" to "ocamlc.opt" without
changing anything in the Makefiles, only calling sed.

I couldn't cleanly make it handle both a compiler for the target and for
the build. Instead I'm replacing it and doing as much as possible
directly in the Makefiles.
I hoped it would reduce the number of shell invocations, which would
speed things up quite a lot on Windows but I still had to have at least
one since it's not possible to update a make variable from inside a make
rule: i.e. it's not possible to do X=a, build a.opt and update X to be
a.opt.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14168 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-20 00:22:38 +00:00
Wojciech Meyer 908c6e8dfb config/Makefile.{mingw,msvc}{,64}: remove unused DO variable.
(Patch by Adrien Nader!)

This variable is currently unused and it breaks my new script which
replaces mkmyocamlbuild.sh.
The issue is that the "DO" variables becomes "do" in
myocamlbuild_config.ml (lowercased) and "do" is an OCaml keyword.
Since the variable is not used, simply remove it.

Also remove the DBGO variable which only exists in Makefile.msvc64.
Checking for occurrences of this variable elsewhere, I only found
byterun/Makefile.nt which defines it as DBGO=d.$(O) rather than
dbg.$(O).

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14163 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-18 20:56:32 +00:00
Xavier Clerc e82104a755 Remove labltk from the distribution (will be available as a third-party library).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14077 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-09 09:32:00 +00:00
Wojciech Meyer dda5f84f7c build: allow disabling ocamldoc and ocamlbuild.
(Patch by Adrien Nader!)

This doesn't touch the build system in build/ since it's obsolete and
unmaintained as far as I know (I'll try to remove it in a further
commit).

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13943 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-28 15:52:17 +00:00
Wojciech Meyer 6549fe7019 build: prepend "with_" to camlp4/ocamldebug-{en,dis}abling variables.
(Patch by Adrien Nader!)

This makes the variable names more coherent and is in preparation for
another patch that will allow disabling ocamldoc and ocamlbuild.

This changes the interface of the configuration somewhat but I don't
think anything outside of the ocaml tree reads the Makefile.config file
that gets installed in order to see whether the debugger and camlp4 have
been built. It also changes a .mli which might be problematic but I also
believe it is safe and we have time to see if there's a bad impact.

It also adds a configure switch to skip building ocamldebug.

While at it, it fixes a PR number in the Changes file.
build: prepend "with_" to camlp4/ocamldebug-{en,dis}abling variables.

This makes the variable names more coherent and is in preparation for
another patch that will allow disabling ocamldoc and ocamlbuild.

This changes the interface of the configuration somewhat but I don't
think anything outside of the ocaml tree reads the Makefile.config file
that gets installed in order to see whether the debugger and camlp4 have
been built. It also changes a .mli which might be problematic but I also
believe it is safe and we have time to see if there's a bad impact.

It also adds a configure switch to skip building ocamldebug.

While at it, it fixes a PR number in the Changes file.
build: prepend "with_" to camlp4/ocamldebug-{en,dis}abling variables.

This makes the variable names more coherent and is in preparation for
another patch that will allow disabling ocamldoc and ocamlbuild.

This changes the interface of the configuration somewhat but I don't
think anything outside of the ocaml tree reads the Makefile.config file
that gets installed in order to see whether the debugger and camlp4 have
been built. It also changes a .mli which might be problematic but I also
believe it is safe and we have time to see if there's a bad impact.

It also adds a configure switch to skip building ocamldebug.

While at it, it fixes a PR number in the Changes file.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13942 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-28 15:52:14 +00:00
Wojciech Meyer 0425a7246b Revert "build: make building ocamldoc, ocamlbuild and ocamldebug optional."
This patch fixes build failure.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13867 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-01 21:33:22 +00:00
Wojciech Meyer 70659109f2 build: make building ocamldoc, ocamlbuild and ocamldebug optional.
(modified patch from Adrien Nader!)

Add also new comments for the new INSTALL flags.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13864 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-01 19:28:18 +00:00
Wojciech Meyer 1a241d873f configure: store $target and $host in the build configuration (fixed).
(patch by Adrien Nader!)

Compared to the previous version of this patch, this fixes too issues.

First, it updates the makefiles for mingw and msvc to set $host and
$target. I'm not completely sure why that was required since these
variables should have evaluated to empty strings which were only tested
for equality later on. Still, it's needed and it avoids an asymetry
between the regular ./configure-based builds and the ones using pre-made
Makefiles.

Second, it update the ocamlbuild config to also store $host and $target.
I had been building the cross-compilers with OCAMLBUILD_NOBOOT (which is
rather new) and updating that config wasn't needed. However it is
required for the "regular" builds.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13862 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-01 19:28:15 +00:00
Damien Doligez 6283fee381 testsuite: making it work without installing OCaml (continued)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13690 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-17 12:03:58 +00:00
Damien Doligez b43d08c8da porting to MSVC64; some cleanup; ignore .obj and .lib files
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13655 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-05-07 09:40:18 +00:00
Damien Doligez 5b1d3a6707 port testsuite to mingw64
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13639 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-04-30 11:06:18 +00:00
Damien Doligez c63f9e0957 fix a few problems with whitespace and over-long lines
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13393 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-03-09 22:38:52 +00:00
Wojciech Meyer 0acb3a2205 config/Makefile.*: remove DBM-related variables.
Patch by Adien Nader!

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13174 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-12-30 03:12:09 +00:00
Damien Doligez c74d9836f0 removed bogus $Id lines
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12721 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-17 15:57:37 +00:00
Alain Frisch 11fadf4929 ASM_CFI_SUPPORTED=false for other Windows ports.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12460 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-15 14:04:57 +00:00
Alain Frisch eb08d628da Don't disable Camlp4 by default for msvc64 and mingw64.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12458 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-15 13:08:47 +00:00
Alain Frisch 05fbe3cbde Use new -stack option from flexdll 0.28 (#5465).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12263 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-03-23 15:14:02 +00:00
Alain Frisch bfb35c4fce #5478: makes it possible to specify a custom 'ar' command.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12027 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-01-16 09:05:37 +00:00
Xavier Leroy ac0aa0778d PR#5179: giant steps towards a Mingw64 port.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11927 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-12-21 16:31:01 +00:00