BelosConfigDefs.hpp

Go to the documentation of this file.
00001 // @HEADER
00002 // ***********************************************************************
00003 //
00004 //                 Belos: Block Linear Solvers Package
00005 //                 Copyright (2004) Sandia Corporation
00006 //
00007 // Under terms of Contract DE-AC04-94AL85000, there is a non-exclusive
00008 // license for use of this work by or on behalf of the U.S. Government.
00009 //
00010 // This library is free software; you can redistribute it and/or modify
00011 // it under the terms of the GNU Lesser General Public License as
00012 // published by the Free Software Foundation; either version 2.1 of the
00013 // License, or (at your option) any later version.
00014 //
00015 // This library is distributed in the hope that it will be useful, but
00016 // WITHOUT ANY WARRANTY; without even the implied warranty of
00017 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00018 // Lesser General Public License for more details.
00019 //
00020 // You should have received a copy of the GNU Lesser General Public
00021 // License along with this library; if not, write to the Free Software
00022 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
00023 // USA
00024 // Questions? Contact Michael A. Heroux (maherou@sandia.gov)
00025 //
00026 // ***********************************************************************
00027 // @HEADER
00028 
00029 #ifndef BELOS_CONFIGDEFS_HPP
00030 #define BELOS_CONFIGDEFS_HPP
00031 
00036 #ifndef __cplusplus
00037 #define __cplusplus
00038 #endif
00039 
00040 #ifdef HAVE_CONFIG_H
00041 
00042 /*
00043  * The macros PACKAGE, PACKAGE_NAME, etc, get defined for each package and need to
00044  * be undef'd here to avoid warnings when this file is included from another package.
00045  * KL 11/25/02
00046  */
00047 #ifdef PACKAGE
00048 #undef PACKAGE
00049 #endif
00050 
00051 #ifdef PACKAGE_NAME
00052 #undef PACKAGE_NAME
00053 #endif
00054 
00055 #ifdef PACKAGE_BUGREPORT
00056 #undef PACKAGE_BUGREPORT
00057 #endif
00058 
00059 #ifdef PACKAGE_STRING
00060 #undef PACKAGE_STRING
00061 #endif
00062 
00063 #ifdef PACKAGE_TARNAME
00064 #undef PACKAGE_TARNAME
00065 #endif
00066 
00067 #ifdef PACKAGE_VERSION
00068 #undef PACKAGE_VERSION
00069 #endif
00070 
00071 #ifdef VERSION
00072 #undef VERSION
00073 #endif
00074 
00075 #include <Belos_config.h>
00076 
00077 #ifdef HAVE_MPI
00078 #ifndef EPETRA_MPI
00079 #define EPETRA_MPI
00080 #endif
00081 #endif
00082 
00083 #include "Teuchos_ConfigDefs.hpp"
00084 
00085 #else
00086 
00087 #include <iostream>
00088 #include <string>
00089 #include <stdexcept>
00090 #include <vector>
00091 
00092 #if defined(SGI) || defined(SGI64) || defined(SGI32) || defined(CPLANT) || defined(TFLOP)
00093 
00094 #include <stdlib.h>
00095 #include <stdio.h>
00096 #include <assert.h>
00097 #include <math.h>
00098 #include <complex.h>
00099 
00100 #else
00101 
00102 #include <cstdlib>
00103 #include <cstdio>
00104 #include <cassert>
00105 #include <cmath>
00106 #include <complex>
00107 
00108 #endif 
00109 
00110 #endif /*HAVE_CONFIG_H*/
00111 
00112 
00113 /* Define some macros */
00114 #define BELOS_MAX(x,y) (( (x) > (y) ) ? (x)  : (y) )     /* max function  */
00115 #define BELOS_MIN(x,y) (( (x) < (y) ) ? (x)  : (y) )     /* min function  */
00116 #define BELOS_SGN(x)   (( (x) < 0.0 ) ? -1.0 : 1.0 )     /* sign function */
00117 
00118 namespace Belos { std::string Belos_Version(); }
00119 
00120 #endif /* BELOS_CONFIGDEFS_HPP */

Generated on Tue Oct 20 12:48:34 2009 for Belos by doxygen 1.4.7