Commit d8ed8c18 authored by Giorgos Korfiatis's avatar Giorgos Korfiatis

Build duplicity with dependencies on Linux

parent 54d0e169
...@@ -2,7 +2,9 @@ ...@@ -2,7 +2,9 @@
Backup as a Service Backup as a Service
## Build instructions for Windows ## Build instructions
### Build instructions for Windows
I. Cygwin installation and setup I. Cygwin installation and setup
1. Download Cygwin setup.exe from https://www.cygwin.com/setup-x86_64.exe 1. Download Cygwin setup.exe from https://www.cygwin.com/setup-x86_64.exe
...@@ -25,6 +27,14 @@ III. Clone repo and build ...@@ -25,6 +27,14 @@ III. Clone repo and build
3. cd .. to build : nwbuild -p win64 -v 0.12.0 baas/ 3. cd .. to build : nwbuild -p win64 -v 0.12.0 baas/
4. copy contents of build\baas\win64 folder into build directory 4. copy contents of build\baas\win64 folder into build directory
### Build instructions for Windows
I. Building duplicity
1. You will need python, pip and gnupg.
2. Make sure you have librsync-dev installed.
3. pip install wheel.
4. Download and unpack the latest duplicity source code from https://launchpad.net/duplicity/0.6-series
5. Run make_duplicity.sh <path_to_duplicity_src>. This will build duplicity and collect its dependencies under build/duplicity. In order to run the executable build/duplicity/duplicity, you need to set PYTHONPATH=build/duplicity/lib.
## Copyright and license ## Copyright and license
......
#!/usr/bin/env bash
# Copyright (C) 2015 GRNET S.A.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
PLATFORM=linux-x86_64
if [ -z "$1" ]
then
echo "Usage: $0 <path_to_duplicity_src>"
exit
fi
cd "$(dirname "$0")"
ROOTPATH=$(pwd)
cd $1
SRCPATH=$(pwd)
cd $ROOTPATH
echo $(pwd)
echo $SRCPATH
BUILDDIR=$ROOTPATH/build
DUPL=$BUILDDIR/duplicity
echo building under $DUPL
rm -rf $DUPL
mkdir -p $DUPL
WHEELHOUSE=$DUPL/wheelhouse
pip wheel lockfile -w $WHEELHOUSE
if [ $? -ne 0 ]; then
exit 1
fi
pip wheel python-swiftclient -w $WHEELHOUSE
cd $WHEELHOUSE
for i in *; do unzip $i -d $DUPL/lib; done
cd $DUPL
rm -r $WHEELHOUSE
cd $SRCPATH
rm -rf build
python setup.py build
cd build/lib.${PLATFORM}-2.7
cp -pr * $DUPL/lib
cd ../scripts-2.7
cp -p duplicity $DUPL
echo built in $DUPL
echo must be used with PYTHONPATH=$DUPL/lib
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment