=======================================================================
                      README PLASMA Installer
=======================================================================

Version: 1.2
Release date: July 9th 2010
University Of Tennessee

==========================================================================
INTRODUCTION


The PLASMA installer is a set of python scripts developed to ease the
installation of the PLASMA library. It can automatically download,
configure and compile the PLASMA including its external libraries
dependencies: BLAS, CBLAS, LAPACK and LAPACK C Wrapper.  All it needs
is the C and FORTRAN compilers. Please note that this is an alpha
version and, even if it has been tested on a wide set of systems, may
not work. In case you encounter a problem, your feedback would be
greatly appreciated and would be very useful to improve the quality of
this installer.  Please submit your complaints and suggestions to the
PLASMA forum:
              http://icl.cs.utk.edu/plasma/forum/

==========================================================================
INSTALL

Here's a list of the flags that can be used to provide the installer
information about the system like, for example, the C and Fortran
compilers, the BLAS library that is already present on the system and
need not be downloaded.
It is strongly recommended that you help the script by providing info
through the flags listed below.
We also strongly recommend to install hwloc on your system and set the
PKG_CONFIG_PATH environment variable in consequence before installing
PLASMA.

   -h or --help        : display this help and exit

   --prefix=[DIR]      : install files in DIR [./install]

   --build=[DIR]       : libraries are built in DIR [./build]
                         Contains log, downloads and builds.

   --cc=[CMD]          : the C compiler. [cc]

   --fc=[CMD]          : the Fortran compiler. [gfortran]

   --cflags=[FLAGS]    : the flags for the C compiler [-02]

   --fflags=[FLAGS]    : the flags for the Fortran compiler [-O2]

   --ldflags_c=[flags] : loader flags when main program is in C. Some
                         compilers (e.g. PGI) require different
                         options when linking C main programs to
                         Fortran subroutines and vice-versa

   --ldflags_fc=[flags]: loader flags when main program is in
                         Fortran. Some compilers (e.g. PGI) require
                         different options when linking Fortran main
                         programs to C subroutines and vice-versa.
                         If not set, ldflags_fc = ldflags_c.

   --make=[CMD]        : the make command [make]

   --blaslib=[LIB]     : a BLAS library
                         (path should be absolute if --prefix is used)

   --cblaslib=[LIB]    : a CBLAS library
                         (path should be absolute if --prefix is used)

   --lapacklib=[LIB]   : a Lapack library
                         (path should be absolute if --prefix is used)

   --lapclib=[DIR]     : path to a LAPACK C wrapper.
                          (path should be absolute if --prefix is used)

   --downblas          : Download and install reference BLAS.
                         
   --downcblas         : Download and install reference CBLAS.

   --downlapack        : Download and install reference LAPACK.

   --downlapc          : Download and install reference LAPACK C Wrapper.

   --downall           : Download and install all missing external libraries.
                         If you don't have access to wget or no network 
			 connection, you can provide the following packages 
			 in the directory builddir/download:
        http://netlib.org/blas/blas.tgz
        http://www.netlib.org/blas/blast-forum/cblas.tgz
        http://www.netlib.org/lapack/lapack.tgz
        http://icl.cs.utk.edu/projectsfiles/plasma/pubs/lapack_cwrapper.tgz
        http://icl.cs.utk.edu/projectsfiles/plasma/pubs/plasma.tar.gz

   --[no]testing       : enables/disables the testings. All externals 
                         libraries are required and tested if enabled.
                         Enable by default.

   --nbcores           : The number of cores to be used by the testing. [2]

   --clean             : cleans up the installer directory.

   --src               : Generates a make.inc for PLASMA developers with 
                         options given. If some external libraries are 
                         not available, they are automatically download
                         and install in prefix directory.
                         Testings are also deactivated by default.
   
========================================

If the required packages cannot be automatically downloaded (for
example, because no network connection is available on the system),
you can take them any way you like from the following URLs and place
them in the build/download directory (if the directory does not exist, 
create it):

BLAS             : http://netlib.org/blas/blas.tgz
CBLAS            : http://www.netlib.org/blas/blast-forum/cblas.tgz
LAPACK           : http://www.netlib.org/lapack/lapack.tgz
LAPACK C WRAPPER : http://icl.cs.utk.edu/projectsfiles/plasma/pubs/lapack_cwrapper.tgz
PLASMA           : http://icl.cs.utk.edu/projectsfiles/plasma/pubs/plasma.tar.gz

Please note that, in the case where the installer is asked to
automatically download the external libraries, the reference libraries
from netlib are installed and, thus, very low performance is to be
expected.  It is strongly recommended that you use an highly optimized
BLAS library (like ATLAS, MKL, GotoBLAS, ESSL etc.) and provide a path
to its location through the --blaslib flag.

==========================================================================
AUTHORS

The author of the PLASMA installer is:
Julie Langou      (Electrical Engineering and Computer Science
                   Department, University of Tennessee Knoxville)
Mathieu Faverge   (Innovative Computing Laboratory, University 
                   of Tennessee Knoxville) 

The PLASMA installer is based on the previous released ScaLAPACK
installer written by :
Alfredo Buttari   (Institut de Recherche en Informatique de Toulouse,
                   Centre National de la Recherche Scientifique,
                   Toulouse, France)
Julie Langou      (Electrical Engineering and Computer Science
                   Department, University of Tennessee Knoxville)
Julien Langou     (Department of Mathematical Sciences, University of
                   Colorado Denver)

