Provided by: ocamldsort_0.16.0-8_amd64 bug

NAME

       ocamldsort - Dependency sorter for OCaml source files

SYNOPSIS

       ocamldsort [ -pp  pre-command ] [ -d dep-command ]
                  [ -mli ] [ -nox ] [ -obj | -byte | -opt ] [ filename ] ...

DESCRIPTION

       The ocamldsort(1) command scans a set of OCaml source files (.ml and .mli files), sorts them according to
       their dependencies and prints the sorted files in order to link their corresponding .cmo files.

       For  ocamldsort(1)  to  work it must get a list of dependencies generated by ocamldep(1), if the standard
       input to ocamldsort(1) has been redirected then  ocamldsort  assumes  that  this  is  a  dependency  file
       generated by ocamldep(1).  Otherwise ocamldsort calls ocamldep(1) to generate the dependency list itself.
       In either case the source files to be sorted should be given as arguments to the ocamldsort(1) command.

       ocamldsort(1) can be used to compile and link simple projects with one command, such as:

       ocamlc $(ocamldsort *.ml)

       if your project doesn't contain .mli files or:

       ocamlc -c $(ocamldsort -mli *.ml *.mli) && ocamlc $(ocamldsort -byte *.ml)

       if it contains .mli files.

       However  for larger projects where separate compilation is desirable, ocamldsort(1) can also be used from
       within a makefile. Here is a typical makefile example:

       TARGET=my_program
       OCAMLC=ocamlc
       OCAMLOPT=ocamlopt
       OCAMLDEP=ocamldep
       OCAMLDSORT=ocamldsort
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       PPFLAGS=-pp camlp4o
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       MLY=$(shell echo *.mly)
       MLL=$(shell echo *.mll)
       GENERATED_ML=$(MLY:.mly=.ml) $(MLL:.mll=.ml)
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       include .generated .depend .ocamldsort
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       $(TARGET): $(CMO_FILES)
            $(OCAMLC) $(COMPFLAGS) $(LIBS) $^ -o $@
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       $(TARGET).opt: $(CMX_FILES)
            $(OCAMLOPT) $(COMPFLAGS) $(LIBS_OPT) $^ -o $@
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       .generated: $(GENERATED_ML)
            @touch .generated
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       .depend: .generated
            $(OCAMLDEP) *.ml *.mli > $@
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       .ocamldsort: .depend
            echo CMO_FILES=`< .depend $(OCAMLDSORT) -byte *.ml` > .ocamldsort
            echo CMX_FILES=`< .depend $(OCAMLDSORT) -opt *.ml` >> .ocamldsort
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       distclean: clean
            rm -f .generated .depend .ocamldsort
            rm -f $(GENERATED_ML)
            rm -f *~
            rm -f $(TARGET)
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       clean:
            rm -f *.cmo *.cmi *.cmx *.o
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       .SUFFIXES: .mli .ml .cmi .cmo .cmx .mll .mly
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       %.cmi:%.mli
            $(OCAMLC) $(PPFLAGS) $(COMPFLAGS) -c $<
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       %.cmo:%.ml
            $(OCAMLC) $(PPFLAGS) $(COMPFLAGS) -c $<
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       %.cmi %.cmo:%.ml
            $(OCAMLC) $(PPFLAGS) $(COMPFLAGS) -c $<
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       %.cmx %.o:%.ml
            $(OCAMLOPT) $(PPFLAGS) $(COMPFLAGS) -c $<
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       %.ml:%.mll
            $(OCAMLLEX) $<
       .if (0 > 2) .    an-style-warn blank line in input
       .sp
       %.mli %.ml:%.mly
            $(OCAMLYACC) -v $<

OPTIONS

       The following command-line options are recognized by ocamlsort(1):

       -I directory
              Add the given directory to the list of directories searched for source files.

       -pp pre-command
              Command to preprocess file.

       -d dep-command
              Command to compute dependencies.  ocamldep(1) by default.

       -mli   Sort files using mli dependencies.

       -nox   Ignore filenames containing `*' so that unexpanded wildcards are ignored.

       -obj   Print bytecode filenames (.cmo and .cmi) (deprecated: use -byte).

       -byte  Print bytecode filenames (.cmo and .cmi).

       -opt   Print opt filenames (.cmx and .cmi).

       -v     Output version information and exit.

       -help, --help
              Output help and exit.

SEE ALSO

       ocamldep(1).

                                                                                                   OCAMLDSORT(1)