From 957d06868d6f093dd3c3bd662b24b1ca975493cd Mon Sep 17 00:00:00 2001 From: knarf Date: Thu, 14 Oct 2010 02:55:53 +0000 Subject: cleanup build script, update to gsl-1.14 git-svn-id: http://svn.cactuscode.org/projects/ExternalLibraries/GSL/trunk@14 9e23cc15-e5c8-4d65-9080-beda90ea645b --- GSL.sh | 72 +++++++++++++++++++++++++++++---------------------- dist/gsl-1.12.tar.gz | Bin 2924732 -> 0 bytes dist/gsl-1.14.tar.gz | Bin 0 -> 3128269 bytes 3 files changed, 41 insertions(+), 31 deletions(-) delete mode 100644 dist/gsl-1.12.tar.gz create mode 100644 dist/gsl-1.14.tar.gz diff --git a/GSL.sh b/GSL.sh index d5ce5c0..6ad488e 100644 --- a/GSL.sh +++ b/GSL.sh @@ -21,13 +21,17 @@ if [ -z "${GSL_DIR}" ]; then FILES="include/gsl/gsl_math.h" DIRS="/usr /usr/local /usr/local/gsl /usr/local/packages/gsl /usr/local/apps/gsl ${HOME} c:/packages/gsl" - for file in $FILES; do - for dir in $DIRS; do - if test -r "$dir/$file"; then - GSL_DIR="$dir" + for dir in $DIRS; do + GSL_DIR="$dir" + for file in $FILES; do + if [ ! -r "$dir/$file" ]; then + unset GSL_DIR break fi done + if [ -n "$GSL_DIR" ]; then + break + fi done if [ -z "$GSL_DIR" ]; then @@ -47,30 +51,27 @@ fi # Build ################################################################################ -if [ -z "${GSL_DIR}" ]; then +if [ -z "${GSL_DIR}" -o "${GSL_DIR}" = 'BUILD' ]; then echo "BEGIN MESSAGE" echo "Building GSL..." echo "END MESSAGE" # Set locations - NAME=gsl-1.12 + THORN=GSL + NAME=gsl-1.14 SRCDIR=$(dirname $0) - INSTALL_DIR=${SCRATCH_BUILD} - GSL_DIR=${INSTALL_DIR}/${NAME} - - # Set up environment - unset LIBS - if echo '' ${ARFLAGS} | grep 64 > /dev/null 2>&1; then - export OBJECT_MODE=64 - fi + BUILD_DIR=${SCRATCH_BUILD}/build/${THORN} + INSTALL_DIR=${SCRATCH_BUILD}/external/${THORN} + DONE_FILE=${SCRATCH_BUILD}/done/${THORN} + GSL_DIR=${INSTALL_DIR} ( 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}/GSL.sh ] + cd ${SCRATCH_BUILD} + if [ -e ${DONE_FILE} -a ${DONE_FILE} -nt ${SRCDIR}/dist/${NAME}.tar.gz \ + -a ${DONE_FILE} -nt ${SRCDIR}/GSL.sh ] then echo "GSL: The enclosed GSL library has already been built; doing nothing" else @@ -78,20 +79,26 @@ if [ -z "${GSL_DIR}" ]; then # Should we use gmake or make? MAKE=$(gmake --help > /dev/null 2>&1 && echo gmake || echo make) - - echo "GSL: Unpacking archive..." - rm -rf build-${NAME} - mkdir build-${NAME} - pushd build-${NAME} # Should we use gtar or tar? TAR=$(gtar --help > /dev/null 2> /dev/null && echo gtar || echo tar) + + # Set up environment + unset LIBS + if echo '' ${ARFLAGS} | grep 64 > /dev/null 2>&1; then + export OBJECT_MODE=64 + fi + + echo "GSL: Preparing directory structure..." + mkdir build external done 2> /dev/null || true + rm -rf ${BUILD_DIR} ${INSTALL_DIR} + mkdir ${BUILD_DIR} ${INSTALL_DIR} + + echo "GSL: Unpacking archive..." + pushd ${BUILD_DIR} ${TAR} xzf ${SRCDIR}/dist/${NAME}.tar.gz - popd echo "GSL: Configuring..." - rm -rf ${NAME} - mkdir ${NAME} - pushd build-${NAME}/${NAME} + cd ${NAME} ./configure --prefix=${GSL_DIR} echo "GSL: Building..." @@ -101,14 +108,17 @@ if [ -z "${GSL_DIR}" ]; then ${MAKE} install popd - echo 'done' > done-${NAME} + echo "GSL: Cleaning up..." + rm -rf ${BUILD_DIR} + + date > ${DONE_FILE} echo "GSL: Done." fi ) if (( $? )); then echo 'BEGIN ERROR' - echo 'Error while building GSL. Aborting.' + echo 'Error while building GSL. Aborting.' echo 'END ERROR' exit 1 fi @@ -123,9 +133,9 @@ fi # Set options if [ -x ${GSL_DIR}/bin/gsl-config ]; then - GSL_INC_DIRS=`${GSL_DIR}/bin/gsl-config --cflags | sed -e 's/ \+-[^I][^ ]\+//g;s/^ *-[^I][^ ]\+ *//g;s/ \+-I/ /g;s/^ *-I//g'`; - GSL_LIB_DIRS=`${GSL_DIR}/bin/gsl-config --libs | sed -e 's/ \+-[^L][^ ]\+//g;s/^ *-[^L][^ ]\+ *//g;s/ \+-L/ /g;s/^ *-L//g'`; - GSL_LIBS=`${GSL_DIR}/bin/gsl-config --libs | sed -e 's/ \+-[^l][^ ]\+//g;s/^ *-[^l][^ ]\+ *//g;s/ \+-l/ /g;s/^ *-l//g'`; + GSL_INC_DIRS=`${GSL_DIR}/bin/gsl-config --cflags | sed -e 's/ \+-[^I][^ ]\+//g;s/^ *-[^I][^ ]\+ *//g;s/ \+-I/ /g;s/^ *-I//g'`; + GSL_LIB_DIRS=`${GSL_DIR}/bin/gsl-config --libs | sed -e 's/ \+-[^L][^ ]\+//g;s/^ *-[^L][^ ]\+ *//g;s/ \+-L/ /g;s/^ *-L//g'`; + GSL_LIBS=`${GSL_DIR}/bin/gsl-config --libs | sed -e 's/ \+-[^l][^ ]\+//g;s/^ *-[^l][^ ]\+ *//g;s/ \+-l/ /g;s/^ *-l//g'`; fi # Pass options to Cactus diff --git a/dist/gsl-1.12.tar.gz b/dist/gsl-1.12.tar.gz deleted file mode 100644 index 01d3577..0000000 Binary files a/dist/gsl-1.12.tar.gz and /dev/null differ diff --git a/dist/gsl-1.14.tar.gz b/dist/gsl-1.14.tar.gz new file mode 100644 index 0000000..062c9fd Binary files /dev/null and b/dist/gsl-1.14.tar.gz differ -- cgit v1.2.3