build.sh 1.61 KB
Newer Older
1
2
3
4
5
#!/bin/bash

# Build script for Linux distribution, for use in automated packaging.
# Note that this must be run from outside the checked-out openmm/ directory.

6
# Add conda binaries to path.
7
PATH=$WORKSPACE/miniconda/bin:$PATH
8

9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
INSTALL=`pwd`/install
CMAKE_FLAGS="-DCMAKE_INSTALL_PREFIX=$INSTALL"

# setting the rpath so that libOpenMMPME.so finds the right libfftw3
#CMAKE_FLAGS+=" -DCMAKE_INSTALL_RPATH=.."
CMAKE_FLAGS+=" -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++"
CMAKE_FLAGS+=" -DCUDA_CUDART_LIBRARY=/usr/local/cuda-6.5/lib64/libcudart.so"
CMAKE_FLAGS+=" -DCUDA_NVCC_EXECUTABLE=/usr/local/cuda-6.5/bin/nvcc"
CMAKE_FLAGS+=" -DCUDA_SDK_ROOT_DIR=/usr/local/cuda-6.5/"
CMAKE_FLAGS+=" -DCUDA_TOOLKIT_INCLUDE=/usr/local/cuda-6.5/include"
CMAKE_FLAGS+=" -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-6.5/"
CMAKE_FLAGS+=" -DOPENCL_INCLUDE_DIR=/usr/local/cuda-6.5/include"
CMAKE_FLAGS+=" -DOPENCL_LIBRARY=/usr/local/cuda-6.5/lib64/libOpenCL.so"

# Set location for FFTW3
24
PREFIX="$WORKSPACE/miniconda"
25
26
27
28
29
CMAKE_FLAGS+=" -DFFTW_INCLUDES=$PREFIX/include"
CMAKE_FLAGS+=" -DFFTW_LIBRARY=$PREFIX/lib/libfftw3f.so"
CMAKE_FLAGS+=" -DFFTW_THREADS_LIBRARY=$PREFIX/lib/libfftw3f_threads.so"

# Build in subdirectory.
30
31
32
if [ -e build ]; then
    rm -rf build
fi
33
34
35
mkdir build
cd build
cmake ../openmm $CMAKE_FLAGS
36
make -j4 all DoxygenApiDocs sphinxpdf
37
38
39
make install

# Install Python wrappers.
40
41
OPENMM_INCLUDE_PATH=$INSTALL/include
OPENMM_LIB_PATH=$INSTALL/lib
42
cd python
43
python setup.py install --prefix=$INSTALL
44
cd ../..
45
46
47

# Copy all tests to bin directory so they will be distributed with install package.
#cp `find . -name "Test*" -type f -maxdepth 1` $PREFIX/bin