xapian-haystack/install_xapian.sh

54 lines
1.2 KiB
Bash
Raw Normal View History

2015-01-11 09:58:52 +00:00
#!/usr/bin/env bash
2022-03-19 10:41:39 +00:00
# first argument of the script is Xapian version (e.g. 1.4.19)
2015-01-11 09:58:52 +00:00
VERSION=$1
if [ -z "$VERSION" ]; then
echo "usage: $0 version_number" 1>&2
exit 1
fi
2015-01-11 09:58:52 +00:00
# prepare
mkdir -p $VIRTUAL_ENV/packages && cd $VIRTUAL_ENV/packages
2015-01-11 09:58:52 +00:00
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
2015-01-11 09:58:52 +00:00
# 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
2021-08-09 15:41:03 +00:00
PYTHON_FLAG=--with-python3
2015-01-11 09:58:52 +00:00
# The bindings for Python require python-sphinx
echo "Installing Python-Sphinx..."
SPHINX2_FIXED_VERSION=1.4.12
if [ $(printf "${VERSION}\n${SPHINX2_FIXED_VERSION}" | sort -V | head -n1) = "${SPHINX2_FIXED_VERSION}" ]; then
pip install sphinx
else
pip install "sphinx<2"
fi
2015-01-11 09:58:52 +00:00
echo "Installing Xapian-bindings..."
cd $VIRTUAL_ENV/packages/${BINDINGS}
./configure --prefix=$VIRTUAL_ENV $PYTHON_FLAG && make && make install
2015-01-11 09:58:52 +00:00
# clean
cd $VIRTUAL_ENV
2015-01-11 09:58:52 +00:00
rm -rf $VIRTUAL_ENV/packages
# test
echo "Testing Xapian..."
2015-01-11 09:58:52 +00:00
python -c "import xapian"