aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README63
-rw-r--r--src/make.configuration.defn43
2 files changed, 36 insertions, 70 deletions
diff --git a/README b/README
index 3cfd855..218abdf 100644
--- a/README
+++ b/README
@@ -55,8 +55,11 @@ This thorn inherits from ADMBase and StaticConformal (both in the
CactusEinstein arrangement), since it uses Cactus various grid functions
which are defined in those thorns.
-This thorn uses the new CCTK_InterpLocalUniform() interpolator API, which
-at present is only supplied by the CactusBase/InterpLocal thorn.
+This thorn can use either of two different interpolator APIs
+* CCTK_InterpGridArrays(), which at present is only supplied by the
+ CactusPUGH/PUGHInterp thorn, and which in turn uses...
+* CCTK_InterpLocalUniform() interpolator API, which
+ at present is only supplied by the CactusBase/InterpLocal thorn.
This thorn is written in C++, so you'll need a C++ compiler -- in fact
a fairly modern one -- to compile this thorn. See the "Compilation Notes"
@@ -67,48 +70,54 @@ Most of this thorn's relativity code is machine-generated using Maple
relativity code.
This thorn uses the LAPACK library (which in turn uses the BLAS library).
-If you don't have these installed on your system already, you can get
-Fortran 77 source code and/or binaries for various architectures, from
-http://www.netlib.org/lapack/ and http://www.netlib.org/blas/ respectively.
-But many systems have these installed already -- try 'locate liblapack'
-and 'locate libblas' on your system.
+Thus you need to configure your Cactus with LAPACK=yes.
+[If you don't have LAPACK/BLAS installed on your system already, you
+can get Fortran 77 source code and/or binaries for various architectures,
+from http://www.netlib.org/lapack/ and http://www.netlib.org/blas/
+respectively. But many systems have these installed already -- try
+'locate liblapack' and 'locate libblas' on your system.]
Library Configuration
=====================
-Before compiling (a Cactus configuration which includes) AHFinderDirect,
-you must set the environment variable
- LAPACK_DIR = a directory (or blank-separated list of directories)
- containing the LAPACK and BLAS libraries. (On GNU/Linux
- systems this is usually /usr/lib or /usr/local/lib.)
+When configuring your Cactus configuration, you need to set
+ LAPACK=yes .
+If all goes well, Cactus will find the LAPACK and BLAS libraries and give
+during the configure process saying that it found them. Otherwise, the
+configure process will abort with a message saying that you need to set
+the configure variable LAPACK_DIR to a directory (or blank-separated list
+of directories) containing the LAPACK and BLAS libraries.
If the LAPACK and/or BLAS libraries were compiled with a (Fortran)
compiler which is *not* used to compile any part of this Cactus'
-configuration, then you may also need to set the environment variables
- LAPACK_EXTRA_LIBS = the name (or blank-separated list of names) of
- that (Fortran) compiler's run-time support
- library(ies)
- LAPACK_EXTRA_LIBDIRS = the directory (or blank-separated list of
- directories) containing that library(ies)
+configuration, then you may also need to set the configure variables
+ LAPACK_EXTRA_LIBS = the name (or blank-separated list of names) of
+ that (Fortran) compiler's run-time support
+ library(ies)
+ LAPACK_EXTRA_LIB_DIRS = the directory (or blank-separated list of
+ directories) containing that library(ies)
+
For example, if your LAPACK and/or BLAS were compiled with the GNU g77
compiler (as is common on GNU/Linux and *BSD systems), and you are *not*
-using g77 to compile any part of your Cactus configuration, then you may
-need to set the environment variables to point to the g77 support library
-g2c:
+using g77 to compile any part of your Cactus configuration (maybe because
+you're using a different Fortran compiler), then you may need to set the
+environment variables to point to the g77 support library g2c:
LAPACK_EXTRA_LIBS = g2c
LAPACK_EXTRA_LIBDIRS = `g77 --print-file-name=libg2c.a | xargs basename`
For example, on the AEI xeons the settings would be
- LAPACK_DIR = /usr/lib
LAPACK_EXTRA_LIBS = g2c
LAPACK_EXTRA_LIBDIRS = `g77 --print-file-name=libg2c.a | xargs dirname`
-Note that all of these settings are of shell environment variables,
-using the syntax (eg)
- % export LAPACK_DIR=/usr/lib # bash
- % setenv LAPACK_DIR /usr/lib # csh,tcsh
-Alas, setting these in your ~/.cactus/config file doesn't work. :(
+All of these settings are of configure variables, i.e. you set them either
+on the command line when configuring,
+ % gmake my-configuration LAPACK=yes
+or as assignments in your ~/.cactus/config file,
+ % cat ~/.cactus/config
+ LAPACK=yes
+ LAPACK_EXTRA_LIBS=g2c
+ LAPACK_EXTRA_LIB_DIRS=/usr/lib/gcc-lib/i386-redhat-linux/2.96
Code Notes
diff --git a/src/make.configuration.defn b/src/make.configuration.defn
deleted file mode 100644
index f5ab6fb..0000000
--- a/src/make.configuration.defn
+++ /dev/null
@@ -1,43 +0,0 @@
-# additional configuration information for Cactus to build this thorn
-# $Header$
-
-# check if LAPACK_DIR is set, bail out if not
-ifeq ($(strip $(LAPACK_DIR)),)
-$(NAME): MissingLAPACK_DIR
-.pseudo: MissingLAPACK_DIR
-MissingLAPACK_DIR:
- @echo '***'
- @echo '*** Thorn AHFinderDirect uses the LAPACK library (which in turn uses'
- @echo '*** the BLAS library), so you must set the environment variable'
- @echo '*** LAPACK_DIR = a directory (or blank-separated list of directories)'
- @echo '*** containing the LAPACK and BLAS libraries. (On GNU/Linux'
- @echo '*** systems this is usually /usr/lib or /usr/local/lib.)'
- @echo '***'
- @echo '*** If the LAPACK and/or BLAS libraries were compiled with a (Fortran)'
- @echo '*** compiler which is *not* used to compile any part of this Cactus'
- @echo '*** configuration, then you may also need to set the environment variable'
- @echo '*** LAPACK_EXTRA_LIBS to that (Fortran) compiler'\''s run-time support'
- @echo '*** library name (or blank-separated list of library names), and set'
- @echo '*** the environment variable LAPACK_EXTRA_LIBDIRS to the directory'
- @echo '*** (or blank-separated list of directories) containing that library'
- @echo '*** or libraries. For example, if your LAPACK and/or BLAS were compiled'
- @echo '*** with the GNU g77 compiler, and you are *not* using g77 to compile'
- @echo '*** any part of this Cactus configuration, then you may need to set the'
- @echo '*** environment variables to point to the g77 support library "g2c":'
- @echo '*** LAPACK_EXTRA_LIBS = g2c'
- @echo '*** LAPACK_EXTRA_LIBDIRS = `g77 --print-file-name=libg2c.a | xargs dirname`'
- @echo '***'
- @echo '*** Note that all of these settings are shell environment variables, e.g.,'
- @echo '*** % export LAPACK_DIR=/usr/lib # bash'
- @echo '*** % setenv LAPACK_DIR /usr/lib # csh, tcsh'
- @echo '*** Alas, setting these in your ~/.cactus/config file doesn'\''t work. :('
- @echo '***'
- exit 2
-endif
-
-#
-# Note that LAPACK and BLAS need to go at the *front* of other libs
-# since they may use libm etc
-#
-LIBDIRS += $(LAPACK_DIR) $(LAPACK_EXTRA_LIBDIRS)
-LIBS := lapack blas $(LAPACK_EXTRA_LIBS) $(LIBS)