Commit Graph

60 Commits (53d1c7c63d139f0b3ef288f72f8ae7ad105e53a9)

Author SHA1 Message Date
Gabriel Scherer 955877a316 ocamlbuild: add a warn_error(X) parametrized tag to fully deprecate warn_%c, warn_error_%c
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14138 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-15 11:36:31 +00:00
Gabriel Scherer dfc06e175c ocamlbuild: document most of the ocaml_specific rules
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@14125 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-09-15 11:36:06 +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
Gabriel Scherer 9c568f1c4b ocamlbuild: portable -output-obj target names (e.g. foo.byte.obj is accepted if configured as so)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13988 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-06 18:55:21 +00:00
Gabriel Scherer 53d32510db ocamlbuild: remove the deprecated ~tags from ocaml_specific.ml, and warn on use
The parameter ~tags of Rule.rule has been ignored and deprecated for
a while, but our own code in ocaml_specific.ml was still using it --
confusing several plugin writers. This patch, inspired by a patch
proposal by Anil Madhavapeddy on PR#6059, also makes Rule.rule emit
a warning when this parameter is used. Anil originally removed it
completely from the interface, but I would like to avoid breaking the
compilation of plugin code.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13987 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-08-06 16:46:00 +00:00
Gabriel Scherer 848eb19f50 PR#6058: have ocamlbuild add -thread for all "link" tags
The -thread option is only needed when creating a compilation unit
("compile" tag handled separated), or linking libraries into a final
program ("link";"program"). However, ocamlfind will fail with an error
if neither of -thread or -vmthread is passed into the command-line of
any linking step, such as when creating a cm(x)a archive. The present
fix enables the -thread option for all linking steps, which should fix
any -use-ocamlfind issue and be harmless in other cases.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13934 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-26 19:40:12 +00:00
Gabriel Scherer e94ecc00a4 ocamlbuild: fix typo for short_paths+infer_interface
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13873 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-07-04 14:00:57 +00:00
Wojciech Meyer c631c7a1dd PR#6060: Add some missing compiler options to ocamlbuild. (Patch by Anil Madhavapeddy!)
* -short-paths is activated via the "short_paths" tag
* -principal is activated via the "principal" tag
* -strict_sequence now has a "strict_sequence" tag to alias the
  "strict-sequence" tag that was already there, to follow the
  convention of command-line options having dashes replaced by
  underscores.  It's easy to mess this up since incorrect tags
  are silently ignored by ocamlbuild.

Add test cases that check if principal and strict-sequence have
been passed, and tweak the test suite slightly to make it easier
to match on failing_msg output.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13859 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-30 23:28:18 +00:00
Gabriel Scherer 4cedfd24c1 [PR#6059, patch by Anil Madhavapeddy] add -output-obj rules and targets to ocamlbuild for byte and native code
Three corresponding targets are added:
%.byte.o   : bytecode object file
%.byte.c   : bytecode source C file
%.native.o : native code object file


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13849 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-30 08:34:42 +00:00
Gabriel Scherer 122caaf20b ocamlbuild: when tag "native" is set, use ocamlopt instead of ocamlc for .mli->.cmi
This was requested (with a patch proposal) by "jessicah" in
PR#4613. Given that the effect of such changes are hard to test,
I commit this in trunk only, not version-4.01, to give more time to
detect eventual problems.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13787 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-06-16 19:07:45 +00:00
Wojciech Meyer de1bc665c4 PR#5652: Fix duplicate tags
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13266 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-21 23:19:19 +00:00
Wojciech Meyer 67101c77f3 PR#5652: Add support for camlp4 native plugin.
Patch by Hongbo Zhang!

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13260 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-19 10:44:17 +00:00
Xavier Clerc 75df311d02 PR#5891: support rectypes tag for mlpack (ocamlbuild)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13243 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-16 12:17:19 +00:00
Wojciech Meyer c133e90cf1 PR#5885: Fix: Incorrect rule for compiling C stubs when shared libraries are not supported.
Patch by Jérôme Vouillon!

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13233 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-14 07:43:49 +00:00
Wojciech Meyer 293bf33f1d Add 'K' class of warning tag to ocamlbuild
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13186 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2013-01-01 00:33:25 +00:00
Wojciech Meyer 655cf17e4e Revert "PR#5652: Try to use camlp4.opt if it's possible"
camlp4.opt works only with native plugins therefore the fix will break bytecode camlp4 plugins.

git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13167 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-12-28 18:19:27 +00:00
Jonathan Protzenko e41b5df033 Add a strict_sequence flag to OCamlbuild.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13089 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-10 15:06:53 +00:00
Jonathan Protzenko 76f3646b12 Add a new bin_annot tag to OCamlbuild.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@13088 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-11-10 15:02:56 +00:00
Wojciech Meyer 28701c9cfe PR#5652: Try to use camlp4.opt if it's possible
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12902 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-09-02 01:31:06 +00:00
Damien Doligez 3dd2fee2ee fix formatting of copyright headers
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12808 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-08-01 14:47:00 +00:00
Damien Doligez 997a678d5e clean up TABs and whitespace
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12799 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-30 18:04:46 +00:00
Xavier Clerc 1a06299d24 Follow-up for PR#5655
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12675 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-09 13:15:10 +00:00
Xavier Clerc 61ff6edc27 PR#5655: ocamlbuild doesn't pass cflags when building C stubs
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12670 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-07-09 10:07:26 +00:00
Jonathan Protzenko d2e4349855 Properly add the -for-pack flag when calling ocamlopt during the pack phase and fix #5084
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12438 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-05-07 13:11:36 +00:00
Wojciech Meyer 021be804cd PR#5599: Add warn() tag in ocamlbuild to control -w compiler switch
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12409 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-04-30 23:46:04 +00:00
Wojciech Meyer 952fe3d0f2 PR#5531: Allow ocamlbuild to add ocamldoc flags through -docflag and -docflags switches
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12395 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-04-25 01:31:26 +00:00
Damien Doligez 6c24f4f90b merge version 3.12 from 3.12.1 to r12205
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@12210 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2012-03-08 19:52:03 +00:00
Xavier Clerc 5aa55e0fc8 PR#5330: thread tag with '.top' and '.inferred.mli' targets
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11169 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-08-08 09:39:10 +00:00
Damien Doligez c91db736b1 merge changes from 3.12.0 to 3.12.1
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@11123 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2011-07-20 09:17:07 +00:00
Nicolas Pouillard 4e6cb15c4f ocamlbuild: Add support for native dynlink
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@10264 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-04-17 16:15:42 +00:00
Xavier Clerc ae90f26025 Support for findlib (N. Pouillard et al.)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9549 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-01-22 14:46:27 +00:00
Xavier Clerc bcdf4082cf Support for parametrized tags (N. Pouillard et al.)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9548 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-01-22 14:36:57 +00:00
Damien Doligez bdc0fadee2 merge changes from release/3.11.1 to release/3.11.2
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9540 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2010-01-20 16:26:46 +00:00
Xavier Leroy 349467ec45 New warning `not all labels are mentioned in this record pattern'
moved to letter 'R' (instead of 'E' previously).  Explicitly turned 
off in myocamlbuild configuration.


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9391 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-10-22 15:45:54 +00:00
Nicolas Pouillard f897ed0c73 ocamlbuild: Use libdir and bindir from the myocamlbuild_config.ml of OCaml
imported as ocamlbuild_Myocamlbuild_config.ml


git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9176 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-03-05 14:33:06 +00:00
Nicolas Pouillard 5da04f8b51 ocamlbuild: Kill $Id$'s
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9173 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2009-03-03 16:54:58 +00:00
Damien Doligez 1f95b17570 merge changes from 3.10.2merged to 3.11.0
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9153 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-12-03 18:09:09 +00:00
Nicolas Pouillard 3d52165d28 ocamlbuild: Add a 'annot' tag for the -annot option.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@9096 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-10-22 11:23:57 +00:00
Nicolas Pouillard 5b3cdba5df ocamlbuild: dynlink is now supported in native too.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8980 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-08-05 13:06:56 +00:00
Nicolas Pouillard 5feab1f8ee ocamlbuild: add a ".ml->.pp.ml" rule, and export a camlp4 rule generator function.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8952 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-07-25 15:06:47 +00:00
Nicolas Pouillard a20b3b9dae ocamlbuild: Tags, add use_camlp4_bin and support -custom on libraries.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8945 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-07-25 14:40:49 +00:00
Nicolas Pouillard f30c6b3372 ocamlbuild: Swap some menhir rules to prefer .mlypack over .mly.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8938 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2008-07-25 14:27:10 +00:00
Nicolas Pouillard b1b5eec9bc [ocamlbuild] No longer use file_rule but rule + Echo.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8673 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-28 16:19:35 +00:00
Nicolas Pouillard a4fbbfc2f4 [ocamlbuild] Add support for camlp4oof.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8625 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-26 13:27:39 +00:00
Nicolas Pouillard 797b75ec4a [ocamlbuild] Look at OCAMLLIB before using the hard-coded (during build) install path (PR#4379).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8623 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-26 13:24:26 +00:00
Nicolas Pouillard fcdb3bcf7d [ocamlbuild] add flag declaration for ocamllex -ml (by Benoit Montagu <benoit.montagu@inria.fr>)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8604 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-22 18:48:22 +00:00
Nicolas Pouillard a353e7b885 [ocamlbuild] add flag declaration for menhir --explain (by Benoit Montagu <benoit.montagu@inria.fr>)
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8603 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-22 18:47:07 +00:00
Nicolas Pouillard 4d2efe6184 [ocamlbuild] Use stamps for some ocamldoc rules.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8590 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-21 21:40:22 +00:00
Nicolas Pouillard 663fabb895 [ocamlbuild] [FIXED] In the %.itarget->%.otarget rule otarget is now a stamp file.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8588 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-21 21:38:38 +00:00
Nicolas Pouillard ec99dd13c4 [ocamlbuild] [CHANGED] Merge the rules about ocaml C stubs using %(var: pattern).
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@8578 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
2007-11-21 21:05:11 +00:00