summaryrefslogtreecommitdiffstats
path: root/python/conda/libastra/build.sh
blob: 4e48ba631cddad0cadfd6207853da2a46e0d9b2c (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
#!/bin/sh

case `uname` in
  Darwin*)
    CUDA_ROOT=/usr/local/cuda
    CC=gcc
    CXX=g++
    ;;
  Linux*)
    [ -n "$cudatoolkit" ] || exit 1
    CUDA_ROOT=/usr/local/cuda-$cudatoolkit
    ;;
esac

[ -x "$CUDA_ROOT" ] || exit 1

cd $SRC_DIR/build/linux

$SRC_DIR/build/linux/autogen.sh

# Add C++11 to compiler flags, mostly to work around a boost bug.
# Since we require cudatoolkit>=8.0 nvcc supports this.
NVCC=$CUDA_ROOT/bin/nvcc
EXTRA_NVCCFLAGS="--std=c++11"


$SRC_DIR/build/linux/configure --with-install-type=prefix --with-cuda=$CUDA_ROOT --prefix=$PREFIX NVCCFLAGS="-ccbin $CC -I$PREFIX/include $EXTRA_NVCCFLAGS" CC=$CC CXX=$CXX CPPFLAGS="-I$PREFIX/include"

# Clean, because we may be re-using this source tree when building
# multiple variants of this conda package.
make clean

make -j $CPU_COUNT
make -j $CPU_COUNT install-dev


test -d $CUDA_ROOT/lib64 && LIBPATH="$CUDA_ROOT/lib64" || LIBPATH="$CUDA_ROOT/lib"

case `uname` in
  Darwin*)
    cp -P $LIBPATH/libcudart.*.dylib $PREFIX/lib
    cp -P $LIBPATH/libcufft.*.dylib $PREFIX/lib
    ;;
esac