00001 #!/usr/bin/env python 00002 00003 import os 00004 00005 configure_options = [ 00006 # set floating point precision 00007 '--with-precision='+os.environ['PRECISION'], 00008 # 00009 # BLAS, LAPACK 00010 '--with-blas-lapack-dir='+os.environ['ATLAS_DIR'], 00011 # alternatively set libraries directly 00012 #'--with-blas-lib=['+os.environ['PD']+'/atlas/lib/libf77blas.a,'+os.environ['PD']+'/atlas/lib/libcblas.a,'+os.environ['PD']+'/atlas/lib/libatlas.a,/usr/lib/libg2c.a]', 00013 #'--with-lapack-lib='+os.environ['PD']+'/atlas/lib/liblapack.a', 00014 # 00015 # define additional required libraries (defined in Makefile.in.$HOSTNAME) 00016 '--LIBS='+os.environ['PETSC_XTRALIBS'], 00017 # e.g. 00018 # /usr/lib/gcc-lib/i386-redhat-linux/2.96/libg2c.a 00019 # required by lapack/atlas (xerbla.o) on RedHat 7.2 00020 # 00021 # /usr/local/lib/libifcore.a 00022 # required by Intel compilers: 00023 # otherwise linking of fortran object files with mpicc/icc fails 00024 00025 # disable C++ and TAO support 00026 #'--with-cxx=0', 00027 #'--with-c++-support', 00028 00029 # MPI 00030 # --- 00031 # for MPICH 00032 # 00033 '--with-mpi-dir='+os.environ['MPI_DIR'], 00034 # 00035 # for LAM/MPI 00036 # 00037 #'--with-mpi-include='+os.environ['PD']+'/mpi/include', 00038 #'--with-mpi-lib=['+os.environ['PD']+'/mpi/lib/libmpi.a,'+os.environ['PD']+'/mpi/lib/liblamf77mpi.a,'+os.environ['PD']+'/mpi/lib/liblam.a]', 00039 # 00040 # without MPI (single processor only) 00041 # 00042 #'--with-mpi=0', 00043 # 00044 # to disable PETSc XWindows functions 00045 # 00046 '--with-x=0', 00047 # 00048 # Cygwin settings 00049 # --------------- 00050 # (disable everything above) 00051 # 00052 #'--with-mpi=0', 00053 #'--with-x=0', 00054 # 00055 # optional packages 00056 # ----------------- 00057 # 00058 # BlockSolve95 00059 #'--with-blocksolve95-dir='+os.environ['PD']+'/BlockSolve95', 00060 #'--with-blocksolve95-lib='+os.environ['PD']+'/BlockSolve95/lib/libO/linux/libBS95.a', 00061 # 00062 # SuperLU_DIST 00063 #'--with-superlu-dir='+os.environ['PD']+'/SuperLU_DIST_2.0', 00064 #'--with-superlu_dist-lib='+os.environ['PD']+'/SuperLU_DIST_2.0/superlu_linux.a', 00065 # 00066 # hypre 00067 #'--download-hypre=1','-with-hypre=1', 00068 # 00069 # compiler settings 00070 # ----------------- 00071 # 00072 # compile optimized libraries with C++ bindings (required for TAO) 00073 '--with-clanguage=C++', 00074 '--with-debugging=0', 00075 # compiler options 00076 '-COPTFLAGS='+os.environ['OPTFLAGS'], 00077 '-CXXOPTFLAGS='+os.environ['OPTFLAGS'], 00078 '-FOPTFLAGS='+os.environ['OPTFLAGS'], 00079 # compile only static libraries (TODO: any effect? - see installation instructions!) 00080 '--with-shared=0', 00081 '--with-dynamic=0' 00082 ] 00083 00084 if __name__ == '__main__': 00085 import configure 00086 configure.petsc_configure(configure_options) 00087 00088 # Extra options used for testing locally 00089 test_options = []