Date: Tue, 19 Aug 2014 13:55:11 +0000 (UTC) From: John Marino <marino@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r365380 - in head/lang/ocaml: . files Message-ID: <201408191355.s7JDtB4c051670@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: marino Date: Tue Aug 19 13:55:11 2014 New Revision: 365380 URL: http://svnweb.freebsd.org/changeset/ports/365380 QAT: https://qat.redports.org/buildarchive/r365380/ Log: lang/ocaml: Improve jobcontrol in ocamlbuild Apply patch for upstream issue 0005371. It improves job control in ocamlbuild and fixes some faulty sigpipe affecting ports build with ocamlbuild. PR: 189710 Submitted by: edwin (skylable.com) patch by: glondu Approved by: maintainer (Michael Gruenewald) Added: head/lang/ocaml/files/patch-ocamlbuild (contents, props changed) Modified: head/lang/ocaml/Makefile Modified: head/lang/ocaml/Makefile ============================================================================== --- head/lang/ocaml/Makefile Tue Aug 19 13:45:19 2014 (r365379) +++ head/lang/ocaml/Makefile Tue Aug 19 13:55:11 2014 (r365380) @@ -4,7 +4,7 @@ # for committer: bump PORTREVISION for math/facile whenever ocaml gets updated PORTNAME= ocaml PORTVERSION= 4.01.0 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= lang MASTER_SITES= http://caml.inria.fr/pub/distrib/${DISTNAME:R}/ \ ${MASTER_SITE_GENTOO} Added: head/lang/ocaml/files/patch-ocamlbuild ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/ocaml/files/patch-ocamlbuild Tue Aug 19 13:55:11 2014 (r365380) @@ -0,0 +1,24 @@ +--- ocamlbuild/ocamlbuild_executor.ml.orig 2011-10-06 11:39:50.358159931 +0300 ++++ ocamlbuild/ocamlbuild_executor.ml 2011-10-06 12:48:32.966029354 +0300 +@@ -200,7 +200,11 @@ + try + read fd u 0 (String.length u) + with +- | Unix.Unix_error(_,_,_) -> 0 ++ | Unix.Unix_error(e,_,_) -> ++ let msg = error_message e in ++ display (fun oc -> fp oc ++ "Error while reading stdout/stderr: %s\n" msg); ++ 0 + in + if m = 0 then + if job.job_dying then +@@ -236,6 +240,8 @@ + (*display begin fun oc -> fp oc "Terminating job %a\n%!" print_job_id job.job_id; end;*) + + decr jobs_active; ++ clear_nonblock (doi job.job_stdout); ++ clear_nonblock (doi job.job_stderr); (* we would get EAGAIN below otherwise *) + do_read ~loop:true (doi job.job_stdout) job; + do_read ~loop:true (doi job.job_stderr) job; + outputs := FDM.remove (doi job.job_stdout) (FDM.remove (doi job.job_stderr) !outputs);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201408191355.s7JDtB4c051670>