pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/lang/ocaml



Module Name:    pkgsrc
Committed By:   jaapb
Date:           Fri Dec 30 11:15:00 UTC 2016

Modified Files:
        pkgsrc/lang/ocaml: Makefile Makefile.common PLIST PLIST.opt PLIST.prof
            buildlink3.mk distinfo
        pkgsrc/lang/ocaml/patches: patch-Makefile patch-configure
            patch-driver_main_args.ml patch-driver_main_args.mli
            patch-otherlibs_bigarray_mmap__unix.c patch-tools_Makefile.shared
            patch-tools_ocamlcp.ml patch-tools_ocamloptp.ml
Removed Files:
        pkgsrc/lang/ocaml/patches: patch-asmrun_signals_osdep.h
            patch-otherlibs_Makefile patch-otherlibs_Makefile.shared

Log Message:
Updated package to latest version, ocaml 4.04.0. This involved removing
some patches that have been migrated upstream.

Changes (bug numbers removed so they don't trigger our system) include:
(Changes that can break existing programs are marked with a "*")

### Language features:

- Support GADT equations on non-local abstract types
  (Jacques Garrigue)

- Local opening of modules in a pattern.
  Syntax: "M.(p)", "M.[p]","M.[| p |]", "M.{p}"
  (Florian Angeletti, Jacques Garrigue, review by Alain Frisch)

- local exception declarations "let exception ... in"
  (Alain Frisch)

- Allow shortcut for extension on semicolons: ;%foo
  (Jeremie Dimino)

- optimized representation for immutable records with a single
  field, and concrete types with a single constructor with a single argument.
  This is triggered with a [@@unboxed] attribute on the type definition.
  Currently mutually recursive datatypes are not well supported, this
  limitation should be lifted in the future (see M).
  (Damien Doligez)

### Compiler user-interface and warnings:

* interpret all command-line options before compiling any
  files, changes (improves) the semantics of repeated -o options or -o
  combined with -c see the super-detailed commit message at
  https://github.com/ocaml/ocaml/commit/da56cf6dfdc13c09905c2e07f1d4849c8346eec8
  (whitequark)

- clarify the wording of Warning 38
  (Unused exception or extension constructor)
  (Gabriel Scherer)

* add colors when reporting errors generated by ppx rewriters.
  Remove the `Location.errorf_prefixed` function which is no longer relevant
  (Simon Cruanes, Jérémie Dimino)

- clarify the wording of Warning 8
  (Non-exhaustivity warning for pattern matching)
  (Florian Angeletti, review and report by Gabriel Scherer)

* Improve support for OCAMLPARAM: (i) do not use objects
  files with -a, -pack, -shared; (ii) use "before" objects in the toplevel
  (but not "after" objects); (iii) use -I dirs in the toplevel,
  (iv) fix bug where -I dirs were ignored when using threads
  (Marc Lasson, review by Damien Doligez and Alain Frisch)

- New -plugin option for ocamlc and ocamlopt, to dynamically extend
  the compilers at runtime.
  (Fabrice Le Fessant)

- Detect unused module declarations
  (Alain Frisch)

- Add a settable Env.Persistent_signature.load function so
  that cmi files can be loaded from other sources. This can be used to
  create self-contained toplevels.
  (Jérémie Dimino)

### Standard library:

- Provide `Sys.backend_type` so that user can write backend-specific
  code in some cases (for example,  code generator).
  (Hongbo Zhang)

- implement Set.map
  (Gabriel Scherer)

- Add Obj.reachable_words to compute the
  "transitive" heap size of a value
  (Alain Frisch, review by Mark Shinwell and Damien Doligez)

- Add a non-allocating function to recover the number of
  allocated minor words.
  (Pierre Chambart, review by Damien Doligez and Gabriel Scherer)

- String.split_on_char
  (Alain Frisch)

- Filename.extension and Filename.remove_extension
  (Alain Frisch, request by Edgar Aroutiounian, review by Daniel Bunzli
  and Damien Doligez)

### Code generation and optimizations:

- Optimize Hashtbl by using in-place updates of its
  internal bucket lists.  All operations run in constant stack size
  and are usually faster, except Hashtbl.copy which can be much
  slower
  (Alain Frisch)

* Optimize performance of record update:
  no more performance cliff when { foo with t1 = ..; t2 = ...; ... }
  hits 6 updated fields
  (Olivier Nicole, review by Thomas Braibant and Pierre Chambart)

- Better unboxing strategy
  (Alain Frisch, Pierre Chambart)

- Ocamlopt + flambda requires a lot of memory
  to compile large array literal expressions
  (Pierre Chambart, review by Mark Shinwell)

- Handle specialisation of recursive function that does
  not always preserve the arguments
  (Pierre Chambart, Mark Shinwell, report by Simon Cruanes)

- Obj.is_block is now an inlined OCaml function instead of a
  C external.  This should be faster.
  (Demi Obenour)

- Optimize immutable float records
  (Pierre Chambart, review by Mark Shinwell)

- Do not generate dummy code to force module linking
  (Pierre Chambart, reviewed by Jacques Garrigue)

- Do not eliminate boxed int divisions by zero and
  avoid checking twice if divisor is zero with flambda.
  (Pierre Chambart, report by Jeremy Yallop)

- Optimize some constant string operations when the "-safe-string"
  configure time option is enabled.
  (Pierre Chambart)

- Load cross module information during a meet
  (Pierre Chambart, report by Leo White, review by Mark Shinwell)

- Share a few more equal switch branches
  (Pierre Chambart, review by Gabriel Scherer)

- Small improvements to type-based optimizations for array
  and lazy
  (Alain Frisch, review by Pierre Chambart)

- Prevent warning 59 from triggering on Lazy of constants
  (Pierre Chambart, review by Leo White)

-  Sort emitted functions according to source location
  (Pierre Chambart, review by Mark Shinwell)

- Lack of type normalization lead to missing simple compilation for "lazy x"
  (Alain Frisch)

### Runtime system:

- Allows to register finalisation function that are
  called only when a value will never be reachable anymore. The
  drawbacks compared to the existing one is that the finalisation
  function is not called with the value as argument. These finalisers
  are registered with `GC.finalise_last`
  (François Bobot reviewed by Damien Doligez and Leo White)

- Do not perform compaction if the real overhead is less than expected
  (Thomas Braibant)

### Tools:

- toplevel #show, follow chains of module aliases
  (Gabriel Scherer, report by Daniel Bünzli, review by Thomas Refis)

- have ocamldep interpret -open arguments in left-to-right order
  (Gabriel Scherer, report by Anton Bachin)

- ocamldoc, missing line breaks in type_*.html files
  (Florian Angeletti)

- ocamldoc, improved support for inline records
  (Florian Angeletti)

- ensure "ocamllex -ml" works with -safe-string
  (Hongbo Zhang)

- ocamldoc, add viewport metadata to generated html pages
  (Florian Angeletti, request by Daniel Bünzli)

- Make the output of ocamldep more stable
  (Alain Frisch)

- empty documentation comments
  (Florian Angeletti)

- Add the -no-version option to the toplevel
  (Sébastien Hinderer)

- Add a --strict option to ocamlyacc treat conflicts as errors
  (this option is now used for the compiler's parser)
  (Jeremy Yallop)

- make ocamldoc use -open arguments
  (Florian Angeletti)

- ocamldoc, fix order of extensible variant constructors
  (Florian Angeletti)

### Debugging and profiling:

- Spacetime, a new memory profiler (Mark Shinwell, Leo White)

### Runtime system:

- Add a new primitive caml_alloc_float_array to allocate an
  array of floats
  (Thomas Braibant)

### Manual and documentation:

- document the existence of OCAMLPARAM and
  ocaml_compiler_internal_params
  (Damien Doligez, reports by Wim Lewis and Gabriel Scherer)

- warn users against using WinZip to unpack the source archive
  (Damien Doligez, report by Shayne Fletcher)

- clarification to the wording and documentation
  of Warning 52 (fragile constant pattern)
  (Gabriel Scherer, William, Adrien Nader, Jacques Garrigue)

- Restore 4.02.3 behaviour of Unix.fstat, if the
  file descriptor doesn't wrap a regular file (win32unix only)
  (Andreas Hauptmann, review by David Allsopp)

- flatten : Avoid confusion
  (Damien Doligez, report by user 'tormen')

- Gc.finalise and lazy values
  (Jeremy Yallop)

- Document that [Store_field] must not be used to populate
  arrays of values declared using [CAMLlocalN] (Mark Shinwell)

### Build system:

- Compiler developers: Adding new primitives to the
  standard runtime doesn't require anymore to run `make bootstrap`
  (François Bobot)

- Fix compilation using old Microsoft C Compilers not
  supporting secure CRT functions (SDK Visual Studio 2005 compiler and
  earlier) and standard 64-bit integer literals (Visual Studio .NET
  2002 and earlier)
  (David Allsopp)

- More sharing between Unix and Windows makefiles
  (whitequark, review by Alain Frisch)

* Installed `ocamlc`, `ocamlopt`, and `ocamllex` are
  now the native-code versions of the tools, if those versions were
  built.
  (Demi Obenour)

- "./configure -safe-string" to get a system where
  "-unsafe-string" is not allowed, thus giving stronger non-local
  guarantees about immutability of strings
  (Alain Frisch, review by Hezekiah M. Carty)

### Bug fixes:

* Missed Type-error leads to a segfault upon record access.
  (Jacques Garrigue, extra report by Stephen Dolan)
  Proper fix required a more restrictive approach to recursive types:
  mutually recursive types are seen as abstract types (i.e. non-contractive)
  when checking the well-foundedness of the recursion.

* Nominal types and scope escaping.
  Revert to strict scope for non-generalizable type variables, cf. Mantis.
  Note that this is actually stricter than the behavior before 4.03,
  cf. , meaning that you may sometimes need to add type annotations
  to explicitly instantiate non-generalizable type variables.
  (Jacques Garrigue, following discussion with Jeremy Yallop,
   Nicolas Ojeda Bar and Alain Frisch)

- Aliased arguments ignored for equality of module types
  (Jacques Garrigue, report by Leo White)

- compiler forcing aliases it shouldn't while reporting type errors
  (Jacques Garrigue, report and suggestion by sliquister)

- document that Unix.SOCK_SEQPACKET is not really usable.

- uncaught exception on invalid lexer directive
  (Gabriel Scherer, report by KC Sivaramakrishnan using afl-fuzz)

- revert a 4.03 change of behavior on (Unix.sleep 0.),
  it now calls (nano)sleep for 0 seconds as in (< 4.03) versions.
  (Hannes Mehnert, review by Damien Doligez)

- GADT + subtyping compile time crash
  (Jacques Garrigue, report by Nicolas Ojeda Bar)

- Segfault from conjunctive constraints in GADT
  (Jacques Garrigue, report by Stephen Dolan)

- Support more than FD_SETSIZE sockets in Windows' emulation
  of select
  (David Scott, review by Alain Frisch)

* Prevent private inline records from being mutated
  (Alain Frisch, report by Pierre Chambart)

- Bug in mcomp_fields leads to segfault
  (Jacques Garrigue, report by Leo White)

- Relaxed value restriction broken with principal
  (Jacques Garrigue, report by Leo White)

- -strict-sequence turns off Warning 21
  (Jacques Garrigue, report by Valentin Gatien-Baron)

- remove access to OCaml heap inside blocking section in win32unix
  (David Allsopp, report by Andreas Hauptmann)

- remove access to OCaml heap inside blocking in Unix.sleep on Windows
  (David Allsopp)

- -principal causes loop in type checker when compiling
  (Jacques Garrigue, report by Anil Madhavapeddy, analysis by Leo White)

- Missing exhaustivity check for extensible variant
  (Jacques Garrigue, report by Elarnon *)

- Contractiveness check unsound with constraints
  (Jacques Garrigue, report by Leo White)

- GADT constructors can be re-exposed with an incompatible type
  (Jacques Garrigue, report by Alain Frisch)

- Unsoundness in GADT exhaustiveness with existential variables
  (Jacques Garrigue, report by Stephen Dolan)

* Thread library: fixed [Thread.wait_signal] so that it
  converts back the signal number returned by [sigwait] to an
  OS-independent number
  (Jérémie Dimino)

- (similar to ) ensure that register typing constraints are
  respected at N-way join points in the control flow graph
  (Mark Shinwell)

- Fix float_of_hex parser to correctly reject some invalid forms
  (Bogdan Tătăroiu, review by Thomas Braibant and Alain Frisch)

- Fix maximum weak bucket size
  (Nicolas Ojeda Bar, review by François Bobot)

-  Allow more module aliases in strengthening (Leo White)

- Fix wrong code generation involving lazy values in Flambda
  mode
  (Mark Shinwell, review by Pierre Chambart and Alain Frisch)

- Fix infinite loop in flambda due to [@@specialise] annotations

- Building native runtime on Windows could fail when bootstrapping
  FlexDLL if there was also a system-installed flexlink
  (David Allsopp, report Michael Soegtrop)

- check for integer overflow in String.concat
  (Jeremy Yallop,
   review by Damien Doligez, Alain Frisch, Daniel Bünzli, Fabrice Le Fessant)

- check for integer overflow in Array.concat
  (Jeremy Yallop)

- fix the Buffer.add_substring bounds check to handle overflow
  (Jeremy Yallop)

- Fix [@@inline] with default parameters in flambda (Leo White)

- fix build on OpenIndiana
  (Sergey Avseyev, review by Damien Doligez)

### Internal/compiler-libs changes:

- Improve, fix, and add test for parsing/pprintast.ml
  (Runhang Li, David Sheets, Alain Frisch)

- make driver/pparse.ml functions type-safe
  (Gabriel Scherer, Dmitrii Kosarev, review by Jérémie Dimino)

- Improve Texp_record constructor representation, and
  propagate updated record type information
  (Pierre Chambart, review by Alain Frisch)

- Graphics.close_graph crashes 64-bit Windows ports (re-implementation
  of )
  (David Allsopp)

- delay registration of docstring after the mapper is applied
  (Hugo Heuzard, review by Leo White)

- don't attach (**/**) comments to any particular node
  (Thomas Refis, review by Leo White)


To generate a diff of this commit:
cvs rdiff -u -r1.105 -r1.106 pkgsrc/lang/ocaml/Makefile
cvs rdiff -u -r1.48 -r1.49 pkgsrc/lang/ocaml/Makefile.common
cvs rdiff -u -r1.35 -r1.36 pkgsrc/lang/ocaml/PLIST
cvs rdiff -u -r1.25 -r1.26 pkgsrc/lang/ocaml/PLIST.opt
cvs rdiff -u -r1.9 -r1.10 pkgsrc/lang/ocaml/PLIST.prof
cvs rdiff -u -r1.38 -r1.39 pkgsrc/lang/ocaml/buildlink3.mk
cvs rdiff -u -r1.100 -r1.101 pkgsrc/lang/ocaml/distinfo
cvs rdiff -u -r1.8 -r1.9 pkgsrc/lang/ocaml/patches/patch-Makefile
cvs rdiff -u -r1.8 -r0 pkgsrc/lang/ocaml/patches/patch-asmrun_signals_osdep.h
cvs rdiff -u -r1.19 -r1.20 pkgsrc/lang/ocaml/patches/patch-configure
cvs rdiff -u -r1.4 -r1.5 pkgsrc/lang/ocaml/patches/patch-driver_main_args.ml \
    pkgsrc/lang/ocaml/patches/patch-driver_main_args.mli \
    pkgsrc/lang/ocaml/patches/patch-tools_Makefile.shared
cvs rdiff -u -r1.4 -r0 pkgsrc/lang/ocaml/patches/patch-otherlibs_Makefile
cvs rdiff -u -r1.5 -r0 \
    pkgsrc/lang/ocaml/patches/patch-otherlibs_Makefile.shared
cvs rdiff -u -r1.1 -r1.2 \
    pkgsrc/lang/ocaml/patches/patch-otherlibs_bigarray_mmap__unix.c
cvs rdiff -u -r1.3 -r1.4 pkgsrc/lang/ocaml/patches/patch-tools_ocamlcp.ml \
    pkgsrc/lang/ocaml/patches/patch-tools_ocamloptp.ml

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/lang/ocaml/Makefile
diff -u pkgsrc/lang/ocaml/Makefile:1.105 pkgsrc/lang/ocaml/Makefile:1.106
--- pkgsrc/lang/ocaml/Makefile:1.105    Wed Jul 13 15:01:42 2016
+++ pkgsrc/lang/ocaml/Makefile  Fri Dec 30 11:15:00 2016
@@ -1,11 +1,9 @@
-# $NetBSD: Makefile,v 1.105 2016/07/13 15:01:42 jperkin Exp $
+# $NetBSD: Makefile,v 1.106 2016/12/30 11:15:00 jaapb Exp $
 
 .include "Makefile.common"
 
-PKGREVISION=           2
+#PKGREVISION=          2
 
-#CONFIGURE_ARGS+=      -no-tk
-#CONFIGURE_ARGS+=      -cc ${CC}
 CONFIGURE_ENV+=                disable_x11=yes
 
 BUILD_TARGET=          world

Index: pkgsrc/lang/ocaml/Makefile.common
diff -u pkgsrc/lang/ocaml/Makefile.common:1.48 pkgsrc/lang/ocaml/Makefile.common:1.49
--- pkgsrc/lang/ocaml/Makefile.common:1.48      Wed Aug 24 10:52:46 2016
+++ pkgsrc/lang/ocaml/Makefile.common   Fri Dec 30 11:15:00 2016
@@ -1,10 +1,10 @@
-# $NetBSD: Makefile.common,v 1.48 2016/08/24 10:52:46 wiz Exp $
+# $NetBSD: Makefile.common,v 1.49 2016/12/30 11:15:00 jaapb Exp $
 
 # used by x11/labltk/Makefile
 # used by x11/ocaml-graphics/Makefile
-DISTNAME=      ocaml-4.03.0
+DISTNAME=      ocaml-4.04.0
 CATEGORIES=    lang
-MASTER_SITES=  http://caml.inria.fr/pub/distrib/ocaml-4.03/
+MASTER_SITES=  http://caml.inria.fr/pub/distrib/ocaml-4.04/
 #EXTRACT_SUFX= .tar.bz2
 
 MAINTAINER=    jaapb%NetBSD.org@localhost

Index: pkgsrc/lang/ocaml/PLIST
diff -u pkgsrc/lang/ocaml/PLIST:1.35 pkgsrc/lang/ocaml/PLIST:1.36
--- pkgsrc/lang/ocaml/PLIST:1.35        Wed Jul  6 14:17:45 2016
+++ pkgsrc/lang/ocaml/PLIST     Fri Dec 30 11:15:00 2016
@@ -1,184 +1,29 @@
-@comment $NetBSD: PLIST,v 1.35 2016/07/06 14:17:45 jperkin Exp $
+@comment $NetBSD: PLIST,v 1.36 2016/12/30 11:15:00 jaapb Exp $
 bin/ocaml
 bin/ocamlc
+bin/ocamlc.byte
 bin/ocamlcp
+bin/ocamlcp.byte
 bin/ocamldebug
 bin/ocamldep
+bin/ocamldep.byte
 bin/ocamldoc
 bin/ocamllex
+bin/ocamllex.byte
 bin/ocamlmklib
+bin/ocamlmklib.byte
 bin/ocamlmktop
+bin/ocamlmktop.byte
 bin/ocamlobjinfo
+bin/ocamlobjinfo.byte
+bin/ocamlopt
+bin/ocamlopt.byte
+bin/ocamloptp
+bin/ocamloptp.byte
 bin/ocamlprof
+bin/ocamlprof.byte
 bin/ocamlrun
 bin/ocamlyacc
-lib/ocaml/${PKGMANDIR}/man1/ocaml.1
-lib/ocaml/${PKGMANDIR}/man1/ocamlc.1
-lib/ocaml/${PKGMANDIR}/man1/ocamlc.opt.1
-lib/ocaml/${PKGMANDIR}/man1/ocamlcp.1
-lib/ocaml/${PKGMANDIR}/man1/ocamldebug.1
-lib/ocaml/${PKGMANDIR}/man1/ocamldep.1
-lib/ocaml/${PKGMANDIR}/man1/ocamldoc.1
-lib/ocaml/${PKGMANDIR}/man1/ocamllex.1
-lib/ocaml/${PKGMANDIR}/man1/ocamlmktop.1
-lib/ocaml/${PKGMANDIR}/man1/ocamlopt.1
-lib/ocaml/${PKGMANDIR}/man1/ocamlopt.opt.1
-lib/ocaml/${PKGMANDIR}/man1/ocamloptp.1
-lib/ocaml/${PKGMANDIR}/man1/ocamlprof.1
-lib/ocaml/${PKGMANDIR}/man1/ocamlrun.1
-lib/ocaml/${PKGMANDIR}/man1/ocamlyacc.1
-lib/ocaml/${PKGMANDIR}/man3/Arg.3
-lib/ocaml/${PKGMANDIR}/man3/Array.3
-lib/ocaml/${PKGMANDIR}/man3/ArrayLabels.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Cf.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Ci.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Cl.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Const.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Csig.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Cstr.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Ctf.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Cty.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Exp.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Incl.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Mb.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Md.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Mod.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Mtd.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Mty.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Opn.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Pat.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Sig.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Str.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Te.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Typ.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Type.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Val.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_helper.Vb.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_invariants.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_iterator.3
-lib/ocaml/${PKGMANDIR}/man3/Ast_mapper.3
-lib/ocaml/${PKGMANDIR}/man3/Asttypes.3
-lib/ocaml/${PKGMANDIR}/man3/Attr_helper.3
-lib/ocaml/${PKGMANDIR}/man3/Bigarray.3
-lib/ocaml/${PKGMANDIR}/man3/Bigarray.Array1.3
-lib/ocaml/${PKGMANDIR}/man3/Bigarray.Array2.3
-lib/ocaml/${PKGMANDIR}/man3/Bigarray.Array3.3
-lib/ocaml/${PKGMANDIR}/man3/Bigarray.Genarray.3
-lib/ocaml/${PKGMANDIR}/man3/Buffer.3
-lib/ocaml/${PKGMANDIR}/man3/Builtin_attributes.3
-lib/ocaml/${PKGMANDIR}/man3/Bytes.3
-lib/ocaml/${PKGMANDIR}/man3/BytesLabels.3
-lib/ocaml/${PKGMANDIR}/man3/Callback.3
-lib/ocaml/${PKGMANDIR}/man3/CamlinternalFormat.3
-lib/ocaml/${PKGMANDIR}/man3/CamlinternalFormatBasics.3
-lib/ocaml/${PKGMANDIR}/man3/CamlinternalLazy.3
-lib/ocaml/${PKGMANDIR}/man3/CamlinternalMod.3
-lib/ocaml/${PKGMANDIR}/man3/CamlinternalOO.3
-lib/ocaml/${PKGMANDIR}/man3/Char.3
-lib/ocaml/${PKGMANDIR}/man3/Complex.3
-lib/ocaml/${PKGMANDIR}/man3/Digest.3
-lib/ocaml/${PKGMANDIR}/man3/Docstrings.3
-lib/ocaml/${PKGMANDIR}/man3/Ephemeron.3
-lib/ocaml/${PKGMANDIR}/man3/Ephemeron.GenHashTable.3
-lib/ocaml/${PKGMANDIR}/man3/Ephemeron.GenHashTable.MakeSeeded.3
-lib/ocaml/${PKGMANDIR}/man3/Ephemeron.K1.3
-lib/ocaml/${PKGMANDIR}/man3/Ephemeron.K1.Make.3
-lib/ocaml/${PKGMANDIR}/man3/Ephemeron.K1.MakeSeeded.3
-lib/ocaml/${PKGMANDIR}/man3/Ephemeron.K2.3
-lib/ocaml/${PKGMANDIR}/man3/Ephemeron.K2.Make.3
-lib/ocaml/${PKGMANDIR}/man3/Ephemeron.K2.MakeSeeded.3
-lib/ocaml/${PKGMANDIR}/man3/Ephemeron.Kn.3
-lib/ocaml/${PKGMANDIR}/man3/Ephemeron.Kn.Make.3
-lib/ocaml/${PKGMANDIR}/man3/Ephemeron.Kn.MakeSeeded.3
-lib/ocaml/${PKGMANDIR}/man3/Ephemeron.S.3
-lib/ocaml/${PKGMANDIR}/man3/Ephemeron.SeededS.3
-lib/ocaml/${PKGMANDIR}/man3/Filename.3
-lib/ocaml/${PKGMANDIR}/man3/Format.3
-lib/ocaml/${PKGMANDIR}/man3/Gc.3
-lib/ocaml/${PKGMANDIR}/man3/Genlex.3
-lib/ocaml/${PKGMANDIR}/man3/Hashtbl.3
-lib/ocaml/${PKGMANDIR}/man3/Hashtbl.HashedType.3
-lib/ocaml/${PKGMANDIR}/man3/Hashtbl.Make.3
-lib/ocaml/${PKGMANDIR}/man3/Hashtbl.MakeSeeded.3
-lib/ocaml/${PKGMANDIR}/man3/Hashtbl.S.3
-lib/ocaml/${PKGMANDIR}/man3/Hashtbl.SeededHashedType.3
-lib/ocaml/${PKGMANDIR}/man3/Hashtbl.SeededS.3
-lib/ocaml/${PKGMANDIR}/man3/Int32.3
-lib/ocaml/${PKGMANDIR}/man3/Int64.3
-lib/ocaml/${PKGMANDIR}/man3/Lazy.3
-lib/ocaml/${PKGMANDIR}/man3/Lexer.3
-lib/ocaml/${PKGMANDIR}/man3/Lexing.3
-lib/ocaml/${PKGMANDIR}/man3/List.3
-lib/ocaml/${PKGMANDIR}/man3/ListLabels.3
-lib/ocaml/${PKGMANDIR}/man3/Location.3
-lib/ocaml/${PKGMANDIR}/man3/Longident.3
-lib/ocaml/${PKGMANDIR}/man3/Map.3
-lib/ocaml/${PKGMANDIR}/man3/Map.Make.3
-lib/ocaml/${PKGMANDIR}/man3/Map.OrderedType.3
-lib/ocaml/${PKGMANDIR}/man3/Map.S.3
-lib/ocaml/${PKGMANDIR}/man3/Marshal.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Hashtbl.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Hashtbl.HashedType.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Hashtbl.Make.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Hashtbl.MakeSeeded.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Hashtbl.S.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Hashtbl.SeededHashedType.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Hashtbl.SeededS.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Map.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Map.Make.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Map.OrderedType.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Map.S.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Set.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Set.Make.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Set.OrderedType.3
-lib/ocaml/${PKGMANDIR}/man3/MoreLabels.Set.S.3
-lib/ocaml/${PKGMANDIR}/man3/Nativeint.3
-lib/ocaml/${PKGMANDIR}/man3/Num.3
-lib/ocaml/${PKGMANDIR}/man3/Obj.3
-lib/ocaml/${PKGMANDIR}/man3/Obj.Ephemeron.3
-lib/ocaml/${PKGMANDIR}/man3/Oo.3
-lib/ocaml/${PKGMANDIR}/man3/Parse.3
-lib/ocaml/${PKGMANDIR}/man3/Parser.3
-lib/ocaml/${PKGMANDIR}/man3/Parsetree.3
-lib/ocaml/${PKGMANDIR}/man3/Parsing.3
-lib/ocaml/${PKGMANDIR}/man3/Pervasives.3
-lib/ocaml/${PKGMANDIR}/man3/Pervasives.LargeFile.3
-lib/ocaml/${PKGMANDIR}/man3/Pprintast.3
-lib/ocaml/${PKGMANDIR}/man3/Pprintast.printer.3
-lib/ocaml/${PKGMANDIR}/man3/Printast.3
-lib/ocaml/${PKGMANDIR}/man3/Printexc.3
-lib/ocaml/${PKGMANDIR}/man3/Printexc.Slot.3
-lib/ocaml/${PKGMANDIR}/man3/Printf.3
-lib/ocaml/${PKGMANDIR}/man3/Queue.3
-lib/ocaml/${PKGMANDIR}/man3/Random.3
-lib/ocaml/${PKGMANDIR}/man3/Random.State.3
-lib/ocaml/${PKGMANDIR}/man3/Scanf.3
-lib/ocaml/${PKGMANDIR}/man3/Scanf.Scanning.3
-lib/ocaml/${PKGMANDIR}/man3/Set.3
-lib/ocaml/${PKGMANDIR}/man3/Set.Make.3
-lib/ocaml/${PKGMANDIR}/man3/Set.OrderedType.3
-lib/ocaml/${PKGMANDIR}/man3/Set.S.3
-lib/ocaml/${PKGMANDIR}/man3/Sort.3
-lib/ocaml/${PKGMANDIR}/man3/Stack.3
-lib/ocaml/${PKGMANDIR}/man3/StdLabels.3
-lib/ocaml/${PKGMANDIR}/man3/StdLabels.Array.3
-lib/ocaml/${PKGMANDIR}/man3/StdLabels.Bytes.3
-lib/ocaml/${PKGMANDIR}/man3/StdLabels.List.3
-lib/ocaml/${PKGMANDIR}/man3/StdLabels.String.3
-lib/ocaml/${PKGMANDIR}/man3/Str.3
-lib/ocaml/${PKGMANDIR}/man3/Stream.3
-lib/ocaml/${PKGMANDIR}/man3/String.3
-lib/ocaml/${PKGMANDIR}/man3/StringLabels.3
-lib/ocaml/${PKGMANDIR}/man3/Syntaxerr.3
-lib/ocaml/${PKGMANDIR}/man3/Sys.3
-lib/ocaml/${PKGMANDIR}/man3/Uchar.3
-lib/ocaml/${PKGMANDIR}/man3/Unix.3
-lib/ocaml/${PKGMANDIR}/man3/Unix.LargeFile.3
-lib/ocaml/${PKGMANDIR}/man3/Weak.3
-lib/ocaml/${PKGMANDIR}/man3/Weak.Make.3
-lib/ocaml/${PKGMANDIR}/man3/Weak.S.3
 lib/ocaml/Makefile.config
 lib/ocaml/VERSION
 lib/ocaml/arg.cmi
@@ -219,53 +64,67 @@ lib/ocaml/bytesLabels.cmti
 lib/ocaml/bytesLabels.ml
 lib/ocaml/bytesLabels.mli
 lib/ocaml/callback.cmi
-lib/ocaml/callback.cmi
 lib/ocaml/callback.cmt
 lib/ocaml/callback.cmti
 lib/ocaml/callback.ml
-lib/ocaml/callback.ml
-lib/ocaml/callback.mli
 lib/ocaml/callback.mli
 lib/ocaml/caml/address_class.h
 lib/ocaml/caml/alloc.h
-lib/ocaml/caml/alloc.h
-lib/ocaml/caml/bigarray.h
+lib/ocaml/caml/backtrace.h
+lib/ocaml/caml/backtrace_prim.h
 lib/ocaml/caml/bigarray.h
 lib/ocaml/caml/callback.h
-lib/ocaml/caml/callback.h
-lib/ocaml/caml/compatibility.h
+lib/ocaml/caml/compact.h
+lib/ocaml/caml/compare.h
 lib/ocaml/caml/compatibility.h
 lib/ocaml/caml/config.h
-lib/ocaml/caml/config.h
 lib/ocaml/caml/custom.h
-lib/ocaml/caml/custom.h
-lib/ocaml/caml/fail.h
+lib/ocaml/caml/debugger.h
+lib/ocaml/caml/dynlink.h
+lib/ocaml/caml/exec.h
 lib/ocaml/caml/fail.h
+lib/ocaml/caml/finalise.h
+lib/ocaml/caml/fix_code.h
+lib/ocaml/caml/freelist.h
 lib/ocaml/caml/gc.h
+lib/ocaml/caml/gc_ctrl.h
+lib/ocaml/caml/globroots.h
 lib/ocaml/caml/hash.h
-lib/ocaml/caml/hash.h
-lib/ocaml/caml/intext.h
+lib/ocaml/caml/hooks.h
+lib/ocaml/caml/instrtrace.h
+lib/ocaml/caml/instruct.h
+lib/ocaml/caml/int64_emul.h
+lib/ocaml/caml/int64_format.h
+lib/ocaml/caml/int64_native.h
+lib/ocaml/caml/interp.h
 lib/ocaml/caml/intext.h
+lib/ocaml/caml/io.h
+lib/ocaml/caml/jumptbl.h
+lib/ocaml/caml/major_gc.h
+lib/ocaml/caml/md5.h
 lib/ocaml/caml/memory.h
-lib/ocaml/caml/memory.h
+lib/ocaml/caml/minor_gc.h
 lib/ocaml/caml/misc.h
-lib/ocaml/caml/misc.h
-lib/ocaml/caml/mlvalues.h
 lib/ocaml/caml/mlvalues.h
+lib/ocaml/caml/osdeps.h
+lib/ocaml/caml/prims.h
 lib/ocaml/caml/printexc.h
-lib/ocaml/caml/printexc.h
-lib/ocaml/caml/signals.h
+lib/ocaml/caml/reverse.h
+lib/ocaml/caml/roots.h
 lib/ocaml/caml/signals.h
+lib/ocaml/caml/signals_machdep.h
 lib/ocaml/caml/socketaddr.h
-lib/ocaml/caml/socketaddr.h
+lib/ocaml/caml/stack.h
+lib/ocaml/caml/stacks.h
+lib/ocaml/caml/startup.h
+lib/ocaml/caml/startup_aux.h
+lib/ocaml/caml/sys.h
 lib/ocaml/caml/threads.h
-lib/ocaml/caml/threads.h
-lib/ocaml/caml/unixsupport.h
+lib/ocaml/caml/ui.h
 lib/ocaml/caml/unixsupport.h
 lib/ocaml/caml/version.h
+lib/ocaml/caml/weak.h
 lib/ocaml/camlheader
-lib/ocaml/camlheader
-lib/ocaml/camlheader_ur
 lib/ocaml/camlheader_ur
 lib/ocaml/camlinternalFormat.cmi
 lib/ocaml/camlinternalFormat.cmt
@@ -278,36 +137,24 @@ lib/ocaml/camlinternalFormatBasics.cmti
 lib/ocaml/camlinternalFormatBasics.ml
 lib/ocaml/camlinternalFormatBasics.mli
 lib/ocaml/camlinternalLazy.cmi
-lib/ocaml/camlinternalLazy.cmi
 lib/ocaml/camlinternalLazy.cmt
 lib/ocaml/camlinternalLazy.cmti
 lib/ocaml/camlinternalLazy.ml
-lib/ocaml/camlinternalLazy.ml
-lib/ocaml/camlinternalLazy.mli
 lib/ocaml/camlinternalLazy.mli
 lib/ocaml/camlinternalMod.cmi
-lib/ocaml/camlinternalMod.cmi
 lib/ocaml/camlinternalMod.cmt
 lib/ocaml/camlinternalMod.cmti
 lib/ocaml/camlinternalMod.ml
-lib/ocaml/camlinternalMod.ml
-lib/ocaml/camlinternalMod.mli
 lib/ocaml/camlinternalMod.mli
 lib/ocaml/camlinternalOO.cmi
-lib/ocaml/camlinternalOO.cmi
 lib/ocaml/camlinternalOO.cmt
 lib/ocaml/camlinternalOO.cmti
 lib/ocaml/camlinternalOO.ml
-lib/ocaml/camlinternalOO.ml
 lib/ocaml/camlinternalOO.mli
-lib/ocaml/camlinternalOO.mli
-lib/ocaml/char.cmi
 lib/ocaml/char.cmi
 lib/ocaml/char.cmt
 lib/ocaml/char.cmti
 lib/ocaml/char.ml
-lib/ocaml/char.ml
-lib/ocaml/char.mli
 lib/ocaml/char.mli
 lib/ocaml/compiler-libs/CSE.cmi
 lib/ocaml/compiler-libs/CSE.cmt
@@ -322,16 +169,21 @@ lib/ocaml/compiler-libs/allocated_const.
 lib/ocaml/compiler-libs/allocated_const.cmti
 lib/ocaml/compiler-libs/annot.cmi
 lib/ocaml/compiler-libs/annot.cmti
+lib/ocaml/compiler-libs/arch.cmi
 lib/ocaml/compiler-libs/arch.cmt
 lib/ocaml/compiler-libs/arg_helper.cmi
 lib/ocaml/compiler-libs/arg_helper.cmt
 lib/ocaml/compiler-libs/arg_helper.cmti
+lib/ocaml/compiler-libs/asmgen.cmi
 lib/ocaml/compiler-libs/asmgen.cmt
 lib/ocaml/compiler-libs/asmgen.cmti
+lib/ocaml/compiler-libs/asmlibrarian.cmi
 lib/ocaml/compiler-libs/asmlibrarian.cmt
 lib/ocaml/compiler-libs/asmlibrarian.cmti
+lib/ocaml/compiler-libs/asmlink.cmi
 lib/ocaml/compiler-libs/asmlink.cmt
 lib/ocaml/compiler-libs/asmlink.cmti
+lib/ocaml/compiler-libs/asmpackager.cmi
 lib/ocaml/compiler-libs/asmpackager.cmt
 lib/ocaml/compiler-libs/asmpackager.cmti
 lib/ocaml/compiler-libs/ast_helper.cmi
@@ -388,11 +240,13 @@ lib/ocaml/compiler-libs/bytesections.cmt
 lib/ocaml/compiler-libs/ccomp.cmi
 lib/ocaml/compiler-libs/ccomp.cmt
 lib/ocaml/compiler-libs/ccomp.cmti
+lib/ocaml/compiler-libs/clambda.cmi
 lib/ocaml/compiler-libs/clambda.cmt
 lib/ocaml/compiler-libs/clambda.cmti
 lib/ocaml/compiler-libs/clflags.cmi
 lib/ocaml/compiler-libs/clflags.cmt
 lib/ocaml/compiler-libs/clflags.cmti
+lib/ocaml/compiler-libs/closure.cmi
 lib/ocaml/compiler-libs/closure.cmt
 lib/ocaml/compiler-libs/closure.cmti
 lib/ocaml/compiler-libs/closure_conversion.cmi
@@ -413,8 +267,10 @@ lib/ocaml/compiler-libs/closure_offsets.
 lib/ocaml/compiler-libs/cmi_format.cmi
 lib/ocaml/compiler-libs/cmi_format.cmt
 lib/ocaml/compiler-libs/cmi_format.cmti
+lib/ocaml/compiler-libs/cmm.cmi
 lib/ocaml/compiler-libs/cmm.cmt
 lib/ocaml/compiler-libs/cmm.cmti
+lib/ocaml/compiler-libs/cmmgen.cmi
 lib/ocaml/compiler-libs/cmmgen.cmt
 lib/ocaml/compiler-libs/cmmgen.cmti
 lib/ocaml/compiler-libs/cmo_format.cmi
@@ -422,12 +278,17 @@ lib/ocaml/compiler-libs/cmo_format.cmti
 lib/ocaml/compiler-libs/cmt_format.cmi
 lib/ocaml/compiler-libs/cmt_format.cmt
 lib/ocaml/compiler-libs/cmt_format.cmti
+lib/ocaml/compiler-libs/cmx_format.cmi
 lib/ocaml/compiler-libs/cmx_format.cmti
+lib/ocaml/compiler-libs/coloring.cmi
 lib/ocaml/compiler-libs/coloring.cmt
 lib/ocaml/compiler-libs/coloring.cmti
+lib/ocaml/compiler-libs/comballoc.cmi
 lib/ocaml/compiler-libs/comballoc.cmt
 lib/ocaml/compiler-libs/comballoc.cmti
-lib/ocaml/compiler-libs/compenv.cmi
+lib/ocaml/compiler-libs/compdynlink.cmi
+lib/ocaml/compiler-libs/compdynlink.cmt
+lib/ocaml/compiler-libs/compdynlink.cmti
 lib/ocaml/compiler-libs/compenv.cmi
 lib/ocaml/compiler-libs/compenv.cmt
 lib/ocaml/compiler-libs/compenv.cmti
@@ -437,12 +298,15 @@ lib/ocaml/compiler-libs/compilation_unit
 lib/ocaml/compiler-libs/compile.cmi
 lib/ocaml/compiler-libs/compile.cmt
 lib/ocaml/compiler-libs/compile.cmti
+lib/ocaml/compiler-libs/compilenv.cmi
 lib/ocaml/compiler-libs/compilenv.cmt
 lib/ocaml/compiler-libs/compilenv.cmti
 lib/ocaml/compiler-libs/compmisc.cmi
-lib/ocaml/compiler-libs/compmisc.cmi
 lib/ocaml/compiler-libs/compmisc.cmt
 lib/ocaml/compiler-libs/compmisc.cmti
+lib/ocaml/compiler-libs/compplugin.cmi
+lib/ocaml/compiler-libs/compplugin.cmt
+lib/ocaml/compiler-libs/compplugin.cmti
 lib/ocaml/compiler-libs/config.cmi
 lib/ocaml/compiler-libs/config.cmt
 lib/ocaml/compiler-libs/config.cmti
@@ -458,8 +322,12 @@ lib/ocaml/compiler-libs/datarepr.cmti
 lib/ocaml/compiler-libs/deadcode.cmi
 lib/ocaml/compiler-libs/deadcode.cmt
 lib/ocaml/compiler-libs/deadcode.cmti
+lib/ocaml/compiler-libs/debuginfo.cmi
 lib/ocaml/compiler-libs/debuginfo.cmt
 lib/ocaml/compiler-libs/debuginfo.cmti
+lib/ocaml/compiler-libs/depend.cmi
+lib/ocaml/compiler-libs/depend.cmt
+lib/ocaml/compiler-libs/depend.cmti
 lib/ocaml/compiler-libs/dll.cmi
 lib/ocaml/compiler-libs/dll.cmt
 lib/ocaml/compiler-libs/dll.cmti
@@ -469,8 +337,10 @@ lib/ocaml/compiler-libs/docstrings.cmti
 lib/ocaml/compiler-libs/effect_analysis.cmi
 lib/ocaml/compiler-libs/effect_analysis.cmt
 lib/ocaml/compiler-libs/effect_analysis.cmti
+lib/ocaml/compiler-libs/emit.cmi
 lib/ocaml/compiler-libs/emit.cmt
 lib/ocaml/compiler-libs/emit.cmti
+lib/ocaml/compiler-libs/emitaux.cmi
 lib/ocaml/compiler-libs/emitaux.cmt
 lib/ocaml/compiler-libs/emitaux.cmti
 lib/ocaml/compiler-libs/emitcode.cmi
@@ -480,7 +350,6 @@ lib/ocaml/compiler-libs/env.cmi
 lib/ocaml/compiler-libs/env.cmt
 lib/ocaml/compiler-libs/env.cmti
 lib/ocaml/compiler-libs/envaux.cmi
-lib/ocaml/compiler-libs/envaux.cmi
 lib/ocaml/compiler-libs/envaux.cmt
 lib/ocaml/compiler-libs/envaux.cmti
 lib/ocaml/compiler-libs/errors.cmi
@@ -577,6 +446,7 @@ lib/ocaml/compiler-libs/inlining_transfo
 lib/ocaml/compiler-libs/instruct.cmi
 lib/ocaml/compiler-libs/instruct.cmt
 lib/ocaml/compiler-libs/instruct.cmti
+lib/ocaml/compiler-libs/interf.cmi
 lib/ocaml/compiler-libs/interf.cmt
 lib/ocaml/compiler-libs/interf.cmti
 lib/ocaml/compiler-libs/invariant_params.cmi
@@ -597,11 +467,13 @@ lib/ocaml/compiler-libs/lift_constants.c
 lib/ocaml/compiler-libs/lift_let_to_initialize_symbol.cmi
 lib/ocaml/compiler-libs/lift_let_to_initialize_symbol.cmt
 lib/ocaml/compiler-libs/lift_let_to_initialize_symbol.cmti
+lib/ocaml/compiler-libs/linearize.cmi
 lib/ocaml/compiler-libs/linearize.cmt
 lib/ocaml/compiler-libs/linearize.cmti
 lib/ocaml/compiler-libs/linkage_name.cmi
 lib/ocaml/compiler-libs/linkage_name.cmt
 lib/ocaml/compiler-libs/linkage_name.cmti
+lib/ocaml/compiler-libs/liveness.cmi
 lib/ocaml/compiler-libs/liveness.cmt
 lib/ocaml/compiler-libs/liveness.cmti
 lib/ocaml/compiler-libs/location.cmi
@@ -610,12 +482,14 @@ lib/ocaml/compiler-libs/location.cmti
 lib/ocaml/compiler-libs/longident.cmi
 lib/ocaml/compiler-libs/longident.cmt
 lib/ocaml/compiler-libs/longident.cmti
+lib/ocaml/compiler-libs/mach.cmi
 lib/ocaml/compiler-libs/mach.cmt
 lib/ocaml/compiler-libs/mach.cmti
 lib/ocaml/compiler-libs/main.cmi
 lib/ocaml/compiler-libs/main.cmo
 lib/ocaml/compiler-libs/main.cmt
 lib/ocaml/compiler-libs/main.cmti
+lib/ocaml/compiler-libs/main.o
 lib/ocaml/compiler-libs/main_args.cmi
 lib/ocaml/compiler-libs/main_args.cmt
 lib/ocaml/compiler-libs/main_args.cmti
@@ -649,12 +523,17 @@ lib/ocaml/compiler-libs/opcodes.cmt
 lib/ocaml/compiler-libs/oprint.cmi
 lib/ocaml/compiler-libs/oprint.cmt
 lib/ocaml/compiler-libs/oprint.cmti
+lib/ocaml/compiler-libs/optcompile.cmi
 lib/ocaml/compiler-libs/optcompile.cmt
 lib/ocaml/compiler-libs/optcompile.cmti
+lib/ocaml/compiler-libs/opterrors.cmi
 lib/ocaml/compiler-libs/opterrors.cmt
 lib/ocaml/compiler-libs/opterrors.cmti
+lib/ocaml/compiler-libs/optmain.cmi
+lib/ocaml/compiler-libs/optmain.cmo
 lib/ocaml/compiler-libs/optmain.cmt
 lib/ocaml/compiler-libs/optmain.cmti
+lib/ocaml/compiler-libs/optmain.o
 lib/ocaml/compiler-libs/outcometree.cmi
 lib/ocaml/compiler-libs/outcometree.cmti
 lib/ocaml/compiler-libs/parmatch.cmi
@@ -678,7 +557,6 @@ lib/ocaml/compiler-libs/pparse.cmi
 lib/ocaml/compiler-libs/pparse.cmt
 lib/ocaml/compiler-libs/pparse.cmti
 lib/ocaml/compiler-libs/pprintast.cmi
-lib/ocaml/compiler-libs/pprintast.cmi
 lib/ocaml/compiler-libs/pprintast.cmt
 lib/ocaml/compiler-libs/pprintast.cmti
 lib/ocaml/compiler-libs/predef.cmi
@@ -690,8 +568,10 @@ lib/ocaml/compiler-libs/primitive.cmti
 lib/ocaml/compiler-libs/printast.cmi
 lib/ocaml/compiler-libs/printast.cmt
 lib/ocaml/compiler-libs/printast.cmti
+lib/ocaml/compiler-libs/printclambda.cmi
 lib/ocaml/compiler-libs/printclambda.cmt
 lib/ocaml/compiler-libs/printclambda.cmti
+lib/ocaml/compiler-libs/printcmm.cmi
 lib/ocaml/compiler-libs/printcmm.cmt
 lib/ocaml/compiler-libs/printcmm.cmti
 lib/ocaml/compiler-libs/printinstr.cmi
@@ -700,8 +580,10 @@ lib/ocaml/compiler-libs/printinstr.cmti
 lib/ocaml/compiler-libs/printlambda.cmi
 lib/ocaml/compiler-libs/printlambda.cmt
 lib/ocaml/compiler-libs/printlambda.cmti
+lib/ocaml/compiler-libs/printlinear.cmi
 lib/ocaml/compiler-libs/printlinear.cmt
 lib/ocaml/compiler-libs/printlinear.cmti
+lib/ocaml/compiler-libs/printmach.cmi
 lib/ocaml/compiler-libs/printmach.cmt
 lib/ocaml/compiler-libs/printmach.cmti
 lib/ocaml/compiler-libs/printtyp.cmi
@@ -710,6 +592,7 @@ lib/ocaml/compiler-libs/printtyp.cmti
 lib/ocaml/compiler-libs/printtyped.cmi
 lib/ocaml/compiler-libs/printtyped.cmt
 lib/ocaml/compiler-libs/printtyped.cmti
+lib/ocaml/compiler-libs/proc.cmi
 lib/ocaml/compiler-libs/proc.cmt
 lib/ocaml/compiler-libs/proc.cmti
 lib/ocaml/compiler-libs/projection.cmi
@@ -718,10 +601,13 @@ lib/ocaml/compiler-libs/projection.cmti
 lib/ocaml/compiler-libs/ref_to_variables.cmi
 lib/ocaml/compiler-libs/ref_to_variables.cmt
 lib/ocaml/compiler-libs/ref_to_variables.cmti
+lib/ocaml/compiler-libs/reg.cmi
 lib/ocaml/compiler-libs/reg.cmt
 lib/ocaml/compiler-libs/reg.cmti
+lib/ocaml/compiler-libs/reload.cmi
 lib/ocaml/compiler-libs/reload.cmt
 lib/ocaml/compiler-libs/reload.cmti
+lib/ocaml/compiler-libs/reloadgen.cmi
 lib/ocaml/compiler-libs/reloadgen.cmt
 lib/ocaml/compiler-libs/reloadgen.cmti
 lib/ocaml/compiler-libs/remove_free_vars_equal_to_args.cmi
@@ -739,12 +625,16 @@ lib/ocaml/compiler-libs/remove_unused_pr
 lib/ocaml/compiler-libs/runtimedef.cmi
 lib/ocaml/compiler-libs/runtimedef.cmt
 lib/ocaml/compiler-libs/runtimedef.cmti
+lib/ocaml/compiler-libs/schedgen.cmi
 lib/ocaml/compiler-libs/schedgen.cmt
 lib/ocaml/compiler-libs/schedgen.cmti
+lib/ocaml/compiler-libs/scheduling.cmi
 lib/ocaml/compiler-libs/scheduling.cmt
 lib/ocaml/compiler-libs/scheduling.cmti
+lib/ocaml/compiler-libs/selectgen.cmi
 lib/ocaml/compiler-libs/selectgen.cmt
 lib/ocaml/compiler-libs/selectgen.cmti
+lib/ocaml/compiler-libs/selection.cmi
 lib/ocaml/compiler-libs/selection.cmt
 lib/ocaml/compiler-libs/selection.cmti
 lib/ocaml/compiler-libs/semantics_of_primitives.cmi
@@ -776,8 +666,13 @@ lib/ocaml/compiler-libs/simplify_common.
 lib/ocaml/compiler-libs/simplify_primitives.cmi
 lib/ocaml/compiler-libs/simplify_primitives.cmt
 lib/ocaml/compiler-libs/simplify_primitives.cmti
+lib/ocaml/compiler-libs/spacetime_profiling.cmi
+lib/ocaml/compiler-libs/spacetime_profiling.cmt
+lib/ocaml/compiler-libs/spacetime_profiling.cmti
+lib/ocaml/compiler-libs/spill.cmi
 lib/ocaml/compiler-libs/spill.cmt
 lib/ocaml/compiler-libs/spill.cmti
+lib/ocaml/compiler-libs/split.cmi
 lib/ocaml/compiler-libs/split.cmt
 lib/ocaml/compiler-libs/split.cmti
 lib/ocaml/compiler-libs/static_exception.cmi
@@ -865,11 +760,9 @@ lib/ocaml/compiler-libs/typedtree.cmi
 lib/ocaml/compiler-libs/typedtree.cmt
 lib/ocaml/compiler-libs/typedtree.cmti
 lib/ocaml/compiler-libs/typedtreeIter.cmi
-lib/ocaml/compiler-libs/typedtreeIter.cmi
 lib/ocaml/compiler-libs/typedtreeIter.cmt
 lib/ocaml/compiler-libs/typedtreeIter.cmti
 lib/ocaml/compiler-libs/typedtreeMap.cmi
-lib/ocaml/compiler-libs/typedtreeMap.cmi
 lib/ocaml/compiler-libs/typedtreeMap.cmt
 lib/ocaml/compiler-libs/typedtreeMap.cmti
 lib/ocaml/compiler-libs/typemod.cmi
@@ -990,14 +883,8 @@ lib/ocaml/lexing.cmt
 lib/ocaml/lexing.cmti
 lib/ocaml/lexing.ml
 lib/ocaml/lexing.mli
-lib/ocaml/libbigarray.a
-lib/ocaml/libcamlrun.a
-lib/ocaml/libcamlrun_pic.a
+lib/ocaml/libasmrun_shared.so
 lib/ocaml/libcamlrun_shared.so
-lib/ocaml/libcamlstr.a
-lib/ocaml/libnums.a
-lib/ocaml/libthreads.a
-lib/ocaml/libunix.a
 lib/ocaml/list.cmi
 lib/ocaml/list.cmt
 lib/ocaml/list.cmti
@@ -1008,6 +895,178 @@ lib/ocaml/listLabels.cmt
 lib/ocaml/listLabels.cmti
 lib/ocaml/listLabels.ml
 lib/ocaml/listLabels.mli
+lib/ocaml/man/man1/ocaml.1
+lib/ocaml/man/man1/ocamlc.1
+lib/ocaml/man/man1/ocamlc.opt.1
+lib/ocaml/man/man1/ocamlcp.1
+lib/ocaml/man/man1/ocamldebug.1
+lib/ocaml/man/man1/ocamldep.1
+lib/ocaml/man/man1/ocamldoc.1
+lib/ocaml/man/man1/ocamllex.1
+lib/ocaml/man/man1/ocamlmktop.1
+lib/ocaml/man/man1/ocamlopt.1
+lib/ocaml/man/man1/ocamlopt.opt.1
+lib/ocaml/man/man1/ocamloptp.1
+lib/ocaml/man/man1/ocamlprof.1
+lib/ocaml/man/man1/ocamlrun.1
+lib/ocaml/man/man1/ocamlyacc.1
+lib/ocaml/man/man3/Arg.3
+lib/ocaml/man/man3/Array.3
+lib/ocaml/man/man3/ArrayLabels.3
+lib/ocaml/man/man3/Ast_helper.3
+lib/ocaml/man/man3/Ast_helper.Cf.3
+lib/ocaml/man/man3/Ast_helper.Ci.3
+lib/ocaml/man/man3/Ast_helper.Cl.3
+lib/ocaml/man/man3/Ast_helper.Const.3
+lib/ocaml/man/man3/Ast_helper.Csig.3
+lib/ocaml/man/man3/Ast_helper.Cstr.3
+lib/ocaml/man/man3/Ast_helper.Ctf.3
+lib/ocaml/man/man3/Ast_helper.Cty.3
+lib/ocaml/man/man3/Ast_helper.Exp.3
+lib/ocaml/man/man3/Ast_helper.Incl.3
+lib/ocaml/man/man3/Ast_helper.Mb.3
+lib/ocaml/man/man3/Ast_helper.Md.3
+lib/ocaml/man/man3/Ast_helper.Mod.3
+lib/ocaml/man/man3/Ast_helper.Mtd.3
+lib/ocaml/man/man3/Ast_helper.Mty.3
+lib/ocaml/man/man3/Ast_helper.Opn.3
+lib/ocaml/man/man3/Ast_helper.Pat.3
+lib/ocaml/man/man3/Ast_helper.Sig.3
+lib/ocaml/man/man3/Ast_helper.Str.3
+lib/ocaml/man/man3/Ast_helper.Te.3
+lib/ocaml/man/man3/Ast_helper.Typ.3
+lib/ocaml/man/man3/Ast_helper.Type.3
+lib/ocaml/man/man3/Ast_helper.Val.3
+lib/ocaml/man/man3/Ast_helper.Vb.3
+lib/ocaml/man/man3/Ast_invariants.3
+lib/ocaml/man/man3/Ast_iterator.3
+lib/ocaml/man/man3/Ast_mapper.3
+lib/ocaml/man/man3/Asttypes.3
+lib/ocaml/man/man3/Attr_helper.3
+lib/ocaml/man/man3/Bigarray.3
+lib/ocaml/man/man3/Bigarray.Array1.3
+lib/ocaml/man/man3/Bigarray.Array2.3
+lib/ocaml/man/man3/Bigarray.Array3.3
+lib/ocaml/man/man3/Bigarray.Genarray.3
+lib/ocaml/man/man3/Buffer.3
+lib/ocaml/man/man3/Builtin_attributes.3
+lib/ocaml/man/man3/Bytes.3
+lib/ocaml/man/man3/BytesLabels.3
+lib/ocaml/man/man3/Callback.3
+lib/ocaml/man/man3/CamlinternalFormat.3
+lib/ocaml/man/man3/CamlinternalFormatBasics.3
+lib/ocaml/man/man3/CamlinternalLazy.3
+lib/ocaml/man/man3/CamlinternalMod.3
+lib/ocaml/man/man3/CamlinternalOO.3
+lib/ocaml/man/man3/Char.3
+lib/ocaml/man/man3/Complex.3
+lib/ocaml/man/man3/Depend.3
+lib/ocaml/man/man3/Depend.StringMap.3
+lib/ocaml/man/man3/Depend.StringSet.3
+lib/ocaml/man/man3/Digest.3
+lib/ocaml/man/man3/Docstrings.3
+lib/ocaml/man/man3/Ephemeron.3
+lib/ocaml/man/man3/Ephemeron.GenHashTable.3
+lib/ocaml/man/man3/Ephemeron.GenHashTable.MakeSeeded.3
+lib/ocaml/man/man3/Ephemeron.K1.3
+lib/ocaml/man/man3/Ephemeron.K1.Make.3
+lib/ocaml/man/man3/Ephemeron.K1.MakeSeeded.3
+lib/ocaml/man/man3/Ephemeron.K2.3
+lib/ocaml/man/man3/Ephemeron.K2.Make.3
+lib/ocaml/man/man3/Ephemeron.K2.MakeSeeded.3
+lib/ocaml/man/man3/Ephemeron.Kn.3
+lib/ocaml/man/man3/Ephemeron.Kn.Make.3
+lib/ocaml/man/man3/Ephemeron.Kn.MakeSeeded.3
+lib/ocaml/man/man3/Ephemeron.S.3
+lib/ocaml/man/man3/Ephemeron.SeededS.3
+lib/ocaml/man/man3/Filename.3
+lib/ocaml/man/man3/Format.3
+lib/ocaml/man/man3/Gc.3
+lib/ocaml/man/man3/Genlex.3
+lib/ocaml/man/man3/Hashtbl.3
+lib/ocaml/man/man3/Hashtbl.HashedType.3
+lib/ocaml/man/man3/Hashtbl.Make.3
+lib/ocaml/man/man3/Hashtbl.MakeSeeded.3
+lib/ocaml/man/man3/Hashtbl.S.3
+lib/ocaml/man/man3/Hashtbl.SeededHashedType.3
+lib/ocaml/man/man3/Hashtbl.SeededS.3
+lib/ocaml/man/man3/Int32.3
+lib/ocaml/man/man3/Int64.3
+lib/ocaml/man/man3/Lazy.3
+lib/ocaml/man/man3/Lexer.3
+lib/ocaml/man/man3/Lexing.3
+lib/ocaml/man/man3/List.3
+lib/ocaml/man/man3/ListLabels.3
+lib/ocaml/man/man3/Location.3
+lib/ocaml/man/man3/Longident.3
+lib/ocaml/man/man3/Map.3
+lib/ocaml/man/man3/Map.Make.3
+lib/ocaml/man/man3/Map.OrderedType.3
+lib/ocaml/man/man3/Map.S.3
+lib/ocaml/man/man3/Marshal.3
+lib/ocaml/man/man3/MoreLabels.3
+lib/ocaml/man/man3/MoreLabels.Hashtbl.3
+lib/ocaml/man/man3/MoreLabels.Hashtbl.HashedType.3
+lib/ocaml/man/man3/MoreLabels.Hashtbl.Make.3
+lib/ocaml/man/man3/MoreLabels.Hashtbl.MakeSeeded.3
+lib/ocaml/man/man3/MoreLabels.Hashtbl.S.3
+lib/ocaml/man/man3/MoreLabels.Hashtbl.SeededHashedType.3
+lib/ocaml/man/man3/MoreLabels.Hashtbl.SeededS.3
+lib/ocaml/man/man3/MoreLabels.Map.3
+lib/ocaml/man/man3/MoreLabels.Map.Make.3
+lib/ocaml/man/man3/MoreLabels.Map.OrderedType.3
+lib/ocaml/man/man3/MoreLabels.Map.S.3
+lib/ocaml/man/man3/MoreLabels.Set.3
+lib/ocaml/man/man3/MoreLabels.Set.Make.3
+lib/ocaml/man/man3/MoreLabels.Set.OrderedType.3
+lib/ocaml/man/man3/MoreLabels.Set.S.3
+lib/ocaml/man/man3/Nativeint.3
+lib/ocaml/man/man3/Num.3
+lib/ocaml/man/man3/Obj.3
+lib/ocaml/man/man3/Obj.Ephemeron.3
+lib/ocaml/man/man3/Oo.3
+lib/ocaml/man/man3/Parse.3
+lib/ocaml/man/man3/Parser.3
+lib/ocaml/man/man3/Parsetree.3
+lib/ocaml/man/man3/Parsing.3
+lib/ocaml/man/man3/Pervasives.3
+lib/ocaml/man/man3/Pervasives.LargeFile.3
+lib/ocaml/man/man3/Pprintast.3
+lib/ocaml/man/man3/Printast.3
+lib/ocaml/man/man3/Printexc.3
+lib/ocaml/man/man3/Printexc.Slot.3
+lib/ocaml/man/man3/Printf.3
+lib/ocaml/man/man3/Queue.3
+lib/ocaml/man/man3/Random.3
+lib/ocaml/man/man3/Random.State.3
+lib/ocaml/man/man3/Scanf.3
+lib/ocaml/man/man3/Scanf.Scanning.3
+lib/ocaml/man/man3/Set.3
+lib/ocaml/man/man3/Set.Make.3
+lib/ocaml/man/man3/Set.OrderedType.3
+lib/ocaml/man/man3/Set.S.3
+lib/ocaml/man/man3/Sort.3
+lib/ocaml/man/man3/Spacetime.3
+lib/ocaml/man/man3/Spacetime.Series.3
+lib/ocaml/man/man3/Spacetime.Snapshot.3
+lib/ocaml/man/man3/Stack.3
+lib/ocaml/man/man3/StdLabels.3
+lib/ocaml/man/man3/StdLabels.Array.3
+lib/ocaml/man/man3/StdLabels.Bytes.3
+lib/ocaml/man/man3/StdLabels.List.3
+lib/ocaml/man/man3/StdLabels.String.3
+lib/ocaml/man/man3/Str.3
+lib/ocaml/man/man3/Stream.3
+lib/ocaml/man/man3/String.3
+lib/ocaml/man/man3/StringLabels.3
+lib/ocaml/man/man3/Syntaxerr.3
+lib/ocaml/man/man3/Sys.3
+lib/ocaml/man/man3/Uchar.3
+lib/ocaml/man/man3/Unix.3
+lib/ocaml/man/man3/Unix.LargeFile.3
+lib/ocaml/man/man3/Weak.3
+lib/ocaml/man/man3/Weak.Make.3
+lib/ocaml/man/man3/Weak.S.3
 lib/ocaml/map.cmi
 lib/ocaml/map.cmt
 lib/ocaml/map.cmti
@@ -1118,6 +1177,7 @@ lib/ocaml/printf.ml
 lib/ocaml/printf.mli
 lib/ocaml/profiling.cmi
 lib/ocaml/profiling.cmo
+lib/ocaml/profiling.o
 lib/ocaml/queue.cmi
 lib/ocaml/queue.cmt
 lib/ocaml/queue.cmti
@@ -1130,6 +1190,9 @@ lib/ocaml/random.ml
 lib/ocaml/random.mli
 lib/ocaml/ratio.cmi
 lib/ocaml/ratio.mli
+lib/ocaml/raw_spacetime_lib.cma
+lib/ocaml/raw_spacetime_lib.cmi
+lib/ocaml/raw_spacetime_lib.mli
 lib/ocaml/scanf.cmi
 lib/ocaml/scanf.cmt
 lib/ocaml/scanf.cmti
@@ -1145,6 +1208,11 @@ lib/ocaml/sort.cmt
 lib/ocaml/sort.cmti
 lib/ocaml/sort.ml
 lib/ocaml/sort.mli
+lib/ocaml/spacetime.cmi
+lib/ocaml/spacetime.cmt
+lib/ocaml/spacetime.cmti
+lib/ocaml/spacetime.ml
+lib/ocaml/spacetime.mli
 lib/ocaml/stack.cmi
 lib/ocaml/stack.cmt
 lib/ocaml/stack.cmti
@@ -1159,6 +1227,7 @@ lib/ocaml/std_exit.cmi
 lib/ocaml/std_exit.cmo
 lib/ocaml/std_exit.cmt
 lib/ocaml/std_exit.ml
+lib/ocaml/std_exit.o
 lib/ocaml/stdlib.cma
 lib/ocaml/str.cma
 lib/ocaml/str.cmi
@@ -1178,6 +1247,12 @@ lib/ocaml/stringLabels.cmt
 lib/ocaml/stringLabels.cmti
 lib/ocaml/stringLabels.ml
 lib/ocaml/stringLabels.mli
+lib/ocaml/stublibs/dllbigarray.so
+lib/ocaml/stublibs/dllcamlstr.so
+lib/ocaml/stublibs/dllnums.so
+lib/ocaml/stublibs/dllthreads.so
+lib/ocaml/stublibs/dllunix.so
+lib/ocaml/stublibs/dllvmthreads.so
 lib/ocaml/sys.cmi
 lib/ocaml/sys.cmt
 lib/ocaml/sys.cmti
@@ -1206,7 +1281,6 @@ lib/ocaml/vmthreads/condition.cmi
 lib/ocaml/vmthreads/condition.mli
 lib/ocaml/vmthreads/event.cmi
 lib/ocaml/vmthreads/event.mli
-lib/ocaml/vmthreads/libvmthreads.a
 lib/ocaml/vmthreads/mutex.cmi
 lib/ocaml/vmthreads/mutex.mli
 lib/ocaml/vmthreads/stdlib.cma
@@ -1236,3 +1310,4 @@ man/man1/ocamloptp.1
 man/man1/ocamlprof.1
 man/man1/ocamlrun.1
 man/man1/ocamlyacc.1
+@pkgdir lib/ocaml/ocamldoc/custom

Index: pkgsrc/lang/ocaml/PLIST.opt
diff -u pkgsrc/lang/ocaml/PLIST.opt:1.25 pkgsrc/lang/ocaml/PLIST.opt:1.26
--- pkgsrc/lang/ocaml/PLIST.opt:1.25    Wed Jul  6 14:17:45 2016
+++ pkgsrc/lang/ocaml/PLIST.opt Fri Dec 30 11:15:00 2016
@@ -1,11 +1,15 @@
-@comment $NetBSD: PLIST.opt,v 1.25 2016/07/06 14:17:45 jperkin Exp $
+@comment $NetBSD: PLIST.opt,v 1.26 2016/12/30 11:15:00 jaapb Exp $
 bin/ocamlc.opt
+bin/ocamlcp.opt
 bin/ocamldep.opt
 bin/ocamldoc.opt
 bin/ocamllex.opt
-bin/ocamlopt
-bin/ocamloptp
+bin/ocamlmklib.opt
+bin/ocamlmktop.opt
+bin/ocamlobjinfo.opt
 bin/ocamlopt.opt
+bin/ocamloptp.opt
+bin/ocamlprof.opt
 lib/ocaml/arg.cmx
 lib/ocaml/arith_flags.cmx
 lib/ocaml/arith_status.cmx
@@ -15,6 +19,7 @@ lib/ocaml/big_int.cmx
 lib/ocaml/bigarray.a
 lib/ocaml/bigarray.cmx
 lib/ocaml/bigarray.cmxa
+lib/ocaml/bigarray.cmxs
 lib/ocaml/buffer.cmx
 lib/ocaml/bytes.cmx
 lib/ocaml/bytesLabels.cmx
@@ -25,19 +30,13 @@ lib/ocaml/camlinternalLazy.cmx
 lib/ocaml/camlinternalMod.cmx
 lib/ocaml/camlinternalOO.cmx
 lib/ocaml/char.cmx
-lib/ocaml/complex.cmx
 lib/ocaml/compiler-libs/CSE.cmx
 lib/ocaml/compiler-libs/CSEgen.cmx
-lib/ocaml/compiler-libs/arch.cmi
 lib/ocaml/compiler-libs/arch.cmx
 lib/ocaml/compiler-libs/arg_helper.cmx
-lib/ocaml/compiler-libs/asmgen.cmi
 lib/ocaml/compiler-libs/asmgen.cmx
-lib/ocaml/compiler-libs/asmlibrarian.cmi
 lib/ocaml/compiler-libs/asmlibrarian.cmx
-lib/ocaml/compiler-libs/asmlink.cmi
 lib/ocaml/compiler-libs/asmlink.cmx
-lib/ocaml/compiler-libs/asmpackager.cmi
 lib/ocaml/compiler-libs/asmpackager.cmx
 lib/ocaml/compiler-libs/ast_helper.cmx
 lib/ocaml/compiler-libs/ast_invariants.cmx
@@ -55,40 +54,31 @@ lib/ocaml/compiler-libs/bytelink.cmx
 lib/ocaml/compiler-libs/bytepackager.cmx
 lib/ocaml/compiler-libs/bytesections.cmx
 lib/ocaml/compiler-libs/ccomp.cmx
-lib/ocaml/compiler-libs/clambda.cmi
 lib/ocaml/compiler-libs/clambda.cmx
 lib/ocaml/compiler-libs/clflags.cmx
-lib/ocaml/compiler-libs/closure.cmi
 lib/ocaml/compiler-libs/closure.cmx
 lib/ocaml/compiler-libs/closure_offsets.cmx
 lib/ocaml/compiler-libs/cmi_format.cmx
-lib/ocaml/compiler-libs/cmm.cmi
 lib/ocaml/compiler-libs/cmm.cmx
-lib/ocaml/compiler-libs/cmmgen.cmi
 lib/ocaml/compiler-libs/cmmgen.cmx
 lib/ocaml/compiler-libs/cmt_format.cmx
-lib/ocaml/compiler-libs/cmx_format.cmi
-lib/ocaml/compiler-libs/coloring.cmi
 lib/ocaml/compiler-libs/coloring.cmx
-lib/ocaml/compiler-libs/comballoc.cmi
 lib/ocaml/compiler-libs/comballoc.cmx
+lib/ocaml/compiler-libs/compdynlink.cmx
 lib/ocaml/compiler-libs/compenv.cmx
 lib/ocaml/compiler-libs/compile.cmx
-lib/ocaml/compiler-libs/compilenv.cmi
 lib/ocaml/compiler-libs/compilenv.cmx
 lib/ocaml/compiler-libs/compmisc.cmx
+lib/ocaml/compiler-libs/compplugin.cmx
 lib/ocaml/compiler-libs/config.cmx
 lib/ocaml/compiler-libs/consistbl.cmx
 lib/ocaml/compiler-libs/ctype.cmx
 lib/ocaml/compiler-libs/datarepr.cmx
 lib/ocaml/compiler-libs/deadcode.cmx
-lib/ocaml/compiler-libs/debuginfo.cmi
-lib/ocaml/compiler-libs/debuginfo.cmx
+lib/ocaml/compiler-libs/depend.cmx
 lib/ocaml/compiler-libs/dll.cmx
 lib/ocaml/compiler-libs/docstrings.cmx
-lib/ocaml/compiler-libs/emit.cmi
 lib/ocaml/compiler-libs/emit.cmx
-lib/ocaml/compiler-libs/emitaux.cmi
 lib/ocaml/compiler-libs/emitaux.cmx
 lib/ocaml/compiler-libs/emitcode.cmx
 lib/ocaml/compiler-libs/env.cmx
@@ -104,20 +94,15 @@ lib/ocaml/compiler-libs/includeclass.cmx
 lib/ocaml/compiler-libs/includecore.cmx
 lib/ocaml/compiler-libs/includemod.cmx
 lib/ocaml/compiler-libs/instruct.cmx
-lib/ocaml/compiler-libs/interf.cmi
 lib/ocaml/compiler-libs/interf.cmx
 lib/ocaml/compiler-libs/lambda.cmx
 lib/ocaml/compiler-libs/lexer.cmx
-lib/ocaml/compiler-libs/linearize.cmi
 lib/ocaml/compiler-libs/linearize.cmx
-lib/ocaml/compiler-libs/liveness.cmi
 lib/ocaml/compiler-libs/liveness.cmx
 lib/ocaml/compiler-libs/location.cmx
 lib/ocaml/compiler-libs/longident.cmx
-lib/ocaml/compiler-libs/mach.cmi
 lib/ocaml/compiler-libs/mach.cmx
 lib/ocaml/compiler-libs/main.cmx
-lib/ocaml/compiler-libs/main.o
 lib/ocaml/compiler-libs/main_args.cmx
 lib/ocaml/compiler-libs/matching.cmx
 lib/ocaml/compiler-libs/meta.cmx
@@ -132,14 +117,9 @@ lib/ocaml/compiler-libs/ocamloptcomp.a
 lib/ocaml/compiler-libs/ocamloptcomp.cmxa
 lib/ocaml/compiler-libs/opcodes.cmx
 lib/ocaml/compiler-libs/oprint.cmx
-lib/ocaml/compiler-libs/optcompile.cmi
 lib/ocaml/compiler-libs/optcompile.cmx
-lib/ocaml/compiler-libs/opterrors.cmi
 lib/ocaml/compiler-libs/opterrors.cmx
-lib/ocaml/compiler-libs/optmain.cmi
-lib/ocaml/compiler-libs/optmain.cmo
 lib/ocaml/compiler-libs/optmain.cmx
-lib/ocaml/compiler-libs/optmain.o
 lib/ocaml/compiler-libs/parmatch.cmx
 lib/ocaml/compiler-libs/parse.cmx
 lib/ocaml/compiler-libs/parser.cmx
@@ -149,39 +129,26 @@ lib/ocaml/compiler-libs/pprintast.cmx
 lib/ocaml/compiler-libs/predef.cmx
 lib/ocaml/compiler-libs/primitive.cmx
 lib/ocaml/compiler-libs/printast.cmx
-lib/ocaml/compiler-libs/printclambda.cmi
 lib/ocaml/compiler-libs/printclambda.cmx
-lib/ocaml/compiler-libs/printcmm.cmi
 lib/ocaml/compiler-libs/printcmm.cmx
 lib/ocaml/compiler-libs/printinstr.cmx
 lib/ocaml/compiler-libs/printlambda.cmx
-lib/ocaml/compiler-libs/printlinear.cmi
 lib/ocaml/compiler-libs/printlinear.cmx
-lib/ocaml/compiler-libs/printmach.cmi
 lib/ocaml/compiler-libs/printmach.cmx
 lib/ocaml/compiler-libs/printtyp.cmx
 lib/ocaml/compiler-libs/printtyped.cmx
-lib/ocaml/compiler-libs/proc.cmi
 lib/ocaml/compiler-libs/proc.cmx
-lib/ocaml/compiler-libs/reg.cmi
 lib/ocaml/compiler-libs/reg.cmx
-lib/ocaml/compiler-libs/reload.cmi
 lib/ocaml/compiler-libs/reload.cmx
-lib/ocaml/compiler-libs/reloadgen.cmi
 lib/ocaml/compiler-libs/reloadgen.cmx
 lib/ocaml/compiler-libs/runtimedef.cmx
-lib/ocaml/compiler-libs/schedgen.cmi
 lib/ocaml/compiler-libs/schedgen.cmx
-lib/ocaml/compiler-libs/scheduling.cmi
 lib/ocaml/compiler-libs/scheduling.cmx
-lib/ocaml/compiler-libs/selectgen.cmi
 lib/ocaml/compiler-libs/selectgen.cmx
-lib/ocaml/compiler-libs/selection.cmi
 lib/ocaml/compiler-libs/selection.cmx
 lib/ocaml/compiler-libs/simplif.cmx
-lib/ocaml/compiler-libs/spill.cmi
+lib/ocaml/compiler-libs/spacetime_profiling.cmx
 lib/ocaml/compiler-libs/spill.cmx
-lib/ocaml/compiler-libs/split.cmi
 lib/ocaml/compiler-libs/split.cmx
 lib/ocaml/compiler-libs/strmatch.cmx
 lib/ocaml/compiler-libs/strongly_connected_components.cmx
@@ -216,7 +183,11 @@ lib/ocaml/compiler-libs/x86_dsl.cmx
 lib/ocaml/compiler-libs/x86_gas.cmx
 lib/ocaml/compiler-libs/x86_masm.cmx
 lib/ocaml/compiler-libs/x86_proc.cmx
+lib/ocaml/complex.cmx
 lib/ocaml/digest.cmx
+lib/ocaml/dynlink.a
+lib/ocaml/dynlink.cmx
+lib/ocaml/dynlink.cmxa
 lib/ocaml/ephemeron.cmx
 lib/ocaml/filename.cmx
 lib/ocaml/format.cmx
@@ -230,9 +201,15 @@ lib/ocaml/lazy.cmx
 lib/ocaml/lexing.cmx
 lib/ocaml/libasmrun.a
 lib/ocaml/libasmrun_pic.a
-lib/ocaml/libasmrun_shared.so
 lib/ocaml/libasmrunp.a
+lib/ocaml/libbigarray.a
+lib/ocaml/libcamlrun.a
+lib/ocaml/libcamlrun_pic.a
+lib/ocaml/libcamlstr.a
+lib/ocaml/libnums.a
+lib/ocaml/libthreads.a
 lib/ocaml/libthreadsnat.a
+lib/ocaml/libunix.a
 lib/ocaml/list.cmx
 lib/ocaml/listLabels.cmx
 lib/ocaml/map.cmx
@@ -243,6 +220,7 @@ lib/ocaml/nativeint.cmx
 lib/ocaml/num.cmx
 lib/ocaml/nums.a
 lib/ocaml/nums.cmxa
+lib/ocaml/nums.cmxs
 lib/ocaml/obj.cmx
 lib/ocaml/ocamldoc/odoc.cmx
 lib/ocaml/ocamldoc/odoc_analyse.cmx
@@ -299,26 +277,26 @@ lib/ocaml/pervasives.cmx
 lib/ocaml/printexc.cmx
 lib/ocaml/printf.cmx
 lib/ocaml/profiling.cmx
-lib/ocaml/profiling.o
 lib/ocaml/queue.cmx
 lib/ocaml/random.cmx
 lib/ocaml/ratio.cmx
+lib/ocaml/raw_spacetime_lib.a
+lib/ocaml/raw_spacetime_lib.cmx
+lib/ocaml/raw_spacetime_lib.cmxa
+lib/ocaml/raw_spacetime_lib.cmxs
 lib/ocaml/scanf.cmx
 lib/ocaml/set.cmx
 lib/ocaml/sort.cmx
+lib/ocaml/spacetime.cmx
 lib/ocaml/stack.cmx
 lib/ocaml/stdLabels.cmx
 lib/ocaml/std_exit.cmx
-lib/ocaml/std_exit.o
-lib/ocaml/std_exit.p.cmx
-lib/ocaml/std_exit.p.o
 lib/ocaml/stdlib.a
 lib/ocaml/stdlib.cmxa
-lib/ocaml/stdlib.p.a
-lib/ocaml/stdlib.p.cmxa
 lib/ocaml/str.a
 lib/ocaml/str.cmx
 lib/ocaml/str.cmxa
+lib/ocaml/str.cmxs
 lib/ocaml/stream.cmx
 lib/ocaml/string.cmx
 lib/ocaml/stringLabels.cmx
@@ -334,5 +312,7 @@ lib/ocaml/uchar.cmx
 lib/ocaml/unix.a
 lib/ocaml/unix.cmx
 lib/ocaml/unix.cmxa
+lib/ocaml/unix.cmxs
 lib/ocaml/unixLabels.cmx
+lib/ocaml/vmthreads/libvmthreads.a
 lib/ocaml/weak.cmx

Index: pkgsrc/lang/ocaml/PLIST.prof
diff -u pkgsrc/lang/ocaml/PLIST.prof:1.9 pkgsrc/lang/ocaml/PLIST.prof:1.10
--- pkgsrc/lang/ocaml/PLIST.prof:1.9    Wed Jul  6 14:17:45 2016
+++ pkgsrc/lang/ocaml/PLIST.prof        Fri Dec 30 11:15:00 2016
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST.prof,v 1.9 2016/07/06 14:17:45 jperkin Exp $
+@comment $NetBSD: PLIST.prof,v 1.10 2016/12/30 11:15:00 jaapb Exp $
 lib/ocaml/arg.p.cmt
 lib/ocaml/arg.p.cmx
 lib/ocaml/array.p.cmt
@@ -83,11 +83,17 @@ lib/ocaml/set.p.cmt
 lib/ocaml/set.p.cmx
 lib/ocaml/sort.p.cmt
 lib/ocaml/sort.p.cmx
+lib/ocaml/spacetime.p.cmt
+lib/ocaml/spacetime.p.cmx
 lib/ocaml/stack.p.cmt
 lib/ocaml/stack.p.cmx
 lib/ocaml/stdLabels.p.cmt
 lib/ocaml/stdLabels.p.cmx
 lib/ocaml/std_exit.p.cmt
+lib/ocaml/std_exit.p.cmx
+lib/ocaml/std_exit.p.o
+lib/ocaml/stdlib.p.a
+lib/ocaml/stdlib.p.cmxa
 lib/ocaml/stream.p.cmt
 lib/ocaml/stream.p.cmx
 lib/ocaml/string.p.cmt

Index: pkgsrc/lang/ocaml/buildlink3.mk
diff -u pkgsrc/lang/ocaml/buildlink3.mk:1.38 pkgsrc/lang/ocaml/buildlink3.mk:1.39
--- pkgsrc/lang/ocaml/buildlink3.mk:1.38        Thu May  5 11:45:36 2016
+++ pkgsrc/lang/ocaml/buildlink3.mk     Fri Dec 30 11:15:00 2016
@@ -1,4 +1,4 @@
-# $NetBSD: buildlink3.mk,v 1.38 2016/05/05 11:45:36 jaapb Exp $
+# $NetBSD: buildlink3.mk,v 1.39 2016/12/30 11:15:00 jaapb Exp $
 
 BUILDLINK_TREE+=       ocaml
 
@@ -6,7 +6,7 @@ BUILDLINK_TREE+=        ocaml
 OCAML_BUILDLINK3_MK:=
 
 BUILDLINK_API_DEPENDS.ocaml+=  ocaml>=3.08.2
-BUILDLINK_ABI_DEPENDS.ocaml+=  ocaml>=4.03.0
+BUILDLINK_ABI_DEPENDS.ocaml+=  ocaml>=4.04.0
 BUILDLINK_PKGSRCDIR.ocaml?=    ../../lang/ocaml
 #BUILDLINK_DEPMETHOD.ocaml?=   build
 

Index: pkgsrc/lang/ocaml/distinfo
diff -u pkgsrc/lang/ocaml/distinfo:1.100 pkgsrc/lang/ocaml/distinfo:1.101
--- pkgsrc/lang/ocaml/distinfo:1.100    Fri Nov  4 22:55:58 2016
+++ pkgsrc/lang/ocaml/distinfo  Fri Dec 30 11:15:00 2016
@@ -1,35 +1,32 @@
-$NetBSD: distinfo,v 1.100 2016/11/04 22:55:58 marino Exp $
+$NetBSD: distinfo,v 1.101 2016/12/30 11:15:00 jaapb Exp $
 
-SHA1 (ocaml-4.03.0.tar.gz) = 28773fd89507dbc400a366b886425436569e70d8
-RMD160 (ocaml-4.03.0.tar.gz) = 774934e72746cd8b94ac732abdd47d7f06344fda
-SHA512 (ocaml-4.03.0.tar.gz) = 91d5c0b2fcc52fc05be64bf54d3c7be8d77ee754e847907909d4e123c1d00c9f62523770d56bb81f80200f75ec53ab874e031ce46f7b437febbd3a8e6800e2ca
-Size (ocaml-4.03.0.tar.gz) = 3388739 bytes
-SHA1 (patch-Makefile) = 22d05d1f246d9adb7bdcce1ce6d5ee85434610d6
+SHA1 (ocaml-4.04.0.tar.gz) = 49c4d406f5eb4dc2d8ac006103f2bc459fa5a5a6
+RMD160 (ocaml-4.04.0.tar.gz) = 98cbfac14cf93983ae62bfa2042058d0af1734bd
+SHA512 (ocaml-4.04.0.tar.gz) = ad69a42d4ff525d85f472a60ea5d565163698b2929cf0f35a33df7f724958c1b6d3aff57dfcfdc3aa6619807c626e756058cf935e74776ece9e7e984f0b3c418
+Size (ocaml-4.04.0.tar.gz) = 3557536 bytes
+SHA1 (patch-Makefile) = 426d2aa080922fb6f034a76b8009f2fcbbe7a693
 SHA1 (patch-asmcomp_asmlink.ml) = db2b387ea17f41a62c2bce53b91f945d5e29a82f
 SHA1 (patch-asmrun_Makefile) = 923b46ebf5fb56693b8335787846dafda936b34c
-SHA1 (patch-asmrun_signals_osdep.h) = 0e72ee5595b937384284c884c2dd2a8be32e824c
 SHA1 (patch-byterun_Makefile) = b9b14b097904fbde4b738b89461991411e985ae1
-SHA1 (patch-configure) = 044373650be4bd63d064d4d6e5ef1bf0a304f1a3
+SHA1 (patch-configure) = 931f226df38ca647421c5ae0dbe00743797e69ee
 SHA1 (patch-debugger_Makefile.shared) = f0aac2e10b7ccf2e8e43bbbd3fd3e59e4dc4eeae
 SHA1 (patch-driver_compenv.ml) = 658e315bb08f8a1093f11c8474ac1e4ad73c8306
 SHA1 (patch-driver_main.ml) = 69a6f761ded38e0721a7aed1416a9f19a288d991
-SHA1 (patch-driver_main_args.ml) = d5acaf894eb6e44e4438dace7814f669f7154e63
-SHA1 (patch-driver_main_args.mli) = 5b883f780be0527dbfa993267b93799be5aaee14
+SHA1 (patch-driver_main_args.ml) = 4c6a6ec25f433974f9aab99b4f2ac9c884bb3b04
+SHA1 (patch-driver_main_args.mli) = 5e8164e4392c0dde6c6264eeed87c346128e1863
 SHA1 (patch-driver_optmain.ml) = 5ce77f1f906ce59cb533b4d25e4d57f7a70ab1b3
 SHA1 (patch-man_Makefile) = f4fcde662061e7e7e664ec42617f1e37f1fcf214
 SHA1 (patch-ocamldoc_Makefile) = ba4e2c76e1f2832988dd6933cd9d68a7ba3fb870
 SHA1 (patch-ocamldoc_odoc__messages.ml) = 77f650a5f34f40b9648a8d5091e9aa31efb5734b
-SHA1 (patch-otherlibs_Makefile) = 839485e6576dcee53420a1bb75f49f7168b12427
-SHA1 (patch-otherlibs_Makefile.shared) = 86cd1c0e47f918b0231fdc341f27e742a8ae74b5
-SHA1 (patch-otherlibs_bigarray_mmap__unix.c) = 0cc724cf172b9e389a0ec05a7a25ab1f45ede037
+SHA1 (patch-otherlibs_bigarray_mmap__unix.c) = 39979990e3463c944598ac0d0bf8a2c4a3f0d558
 SHA1 (patch-otherlibs_dynlink_Makefile) = f892254a5e5a01462ecbf68e45f9bfe5783158d3
 SHA1 (patch-otherlibs_systhreads_Makefile) = d731864c613383b36846cae4961b7a221bd6160e
 SHA1 (patch-otherlibs_threads_Makefile) = 47331a06a93eac68403fa2114495782430087f1e
 SHA1 (patch-stdlib_Makefile) = 67591b1809dd72aac446238491e371d135466734
 SHA1 (patch-stdlib_Makefile.shared) = dac87da3b0461a2c816b862af3a0c0bdf740b749
-SHA1 (patch-tools_Makefile.shared) = 782fb6e983e47f9670bd76203b9522a025c67587
-SHA1 (patch-tools_ocamlcp.ml) = af04492f2a1c3be5eedd8c41778db4bb1d74a5f5
+SHA1 (patch-tools_Makefile.shared) = 517137929c9941df305f7f14ba5f17ec9e012822
+SHA1 (patch-tools_ocamlcp.ml) = 299c84c169bacfe0315a986d739b3e61d2491289
 SHA1 (patch-tools_ocamlmklib) = 49ea077e3f77527336548ae6515d135461b83080
-SHA1 (patch-tools_ocamloptp.ml) = 9c2b6344b98fde8f4b7d6e2ee46f6bb6fbb4f507
+SHA1 (patch-tools_ocamloptp.ml) = bb6ba38e9bb260117d67491566474fda750d708b
 SHA1 (patch-utils_clflags.ml) = d16832fedb5db08d035f1661eaf9c3b48411bc69
 SHA1 (patch-utils_clflags.mli) = 381951d9583e032d3a520b68a8fe9f867ec49995

Index: pkgsrc/lang/ocaml/patches/patch-Makefile
diff -u pkgsrc/lang/ocaml/patches/patch-Makefile:1.8 pkgsrc/lang/ocaml/patches/patch-Makefile:1.9
--- pkgsrc/lang/ocaml/patches/patch-Makefile:1.8        Thu May  5 08:12:01 2016
+++ pkgsrc/lang/ocaml/patches/patch-Makefile    Fri Dec 30 11:15:00 2016
@@ -1,20 +1,9 @@
-$NetBSD: patch-Makefile,v 1.8 2016/05/05 08:12:01 jaapb Exp $
+$NetBSD: patch-Makefile,v 1.9 2016/12/30 11:15:00 jaapb Exp $
 
-Use BSD_INSTALL_* instead of mkdir and cp; remove ocamlrun before cold start
---- Makefile.orig      2016-04-01 12:53:41.000000000 +0000
+Use BSD_INSTALL_* instead of mkdir and cp
+--- Makefile.orig      2016-09-05 13:19:52.000000000 +0000
 +++ Makefile
-@@ -92,8 +92,10 @@ LIBFILES=stdlib.cma std_exit.cmo *.cmi c
- # Start up the system from the distribution compiler
- coldstart:
-       cd byterun; $(MAKE) all
-+      rm -f boot/ocamlrun$(EXE)
-       cp byterun/ocamlrun$(EXE) boot/ocamlrun$(EXE)
-       cd yacc; $(MAKE) all
-+      rm -f boot/ocamlyacc$(EXE)
-       cp yacc/ocamlyacc$(EXE) boot/ocamlyacc$(EXE)
-       cd stdlib; $(MAKE) COMPILER=../boot/ocamlc all
-       cd stdlib; cp $(LIBFILES) ../boot
-@@ -206,36 +208,36 @@ INSTALL_MANDIR=$(DESTDIR)$(MANDIR)
+@@ -210,36 +210,36 @@ INSTALL_MANDIR=$(DESTDIR)$(MANDIR)
  
  install:
        if test -d $(INSTALL_BINDIR); then : ; \
@@ -38,15 +27,15 @@ Use BSD_INSTALL_* instead of mkdir and c
          dllbigarray$(EXT_DLL) dllnums$(EXT_DLL) dllthreads$(EXT_DLL) \
          dllunix$(EXT_DLL) dllgraphics$(EXT_DLL) dllstr$(EXT_DLL)
        cd byterun; $(MAKE) install
--      cp ocamlc $(INSTALL_BINDIR)/ocamlc$(EXE)
+-      cp ocamlc $(INSTALL_BINDIR)/ocamlc.byte$(EXE)
 -      cp ocaml $(INSTALL_BINDIR)/ocaml$(EXE)
-+      $(BSD_INSTALL_SCRIPT) ocamlc $(INSTALL_BINDIR)/ocamlc$(EXE)
++      $(BSD_INSTALL_SCRIPT) ocamlc $(INSTALL_BINDIR)/ocamlc.byte$(EXE)
 +      $(BSD_INSTALL_SCRIPT) ocaml $(INSTALL_BINDIR)/ocaml$(EXE)
        cd stdlib; $(MAKE) install
--      cp lex/ocamllex $(INSTALL_BINDIR)/ocamllex$(EXE)
+-      cp lex/ocamllex $(INSTALL_BINDIR)/ocamllex.byte$(EXE)
 -      cp $(CAMLYACC)$(EXE) $(INSTALL_BINDIR)/ocamlyacc$(EXE)
 -      cp utils/*.cmi utils/*.cmt utils/*.cmti \
-+      $(BSD_INSTALL_SCRIPT) lex/ocamllex $(INSTALL_BINDIR)/ocamllex$(EXE)
++      $(BSD_INSTALL_SCRIPT) lex/ocamllex $(INSTALL_BINDIR)/ocamllex.byte$(EXE)
 +      $(BSD_INSTALL_SCRIPT) $(CAMLYACC)$(EXE) $(INSTALL_BINDIR)/ocamlyacc$(EXE)
 +      $(BSD_INSTALL_DATA) utils/*.cmi utils/*.cmt utils/*.cmti \
           parsing/*.cmi parsing/*.cmt parsing/*.cmti \
@@ -65,19 +54,21 @@ Use BSD_INSTALL_* instead of mkdir and c
        cd tools; $(MAKE) install
        -cd man; $(MAKE) install
        for i in $(OTHERLIBRARIES); do \
-@@ -243,20 +245,20 @@ install:
+@@ -247,7 +247,7 @@ install:
        done
        if test -n "$(WITH_OCAMLDOC)"; then (cd ocamldoc; $(MAKE) install); fi
        if test -n "$(WITH_DEBUGGER)"; then (cd debugger; $(MAKE) install); fi
 -      cp config/Makefile $(INSTALL_LIBDIR)/Makefile.config
 +      $(BSD_INSTALL_DATA) config/Makefile $(INSTALL_LIBDIR)/Makefile.config
-       if test -f ocamlopt; then $(MAKE) installopt; fi
- 
+       if test -f ocamlopt; then $(MAKE) installopt; else \
+          cd $(INSTALL_BINDIR); \
+          ln -sf ocamlc.byte$(EXE) ocamlc$(EXE); \
+@@ -257,14 +257,14 @@ install:
  # Installation of the native-code compiler
  installopt:
        cd asmrun; $(MAKE) install
--      cp ocamlopt $(INSTALL_BINDIR)/ocamlopt$(EXE)
-+      $(BSD_INSTALL_SCRIPT) ocamlopt $(INSTALL_BINDIR)/ocamlopt$(EXE)
+-      cp ocamlopt $(INSTALL_BINDIR)/ocamlopt.byte$(EXE)
++      $(BSD_INSTALL_SCRIPT) ocamlopt $(INSTALL_BINDIR)/ocamlopt.byte$(EXE)
        cd stdlib; $(MAKE) installopt
 -      cp middle_end/*.cmi middle_end/*.cmt middle_end/*.cmti \
 +      $(BSD_INSTALL_DATA) middle_end/*.cmi middle_end/*.cmt middle_end/*.cmti \
@@ -92,24 +83,26 @@ Use BSD_INSTALL_* instead of mkdir and c
        if test -n "$(WITH_OCAMLDOC)"; then (cd ocamldoc; $(MAKE) installopt); \
                else :; fi
        for i in $(OTHERLIBRARIES); \
-@@ -265,21 +267,21 @@ installopt:
+@@ -274,14 +274,14 @@ installopt:
        cd tools; $(MAKE) installopt
  
  installoptopt:
 -      cp ocamlc.opt $(INSTALL_BINDIR)/ocamlc.opt$(EXE)
 -      cp ocamlopt.opt $(INSTALL_BINDIR)/ocamlopt.opt$(EXE)
 -      cp lex/ocamllex.opt $(INSTALL_BINDIR)/ocamllex.opt$(EXE)
--      cp utils/*.cmx parsing/*.cmx typing/*.cmx bytecomp/*.cmx \
 +      $(BSD_INSTALL_PROGRAM) ocamlc.opt $(INSTALL_BINDIR)/ocamlc.opt$(EXE)
 +      $(BSD_INSTALL_PROGRAM) ocamlopt.opt $(INSTALL_BINDIR)/ocamlopt.opt$(EXE)
 +      $(BSD_INSTALL_PROGRAM) lex/ocamllex.opt $(INSTALL_BINDIR)/ocamllex.opt$(EXE)
+       cd $(INSTALL_BINDIR); \
+          ln -sf ocamlc.opt$(EXE) ocamlc$(EXE); \
+          ln -sf ocamlopt.opt$(EXE) ocamlopt$(EXE); \
+          ln -sf ocamllex.opt$(EXE) ocamllex$(EXE)
+-      cp utils/*.cmx parsing/*.cmx typing/*.cmx bytecomp/*.cmx \
 +      $(BSD_INSTALL_DATA) utils/*.cmx parsing/*.cmx typing/*.cmx bytecomp/*.cmx \
             driver/*.cmx asmcomp/*.cmx $(INSTALL_COMPLIBDIR)
--      cp compilerlibs/ocamlcommon.cmxa compilerlibs/ocamlcommon.a \
-+      $(BSD_INSTALL_DATA) compilerlibs/ocamlcommon.cmxa compilerlibs/ocamlcommon.a \
+       cp compilerlibs/ocamlcommon.cmxa compilerlibs/ocamlcommon.a \
           compilerlibs/ocamlbytecomp.cmxa compilerlibs/ocamlbytecomp.a \
-          compilerlibs/ocamloptcomp.cmxa compilerlibs/ocamloptcomp.a \
-          $(BYTESTART:.cmo=.cmx) $(BYTESTART:.cmo=.o) \
+@@ -290,9 +290,9 @@ installoptopt:
           $(OPTSTART:.cmo=.cmx) $(OPTSTART:.cmo=.o) \
           $(INSTALL_COMPLIBDIR)
        if test -f ocamlnat ; then \

Index: pkgsrc/lang/ocaml/patches/patch-configure
diff -u pkgsrc/lang/ocaml/patches/patch-configure:1.19 pkgsrc/lang/ocaml/patches/patch-configure:1.20
--- pkgsrc/lang/ocaml/patches/patch-configure:1.19      Fri Nov  4 20:11:40 2016
+++ pkgsrc/lang/ocaml/patches/patch-configure   Fri Dec 30 11:15:00 2016
@@ -1,20 +1,9 @@
-$NetBSD: patch-configure,v 1.19 2016/11/04 20:11:40 marino Exp $
+$NetBSD: patch-configure,v 1.20 2016/12/30 11:15:00 jaapb Exp $
 
-Several configure changes to work on and detect NetBSD (and some other OSes)
-See also: <http://caml.inria.fr/mantis/view.php?id=6900>
-
---- configure.orig     2016-04-25 13:36:01.000000000 +0000
+All kinds of OS-specific changes to configure
+--- configure.orig     2016-11-04 16:08:24.000000000 +0000
 +++ configure
-@@ -671,7 +671,7 @@ if test $with_sharedlibs = "yes"; then
-       mkmaindll="$flexlink -maindll"
-       shared_libraries_supported=true;;
-     *-*-linux-gnu|*-*-linux|*-*-freebsd[3-9]*|*-*-freebsd[1-9][0-9]*\
--    |*-*-openbsd*|*-*-netbsd*|*-*-gnu*|*-*-haiku*)
-+    |*-*-openbsd*|*-*-netbsd*|*-*-dragonfly|*-*-gnu*|*-*-haiku*)
-       sharedcccompopts="-fPIC"
-       mksharedlib="$bytecc -shared"
-       bytecclinkopts="$bytecclinkopts -Wl,-E"
-@@ -699,7 +699,10 @@ if test $with_sharedlibs = "yes"; then
+@@ -726,7 +726,10 @@ if test $with_sharedlibs = "yes"; then
          *gcc*)
            sharedcccompopts="-fPIC"
            if sh ./solaris-ld; then
@@ -26,7 +15,7 @@ See also: <http://caml.inria.fr/mantis/v
              byteccrpath="-R"
              mksharedlibrpath="-R"
            else
-@@ -726,7 +729,7 @@ if test $with_sharedlibs = "yes"; then
+@@ -753,7 +756,7 @@ if test $with_sharedlibs = "yes"; then
        byteccrpath="-Wl,-rpath,"
        mksharedlibrpath="-rpath "
        shared_libraries_supported=true;;
@@ -35,7 +24,7 @@ See also: <http://caml.inria.fr/mantis/v
        mksharedlib="$bytecc -bundle -flat_namespace -undefined suppress \
                     -read_only_relocs suppress"
        bytecccompopts="$dl_defs $bytecccompopts"
-@@ -768,11 +771,7 @@ if test $with_sharedlibs = "yes"; then
+@@ -795,11 +798,7 @@ if test $with_sharedlibs = "yes"; then
      i[3456]86-*-linux*)           natdynlink=true;;
      i[3456]86-*-gnu*)             natdynlink=true;;
      x86_64-*-linux*)              natdynlink=true;;
@@ -48,7 +37,7 @@ See also: <http://caml.inria.fr/mantis/v
      x86_64-*-darwin*)             natdynlink=true;;
      s390x*-*-linux*)              natdynlink=true;;
      powerpc*-*-linux*)            natdynlink=true;;
-@@ -785,6 +784,9 @@ if test $with_sharedlibs = "yes"; then
+@@ -813,6 +812,9 @@ if test $with_sharedlibs = "yes"; then
      x86_64-*-openbsd*)            natdynlink=true;;
      i[3456]86-*-netbsd*)          natdynlink=true;;
      x86_64-*-netbsd*)             natdynlink=true;;
@@ -58,7 +47,7 @@ See also: <http://caml.inria.fr/mantis/v
      i386-*-gnu0.3)                natdynlink=true;;
      i[3456]86-*-haiku*)           natdynlink=true;;
      arm*-*-linux*)                natdynlink=true;;
-@@ -814,6 +816,7 @@ case "$target" in
+@@ -842,6 +844,7 @@ case "$target" in
    sparc*-*-gnu*)                arch=sparc; system=gnu;;
    i[3456]86-*-linux*)           arch=i386; system=linux_`sh ./runtest elf.c`;;
    i[3456]86-*-*bsd*)            arch=i386; system=bsd_`sh ./runtest elf.c`;;
@@ -66,7 +55,7 @@ See also: <http://caml.inria.fr/mantis/v
    i[3456]86-*-nextstep*)        arch=i386; system=nextstep;;
    i[3456]86-*-solaris*)         if $arch64; then
                                    arch=amd64; system=solaris
-@@ -823,6 +826,7 @@ case "$target" in
+@@ -851,6 +854,7 @@ case "$target" in
    i[3456]86-*-haiku*)           arch=i386; system=beos;;
    i[3456]86-*-beos*)            arch=i386; system=beos;;
    i[3456]86-*-cygwin*)          arch=i386; system=cygwin;;
@@ -74,23 +63,7 @@ See also: <http://caml.inria.fr/mantis/v
    i[3456]86-*-darwin*)          if $arch64; then
                                    arch=amd64; system=macosx
                                  else
-@@ -848,12 +852,15 @@ case "$target" in
-   armv5te*-*-linux-gnueabi)     arch=arm; model=armv5te; system=linux_eabi;;
-   armv5*-*-linux-gnueabi)       arch=arm; model=armv5; system=linux_eabi;;
-   arm*-*-linux-gnueabi)         arch=arm; system=linux_eabi;;
-+  arm*-*-netbsd*)               arch=arm; system=netbsd;;
-   arm*-*-openbsd*)              arch=arm; system=bsd;;
-   zaurus*-*-openbsd*)           arch=arm; system=bsd;;
-   x86_64-*-linux*)              arch=amd64; system=linux;;
-   x86_64-*-gnu*)                arch=amd64; system=gnu;;
-   x86_64-*-freebsd*)            arch=amd64; system=freebsd;;
-   x86_64-*-netbsd*)             arch=amd64; system=netbsd;;
-+  x86_64-*-dragonfly*)          arch=amd64; system=dragonfly;;
-+  x86_64-*-solaris*)            arch=amd64; system=solaris;;
-   x86_64-*-openbsd*)            arch=amd64; system=openbsd;;
-   x86_64-*-darwin*)             arch=amd64; system=macosx;;
-   x86_64-*-mingw*)              arch=amd64; system=mingw;;
-@@ -894,7 +901,6 @@ case "$arch,$nativecc,$system,$model" in
+@@ -923,7 +927,6 @@ case "$arch,$nativecc,$system,$model" in
    *,*,nextstep,*)      nativecclinkopts="-posix";;
    *,*,rhapsody,*)      if $arch64; then partialld="ld -r -arch ppc64"; fi;;
    amd64,gcc*,macosx,*) partialld="ld -r -arch x86_64";;
@@ -98,35 +71,18 @@ See also: <http://caml.inria.fr/mantis/v
    power,gcc*,elf,ppc)   partialld="ld -r -m elf32ppclinux";;
    power,gcc*,elf,ppc64)   partialld="ld -r -m elf64ppc";;
    power,gcc*,elf,ppc64le)   partialld="ld -r -m elf64lppc";;
-@@ -912,8 +918,8 @@ case "$arch,$system" in
+@@ -941,8 +944,8 @@ case "$arch,$system" in
                      fi;;
    amd64,solaris)  as="${TOOLPREF}as --64"
                    aspp="${TOOLPREF}gcc -m64 -c";;
 -  i386,solaris)   as="${TOOLPREF}as"
--                  aspp="/usr/ccs/bin/${TOOLPREF}as -P";;
+-                  aspp="${TOOLPREF}gcc -c";;
 +  i386,solaris)   as="${TOOLPREF}as --32"
-+                  aspp="gcc -m32 -c";;
++                  aspp="${TOOLPREF}gcc -m32 -c";;
    power,elf)      if $arch64; then
                      as="${TOOLPREF}as -a64 -mppc64"
                      aspp="${TOOLPREF}gcc -m64 -c"
-@@ -930,6 +936,8 @@ case "$arch,$system" in
-                   esac;;
-   arm,freebsd)    as="${TOOLPREF}cc -c"
-                   aspp="${TOOLPREF}cc -c";;
-+  *,dragonfly)      as="${TOOLPREF}as"
-+                  aspp="${TOOLPREF}cc -c";;
-   *,freebsd)      as="${TOOLPREF}as"
-                   aspp="${TOOLPREF}cc -c";;
-   amd64,*|arm,*|arm64,*|i386,*|power,bsd*|sparc,*)
-@@ -953,6 +961,7 @@ case "$arch,$system" in
-     case "$nativecc" in gcc*) ;; *) cc_profile='-xpg';; esac;;
-   amd64,linux) profiling='prof';;
-   amd64,openbsd) profiling='prof';;
-+  amd64,dragonfly) profiling='prof';;
-   amd64,freebsd) profiling='prof';;
-   amd64,netbsd) profiling='prof';;
-   arm,netbsd) profiling='prof';;
-@@ -960,6 +969,7 @@ case "$arch,$system" in
+@@ -991,6 +994,7 @@ case "$arch,$system" in
    arm,linux*) profiling='prof';;
    power,elf) profiling='prof';;
    power,bsd*) profiling='prof';;
@@ -134,25 +90,7 @@ See also: <http://caml.inria.fr/mantis/v
    *) profiling='noprof';;
  esac
  
-@@ -1445,6 +1455,8 @@ if test "$pthread_wanted" = "yes"; then
-   case "$target" in
-     *-*-solaris*)  pthread_link="-lpthread -lposix4"
-                    pthread_caml_link="-cclib -lpthread -cclib -lposix4";;
-+    *-*-dragon*)   pthread_link="-pthread"
-+                   pthread_caml_link="-cclib -pthread";;
-     *-*-freebsd*)  pthread_link="-pthread"
-                    pthread_caml_link="-cclib -pthread";;
-     *-*-openbsd*)  pthread_link="-pthread"
-@@ -1461,7 +1473,7 @@ if test "$pthread_wanted" = "yes"; then
-     bytecccompopts="$bytecccompopts -D_REENTRANT"
-     nativecccompopts="$nativecccompopts -D_REENTRANT"
-     case "$target" in
--      *-*-freebsd*)
-+      *-*-freebsd*|*-*-dragonfly*)
-           bytecccompopts="$bytecccompopts -D_THREAD_SAFE"
-           nativecccompopts="$nativecccompopts -D_THREAD_SAFE";;
-       *-*-openbsd*)
-@@ -1505,6 +1517,8 @@ fi
+@@ -1554,6 +1558,8 @@ fi
  x11_include="not found"
  x11_link="not found"
  
@@ -161,7 +99,7 @@ See also: <http://caml.inria.fr/mantis/v
  if test -z "$x11_include_dir" -a -z "$x11_lib_dir"; then
    if pkg-config --exists x11 2>/dev/null; then
      x11_include=`pkg-config --cflags x11`
-@@ -1551,6 +1565,7 @@ if test "$x11_include" = "not found"; th
+@@ -1600,6 +1606,7 @@ if test "$x11_include" = "not found"; th
      /usr/XFree86/include/X11  \
                                \
      /usr/include              \
@@ -169,7 +107,7 @@ See also: <http://caml.inria.fr/mantis/v
      /usr/local/include        \
      /usr/unsupported/include  \
      /usr/athena/include       \
-@@ -1608,6 +1623,7 @@ if test "$x11_include" = "not found"; th
+@@ -1657,6 +1664,7 @@ if test "$x11_include" = "not found"; th
                            \
      /usr/lib64            \
      /usr/lib              \
@@ -177,18 +115,19 @@ See also: <http://caml.inria.fr/mantis/v
      /usr/local/lib        \
      /usr/unsupported/lib  \
      /usr/athena/lib       \
-@@ -1629,18 +1645,16 @@ if test "$x11_include" = "not found"; th
+@@ -1678,19 +1686,16 @@ if test "$x11_include" = "not found"; th
        if test $dir = /usr/lib; then
          x11_link="-lX11"
        else
 -        x11_libs="-L$dir"
 -        case "$target" in
+-          *-*-freebsd*|*-*-dragonfly*) x11_link="-L$dir -lX11";;
 -          *-kfreebsd*-gnu) x11_link="-L$dir -lX11";;
 -          *-*-*bsd*) x11_link="-R$dir -L$dir -lX11";;
 -          *) x11_link="-L$dir -lX11";;
 -        esac
-+                              x11_libs="-L$dir ${COMPILER_RPATH_FLAG}$dir"
-+                              x11_link="-L$dir ${COMPILER_RPATH_FLAG}$dir -lX11"
++        x11_libs="-L$dir ${COMPILER_RPATH_FLAG}$dir"
++        x11_link="-L$dir ${COMPILER_RPATH_FLAG}$dir -lX11"
        fi
        break
      fi

Index: pkgsrc/lang/ocaml/patches/patch-driver_main_args.ml
diff -u pkgsrc/lang/ocaml/patches/patch-driver_main_args.ml:1.4 pkgsrc/lang/ocaml/patches/patch-driver_main_args.ml:1.5
--- pkgsrc/lang/ocaml/patches/patch-driver_main_args.ml:1.4     Thu May  5 08:12:01 2016
+++ pkgsrc/lang/ocaml/patches/patch-driver_main_args.ml Fri Dec 30 11:15:00 2016
@@ -1,8 +1,8 @@
-$NetBSD: patch-driver_main_args.ml,v 1.4 2016/05/05 08:12:01 jaapb Exp $
+$NetBSD: patch-driver_main_args.ml,v 1.5 2016/12/30 11:15:00 jaapb Exp $
 
 pkgsrc_runtime flag
 
---- driver/main_args.ml.orig   2016-04-25 13:36:01.000000000 +0000
+--- driver/main_args.ml.orig   2016-09-05 13:19:52.000000000 +0000
 +++ driver/main_args.ml
 @@ -376,6 +376,10 @@ let mk_pack_opt f =
    "-pack", Arg.Unit f, " Package the given .cmx files into one .cmx"
@@ -15,27 +15,27 @@ pkgsrc_runtime flag
  let mk_pp f =
    "-pp", Arg.String f, "<command>  Pipe sources through preprocessor <command>"
  ;;
-@@ -767,6 +771,7 @@ module type Compiler_options = sig
+@@ -797,6 +801,7 @@ module type Compiler_options = sig
    val _output_obj : unit -> unit
    val _output_complete_obj : unit -> unit
    val _pack : unit -> unit
-+  val _pkgsrc_runtime : unit -> unit
++      val _pkgsrc_runtime : unit -> unit
+   val _plugin : string -> unit
    val _pp : string -> unit
    val _principal : unit -> unit
-   val _no_principal : unit -> unit
-@@ -955,6 +960,7 @@ struct
+@@ -988,6 +993,7 @@ struct
      mk_output_obj F._output_obj;
      mk_output_complete_obj F._output_complete_obj;
      mk_pack_byt F._pack;
-+    mk_pkgsrc_runtime F._pkgsrc_runtime;
++              mk_pkgsrc_runtime F._pkgsrc_runtime;
      mk_pp F._pp;
      mk_ppx F._ppx;
-     mk_principal F._principal;
-@@ -1108,6 +1114,7 @@ struct
+     mk_plugin F._plugin;
+@@ -1148,6 +1154,7 @@ struct
      mk_output_complete_obj F._output_complete_obj;
      mk_p F._p;
      mk_pack_opt F._pack;
-+    mk_pkgsrc_runtime F._pkgsrc_runtime;
++              mk_pkgsrc_runtime F._pkgsrc_runtime;
+     mk_plugin F._plugin;
      mk_pp F._pp;
      mk_ppx F._ppx;
-     mk_principal F._principal;
Index: pkgsrc/lang/ocaml/patches/patch-driver_main_args.mli
diff -u pkgsrc/lang/ocaml/patches/patch-driver_main_args.mli:1.4 pkgsrc/lang/ocaml/patches/patch-driver_main_args.mli:1.5
--- pkgsrc/lang/ocaml/patches/patch-driver_main_args.mli:1.4    Thu May  5 08:12:01 2016
+++ pkgsrc/lang/ocaml/patches/patch-driver_main_args.mli        Fri Dec 30 11:15:00 2016
@@ -1,14 +1,14 @@
-$NetBSD: patch-driver_main_args.mli,v 1.4 2016/05/05 08:12:01 jaapb Exp $
+$NetBSD: patch-driver_main_args.mli,v 1.5 2016/12/30 11:15:00 jaapb Exp $
 
 pkgsrc_runtime flag
 
---- driver/main_args.mli.orig  2016-04-25 13:36:01.000000000 +0000
+--- driver/main_args.mli.orig  2016-09-05 13:19:52.000000000 +0000
 +++ driver/main_args.mli
-@@ -82,6 +82,7 @@ module type Compiler_options = sig
+@@ -84,6 +84,7 @@ module type Compiler_options = sig
    val _output_obj : unit -> unit
    val _output_complete_obj : unit -> unit
    val _pack : unit -> unit
 +  val _pkgsrc_runtime : unit -> unit
+   val _plugin : string -> unit
    val _pp : string -> unit
    val _principal : unit -> unit
-   val _no_principal : unit -> unit
Index: pkgsrc/lang/ocaml/patches/patch-tools_Makefile.shared
diff -u pkgsrc/lang/ocaml/patches/patch-tools_Makefile.shared:1.4 pkgsrc/lang/ocaml/patches/patch-tools_Makefile.shared:1.5
--- pkgsrc/lang/ocaml/patches/patch-tools_Makefile.shared:1.4   Thu May  5 08:12:01 2016
+++ pkgsrc/lang/ocaml/patches/patch-tools_Makefile.shared       Fri Dec 30 11:15:00 2016
@@ -1,57 +1,49 @@
-$NetBSD: patch-tools_Makefile.shared,v 1.4 2016/05/05 08:12:01 jaapb Exp $
+$NetBSD: patch-tools_Makefile.shared,v 1.5 2016/12/30 11:15:00 jaapb Exp $
 
 Use BSD_INSTALL_* instead of mkdir and cp
 
---- tools/Makefile.shared.orig 2016-04-01 12:53:41.000000000 +0000
+--- tools/Makefile.shared.orig 2016-09-05 13:19:52.000000000 +0000
 +++ tools/Makefile.shared
-@@ -66,9 +66,9 @@ INSTALL_BINDIR=$(DESTDIR)$(BINDIR)
- INSTALL_LIBDIR=$(DESTDIR)$(LIBDIR)
- 
- install::
--      cp ocamldep "$(INSTALL_BINDIR)/ocamldep$(EXE)"
-+      $(BSD_INSTALL_SCRIPT) ocamldep "$(INSTALL_BINDIR)/ocamldep$(EXE)"
-       if test -f ocamldep.opt; then \
--        cp ocamldep.opt "$(INSTALL_BINDIR)/ocamldep.opt$(EXE)"; else :; fi
-+        $(BSD_INSTALL_PROGRAM) ocamldep.opt "$(INSTALL_BINDIR)/ocamldep.opt$(EXE)"; else :; fi
- 
- # The profiler
- 
-@@ -95,13 +95,13 @@ ocamloptp: ocamloptp.cmo
+@@ -140,10 +140,10 @@ $(call byte_and_opt,ocamloptp,$(ocamlcp_
  opt:: profiling.cmx
  
  install::
--      cp ocamlprof "$(INSTALL_BINDIR)/ocamlprof$(EXE)"
--      cp ocamlcp "$(INSTALL_BINDIR)/ocamlcp$(EXE)"
--      cp ocamloptp "$(INSTALL_BINDIR)/ocamloptp$(EXE)"
--      cp profiling.cmi profiling.cmo "$(INSTALL_LIBDIR)"
-+      $(BSD_INSTALL_SCRIPT) ocamlprof "$(INSTALL_BINDIR)/ocamlprof$(EXE)"
-+      $(BSD_INSTALL_SCRIPT) ocamlcp "$(INSTALL_BINDIR)/ocamlcp$(EXE)"
-+      $(BSD_INSTALL_SCRIPT) ocamloptp "$(INSTALL_BINDIR)/ocamloptp$(EXE)"
-+      $(BSD_INSTALL_DATA) profiling.cmi profiling.cmo "$(INSTALL_LIBDIR)"
+-      cp -- profiling.cmi profiling.cmo "$(INSTALL_LIBDIR)"
++      $(BSD_INSTALL_DATA) -- profiling.cmi profiling.cmo "$(INSTALL_LIBDIR)"
  
  installopt::
--      cp profiling.cmx profiling.$(O) "$(INSTALL_LIBDIR)"
-+      $(BSD_INSTALL_DATA) profiling.cmx profiling.$(O) "$(INSTALL_LIBDIR)"
+-      cp -- profiling.cmx profiling.$(O) "$(INSTALL_LIBDIR)"
++      $(BSD_INSTALL_DATA) -- profiling.cmx profiling.$(O) "$(INSTALL_LIBDIR)"
  
- clean::
-       rm -f ocamlprof ocamlcp ocamloptp
-@@ -114,7 +114,7 @@ ocamlmklib: ocamlmklibconfig.cmo ocamlmk
-                ocamlmklib.cmo
+ # To help building mixed-mode libraries (OCaml + C)
  
+@@ -230,9 +230,9 @@ endif
  install::
--      cp ocamlmklib "$(INSTALL_BINDIR)/ocamlmklib$(EXE)"
-+      $(BSD_INSTALL_SCRIPT) ocamlmklib "$(INSTALL_BINDIR)/ocamlmklib$(EXE)"
- 
- clean::
-       rm -f ocamlmklib
-@@ -287,8 +287,8 @@ objinfo: objinfo_helper$(EXE) $(OBJINFO)
-       $(CAMLC) -o objinfo $(OBJINFO)
+       for i in $(install_files); \
+       do \
+-        cp -- "$$i" "$(INSTALL_BINDIR)/$$i.byte$(EXE)" && \
++        $(BSD_INSTALL_SCRIPT) -- "$$i" "$(INSTALL_BINDIR)/$$i.byte$(EXE)" && \
+         if test -f "$$i".opt; then \
+-          cp -- "$$i.opt" "$(INSTALL_BINDIR)/$$i.opt$(EXE)" && \
++          $(BSD_INSTALL_PROGRAM) -- "$$i.opt" "$(INSTALL_BINDIR)/$$i.opt$(EXE)" && \
+           (cd "$(INSTALL_BINDIR)/" && $(LN) "$$i.opt$(EXE)" "$$i$(EXE)"); \
+         else \
+           (cd "$(INSTALL_BINDIR)/" && $(LN) "$$i.byte$(EXE)" "$$i$(EXE)"); \
+@@ -329,7 +329,7 @@ OBJINFO=../compilerlibs/ocamlcommon.cma 
+ $(call byte_and_opt,ocamlobjinfo,$(OBJINFO),objinfo_helper$(EXE))
  
  install::
--      cp objinfo "$(INSTALL_BINDIR)/ocamlobjinfo$(EXE)"
 -      cp objinfo_helper$(EXE) "$(INSTALL_LIBDIR)/objinfo_helper$(EXE)"
-+      $(BSD_INSTALL_SCRIPT) objinfo "$(INSTALL_BINDIR)/ocamlobjinfo$(EXE)"
 +      $(BSD_INSTALL_SCRIPT) objinfo_helper$(EXE) "$(INSTALL_LIBDIR)/objinfo_helper$(EXE)"
  
- clean::
-       rm -f objinfo objinfo_helper$(EXE)
+ # Scan object files for required primitives
+ $(call byte_and_opt,primreq,config.cmo primreq.cmo,)
+@@ -356,7 +356,7 @@ $(call byte_and_opt,cmpbyt,$(CMPBYT),)
+ 
+ ifeq "$(RUNTIMEI)" "true"
+ install::
+-      cp ocaml-instr-graph ocaml-instr-report "$(INSTALL_BINDIR)/"
++      $(BSD_INSTALL_SCRIPT) ocaml-instr-graph ocaml-instr-report "$(INSTALL_BINDIR)/"
+ endif
+ 
+ # Common stuff

Index: pkgsrc/lang/ocaml/patches/patch-otherlibs_bigarray_mmap__unix.c
diff -u pkgsrc/lang/ocaml/patches/patch-otherlibs_bigarray_mmap__unix.c:1.1 pkgsrc/lang/ocaml/patches/patch-otherlibs_bigarray_mmap__unix.c:1.2
--- pkgsrc/lang/ocaml/patches/patch-otherlibs_bigarray_mmap__unix.c:1.1 Wed Jul  6 14:19:51 2016
+++ pkgsrc/lang/ocaml/patches/patch-otherlibs_bigarray_mmap__unix.c     Fri Dec 30 11:15:00 2016
@@ -1,15 +1,15 @@
-$NetBSD: patch-otherlibs_bigarray_mmap__unix.c,v 1.1 2016/07/06 14:19:51 jperkin Exp $
+$NetBSD: patch-otherlibs_bigarray_mmap__unix.c,v 1.2 2016/12/30 11:15:00 jaapb Exp $
 
 Avoid incompatible _XOPEN_SOURCE definition on SunOS.
 
---- otherlibs/bigarray/mmap_unix.c.orig        2016-04-25 13:36:01.000000000 +0000
+--- otherlibs/bigarray/mmap_unix.c.orig        2016-09-05 13:19:52.000000000 +0000
 +++ otherlibs/bigarray/mmap_unix.c
-@@ -15,7 +15,9 @@
+@@ -17,7 +17,9 @@
  
  /* Needed (under Linux at least) to get pwrite's prototype in unistd.h.
     Must be defined before the first system .h is included. */
 +#ifndef __sun
- #define _XOPEN_SOURCE 500
+ #define _XOPEN_SOURCE 600
 +#endif
  
  #include <stddef.h>

Index: pkgsrc/lang/ocaml/patches/patch-tools_ocamlcp.ml
diff -u pkgsrc/lang/ocaml/patches/patch-tools_ocamlcp.ml:1.3 pkgsrc/lang/ocaml/patches/patch-tools_ocamlcp.ml:1.4
--- pkgsrc/lang/ocaml/patches/patch-tools_ocamlcp.ml:1.3        Thu May  5 08:12:01 2016
+++ pkgsrc/lang/ocaml/patches/patch-tools_ocamlcp.ml    Fri Dec 30 11:15:00 2016
@@ -1,14 +1,14 @@
-$NetBSD: patch-tools_ocamlcp.ml,v 1.3 2016/05/05 08:12:01 jaapb Exp $
+$NetBSD: patch-tools_ocamlcp.ml,v 1.4 2016/12/30 11:15:00 jaapb Exp $
 
 pkgsrc_runtime flag
 
---- tools/ocamlcp.ml.orig      2016-04-25 13:36:01.000000000 +0000
+--- tools/ocamlcp.ml.orig      2016-09-05 13:19:52.000000000 +0000
 +++ tools/ocamlcp.ml
 @@ -86,6 +86,7 @@ module Options = Main_args.Make_bytecomp
    let _output_obj = option "-output-obj"
    let _output_complete_obj = option "-output-complete-obj"
    let _pack = option "-pack"
-+  let _pkgsrc_runtime = option "-pkgsrc-runtime"
++      let _pkgsrc_runtime = option "-pkgsrc-runtime"
+   let _plugin = option_with_arg "-plugin"
    let _pp _s = incompatible "-pp"
    let _ppx _s = incompatible "-ppx"
-   let _principal = option "-principal"
Index: pkgsrc/lang/ocaml/patches/patch-tools_ocamloptp.ml
diff -u pkgsrc/lang/ocaml/patches/patch-tools_ocamloptp.ml:1.3 pkgsrc/lang/ocaml/patches/patch-tools_ocamloptp.ml:1.4
--- pkgsrc/lang/ocaml/patches/patch-tools_ocamloptp.ml:1.3      Thu May  5 08:12:01 2016
+++ pkgsrc/lang/ocaml/patches/patch-tools_ocamloptp.ml  Fri Dec 30 11:15:00 2016
@@ -1,14 +1,14 @@
-$NetBSD: patch-tools_ocamloptp.ml,v 1.3 2016/05/05 08:12:01 jaapb Exp $
+$NetBSD: patch-tools_ocamloptp.ml,v 1.4 2016/12/30 11:15:00 jaapb Exp $
 
 pkgsrc_runtime flag
 
---- tools/ocamloptp.ml.orig    2016-04-25 13:36:01.000000000 +0000
+--- tools/ocamloptp.ml.orig    2016-09-05 13:19:52.000000000 +0000
 +++ tools/ocamloptp.ml
 @@ -108,6 +108,7 @@ module Options = Main_args.Make_optcomp_
    let _output_complete_obj = option "-output-complete-obj"
    let _p = option "-p"
    let _pack = option "-pack"
-+  let _pkgsrc_runtime = option "-pkgsrc-runtime"
++      let _pkgsrc_runtime = option "-pkgsrc-runtime"
+   let _plugin = option_with_arg "-plugin"
    let _pp _s = incompatible "-pp"
    let _ppx _s = incompatible "-ppx"
-   let _principal = option "-principal"



Home | Main Index | Thread Index | Old Index