pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/42157: math/lapack versus gfortran

>Number:         42157
>Category:       pkg
>Synopsis:       math/lapack needs gfortran fixes
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Oct 06 17:45:00 +0000 2009
>Originator:     Dan McMahill
>Release:        NetBSD 5.0_STABLE
System: NetBSD pkghacker 5.0_STABLE NetBSD 5.0_STABLE (PKGHACKER) #1: Sat Jun 
20 20:42:58 EDT 2009 
root@pkghacker:/usr/cvs/src/sys/arch/i386/compile/PKGHACKER i386
Architecture: i386
Machine: i386

math/lapack has 3 minor issues which need to be addressed to be compatible with 
gfortran (available in lang/gcc44).
As an aside, we need math/lapack to work with gfortran because some programs 
like scilab require gfortran for their
newer releases.

1)  we now need to use the intrinsic instead of external etime().

In patches/patch-ac we'd change EXT_ETIME to INT_ETIME.  However, this may need 
to be a switch
based on the actual fortran compiler used.  

2)  early on in the build on i386, the single precision tests hang.  Adding 
to FFLAGS in math/lapack/Makefile like:

FFLAGS+=                -ffloat-store

gets this to work again, but this is both i386 specific and gcc specific.

3) I didn't have a problem with this, but I noticed that patch-ad has:

       ${LIBTOOL} --mode=compile --tag=CC ${FC} ${FFLAGS} -c $<

in particular note that we are using the CC tag to libtool with *fortran*.  
Shouldn't that be
the F77 tag?  Of course that assumes we even had fortran installed properly 
before libtool which is
a bit of a chicken and egg issue.




I built the gcc44 package into PREFIX=/opt/gcc44 and then pointed to this for 
my pkgsrc builds.


Figure out how to automatically use the old behavior versus the patched code 
here depending on the
fortran compiler in use.


 pkgsrc as of 2009-10-06

Home | Main Index | Thread Index | Old Index