diff --git a/tools/ci/travis-install-dagmc.sh b/tools/ci/travis-install-dagmc.sh new file mode 100755 index 000000000..fa3bf0f3f --- /dev/null +++ b/tools/ci/travis-install-dagmc.sh @@ -0,0 +1,36 @@ + +#!/bin/bash +set -ex + +# MOAB Variables +MOAB_BRANCH='Version5.0' +MOAB_REPO='https://bitbucket.org/fathomteam/moab/' +MOAB_INSTALL_DIR=$HOME/MOAB/ + +# DAGMC Variables +DAGMC_BRANCH='develop' +DAGMC_REPO='https://github.com/svalinn/dagmc' +DAGMC_INSTALL_DIR=$HOME/DAGMC/ + +CURRENT_DIR=$(pwd) + +# MOAB Install +cd $HOME +mkdir MOAB && cd MOAB +git clone -b $MOAB_BRANCH $MOAB_REPO +mkdir build && cd build +cmake ../moab -DENABLE_HDF5=ON -DCMAKE_INSTALL_PREFIX=$MOAB_INSTALL_DIR +make -j test install +rm -r $HOME/MOAB/moab +export LD_LIBRARY_PATH=$MOAB_INSTALL_DIR/lib:$LD_LIBRARY_PATH + +# DAGMC Install +mkdir DAGMC && cd DAGMC +git clone -b $DAGMC_BRANCH $DAGMC_REPO +mkdir build && cd build +cmake ../dagmc -DBUILD_TALLY=ON -DCMAKE_INSTALL_PREFIX=$DAGMC_INSTALL_D +make -j install +rm -r $HOME/DAGMC/dagmc +export LD_LIBRARY_PATH=$DAGMC_INSTALL_DIR/lib:$LD_LIBRARY_PATH + +cd $CURRENT_DIR diff --git a/tools/ci/travis-install.py b/tools/ci/travis-install.py index d6720cccf..a3503bd86 100644 --- a/tools/ci/travis-install.py +++ b/tools/ci/travis-install.py @@ -50,7 +50,6 @@ def install(omp=False, mpi=False, phdf5=False, dagmc=False): cmake_cmd.append('-DHDF5_PREFER_PARALLEL=OFF') if dagmc: - build_dagmc() cmake_cmd.append('-Ddagmc=ON') # Build and install @@ -60,72 +59,6 @@ def install(omp=False, mpi=False, phdf5=False, dagmc=False): subprocess.check_call(['make', '-j2']) subprocess.check_call(['sudo', 'make', 'install']) -def mkcd(directory): - os.mkdir(directory) - os.chdir(directory) - -def build_dagmc(): - - current_dir = os.getcwd() - home_dir = os.environ['HOME'] - - os.chdir(home_dir) - mkcd('MOAB') - - clone_cmd = ['git', 'clone', '-b', 'Version'+MOAB_VERSION, 'https://bitbucket.org/fathomteam/moab'] - subprocess.check_call(clone_cmd) - - mkcd('build') - - moab_install_dir = home_dir + "/" + "MOAB" - cmake_cmd = ['cmake', '../moab', '-DENABLE_HDF5=ON', '-DENABLE_TOOLS=ON', '-DCMAKE_INSTALL_PREFIX='+moab_install_dir] - subprocess.check_call(cmake_cmd) - - subprocess.check_call(['make', '-j2']) - - subprocess.check_call(['make', 'test']) - - subprocess.check_call(['make','install']) - - # check for existing LD_LIBRARY_PATH - try: - ld_lib_path = os.environ['LD_LIBRARY_PATH'] - except: - ld_lib_path = '' - - # update LB_LIBRARY_PATH (so DAGMC can find MOAB) - os.environ['LD_LIBRARY_PATH'] = moab_install_dir+"/lib" + ":" + ld_lib_path - - # remove moab source dir - shutil.rmtree(home_dir + "/MOAB/moab") - - # build dagmc - os.chdir(home_dir) - - mkcd('DAGMC') - - clone_cmd = ['git', 'clone', 'https://github.com/svalinn/dagmc'] - subprocess.check_call(clone_cmd) - - mkcd('build') - - dagmc_install_dir = home_dir + "/" + 'DAGMC' - cmake_cmd = ['cmake', '../dagmc', '-DCMAKE_INSTALL_PREFIX='+dagmc_install_dir, '-DBUILD_TALLY=ON'] - subprocess.check_call(cmake_cmd) - - subprocess.check_call(['make','-j2']) - - subprocess.check_call(['make','install']) - - # update LB_LIBRARY_PATH (so DAGMC can find MOAB) - os.environ['LD_LIBRARY_PATH'] = dagmc_install_dir+"/lib" + ":" + ld_lib_path - - # remove dagmc source dir - shutil.rmtree(home_dir + "/DAGMC/dagmc") - - # return to original directory - os.chdir(current_dir) - def main(): # Convert Travis matrix environment variables into arguments for install() omp = (os.environ.get('OMP') == 'y') @@ -137,6 +70,5 @@ def main(): # Build and install install(omp, mpi, phdf5, dagmc) - if __name__ == '__main__': main() diff --git a/tools/ci/travis-install.sh b/tools/ci/travis-install.sh index 88c59d051..c10c22279 100755 --- a/tools/ci/travis-install.sh +++ b/tools/ci/travis-install.sh @@ -4,6 +4,11 @@ set -ex # Install NJOY 2016 ./tools/ci/travis-install-njoy.sh +# Install DAGMC if needed +if [[ $DAGMC = 'y' ]]; then + ./tools/ci/travis-install-dagmc.sh +fi + # Upgrade pip before doing anything else pip install --upgrade pip