[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