forked from notanumber/xapian-haystack
-
Notifications
You must be signed in to change notification settings - Fork 0
/
install_xapian.sh
executable file
·54 lines (42 loc) · 1.28 KB
/
install_xapian.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
#!/usr/bin/env bash
# first argument of the script is Xapian version (e.g. 1.2.19)
VERSION=$1
# prepare
mkdir $VIRTUAL_ENV/packages && cd $VIRTUAL_ENV/packages
CORE=xapian-core-$VERSION
BINDINGS=xapian-bindings-$VERSION
# download
echo "Downloading source..."
curl -O https://oligarchy.co.uk/xapian/$VERSION/${CORE}.tar.xz
curl -O https://oligarchy.co.uk/xapian/$VERSION/${BINDINGS}.tar.xz
# extract
echo "Extracting source..."
tar xf ${CORE}.tar.xz
tar xf ${BINDINGS}.tar.xz
# install
echo "Installing Xapian-core..."
cd $VIRTUAL_ENV/packages/${CORE}
./configure --prefix=$VIRTUAL_ENV && make && make install
PYV=`python -c "import sys;t='{v[0]}'.format(v=list(sys.version_info[:1]));sys.stdout.write(t)";`
if [ $PYV = "2" ]; then
PYTHON_FLAG=--with-python
else
PYTHON_FLAG=--with-python3
fi
if [ $VERSION = "1.3.3" ]; then
XAPIAN_CONFIG=$VIRTUAL_ENV/bin/xapian-config-1.3
else
XAPIAN_CONFIG=
fi
# The bindings for Python require python-sphinx
echo "Installing Python-Sphinx..."
pip install sphinx
echo "Installing Xapian-bindings..."
cd $VIRTUAL_ENV/packages/${BINDINGS}
./configure --prefix=$VIRTUAL_ENV $PYTHON_FLAG XAPIAN_CONFIG=$XAPIAN_CONFIG && make && make install
# clean
cd $VIRTUAL_ENV
rm -rf $VIRTUAL_ENV/packages
# test
echo "Testing Xapian..."
python -c "import xapian"