gtsam/.travis.python.sh

82 lines
1.9 KiB
Bash
Raw Normal View History

2020-02-12 03:43:56 +08:00
#!/bin/bash
2020-02-12 06:24:32 +08:00
set -x -e
2020-02-12 03:43:56 +08:00
2020-02-14 05:41:59 +08:00
if [ -z ${PYTHON_VERSION+x} ]; then
echo "Please provide the Python version to build against!"
exit 127
fi
2020-08-14 22:48:17 +08:00
if [ -z ${WRAPPER+x} ]; then
echo "Please provide the wrapper to build!"
exit 126
fi
2020-02-14 05:41:59 +08:00
PYTHON="python${PYTHON_VERSION}"
2020-02-12 23:58:16 +08:00
if [[ $(uname) == "Darwin" ]]; then
brew install wget
else
# Install a system package required by our library
2020-02-15 02:44:00 +08:00
sudo apt-get install wget libicu-dev python3-pip python3-setuptools
2020-02-12 23:58:16 +08:00
fi
2020-02-12 03:43:56 +08:00
2020-08-14 22:48:17 +08:00
PATH=$PATH:$($PYTHON -c "import site; print(site.USER_BASE)")/bin
case $WRAPPER in
"cython")
BUILD_CYTHON="ON"
BUILD_PYBIND="OFF"
TYPEDEF_POINTS_TO_VECTORS="OFF"
$PYTHON -m pip install --user -r ./cython/requirements.txt
;;
"pybind")
BUILD_CYTHON="OFF"
BUILD_PYBIND="ON"
TYPEDEF_POINTS_TO_VECTORS="ON"
2020-02-12 03:43:56 +08:00
2020-08-14 22:48:17 +08:00
$PYTHON -m pip install --user -r ./wrap/python/requirements.txt
;;
*)
exit 126
;;
esac
CURRDIR=$(pwd)
2020-02-12 06:24:32 +08:00
2020-02-12 03:43:56 +08:00
mkdir $CURRDIR/build
cd $CURRDIR/build
cmake $CURRDIR -DCMAKE_BUILD_TYPE=Release \
-DGTSAM_BUILD_TESTS=OFF -DGTSAM_BUILD_UNSTABLE=ON \
-DGTSAM_USE_QUATERNIONS=OFF \
-DGTSAM_BUILD_EXAMPLES_ALWAYS=OFF \
2020-02-12 23:58:16 +08:00
-DGTSAM_BUILD_WITH_MARCH_NATIVE=OFF \
2020-08-14 22:48:17 +08:00
-DGTSAM_INSTALL_CYTHON_TOOLBOX=${BUILD_CYTHON} \
-DGTSAM_BUILD_PYTHON=${BUILD_PYBIND} \
-DGTSAM_TYPEDEF_POINTS_TO_VECTORS=${TYPEDEF_POINTS_TO_VECTORS} \
2020-02-14 05:41:59 +08:00
-DGTSAM_PYTHON_VERSION=$PYTHON_VERSION \
2020-08-14 22:48:17 +08:00
-DGTSAM_ALLOW_DEPRECATED_SINCE_V4=OFF \
-DPYTHON_EXECUTABLE:FILEPATH=$(which $PYTHON) \
2020-02-12 03:43:56 +08:00
-DCMAKE_INSTALL_PREFIX=$CURRDIR/../gtsam_install
make -j$(nproc) install
2020-08-14 22:48:17 +08:00
case $WRAPPER in
"cython")
cd $CURRDIR/../gtsam_install/cython
$PYTHON setup.py install --user --prefix=
cd $CURRDIR/cython/gtsam/tests
$PYTHON -m unittest discover
;;
"pybind")
$PYTHON setup.py install --user --prefix=
cd $CURRDIR/wrap/python/gtsam_py/tests
$PYTHON -m unittest discover
;;
*)
echo "THIS SHOULD NEVER HAPPEN!"
exit 125
;;
esac