Permalink
Browse files

make doc

  • Loading branch information...
1 parent 32ecad6 commit 4a0bff138578bf589ee6606e4976d3b86ea3845c Vincent Bernardoff committed Jun 5, 2013
Showing with 172 additions and 414 deletions.
  1. +1 −0 .gitignore
  2. +9 −1 _oasis
  3. +4 −0 _tags
  4. +6 −0 doc/api.odocl
  5. +26 −56 myocamlbuild.ml
  6. +126 −357 setup.ml
View
@@ -3,3 +3,4 @@ setup.log
*.swp
_build/
dist/
+*.docdir
View
@@ -49,7 +49,7 @@ Library unix_cstruct
Findlibname: unix
Findlibparent: cstruct
Modules: Unix_cstruct
-
+
Library "cstruct-syntax"
FindlibName: syntax
FindlibParent: cstruct
@@ -61,3 +61,11 @@ Library "cstruct-syntax"
XMETAType: syntax
XMETADescription: Syntax extension for Cstruct
XMETARequires: camlp4
+
+Document api
+ Title: Documentation and API reference
+ Type: ocamlbuild (0.3)
+ BuildTools+: ocamldoc
+ XOcamlbuildPath: doc
+ XOcamlbuildModules: Cstruct, Lwt_cstruct, Unix_cstruct
+ Install: false
View
@@ -57,4 +57,8 @@ true: debug
# OASIS_STOP
<syntax/*.ml>: syntax_camlp4o, pkg_camlp4
<lib_test/*.ml{i}>: syntax_camlp4o, pkg_camlp4, pkg_cstruct.syntax
+<lib>: include
+<lwt>: include
+<async>: include
+<unix>: include
true: annot
View
@@ -0,0 +1,6 @@
+# OASIS_START
+# DO NOT EDIT (digest: 0ef43544ccdcb315230e1f71d392a21d)
+Cstruct
+Lwt_cstruct
+Unix_cstruct
+# OASIS_STOP
View
@@ -1,7 +1,7 @@
(* OASIS_START *)
-(* DO NOT EDIT (digest: b1d7287a47d5441fed143addea5c84ab) *)
+(* DO NOT EDIT (digest: 5c43404f9413ffbf5bbd77be7addc313) *)
module OASISGettext = struct
-(* # 21 "/Users/avsm/.opam/system/build/oasis-mirage.0.3.0a/src/oasis/OASISGettext.ml" *)
+(* # 21 "/home/vb/.opam/system/build/oasis.0.3.0/src/oasis/OASISGettext.ml" *)
let ns_ str =
str
@@ -24,7 +24,7 @@ module OASISGettext = struct
end
module OASISExpr = struct
-(* # 21 "/Users/avsm/.opam/system/build/oasis-mirage.0.3.0a/src/oasis/OASISExpr.ml" *)
+(* # 21 "/home/vb/.opam/system/build/oasis.0.3.0/src/oasis/OASISExpr.ml" *)
@@ -116,7 +116,7 @@ end
# 117 "myocamlbuild.ml"
module BaseEnvLight = struct
-(* # 21 "/Users/avsm/.opam/system/build/oasis-mirage.0.3.0a/src/base/BaseEnvLight.ml" *)
+(* # 21 "/home/vb/.opam/system/build/oasis.0.3.0/src/base/BaseEnvLight.ml" *)
module MapString = Map.Make(String)
@@ -214,7 +214,7 @@ end
# 215 "myocamlbuild.ml"
module MyOCamlbuildFindlib = struct
-(* # 21 "/Users/avsm/.opam/system/build/oasis-mirage.0.3.0a/src/plugins/ocamlbuild/MyOCamlbuildFindlib.ml" *)
+(* # 21 "/home/vb/.opam/system/build/oasis.0.3.0/src/plugins/ocamlbuild/MyOCamlbuildFindlib.ml" *)
(** OCamlbuild extension, copied from
* http://brion.inria.fr/gallium/index.php/Using_ocamlfind_with_ocamlbuild
@@ -234,21 +234,19 @@ module MyOCamlbuildFindlib = struct
Ocamlbuild_pack.Lexers.blank_sep_strings
let split s ch =
- let buf = Buffer.create 13 in
- let x = ref [] in
- let flush () =
- x := (Buffer.contents buf) :: !x;
- Buffer.clear buf
+ let x =
+ ref []
in
- String.iter
- (fun c ->
- if c = ch then
- flush ()
- else
- Buffer.add_char buf c)
- s;
- flush ();
- List.rev !x
+ let rec go s =
+ let pos =
+ String.index s ch
+ in
+ x := (String.before s pos)::!x;
+ go (String.after s (pos + 1))
+ in
+ try
+ go s
+ with Not_found -> !x
let split_nl s = split s '\n'
@@ -283,27 +281,17 @@ module MyOCamlbuildFindlib = struct
(* When one link an OCaml library/binary/package, one should use -linkpkg *)
flag ["ocaml"; "link"; "program"] & A"-linkpkg";
- flag ["ocaml"; "link"; "output_obj"] & A"-linkpkg";
(* For each ocamlfind package one inject the -package option when
* compiling, computing dependencies, generating documentation and
* linking. *)
List.iter
begin fun pkg ->
- let base_args = [A"-package"; A pkg] in
- let syn_args = [A"-syntax"; A "camlp4o"] in
- let args =
- (* heuristic to identify syntax extensions:
- whether they end in ".syntax"; some might not *)
- if Filename.check_suffix pkg "syntax"
- then syn_args @ base_args
- else base_args
- in
- flag ["ocaml"; "compile"; "pkg_"^pkg] & S args;
- flag ["ocaml"; "ocamldep"; "pkg_"^pkg] & S args;
- flag ["ocaml"; "doc"; "pkg_"^pkg] & S args;
- flag ["ocaml"; "link"; "pkg_"^pkg] & S base_args;
- flag ["ocaml"; "infer_interface"; "pkg_"^pkg] & S args;
+ flag ["ocaml"; "compile"; "pkg_"^pkg] & S[A"-package"; A pkg];
+ flag ["ocaml"; "ocamldep"; "pkg_"^pkg] & S[A"-package"; A pkg];
+ flag ["ocaml"; "doc"; "pkg_"^pkg] & S[A"-package"; A pkg];
+ flag ["ocaml"; "link"; "pkg_"^pkg] & S[A"-package"; A pkg];
+ flag ["ocaml"; "infer_interface"; "pkg_"^pkg] & S[A"-package"; A pkg];
end
(find_packages ());
@@ -335,7 +323,7 @@ module MyOCamlbuildFindlib = struct
end
module MyOCamlbuildBase = struct
-(* # 21 "/Users/avsm/.opam/system/build/oasis-mirage.0.3.0a/src/plugins/ocamlbuild/MyOCamlbuildBase.ml" *)
+(* # 21 "/home/vb/.opam/system/build/oasis.0.3.0/src/plugins/ocamlbuild/MyOCamlbuildBase.ml" *)
(** Base functions for writing myocamlbuild.ml
@author Sylvain Le Gall
@@ -351,7 +339,7 @@ module MyOCamlbuildBase = struct
type name = string
type tag = string
-(* # 56 "/Users/avsm/.opam/system/build/oasis-mirage.0.3.0a/src/plugins/ocamlbuild/MyOCamlbuildBase.ml" *)
+(* # 56 "/home/vb/.opam/system/build/oasis.0.3.0/src/plugins/ocamlbuild/MyOCamlbuildBase.ml" *)
type t =
{
@@ -464,24 +452,6 @@ module MyOCamlbuildBase = struct
)
t.lib_c;
- (* Add output_obj rules mapped to .nobj.o *)
- let native_output_obj x =
- OC.link_gen "cmx" "cmxa" !Options.ext_lib [!Options.ext_obj; "cmi"]
- OC.ocamlopt_link_prog
- (fun tags -> tags++"ocaml"++"link"++"native"++"output_obj") x
- in
- rule "ocaml: cmx* and o* -> .nobj.o" ~prod:"%.nobj.o" ~deps:["%.cmx"; "%.o"]
- (native_output_obj "%.cmx" "%.nobj.o");
-
- (* Add output_obj rules mapped to .bobj.o *)
- let bytecode_output_obj x =
- OC.link_gen "cmo" "cma" !Options.ext_lib [!Options.ext_obj; "cmi"]
- OC.ocamlc_link_prog
- (fun tags -> tags++"ocaml"++"link"++"byte"++"output_obj") x
- in
- rule "ocaml: cmo* -> .nobj.o" ~prod:"%.bobj.o" ~deps:["%.cmo"]
- (bytecode_output_obj "%.cmo" "%.bobj.o");
-
(* Add flags *)
List.iter
(fun (tags, cond_specs) ->
@@ -503,7 +473,7 @@ module MyOCamlbuildBase = struct
end
-# 506 "myocamlbuild.ml"
+# 476 "myocamlbuild.ml"
open Ocamlbuild_plugin;;
let package_default =
{
@@ -527,6 +497,6 @@ let package_default =
let dispatch_default = MyOCamlbuildBase.dispatch_default package_default;;
-# 531 "myocamlbuild.ml"
+# 501 "myocamlbuild.ml"
(* OASIS_STOP *)
Ocamlbuild_plugin.dispatch dispatch_default;;
Oops, something went wrong.

0 comments on commit 4a0bff1

Please sign in to comment.