aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xur_optimize35
1 files changed, 31 insertions, 4 deletions
diff --git a/ur_optimize b/ur_optimize
index 9851f00..175b97d 100755
--- a/ur_optimize
+++ b/ur_optimize
@@ -22,6 +22,12 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+export ATLAS_VERSION=3.10.2
+export LAPACK_VERSION=3.5.0
+
+export ATLAS_URL=http://sourceforge.net/projects/math-atlas/files/Stable/${ATLAS_VERSION}/atlas${ATLAS_VERSION}.tar.bz2
+export LAPACK_URL=http://www.netlib.org/lapack/lapack-${LAPACK_VERSION}.tgz
+
if [ ! -z "${UR_DIR}" ]; then
echo "UREKA must not be active."
exit 1
@@ -54,7 +60,7 @@ function deinit_optimize
function stage_ATLAS
{
- local url="http://sourceforge.net/projects/math-atlas/files/Stable/3.10.2/atlas3.10.2.tar.bz2"
+ local url="${ATLAS_URL}"
local tarball="$(basename ${url})"
wget "${url}"
tar xf "${tarball}"
@@ -62,12 +68,32 @@ function stage_ATLAS
function stage_LAPACK
{
- local url="http://www.netlib.org/lapack/lapack-3.5.0.tgz"
+ local url="${LAPACK_URL}"
local tarball="$(basename ${url})"
wget "${url}"
#tar xf "${tarball}"
}
+function fix_barriers
+{
+ # Make sure we have libgfortran available before removing it from Ureka
+ sys_libgfortran_path=$(ldconfig -p | grep libgfortran.so.3 | awk '{ print $4 }')
+ if [ -z "${sys_libgfortran_path}" ]; then
+ echo "Aborting: Please make sure libgfortran.so.3 is installed."
+ exit 1
+ fi
+
+ # Remove Ureka's libgfortran
+ ureka_libgfortran_path="${UREKA}/python/lib/libgfortran.so.3"
+ ureka_libgfortran_dirname="$(dirname ${ureka_libgfortran_path})"
+ ureka_libgfortran_basename="$(basename ${ureka_libgfortran_path})"
+ if [ -f "${ureka_libgfortran_path}" ]; then
+ echo "Moving Ureka's libgfortran.so.3 out of the way..."
+ ( cd "${ureka_libgfortran_dirname}" && \
+ mv "${ureka_libgfortran_basename}" "${ureka_libgfortran_basename}.unused" )
+ fi
+}
+
function build_ATLAS
{
local BUILDROOT=`pwd`
@@ -79,7 +105,7 @@ function build_ATLAS
mkdir -p BUILD && cd BUILD
../configure --prefix=${PREFIX} \
- --with-netlib-lapack-tarfile=${BUILDROOT}/lapack-3.5.0.tgz \
+ --with-netlib-lapack-tarfile=${BUILDROOT}/$(basename ${LAPACK_URL}) \
--shared \
-b 64 \
-Fa alg "-fPIC -Wl,-rpath=${PREFIX}/lib,--enable-new-dtags" \
@@ -101,7 +127,6 @@ function build_modules
local packages=( numpy scipy )
-
for package in "${packages[@]}"
do
yes | pip uninstall ${package}
@@ -144,6 +169,8 @@ shift $(($OPTIND - 1))
set -x
export PREFIX="${UREKA}/ext"
+fix_barriers
+
init_optimize
build_ATLAS