public
Description: Haskell LAPACK bindings
Homepage:
Clone URL: git://github.com/patperry/lapack.git
Patrick Perry (author)
Sat Jan 24 19:47:25 -0800 2009
commit  65e96e1cbfebad34e8fdb4aaf251640971c9be50
tree    1a6a02ee7ce91c93d4f7e424cf51d594b951c922
parent  25c44387e8cd62b370738fcec7842160dc8d1c35
lapack /
name age message
file .gitignore Mon Jan 19 17:21:26 -0800 2009 add test framework [Patrick Perry]
file COPYING Sat Jan 03 17:38:35 -0800 2009 Initial import [Patrick Perry]
file NEWS Sat Jan 10 23:45:54 -0800 2009 project initialization [Patrick Perry]
file README Sat Jan 17 09:22:53 -0800 2009 add warning about thread-safety [Patrick Perry]
file Setup.lhs Sat Jan 03 17:38:35 -0800 2009 Initial import [Patrick Perry]
file TODO Sat Jan 10 23:45:54 -0800 2009 project initialization [Patrick Perry]
directory cbits/ Loading commit data...
file configure.ac Mon Jan 19 17:21:26 -0800 2009 add test framework [Patrick Perry]
file lapack.buildinfo.in Sat Jan 10 23:47:18 -0800 2009 add @LDFLAGS@ [Patrick Perry]
file lapack.cabal
directory lib/
directory m4/ Sat Jan 03 17:38:35 -0800 2009 Initial import [Patrick Perry]
directory tests/
README
Building
========

To build the package, there is no need to run the configure script.  Just
use the standard cabal commands:

    runhaskell Setup.lhs configure
    runhaskell Setup.lhs build
    runhaskell Setup.lhs install
    
The package uses a script to find what BLAS and LAPACK libraries to link with.
To link with a custom BLAS, add the "--with-blas=<lib>" argument to --configure-option; to link with a custom LAPACK, 
add the the
"--with-lapack=<lib>" argument.  For example, do

    runhaskell Setup.lhs configure --configure-option="--with-blas=<lib>"

To build this package from the repository, first run

    aclocal -I m4
    autoreconf


Thread-Safety
=============
The thread safety of the library depends on the thread-safety of the underlying
LAPACK implementation.  You should note that the reference implementation of
LAPACK (which is what ATLAS uses) is *not* thread safe.  Any routine which
modifies a read-only argument and then restores it is problematic.  Potentially
dangerous functions which get used in the library include the following:
DORMQR, ZUNMQR.