-
Notifications
You must be signed in to change notification settings - Fork 25
/
Copy pathmacosx.sh
executable file
·144 lines (113 loc) · 3.84 KB
/
macosx.sh
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
#!/bin/bash
# This script contains common code for building PyNE on various Debian-derived systems
#
function check_repo() {
repo_name=$1
if [ -d ${repo_name} ] ; then
read -p "Delete the existing ${repo_name} directory and all contents? (y/n) " -n 1 -r
if [[ $REPLY =~ ^[Yy]$ ]] ; then
rm -rf ${repo_name}
fi
fi
}
function build_moab {
# Install MOAB
cd ${install_dir}
mkdir -p moab
cd moab
check_repo moab-repo
git clone --branch Version5.1.0 --single-branch https://bitbucket.org/fathomteam/moab moab-repo
cd moab-repo
mkdir -p build
cd build
cmake ../ -DENABLE_HDF5=ON \
-DBUILD_SHARED_LIBS=ON \
-DENABLE_PYMOAB=ON \
-DENABLE_BLASLAPACK=OFF \
-DENABLE_FORTRAN=OFF \
-DCMAKE_INSTALL_PREFIX=${install_dir}/moab
make
make install
echo "if [ -n \"\${LD_LIBRARY_PATH-}\" ]" >> ~/.bashrc
echo "then" >> ~/.bashrc
echo " export LD_LIBRARY_PATH=${install_dir}/moab/lib:\$LD_LIBRARY_PATH" >> ~/.bashrc
echo "else" >> ~/.bashrc
echo " export LD_LIBRARY_PATH=${install_dir}/moab/lib" >> ~/.bashrc
echo "fi" >> ~/.bashrc
PYTHON_VERSION=$(python -c 'import sys; print(sys.version.split('')[0][0:3])')
echo "if [ -n \"\${PYTHONPATH-}\" ]" >> ~/.bashrc
echo "then" >> ~/.bashrc
echo " export PYTHONPATH=${install_dir}/moab/lib/python${PYTHON_VERSION}/site-packages:\$PYTHONPATH" >> ~/.bashrc
echo "else" >> ~/.bashrc
echo " export PYTHONPATH=${install_dir}/moab/lib/python${PYTHON_VERSION}/site-packages" >> ~/.bashrc
echo "fi" >> ~/.bashrc
source ~/.bashrc
}
function build_dagmc {
# Install DAGMC
cd ${install_dir}
check_repo dagmc
mkdir -p dagmc
cd dagmc
git clone https://github.com/svalinn/DAGMC.git dagmc-repo
cd dagmc-repo
git checkout develop
mkdir build
cd build
cmake .. -DMOAB_DIR=${install_dir}/moab \
-DBUILD_STATIC_LIBS=OFF \
-DCMAKE_INSTALL_PREFIX=${install_dir}/dagmc
make
make install
}
function install_pyne {
# Install PyNE
cd ${install_dir}
check_repo pyne
git clone https://github.com/pyne/pyne.git
cd pyne
if [ $1 == 'stable' ] ; then
TAG=$(git describe --abbrev=0 --tags)
git checkout tags/`echo ${TAG}` -b `echo ${TAG}`
fi
python setup.py install --user -- -DMOAB_LIBRARY=${install_dir}/moab/lib \
-DMOAB_INCLUDE_DIR=${install_dir}/moab/include \
--dagmc ${install_dir}/dagmc \
--clean
echo "export PATH=${HOME}/.local/bin:\$PATH" >> ~/.bashrc
echo "export LD_LIBRARY_PATH=${HOME}/.local/lib:\$LD_LIBRARY_PATH" >> ~/.bashrc
PYTHON_VERSION=$(python -c 'import sys; print(sys.version.split('')[0][0:3])')
echo "if [ -n \"\${PYTHONPATH-}\" ]" >> ~/.bashrc
echo "then" >> ~/.bashrc
echo " export PYTHONPATH=~/.local/lib/python${PYTHON_VERSION}/site-packages:\$PYTHONPATH" >> ~/.bashrc
echo "else" >> ~/.bashrc
echo " export PYTHONPATH=~/.local/lib/python${PYTHON_VERSION}/site-packages" >> ~/.bashrc
echo "fi" >> ~/.bashrc
source ~/.bashrc
}
function run_nuc_data_make {
cd
# Generate nuclear data file
nuc_data_make
}
function test_pyne {
cd $install_dir/pyne
cd tests
./travis-run-tests.sh python3
}
set -euo pipefail
IFS=$'\n\t'
# system update
eval brew update
eval brew install ${brew_package_list}
export PATH="${HOME}/.local/bin:${PATH}"
eval sudo pip3 install ${pip_package_list}
install_dir=${HOME}/opt
mkdir -p ${install_dir}
build_moab
build_dagmc
install_pyne $1
run_nuc_data_make
test_pyne
echo "Run 'source ~/.bashrc' to update environment variables. PyNE may not function correctly without doing so."
echo "PyNE build complete."