[Numpy-discussion] numarray patch: use Apple's vecLib on Mac OS X

Todd Miller jmiller at stsci.edu
Mon Nov 22 08:09:05 CST 2004


On Mon, 2004-11-22 at 06:49, Andrea Riciputi wrote:
> Hi,
> I've noticed your patch for MacOS X, and I think that a better solution  
> should use sys.platform instead of a path search, since Apple could  
> always change its framework location. I've also removed the  
> VECLIB_PATH/Headers from the include path because AFAIK Apple gcc  
> already knows where to search for the vecLib framework. Here it is a  
> diff output between my addons.py and the CVS one.

Not to look a patch-horse in the mouth, but IMHO,  the sys.platform idea
is good but the VECLIB_PATH elimination maybe less so.  The reason I
question the VECLIB_PATH change is that we're removing explicit and
generally harmless extra information in exchange for two assumptions: 
(1) gcc knows the path already  (2) the numarray Mac user is using gcc. 
Other opinions?  Mac users please speak up if you think the  VECLIB_PATH
change is a good one or it won't get done.

Thanks for the suggestions.  I'll make the sys.platform change later
today.  

Regards,
Todd

> HTH,
>    Andrea.
> 
> 
> > ** /Users/andrea/Installs/numarray-1.1.1/addons-mine.py        Mon Nov  
> > 22 12:39:58 2004
> > --- /Users/andrea/Installs/numarray-1.1.1/addons-cvs.py Fri Nov 19  
> > 10:40:45 2004
> > ***************
> > *** 63,73 ****
> >
> >       # lapack_dirs = ['/home/jmiller/work/lib']
> >
> > !     if sys.platform == "darwin":
> > !         lapack_include_dirs =   
> > ["Packages/LinearAlgebra2/Src",'Include/numarray']
> >           lapack_libs = []
> >           lapack_dirs = []
> > -         lapack_link_args = ['-framework', 'vecLib']
> >
> >   ADDONS_DATA_FILES = [('numarray/ma', ['Packages/MA/Legal.htm'])]
> >
> > --- 63,74 ----
> >
> >       # lapack_dirs = ['/home/jmiller/work/lib']
> >
> > !     VECLIB_PATH = '/System/Library/Frameworks/vecLib.framework'
> > !     if os.path.exists(VECLIB_PATH):
> > !         lapack_link_args = ['-framework', 'vecLib']
> > !         lapack_include_dirs.append( os.path.join(VECLIB_PATH,  
> > 'Headers'))
> >           lapack_libs = []
> >           lapack_dirs = []
> >
> >   ADDONS_DATA_FILES = [('numarray/ma', ['Packages/MA/Legal.htm'])]
> 
> 
> On 18 Nov 2004, at 16:53, Andrew Straw wrote:
> 
> > Hi all,
> >
> > Here's a patch for numarray (against current CVS) to build using  
> > Apple's vecLib (optimized BLAS library) on Mac OS X.  This was  
> > inspired by/stolen from Bob Ippolito's recent Numeric patch (  
> > http://mail.python.org/pipermail/pythonmac-sig/2004-November/
> > 012077.html ). To build with vecLib, set the environment variable  
> > USE_LAPACK=1.  I can test any modifications needed to incorporate this  
> > into the main release.  After building with this patch (both with and  
> > without vecLib) I ran Lib/testall.py with no problems -- are there  
> > more tests I should do?
> >
> > Cheers!
> > Andrew
> >
> > Index: addons.py
> > ===================================================================
> > RCS file: /cvsroot/numpy/numarray/addons.py,v
> > retrieving revision 1.8
> > diff -c -r1.8 addons.py
> > *** addons.py	3 Nov 2004 15:06:33 -0000	1.8
> > --- addons.py	18 Nov 2004 15:43:01 -0000
> > ***************
> > *** 24,31 ****
> > --- 24,33 ----
> >           os.path.join('Packages/LinearAlgebra2/Src',  
> > 'zlapack_lite.c'),
> >           os.path.join('Packages/LinearAlgebra2/Src', 'dlapack_lite.c')
> >           ]
> > +     lapack_include_dirs = ["Packages/LinearAlgebra2/Src",  
> > 'Include/numarray']
> >       lapack_libs = []
> >       lapack_dirs = []
> > +     lapack_link_args = []
> >   else:
> >       sourcelist = [
> >           os.path.join('Packages/LinearAlgebra2/Src',  
> > 'lapack_litemodule.c'),
> > ***************
> > *** 53,58 ****
> > --- 55,70 ----
> >
> >       # lapack_dirs = ['/home/jmiller/work/lib']
> >
> > +     lapack_link_args = []
> > +     lapack_include_dirs = ["Packages/LinearAlgebra2/Src",  
> > 'Include/numarray']
> > +
> > +     VECLIB_PATH = '/System/Library/Frameworks/vecLib.framework'
> > +     if os.path.exists(VECLIB_PATH):
> > +         lapack_link_args = ['-framework', 'vecLib']
> > +         lapack_include_dirs.append( os.path.join(VECLIB_PATH,  
> > 'Headers'))
> > +         lapack_libs = []
> > +         lapack_dirs = []
> > +
> >   ADDONS_DATA_FILES = [('numarray/ma', ['Packages/MA/Legal.htm'])]
> >
> >   ADDONS_PACKAGES = ["numarray.convolve",
> > ***************
> > *** 102,110 ****
> >                 include_dirs =  
> > ['Packages/FFT2/Include','Include/numarray']),
> >       Extension('numarray.linear_algebra.lapack_lite2',
> >                 sourcelist,
> > !               include_dirs = ["Packages/LinearAlgebra2/Src",  
> > 'Include/numarray'],
> >                 library_dirs = lapack_dirs,
> > !               libraries = lapack_libs),
> >       Extension("numarray.random_array.ranlib2",
> >                 ["Packages/RandomArray2/Src/ranlib.c",
> >                  "Packages/RandomArray2/Src/ranlibmodule.c",
> > --- 114,124 ----
> >                 include_dirs =  
> > ['Packages/FFT2/Include','Include/numarray']),
> >       Extension('numarray.linear_algebra.lapack_lite2',
> >                 sourcelist,
> > !               include_dirs = lapack_include_dirs,
> >                 library_dirs = lapack_dirs,
> > !               libraries = lapack_libs,
> > !               extra_link_args = lapack_link_args,
> > !               ),
> >       Extension("numarray.random_array.ranlib2",
> >                 ["Packages/RandomArray2/Src/ranlib.c",
> >                  "Packages/RandomArray2/Src/ranlibmodule.c",
> >
> >
> >
> > -------------------------------------------------------
> > This SF.Net email is sponsored by: InterSystems CACHE
> > FREE OODBMS DOWNLOAD - A multidimensional database that combines
> > robust object and relational technologies, making it a perfect match
> > for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
> > _______________________________________________
> > Numpy-discussion mailing list
> > Numpy-discussion at lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/numpy-discussion
> >
> 
> 
> 
> -------------------------------------------------------
> SF email is sponsored by - The IT Product Guide
> Read honest & candid reviews on hundreds of IT Products from real users.
> Discover which products truly live up to the hype. Start reading now. 
> http://productguide.itmanagersjournal.com/
> _______________________________________________
> Numpy-discussion mailing list
> Numpy-discussion at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/numpy-discussion
-- 





More information about the Numpy-discussion mailing list