summaryrefslogtreecommitdiffstats
path: root/python/conda/libastra/build.sh
diff options
context:
space:
mode:
Diffstat (limited to 'python/conda/libastra/build.sh')
-rw-r--r--python/conda/libastra/build.sh44
1 files changed, 29 insertions, 15 deletions
diff --git a/python/conda/libastra/build.sh b/python/conda/libastra/build.sh
index e1d9700..304c053 100644
--- a/python/conda/libastra/build.sh
+++ b/python/conda/libastra/build.sh
@@ -1,15 +1,29 @@
-cd build/linux
-./autogen.sh
-./configure --with-cuda=$CUDA_ROOT --prefix=$PREFIX
-if [ $MAKEOPTS == '<UNDEFINED>' ]
- then
- MAKEOPTS=""
-fi
-make $MAKEOPTS install-libraries
-LIBPATH=lib
-if [ $ARCH == 64 ]
- then
- LIBPATH+=64
-fi
-cp -P $CUDA_ROOT/$LIBPATH/libcudart.so.* $PREFIX/lib
-cp -P $CUDA_ROOT/$LIBPATH/libcufft.so.* $PREFIX/lib
+#!/bin/sh
+
+cd $SRC_DIR/build/linux
+
+$SRC_DIR/build/linux/autogen.sh
+
+# Add C++11 to compiler flags if nvcc supports it, mostly to work around a boost bug
+NVCC=$CUDA_ROOT/bin/nvcc
+echo "int main(){return 0;}" > $CONDA_PREFIX/test.cu
+$NVCC $CONDA_PREFIX/test.cu -ccbin $CC --std=c++11 -o $CONDA_PREFIX/test.out > /dev/null 2>&1 && EXTRA_NVCCFLAGS="--std=c++11" || true
+rm -f $CONDA_PREFIX/test.out
+
+$SRC_DIR/build/linux/configure --with-install-type=prefix --with-cuda=$CUDA_ROOT --prefix=$CONDA_PREFIX NVCCFLAGS="-ccbin $CC -I$CONDA_PREFIX/include $EXTRA_NVCCFLAGS" CC=$CC CXX=$CXX CPPFLAGS="-I$CONDA_PREFIX/include"
+
+make install-libraries
+
+
+test -d $CUDA_ROOT/lib64 && LIBPATH="$CUDA_ROOT/lib64" || LIBPATH="$CUDA_ROOT/lib"
+
+case `uname` in
+ Darwin*)
+ cp -P $LIBPATH/libcudart.*.dylib $CONDA_PREFIX/lib
+ cp -P $LIBPATH/libcufft.*.dylib $CONDA_PREFIX/lib
+ ;;
+ *)
+ cp -P $LIBPATH/libcudart.so.* $CONDA_PREFIX/lib
+ cp -P $LIBPATH/libcufft.so.* $CONDA_PREFIX/lib
+ ;;
+esac