Path: blob/master/build/pkgs/fflas_ffpack/spkg-install
8817 views
#!/usr/bin/env bash
if [ -z "$SAGE_LOCAL" ]; then
echo >&2 "SAGE_LOCAL undefined ... exiting"
echo >&2 "Maybe run 'sage --sh'?"
exit 1
fi
cd src
# Apply patches. See SPKG.txt for information about what each patch
# does.
for patch in ../patches/*.patch; do
[ -r "$patch" ] || continue # Skip non-existing or non-readable patches
patch -p1 <"$patch"
if [ $? -ne 0 ]; then
echo >&2 "Error applying '$patch'"
exit 1
fi
done
export CFLAGS="-g -O2 -fPIC $CFLAGS"
export CXXFLAGS="-g -O2 -fPIC $CXXFLAGS"
if [ "$SAGE64" = "yes" ]; then
echo "64 bit build"
CFLAGS="-m64 $CFLAGS "; export CFLAGS
CXXFLAGS="-m64 $CXXFLAGS "; export CXXFLAGS
CPPFLAGS="-m64 $CPPFLAGS "; export CPPFLAGS
LDFLAGS="-m64"; export LDFLAGS
fi
if [ "$LINBOX_BLAS" != "" ]; then
echo "Using environment variable LINBOX_BLAS "$LINBOX_BLAS""
elif [ $UNAME = "Darwin" -a -f "/usr/lib/libcblas.dylib" ]; then
LINBOX_BLAS=/usr/lib/libcblas.dylib
elif [ $UNAME = "Linux" -a -f "${SAGE_LOCAL}/lib/libcblas.so" ]; then
echo "Linux cblas"
LINBOX_BLAS="-lcblas -latlas"
elif [ $UNAME = "CYGWIN" ]; then
echo "Using system-wide Cygwin LAPACK BLAS."
if [ ! -f "/usr/lib/libblas.a" ]; then
echo "*************************************************"
echo "*"
echo "* On Cygwin you must install the standard LAPACK Cygwin package"
echo "* via the Cygwin setup.exe program in the 'Math' category."
echo "*"
echo "*************************************************"
exit 1
fi
LINBOX_BLAS="-lblas "
elif [ $UNAME = "SunOS" -a -f "${SAGE_LOCAL}/lib/libcblas.so" ]; then
echo "Solaris cblas"
LINBOX_BLAS="-lcblas -latlas"
elif [ $UNAME = "FreeBSD" -a -f "${SAGE_LOCAL}/lib/libcblas.a" ]; then
echo "FreeBSD cblas"
LINBOX_BLAS="-lcblas -latlas"
elif [ $UNAME = "FreeBSD" -a -f "${SAGE_LOCAL}/lib/libcblas.so" ]; then
echo "FreeBSD cblas"
LINBOX_BLAS="-lcblas -latlas"
else
echo "WARNING WARNING"
echo "WARNING WARNING"
echo "WARNING WARNING"
echo "WARNING WARNING"
echo "using frickin' slow GSL C-blas"
echo "WARNING WARNING"
echo "WARNING WARNING"
echo "WARNING WARNING"
echo "WARNING WARNING"
echo "WARNING WARNING"
if [ $UNAME = "Darwin" ]; then
LINBOX_BLAS="$SAGE_LOCAL"/lib/libgslcblas.dylib
else
LINBOX_BLAS="$SAGE_LOCAL"/lib/libgslcblas.so
fi
fi
echo "*************************************************"
echo " Using LINBOX_BLAS=$LINBOX_BLAS"
echo "*************************************************"
./configure --prefix="$SAGE_LOCAL" --libdir="$SAGE_LOCAL/lib" \
--with-default="$SAGE_LOCAL" \
--with-blas="$LINBOX_BLAS" \
--enable-optimization --disable-static
if [ $? -ne 0 ]; then
echo "Error configuring linbox"
exit 1
fi
$MAKE
if [ $? -ne 0 ]; then
echo "Error building linbox"
fi
$MAKE install
if [ $? -ne 0 ]; then
echo "Error installing linbox"
exit 1
fi
echo $LINBOX_BLAS > $SAGE_LOCAL/share/cblas_config