diff --git a/devel/ocaml-findlib/Makefile b/devel/ocaml-findlib/Makefile index 047ea5c78bd5..e9d8817fd437 100644 --- a/devel/ocaml-findlib/Makefile +++ b/devel/ocaml-findlib/Makefile @@ -1,60 +1,68 @@ # Created by: ijliao PORTNAME= findlib -PORTVERSION= 1.7.1 +PORTVERSION= 1.7.3 CATEGORIES= devel MASTER_SITES= http://download.camlcity.org/download/ PKGNAMEPREFIX= ocaml- MAINTAINER= hrs@FreeBSD.org COMMENT= OCaml package manager LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE USES= gmake USE_OCAML= yes USE_OCAML_CAMLP4=yes USE_OCAML_FINDLIB=yes OCAMLFIND_DEPEND= # Avoid dependency loop HAS_CONFIGURE= yes CONFIGURE_ARGS= -bindir "${PREFIX}/bin" -mandir "${PREFIX}/man" \ -sitelib "${PREFIX}/${OCAML_SITELIBDIR}" \ -config "${PREFIX}/etc/findlib.conf" MAKE_ENV= OCAML_LIBDIR="${PREFIX}/${OCAML_LIBDIR}" ALL_TARGET= all opt MAKE_JOBS_UNSAFE= yes DOCSDIR= ${PREFIX}/share/doc/ocaml/${PORTNAME} PORTDOCS= * +# Num library is not part of OCaml core since v4.06 +.if exists(${LOCALBASE}/lib/ocaml/num.cmi) +PLIST_SUB+= NUM="" +.else +PLIST_SUB+= NUM="@comment " +.endif + OPTIONS_DEFINE= TOOLBOX DOCS OPTIONS_DEFAULT=TOOLBOX OPTIONS_SUB= yes + TOOLBOX_DESC= Include toolbox interface (requires OCaml with TK) TOOLBOX_CONFIGURE_ON= -with-toolbox TOOLBOX_RUN_DEPENDS= labltk:x11-toolkits/ocaml-labltk TOOLBOX_BUILD_DEPENDS= ${TOOLBOX_RUN_DEPENDS} .include post-install: cd ${STAGEDIR}${PREFIX} && \ ${STRIP_CMD} bin/ocamlfind \ ${OCAML_SITELIBDIR}/findlib/findlib.cmxs \ ${OCAML_SITELIBDIR}/findlib/findlib_dynload.cmxs \ ${OCAML_SITELIBDIR}/findlib/findlib_top.cmxs # Spacetime profiling is only available for native code on 64-bit targets .if ${ARCH} == armv7 || ${ARCH} == i386 || ${ARCH} == powerpc || ${ARCH} == powerpcspe @${REINPLACE_CMD} -e '/raw_spacetime/d' ${TMPPLIST} .endif post-install-TOOLBOX-on: ${CHMOD} 755 ${STAGEDIR}${PREFIX}/bin/ocamlfind \ ${STAGEDIR}${PREFIX}/${OCAML_SITELIBDIR}/findlib/make_wizard post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} cd ${WRKSRC}/doc && ${COPYTREE_SHARE} \* ${STAGEDIR}${DOCSDIR} \ "! -regex .*ref-man.*" .include diff --git a/devel/ocaml-findlib/distinfo b/devel/ocaml-findlib/distinfo index bf3555519a1e..967f18478c77 100644 --- a/devel/ocaml-findlib/distinfo +++ b/devel/ocaml-findlib/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1484407844 -SHA256 (findlib-1.7.1.tar.gz) = 5d4b9a79e9abf8be0b509f6b8cf5696221cbe14fa2fbb2bb352342755fd15eef -SIZE (findlib-1.7.1.tar.gz) = 256883 +TIMESTAMP = 1496673173 +SHA256 (findlib-1.7.3.tar.gz) = d196608fa23c36c2aace27d5ef124a815132a5fcea668d41fa7d6c1ca246bd8b +SIZE (findlib-1.7.3.tar.gz) = 257703 diff --git a/devel/ocaml-findlib/files/patch-Makefile b/devel/ocaml-findlib/files/patch-Makefile index 95459974581b..55fa741e5c06 100644 --- a/devel/ocaml-findlib/files/patch-Makefile +++ b/devel/ocaml-findlib/files/patch-Makefile @@ -1,64 +1,64 @@ --- Makefile.orig 2016-11-18 13:04:45 UTC +++ Makefile @@ -17,14 +17,14 @@ opt: for p in $(PARTS); do ( cd src/$$p; $(MAKE) opt ) || exit; done install: - mkdir -p "$(prefix)$(OCAMLFIND_BIN)" - mkdir -p "$(prefix)$(OCAMLFIND_MAN)" + mkdir -p "$(DESTDIR)$(prefix)$(OCAMLFIND_BIN)" + mkdir -p "$(DESTDIR)$(prefix)$(OCAMLFIND_MAN)" $(MAKE) install-config for p in $(PARTS); do ( cd src/$$p; $(MAKE) install ); done $(MAKE) install-meta - cd src/findlib; $(MAKE) install-num-top + test -z "$(NUMTOP)" || { cd src/findlib; $(MAKE) install-num-top; } if [ $(INSTALL_CAMLP4) -eq 1 ]; then \ - cp tools/safe_camlp4 "$(prefix)$(OCAMLFIND_BIN)"; \ -+ ${BSD_INSTALL_SCRIPT} tools/safe_camlp4 "$(DESTDIR)$(prefix)$(OCAMLFIND_BIN)"; \ ++ ${BSD_INSTALL_SCRIPT} tools/safe_camlp4 "$(DESTDIR)$(prefix)$(OCAMLFIND_BIN)"; \ fi $(MAKE) install-doc @@ -55,7 +55,7 @@ findlib.conf: findlib.conf.in USE_CYGPATH="$(USE_CYGPATH)"; \ export USE_CYGPATH; \ cat findlib.conf.in | \ -- tools/patch '@SITELIB@' '$(OCAML_SITELIB)' >findlib.conf -+ tools/patch '@SITELIB@' '$(OCAML_SITELIB):$(OCAML_LIBDIR)' >findlib.conf +- $(SH) tools/patch '@SITELIB@' '$(OCAML_SITELIB)' >findlib.conf ++ $(SH) tools/patch '@SITELIB@' '$(OCAML_SITELIB):$(OCAML_LIBDIR)' >findlib.conf if ./tools/cmd_from_same_dir ocamlc; then \ echo 'ocamlc="ocamlc.opt"' >>findlib.conf; \ fi @@ -71,9 +71,9 @@ findlib.conf: findlib.conf.in .PHONY: install-doc install-doc: - mkdir -p "$(prefix)$(OCAMLFIND_MAN)/man1" "$(prefix)$(OCAMLFIND_MAN)/man3" "$(prefix)$(OCAMLFIND_MAN)/man5" - -cp doc/ref-man/ocamlfind.1 "$(prefix)$(OCAMLFIND_MAN)/man1" - -cp doc/ref-man/META.5 doc/ref-man/site-lib.5 doc/ref-man/findlib.conf.5 "$(prefix)$(OCAMLFIND_MAN)/man5" + mkdir -p "$(DESTDIR)$(prefix)$(OCAMLFIND_MAN)/man1" "$(DESTDIR)$(prefix)$(OCAMLFIND_MAN)/man3" "$(DESTDIR)$(prefix)$(OCAMLFIND_MAN)/man5" + -cp doc/ref-man/ocamlfind.1 "$(DESTDIR)$(prefix)$(OCAMLFIND_MAN)/man1" + -cp doc/ref-man/META.5 doc/ref-man/site-lib.5 doc/ref-man/findlib.conf.5 "$(DESTDIR)$(prefix)$(OCAMLFIND_MAN)/man5" .PHONY: uninstall-doc uninstall-doc: @@ -86,7 +86,7 @@ uninstall-doc: .PHONY: install-meta install-meta: - for x in `ls site-lib-src`; do if [ -f "site-lib-src/$$x/META" ]; then mkdir -p "$(prefix)$(OCAML_SITELIB)/$$x"; cp site-lib-src/$$x/META "$(prefix)$(OCAML_SITELIB)/$$x"; fi; done + for x in `ls site-lib-src`; do if [ -f "site-lib-src/$$x/META" ]; then mkdir -p "$(DESTDIR)$(prefix)$(OCAML_SITELIB)/$$x"; cp site-lib-src/$$x/META "$(DESTDIR)$(prefix)$(OCAML_SITELIB)/$$x"; fi; done .PHONY: uninstall-meta uninstall-meta: @@ -94,9 +94,9 @@ uninstall-meta: .PHONY: install-config install-config: - mkdir -p "`dirname \"$(prefix)$(OCAMLFIND_CONF)\"`" - @if [ -f "$(prefix)$(OCAMLFIND_CONF)" ]; then echo "!!! Keeping old $(prefix)$(OCAMLFIND_CONF) !!!"; fi - test -f "$(prefix)$(OCAMLFIND_CONF)" || cp findlib.conf "$(prefix)$(OCAMLFIND_CONF)" + mkdir -p "`dirname \"$(DESTDIR)$(prefix)$(OCAMLFIND_CONF)\"`" + @if [ -f "$(DESTDIR)$(prefix)$(OCAMLFIND_CONF)" ]; then echo "!!! Keeping old $(DESTDIR)$(prefix)$(OCAMLFIND_CONF) !!!"; fi -+ test -f "$(DESTDIR)$(prefix)$(OCAMLFIND_CONF)" || ${BSD_INSTALL_DATA} findlib.conf "$(DESTDIR)$(prefix)$(OCAMLFIND_CONF)" ++ test -f "$(DESTDIR)$(prefix)$(OCAMLFIND_CONF)" || ${BSD_INSTALL_DATA} findlib.conf "$(DESTDIR)$(prefix)$(OCAMLFIND_CONF)" .PHONY: uninstall-config uninstall-config: diff --git a/devel/ocaml-findlib/files/patch-configure b/devel/ocaml-findlib/files/patch-configure new file mode 100644 index 000000000000..4b41a7aba575 --- /dev/null +++ b/devel/ocaml-findlib/files/patch-configure @@ -0,0 +1,12 @@ +--- configure.orig 2016-11-18 13:04:45 UTC ++++ configure +@@ -516,7 +516,8 @@ fi + + # bytes? + +-if [ -f "${ocaml_core_stdlib}/bytes.cmi" ]; then ++if [ -f "${ocaml_core_stdlib}/bytes.cmi" -o \ ++ -f "${ocaml_core_stdlib}/stdlib__bytes.cmi" ]; then + echo "bytes: found, installing fake library" + lbytes="bytes" + cbytes=0 diff --git a/devel/ocaml-findlib/files/patch-src_findlib_Makefile b/devel/ocaml-findlib/files/patch-src_findlib_Makefile index 1f91a4d5ba77..ed355991105d 100644 --- a/devel/ocaml-findlib/files/patch-src_findlib_Makefile +++ b/devel/ocaml-findlib/files/patch-src_findlib_Makefile @@ -1,42 +1,42 @@ --- src/findlib/Makefile.orig 2016-11-18 13:04:46 UTC +++ src/findlib/Makefile @@ -19,6 +19,7 @@ OCAMLDEP = ocamldep OCAMLLEX = ocamllex #CAMLP4O = camlp4 pa_o.cmo pa_op.cmo pr_o.cmo -- #CAMLP4O = camlp4 pa_o.cmo pa_op.cmo pr_dump.cmo -- +OCAML_LIBBIN=${PREFIX}/lib/ocaml OBJECTS = findlib_config.cmo fl_split.cmo fl_metatoken.cmo fl_meta.cmo \ @@ -119,23 +120,23 @@ clean: ocamlfind$(EXEC_SUFFIX) ocamlfind_opt$(EXEC_SUFFIX) install: all - mkdir -p "$(prefix)$(OCAML_SITELIB)/$(NAME)" - mkdir -p "$(prefix)$(OCAMLFIND_BIN)" - test $(INSTALL_TOPFIND) -eq 0 || cp topfind "$(prefix)$(OCAML_CORE_STDLIB)" + mkdir -p "$(DESTDIR)$(prefix)$(OCAML_SITELIB)/$(NAME)" + mkdir -p "$(DESTDIR)$(prefix)$(OCAMLFIND_BIN)" + test $(INSTALL_TOPFIND) -eq 0 || cp topfind "$(DESTDIR)$(prefix)$(OCAML_CORE_STDLIB)" - files=`$(TOP)/tools/collect_files $(TOP)/Makefile.config findlib.cmi findlib.mli findlib.cma findlib.cmxa findlib.a findlib.cmxs topfind.cmi topfind.mli fl_package_base.mli fl_package_base.cmi fl_metascanner.mli fl_metascanner.cmi fl_metatoken.cmi findlib_top.cma findlib_top.cmxa findlib_top.a findlib_top.cmxs findlib_dynload.cma findlib_dynload.cmxa findlib_dynload.a findlib_dynload.cmxs fl_dynload.mli fl_dynload.cmi META` && \ + files=`$(SH) $(TOP)/tools/collect_files $(TOP)/Makefile.config findlib.cmi findlib.mli findlib.cma findlib.cmxa findlib.a findlib.cmxs topfind.cmi topfind.mli fl_package_base.mli fl_package_base.cmi fl_metascanner.mli fl_metascanner.cmi fl_metatoken.cmi findlib_top.cma findlib_top.cmxa findlib_top.a findlib_top.cmxs findlib_dynload.cma findlib_dynload.cmxa findlib_dynload.a findlib_dynload.cmxs fl_dynload.mli fl_dynload.cmi META` && \ - cp $$files "$(prefix)$(OCAML_SITELIB)/$(NAME)" + cp $$files "$(DESTDIR)$(prefix)$(OCAML_SITELIB)/$(NAME)" f="ocamlfind$(EXEC_SUFFIX)"; { test -f ocamlfind_opt$(EXEC_SUFFIX) && f="ocamlfind_opt$(EXEC_SUFFIX)"; }; \ - cp $$f "$(prefix)$(OCAMLFIND_BIN)/ocamlfind$(EXEC_SUFFIX)" + cp $$f "$(DESTDIR)$(prefix)$(OCAMLFIND_BIN)/ocamlfind$(EXEC_SUFFIX)" # the following "if" block is only needed for 4.00beta2 if [ $(OCAML_REMOVE_DIRECTORY) -eq 0 -a -f "$(OCAML_CORE_STDLIB)/compiler-libs/topdirs.cmi" ]; then \ cd "$(OCAML_CORE_STDLIB)/compiler-libs/"; \ - cp topdirs.cmi toploop.cmi "$(prefix)$(OCAML_SITELIB)/$(NAME)/"; \ + cp topdirs.cmi toploop.cmi "$(DESTDIR)$(prefix)$(OCAML_SITELIB)/$(NAME)/"; \ fi install-num-top: - mkdir -p "$(prefix)$(OCAML_SITELIB)/num-top" + mkdir -p "$(DESTDIR)$(prefix)$(OCAML_SITELIB)/num-top" cp num_top.cma num_top.cmi num_top_printers.cmi \ - "$(prefix)$(OCAML_SITELIB)/num-top" + "$(DESTDIR)$(prefix)$(OCAML_SITELIB)/num-top" # Note: uninstall-num-top is part of the removal of the META files. diff --git a/devel/ocaml-findlib/pkg-plist b/devel/ocaml-findlib/pkg-plist index 8d0cad0e5353..f9614c2d3703 100644 --- a/devel/ocaml-findlib/pkg-plist +++ b/devel/ocaml-findlib/pkg-plist @@ -1,53 +1,53 @@ bin/ocamlfind bin/safe_camlp4 %%ETCDIR%%.conf %%OCAML_SITELIBDIR%%/bigarray/META %%OCAML_SITELIBDIR%%/bytes/META %%OCAML_SITELIBDIR%%/camlp4/META %%OCAML_SITELIBDIR%%/compiler-libs/META %%OCAML_SITELIBDIR%%/dynlink/META %%OCAML_SITELIBDIR%%/findlib/META %%OCAML_SITELIBDIR%%/findlib/Makefile.config %%OCAML_SITELIBDIR%%/findlib/findlib.a %%OCAML_SITELIBDIR%%/findlib/findlib.cma %%OCAML_SITELIBDIR%%/findlib/findlib.cmi %%OCAML_SITELIBDIR%%/findlib/findlib.cmxa %%OCAML_SITELIBDIR%%/findlib/findlib.cmxs %%OCAML_SITELIBDIR%%/findlib/findlib.mli %%OCAML_SITELIBDIR%%/findlib/findlib_dynload.a %%OCAML_SITELIBDIR%%/findlib/findlib_dynload.cma %%OCAML_SITELIBDIR%%/findlib/findlib_dynload.cmxa %%OCAML_SITELIBDIR%%/findlib/findlib_dynload.cmxs %%OCAML_SITELIBDIR%%/findlib/findlib_top.a %%OCAML_SITELIBDIR%%/findlib/findlib_top.cma %%OCAML_SITELIBDIR%%/findlib/findlib_top.cmxa %%OCAML_SITELIBDIR%%/findlib/findlib_top.cmxs %%OCAML_SITELIBDIR%%/findlib/fl_dynload.cmi %%OCAML_SITELIBDIR%%/findlib/fl_dynload.mli %%OCAML_SITELIBDIR%%/findlib/fl_metascanner.cmi %%OCAML_SITELIBDIR%%/findlib/fl_metascanner.mli %%OCAML_SITELIBDIR%%/findlib/fl_metatoken.cmi %%OCAML_SITELIBDIR%%/findlib/fl_package_base.cmi %%OCAML_SITELIBDIR%%/findlib/fl_package_base.mli %%TOOLBOX%%%%OCAML_SITELIBDIR%%/findlib/make_wizard %%TOOLBOX%%%%OCAML_SITELIBDIR%%/findlib/make_wizard.pattern %%OCAML_SITELIBDIR%%/findlib/topfind.cmi %%OCAML_SITELIBDIR%%/findlib/topfind.mli %%OCAML_SITELIBDIR%%/graphics/META %%TOOLBOX%%%%OCAML_SITELIBDIR%%/labltk/META -%%OCAML_SITELIBDIR%%/num-top/META -%%OCAML_SITELIBDIR%%/num-top/num_top.cma -%%OCAML_SITELIBDIR%%/num-top/num_top.cmi -%%OCAML_SITELIBDIR%%/num-top/num_top_printers.cmi -%%OCAML_SITELIBDIR%%/num/META +%%NUM%%%%OCAML_SITELIBDIR%%/num-top/META +%%NUM%%%%OCAML_SITELIBDIR%%/num-top/num_top.cma +%%NUM%%%%OCAML_SITELIBDIR%%/num-top/num_top.cmi +%%NUM%%%%OCAML_SITELIBDIR%%/num-top/num_top_printers.cmi +%%NUM%%%%OCAML_SITELIBDIR%%/num/META %%OCAML_SITELIBDIR%%/ocamldoc/META %%OCAML_SITELIBDIR%%/raw_spacetime/META %%OCAML_SITELIBDIR%%/stdlib/META %%OCAML_SITELIBDIR%%/str/META %%OCAML_SITELIBDIR%%/threads/META %%OCAML_SITELIBDIR%%/unix/META lib/ocaml/topfind man/man1/ocamlfind.1.gz man/man5/META.5.gz man/man5/findlib.conf.5.gz man/man5/site-lib.5.gz