aboutsummaryrefslogtreecommitdiff
path: root/CarpetExtra
diff options
context:
space:
mode:
authorErik Schnetter <schnetter@cct.lsu.edu>2010-09-10 13:39:08 -0500
committerBarry Wardell <barry.wardell@gmail.com>2011-12-14 18:25:21 +0000
commit4880e51e5cc3182f21ec064991a22df636e2c117 (patch)
tree62b7e7f8a8f730de05a5d43c5ff8a1d5a65081fb /CarpetExtra
parent4afda80c0ed50b919bca31c00bc0fb5221cc523c (diff)
Nirvana: New thorn to distribute Nirvana library
Diffstat (limited to 'CarpetExtra')
-rw-r--r--CarpetExtra/Nirvana/Nirvana.sh97
-rw-r--r--CarpetExtra/Nirvana/README14
-rw-r--r--CarpetExtra/Nirvana/configuration.ccl9
-rw-r--r--CarpetExtra/Nirvana/dist/Nirvana.tar.gzbin0 -> 19154 bytes
-rw-r--r--CarpetExtra/Nirvana/dist/README2
-rw-r--r--CarpetExtra/Nirvana/interface.ccl3
-rw-r--r--CarpetExtra/Nirvana/param.ccl1
-rw-r--r--CarpetExtra/Nirvana/schedule.ccl1
-rw-r--r--CarpetExtra/Nirvana/src/make.code.defn7
9 files changed, 134 insertions, 0 deletions
diff --git a/CarpetExtra/Nirvana/Nirvana.sh b/CarpetExtra/Nirvana/Nirvana.sh
new file mode 100644
index 000000000..346253a9f
--- /dev/null
+++ b/CarpetExtra/Nirvana/Nirvana.sh
@@ -0,0 +1,97 @@
+#! /bin/bash
+
+################################################################################
+# Prepare
+################################################################################
+
+# Set up shell
+set -x # Output commands
+set -e # Abort on errors
+
+
+
+################################################################################
+# Build
+################################################################################
+
+echo "BEGIN MESSAGE"
+echo "Building Nirvana..."
+echo "END MESSAGE"
+
+# Set locations
+NAME=Nirvana
+SRCDIR=$(dirname $0)
+INSTALL_DIR=${SCRATCH_BUILD}
+NIRVANA_DIR=${INSTALL_DIR}/build-${NAME}/${NAME}
+
+# Set up environment
+unset LIBS
+
+(
+ exec >&2 # Redirect stdout to stderr
+ set -x # Output commands
+ set -e # Abort on errors
+ cd ${INSTALL_DIR}
+ if [ -e done-${NAME} -a done-${NAME} -nt ${SRCDIR}/dist/${NAME}.tar.gz \
+ -a done-${NAME} -nt ${SRCDIR}/Nirvana.sh ]
+ then
+ echo "Nirvana: The enclosed Nirvana library has already been built; doing nothing"
+ else
+ echo "Nirvana: Building enclosed Nirvana library"
+
+ # Should we use gtar or tar?
+ TAR=$(gtar --help > /dev/null 2> /dev/null && echo gtar || echo tar)
+
+ echo "Nirvana: Unpacking archive..."
+ rm -rf build-${NAME}
+ mkdir build-${NAME}
+ pushd build-${NAME}
+ ${TAR} xzf ${SRCDIR}/dist/${NAME}.tar.gz
+ popd
+
+ echo "Nirvana: Building..."
+ pushd build-${NAME}/${NAME}
+ ${CXX} ${CPPFLAGS} ${CXXFLAGS} -c *.cc $(for dir in ${HDF5_INC_DIRS}; do echo -I${dir}; done)
+ ${AR} ${ARFLAGS} libNirvana.a *.o
+ if [ ${USE_RANLIB} = 'yes' ]; then
+ ${RANLIB} ${RANLIBFLAGS} libNirvana.a
+ fi
+ popd
+
+ echo 'done' > done-${NAME}
+ echo "Nirvana: Done."
+ fi
+)
+
+if (( $? )); then
+ echo 'BEGIN ERROR'
+ echo 'Error while building Nirvana. Aborting.'
+ echo 'END ERROR'
+ exit 1
+fi
+
+
+
+# Set options
+NIRVANA_INC_DIRS="${NIRVANA_DIR}"
+NIRVANA_LIB_DIRS="${NIRVANA_DIR}"
+NIRVANA_LIBS='Nirvana'
+
+
+
+################################################################################
+# Configure Cactus
+################################################################################
+
+# Pass options to Cactus
+echo "BEGIN MAKE_DEFINITION"
+echo "HAVE_NIRVANA = 1"
+echo "NIRVANA_DIR = ${NIRVANA_DIR}"
+echo "NIRVANA_INC_DIRS = ${NIRVANA_INC_DIRS}"
+echo "NIRVANA_LIB_DIRS = ${NIRVANA_LIB_DIRS}"
+echo "NIRVANA_LIBS = ${NIRVANA_LIBS}"
+echo "END MAKE_DEFINITION"
+
+echo 'INCLUDE_DIRECTORY $(NIRVANA_INC_DIRS)'
+echo 'LIBRARY_DIRECTORY $(NIRVANA_LIB_DIRS)'
+echo 'LIBRARY $(NIRVANA_LIBS)'
diff --git a/CarpetExtra/Nirvana/README b/CarpetExtra/Nirvana/README
new file mode 100644
index 000000000..76bb14d6d
--- /dev/null
+++ b/CarpetExtra/Nirvana/README
@@ -0,0 +1,14 @@
+Cactus Code Thorn Nirvana
+Author(s) : Christian Reisswig, Erik Schnetter
+Maintainer(s): Cactus team
+Licence : LGPL
+--------------------------------------------------------------------------
+
+1. Purpose
+
+Distribute the Nirvana library.
+
+The Nirvana file format provides an API for reading and writing
+simulation data, and is a particular way of storing any kind of
+simulation data including its meta data using HDF5. High-level
+routines are offered to store and retrieve data from Nirvana.
diff --git a/CarpetExtra/Nirvana/configuration.ccl b/CarpetExtra/Nirvana/configuration.ccl
new file mode 100644
index 000000000..7130e7db7
--- /dev/null
+++ b/CarpetExtra/Nirvana/configuration.ccl
@@ -0,0 +1,9 @@
+# Configuration definitions for thorn Nirvana
+
+PROVIDES Nirvana
+{
+ SCRIPT Nirvana.sh
+ LANG bash
+}
+
+REQUIRES HDF5
diff --git a/CarpetExtra/Nirvana/dist/Nirvana.tar.gz b/CarpetExtra/Nirvana/dist/Nirvana.tar.gz
new file mode 100644
index 000000000..0fba057cf
--- /dev/null
+++ b/CarpetExtra/Nirvana/dist/Nirvana.tar.gz
Binary files differ
diff --git a/CarpetExtra/Nirvana/dist/README b/CarpetExtra/Nirvana/dist/README
new file mode 100644
index 000000000..77bf56325
--- /dev/null
+++ b/CarpetExtra/Nirvana/dist/README
@@ -0,0 +1,2 @@
+svn checkout --username developer http://www.nullinfinity.net:/repositories/Nirvana
+tar czf Nirvana.tar.gz --exclude .svn Nirvana
diff --git a/CarpetExtra/Nirvana/interface.ccl b/CarpetExtra/Nirvana/interface.ccl
new file mode 100644
index 000000000..e9df65a4b
--- /dev/null
+++ b/CarpetExtra/Nirvana/interface.ccl
@@ -0,0 +1,3 @@
+# Interface definition for thorn Nirvana
+
+IMPLEMENTS: Nirvana
diff --git a/CarpetExtra/Nirvana/param.ccl b/CarpetExtra/Nirvana/param.ccl
new file mode 100644
index 000000000..05d71f161
--- /dev/null
+++ b/CarpetExtra/Nirvana/param.ccl
@@ -0,0 +1 @@
+# Parameter definitions for thorn Nirvana
diff --git a/CarpetExtra/Nirvana/schedule.ccl b/CarpetExtra/Nirvana/schedule.ccl
new file mode 100644
index 000000000..004385079
--- /dev/null
+++ b/CarpetExtra/Nirvana/schedule.ccl
@@ -0,0 +1 @@
+# Schedule definitions for thorn Nirvana
diff --git a/CarpetExtra/Nirvana/src/make.code.defn b/CarpetExtra/Nirvana/src/make.code.defn
new file mode 100644
index 000000000..8137a1e8d
--- /dev/null
+++ b/CarpetExtra/Nirvana/src/make.code.defn
@@ -0,0 +1,7 @@
+# Main make.code.defn file for thorn Nirvana
+
+# Source files in this directory
+SRCS =
+
+# Subdirectories containing source files
+SUBDIRS =