blob: 346253a9f88aecedf1d782c12d9177af3bfdeb0e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
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)'
|