Opened 9 years ago

Closed 9 years ago

#33904 closed submission (fixed)

yorick-soy (new port) -- Sparse matrix Operations for Yorick

Reported by: paumard Owned by: neverpanic (Clemens Lang)
Priority: Normal Milestone:
Component: ports Version: 2.0.4
Keywords: Cc:
Port:

Description

Hi,

I include a bugfix from github.

Regards, Thibaut.

Attachments (3)

patch-soy.i.diff (6.0 KB) - added by paumard 9 years ago.
Portfile (1.4 KB) - added by paumard 9 years ago.
patch not needed anymore
check.i (11.5 KB) - added by paumard 9 years ago.
"yorick -batch check.i" with the package installed

Download all attachments as: .zip

Change History (7)

Changed 9 years ago by paumard

Attachment: patch-soy.i.diff added

Changed 9 years ago by paumard

Attachment: Portfile added

patch not needed anymore

comment:1 Changed 9 years ago by paumard

Hi,

Upstream made a new release yesterday: I updated the Portfile accordingly. The patch is not needed anymore (it was backported from their git anyway). I also attach a test file (also taken from git) which can be ran with:

yorick -batch check.i

Regards, Thibaut.

Changed 9 years ago by paumard

Attachment: check.i added

"yorick -batch check.i" with the package installed

comment:2 Changed 9 years ago by neverpanic (Clemens Lang)

Owner: changed from macports-tickets@… to cal@…
Status: newassigned

The port builds fine, but uses llvm-gcc-4.2 to build, where my default compiler should be clang on Lion with Xcode 4.3. I'm not sure how yorick-soy finds its compiler. The Makefile references some yorick paths in /usr (that should probably be replaced with $prefix, right?)

Also, one of the tests in check.i fails:

[…]
testing ruoxv(a,v) (float)....ERROR OVERFLOW!
[…]
 
Finished!

The script encountered 1 (recoverable) error(s).
The largest error by absolute value was 5.722e-06.
 If this is much greater than the single precision error
 tolerance (1e-06), then something went seriously wrong.
 (if it is close, then no worries)

comment:3 Changed 9 years ago by paumard

Thanks for your help,

  • yorick-soy normally uses the same compiler as yorick. The value is cached in ${prefix}/lib/yorick/Make.cfg but can be overridden with build.args-append CC=${configure.cc} . I wonder whether I should do that for all the yorick plug-ins (in addition to making sure that Yorick itself actually uses the right compiler, which is on top of my todo list).
  • the paths in /usr are modified during configure (they end-up pointing to ${prefix}/lib/yorick/...)
  • 5.722e-06 is still of the order of the single precision error tolerance (1e-06): "if it is close, then no worries"

Regards, Thibaut.

comment:4 Changed 9 years ago by neverpanic (Clemens Lang)

Resolution: fixed
Status: assignedclosed

We have a similar situation with perl and python in MacPorts, which we stumbled upon during the Xcode update to 4.3. AFAIK we've come to the conclusion it would be best if all modules would force the correct compiler from a MacPorts point of view (because otherwise a change of compiler forces you to rebuild all modules). This isn't as easy for the perl and python modules just because of their sheer number, but it would probably good to do this for the yorick modules now, because they haven't grown that large in numbers yet and changing that still is a manageable effort.

Commited in r92470 with the following changes:

  • Added build.args-append CC=${configure.cc} PKG_CFLAGS=\"${configure.cflags}\" PKG_LDFLAGS=\"${configure.ldflags}\"

Let me know if the change is OK for you and you plan to change the yorick modules to use the MacPorts-defined compiler as outlined above.

Note: See TracTickets for help on using tickets.