[Ecls-list] Issue with ext:system on MacOS (ECHILD)
Juan Jose Garcia-Ripoll
juanjose.garciaripoll at googlemail.com
Tue Apr 19 19:44:29 UTC 2011
On Thu, Apr 14, 2011 at 12:42 AM, Sylvain Ageneau <ageneau at gmail.com> wrote:
> I'm compiling ecl with:
> ABI=32 CFLAGS="-m32" LDFLAGS="-m32" ./configure --prefix=/opt/ecl/tmp
> --enable-threads=yes
>
> This test fails about 50% of the time:
>
> (defun safe-system (string)
> ;; (cmpnote "Invoking external command:~% ~A~%" string)
> (let ((result (ext:system string)))
> (unless (zerop result)
> (cerror "Continues anyway."
> "(SYSTEM ~S) returned non-zero value ~D"
> string result))
> result))
>
> (safe-system "sh -c 'echo OK'")
> (si:quit 0)
OS X's system() routine seems to be broken. Our SIGCHLD handler consumes the
return status of the process it starts and thus it fails. I have fixed this
by removing all uses of system(), replacing them with EXT:RUN-PROCESS
Juanjo
--
Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/ecl-devel/attachments/20110419/ba1829d6/attachment.html>
More information about the ecl-devel
mailing list