Hi,

here are some fixes and a new CONFIGURE_STYLE for lang/ocaml.

* add an oasis_setup CONFIGURE_STYLE, see the port-modules doc below.

* Set CONFIGURE_ARGS += --enable-tests depending on NO_TEST in oasis 
  CONFIGURE_STYLE.

* install ocamlbuild.1

* two patches already committed upstream for the next release, but I'd 
  like to have them now.

OK?

Christopher


Index: port-modules.5
===================================================================
RCS file: /cvs/src/share/man/man5/port-modules.5,v
retrieving revision 1.181
diff -u -p -r1.181 port-modules.5
--- port-modules.5      8 Sep 2014 05:04:40 -0000       1.181
+++ port-modules.5      10 Oct 2014 16:54:08 -0000
@@ -858,6 +858,9 @@ property is set.
 When
 .Ev CONFIGURE_STYLE is set to `oasis',
 overrides for the do\-build, do\-install and do\-test targets are added.
+`oasis_setup' can be used in addition to `oasis' to re-run `oasis setup' to
+regenerate the _tags, myocamlbuild, setup.ml and various other files.
+This is similar in functionality to autoconf/automake.
 .It lang/php/pecl
 Used for ports for PHP PECL extensions.
 Sets default



Index: Makefile
===================================================================
RCS file: /cvs/ports/lang/ocaml/Makefile,v
retrieving revision 1.66
diff -u -p -r1.66 Makefile
--- Makefile    4 Sep 2014 15:56:26 -0000       1.66
+++ Makefile    10 Oct 2014 16:45:40 -0000
@@ -11,7 +11,7 @@ COMMENT-graphics = OCaml Graphics librar
 # Do check that the ports that depend on it still work, or repair them. 
 # Don't forget to bump version in ocaml.port.mk, too!
 VERSION=4.02.0
-REVISION=0
+REVISION=1
 
 PKGNAME-main =         ocaml-${VERSION}
 PKGNAME-graphics =     ocaml-graphics-${VERSION}
@@ -72,6 +72,9 @@ post-install:
                ${PREFIX}/share/doc/ocaml/html
        @${INSTALL_DATA} ${WRKDIR}/htmlman/libref/* \
                ${PREFIX}/share/doc/ocaml/html/libref
+       ${INSTALL_DATA} \
+               ${WRKSRC}/ocamlbuild/man/ocamlbuild.1 \
+               ${PREFIX}/man/man1/
        @${INSTALL_DATA} \
                ${WRKSRC}/{LICENSE,Changes} \
                ${PREFIX}/share/doc/ocaml
Index: ocaml.port.mk
===================================================================
RCS file: /cvs/ports/lang/ocaml/ocaml.port.mk,v
retrieving revision 1.29
diff -u -p -r1.29 ocaml.port.mk
--- ocaml.port.mk       8 Sep 2014 05:10:10 -0000       1.29
+++ ocaml.port.mk       10 Oct 2014 16:45:40 -0000
@@ -57,6 +57,13 @@ INSTALL_TARGET = -install
 TEST_TARGET ?= -test
 _MODOASIS_SETUP = ${WRKDIR}/oasis_setup.byte
 
+. if ${NO_TEST:L} == "no"
+CONFIGURE_ARGS +=      --enable-tests
+. else
+CONFIGURE_ARGS +=      --disable-tests
+. endif
+
+
 ######################################################################
 # CONFIGURE
 .if ${PROPERTIES:Mocaml_native}
@@ -64,7 +71,12 @@ _MODOASIS_OCAMLC = ocamlc.opt
 .else
 _MODOASIS_OCAMLC = ocamlc
 .endif
-MODOASIS_configure = \
+
+. if ${CONFIGURE_STYLE:L:Moasis_setup}
+BUILD_DEPENDS += sysutils/oasis
+MODOASIS_configure += cd ${WRKSRC} && oasis setup &&
+. endif
+MODOASIS_configure += \
        ${_MODOASIS_OCAMLC} -o ${_MODOASIS_SETUP} ${WRKSRC}/setup.ml && \
        cd ${WRKSRC} && \
        rm setup.cm[io] && \
@@ -74,6 +86,7 @@ MODOASIS_configure = \
        --infodir ${PREFIX}/info \
        --override pkg_name ${PKGNAME:C/-[0-9].*//} \
        ${CONFIGURE_ARGS}
+
 
 ######################################################################
 # BUILD
Index: patches/patch-ocamlbuild_ocaml_specific_ml
===================================================================
RCS file: patches/patch-ocamlbuild_ocaml_specific_ml
diff -N patches/patch-ocamlbuild_ocaml_specific_ml
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-ocamlbuild_ocaml_specific_ml  10 Oct 2014 16:45:40 -0000
@@ -0,0 +1,15 @@
+$OpenBSD$
+
+PR#6544: the bin_annot flag is only effective when compiling. It should be
+enabled when packing, too.
+
+--- ocamlbuild/ocaml_specific.ml.orig  Fri Aug 29 09:35:50 2014
++++ ocamlbuild/ocaml_specific.ml       Mon Oct  6 16:42:59 2014
+@@ -669,6 +669,7 @@ flag ["ocaml"; "link"; "byte"; "output_obj"] (A"-outpu
+ flag ["ocaml"; "dtypes"; "compile"] (A "-dtypes");;
+ flag ["ocaml"; "annot"; "compile"] (A "-annot");;
+ flag ["ocaml"; "bin_annot"; "compile"] (A "-bin-annot");;
++flag ["ocaml"; "bin_annot"; "pack"] (A "-bin-annot");;
+ flag ["ocaml"; "safe_string"; "compile"] (A "-safe-string");;
+ flag ["ocaml"; "safe_string"; "infer_interface"] (A "-safe-string");;
+ flag ["ocaml"; "unsafe_string"; "compile"] (A "-unsafe-string");;
Index: patches/patch-otherlibs_threads_Makefile
===================================================================
RCS file: patches/patch-otherlibs_threads_Makefile
diff -N patches/patch-otherlibs_threads_Makefile
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-otherlibs_threads_Makefile    10 Oct 2014 16:45:40 -0000
@@ -0,0 +1,43 @@
+$OpenBSD$
+
+PR#6544: Bytes and CamlinternalFormat missing from threads stdlib.cma
+
+--- otherlibs/threads/Makefile.orig    Tue May 27 08:10:47 2014
++++ otherlibs/threads/Makefile Mon Sep 22 14:04:13 2014
+@@ -27,21 +27,21 @@ CAML_OBJS=thread.cmo mutex.cmo condition.cmo event.cmo
+ 
+ LIB=../../stdlib
+ 
+-LIB_OBJS=$(LIB)/camlinternalFormatBasics.cmo pervasives.cmo \
+-  $(LIB)/array.cmo $(LIB)/list.cmo $(LIB)/char.cmo $(LIB)/string.cmo        \
+-  $(LIB)/sys.cmo $(LIB)/sort.cmo marshal.cmo $(LIB)/obj.cmo                 \
+-  $(LIB)/int32.cmo $(LIB)/int64.cmo $(LIB)/nativeint.cmo                    \
+-  $(LIB)/lexing.cmo $(LIB)/parsing.cmo $(LIB)/set.cmo $(LIB)/map.cmo        \
+-  $(LIB)/stack.cmo $(LIB)/queue.cmo $(LIB)/camlinternalLazy.cmo             \
+-  $(LIB)/lazy.cmo $(LIB)/stream.cmo $(LIB)/buffer.cmo                       \
+-  $(LIB)/printf.cmo $(LIB)/arg.cmo $(LIB)/printexc.cmo $(LIB)/gc.cmo        \
+-  $(LIB)/digest.cmo $(LIB)/random.cmo $(LIB)/hashtbl.cmo                    \
+-  $(LIB)/format.cmo $(LIB)/scanf.cmo $(LIB)/callback.cmo \
+-  $(LIB)/camlinternalOO.cmo              \
+-  $(LIB)/oo.cmo $(LIB)/camlinternalMod.cmo $(LIB)/genlex.cmo                \
+-  $(LIB)/weak.cmo $(LIB)/filename.cmo                   \
+-  $(LIB)/complex.cmo $(LIB)/arrayLabels.cmo $(LIB)/listLabels.cmo           \
+-  $(LIB)/stringLabels.cmo $(LIB)/stdLabels.cmo $(LIB)/moreLabels.cmo
++LIB_OBJS=$(LIB)/camlinternalFormatBasics.cmo pervasives.cmo           \
++  $(LIB)/array.cmo $(LIB)/list.cmo $(LIB)/char.cmo $(LIB)/bytes.cmo   \
++  $(LIB)/string.cmo $(LIB)/sys.cmo $(LIB)/sort.cmo $(LIB)/marshal.cmo \
++  $(LIB)/obj.cmo $(LIB)/int32.cmo $(LIB)/int64.cmo                    \
++  $(LIB)/nativeint.cmo $(LIB)/lexing.cmo $(LIB)/parsing.cmo           \
++  $(LIB)/set.cmo $(LIB)/map.cmo $(LIB)/stack.cmo $(LIB)/queue.cmo     \
++  $(LIB)/camlinternalLazy.cmo $(LIB)/lazy.cmo $(LIB)/stream.cmo               
\
++  $(LIB)/buffer.cmo $(LIB)/camlinternalFormat.cmo $(LIB)/printf.cmo   \
++  $(LIB)/arg.cmo $(LIB)/printexc.cmo $(LIB)/gc.cmo $(LIB)/digest.cmo  \
++  $(LIB)/random.cmo $(LIB)/hashtbl.cmo $(LIB)/format.cmo              \
++  $(LIB)/scanf.cmo $(LIB)/callback.cmo $(LIB)/camlinternalOO.cmo      \
++  $(LIB)/oo.cmo $(LIB)/camlinternalMod.cmo $(LIB)/genlex.cmo          \
++  $(LIB)/weak.cmo $(LIB)/filename.cmo $(LIB)/complex.cmo              \
++  $(LIB)/arrayLabels.cmo $(LIB)/listLabels.cmo $(LIB)/bytesLabels.cmo \
++  $(LIB)/stringLabels.cmo $(LIB)/moreLabels.cmo $(LIB)/stdLabels.cmo
+ 
+ UNIXLIB=../unix
+ 
Index: pkg/PLIST-main
===================================================================
RCS file: /cvs/ports/lang/ocaml/pkg/PLIST-main,v
retrieving revision 1.3
diff -u -p -r1.3 PLIST-main
--- pkg/PLIST-main      3 Sep 2014 17:48:19 -0000       1.3
+++ pkg/PLIST-main      10 Oct 2014 16:45:41 -0000
@@ -411,6 +411,7 @@ lib/ocaml/weak.cmi
 lib/ocaml/weak.ml
 lib/ocaml/weak.mli
 @man man/man1/ocaml.1
+@man man/man1/ocamlbuild.1
 @man man/man1/ocamlc.1
 @man man/man1/ocamlc.opt.1
 @man man/man1/ocamlcp.1



-- 
http://gmerlin.de
OpenPGP: http://gmerlin.de/christopher.pub
F190 D013 8F01 AA53 E080  3F3C F17F B0A1 D44E 4FEE

Attachment: signature.asc
Description: PGP signature

Reply via email to