[MacPorts] #24296: lp_solve parallel build issue
MacPorts
noreply at macports.org
Tue Mar 30 21:39:51 PDT 2010
#24296: lp_solve parallel build issue
--------------------------------------+-------------------------------------
Reporter: ryandesign@… | Owner: ryandesign@…
Type: defect | Status: closed
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: fixed | Keywords:
Port: lp_solve |
--------------------------------------+-------------------------------------
Changes (by ryandesign@…):
* status: new => closed
* resolution: => fixed
Comment:
The lp_solve build system doesn't come with a Makefile, [changeset:62149
so I made one], to allow the "lp_solve" and "lpsolve55" components of
lp_solve to be built in parallel. The problem is that the "ccc.osx" script
in both of these components runs some tests, and does so by creating the
files /tmp/platform.c and /tmp/isnan.c, compiling them to /tmp/platform
and /tmp/isnan, running those programs to determine their result, and then
deleting them. When built in parallel, both components try to do these
tests at about the same time. By the time the second component gets around
to deleting these temporary files, the first component has already deleted
them, causing the second component to experience a file-not-found error
and not continue with the rest of the script and build the software, thus
resulting in the second component's platform directory and its contents
not existing at destroot time.
The solution is for lp_solve not to write files directly into /tmp, but
instead into a temporary directory with a random name, such as would be
created by "mktemp -d". I've implemented this fix in r65749 and will send
the patch upstream for consideration.
--
Ticket URL: <http://trac.macports.org/ticket/24296#comment:1>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list