summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbescoto <bescoto@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109>2003-03-13 07:07:10 +0000
committerbescoto <bescoto@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109>2003-03-13 07:07:10 +0000
commit280c5b7c2f1f12439dcecb3bfc42f95cd95da390 (patch)
treeb2d22a8d8259d14599c6f158bcfed1ced0b56032
parent5c3ca608476db425e5cfa916a32ea4d8983424c9 (diff)
downloadrdiff-backup-280c5b7c2f1f12439dcecb3bfc42f95cd95da390.tar.gz
Added Albert Chin-A-Young's setup.py code to check options/environment variables
git-svn-id: http://svn.savannah.nongnu.org/svn/rdiff-backup/trunk@297 2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109
-rwxr-xr-xrdiff-backup/dist/setup.py41
1 files changed, 37 insertions, 4 deletions
diff --git a/rdiff-backup/dist/setup.py b/rdiff-backup/dist/setup.py
index cb571cd..f291c39 100755
--- a/rdiff-backup/dist/setup.py
+++ b/rdiff-backup/dist/setup.py
@@ -9,6 +9,38 @@ if sys.version_info[:2] < (2,2):
print "Sorry, rdiff-backup requires version 2.2 or later of python"
sys.exit(1)
+# Defaults
+lflags_arg = []
+libname = ['rsync']
+incdir_list = libdir_list = None
+
+if os.name == 'posix':
+ LIBRSYNC_DIR = os.environ.get('LIBRSYNC_DIR', '')
+ LFLAGS = os.environ.get('LFLAGS', [])
+ LIBS = os.environ.get('LIBS', [])
+
+ # Handle --librsync-dir=[PATH] and --lflags=[FLAGS]
+ args = sys.argv[:]
+ for arg in args:
+ if arg.startswith('--librsync-dir='):
+ LIBRSYNC_DIR = arg.split('=')[1]
+ sys.argv.remove(arg)
+ elif arg.startswith('--lflags='):
+ LFLAGS = arg.split('=')[1].split()
+ sys.argv.remove(arg)
+ elif arg.startswith('--libs='):
+ LIBS = arg.split('=')[1].split()
+ sys.argv.remove(arg)
+
+ if LFLAGS or LIBS:
+ lflags_arg = LFLAGS + LIBS
+
+ if LIBRSYNC_DIR:
+ incdir_list = [os.path.join(LIBRSYNC_DIR, 'include')]
+ libdir_list = [os.path.join(LIBRSYNC_DIR, 'lib')]
+ if '-lrsync' in LIBS:
+ libname = []
+
setup(name="rdiff-backup",
version=version_string,
description="Local/remote mirroring+incremental backup",
@@ -19,11 +51,12 @@ setup(name="rdiff-backup",
ext_modules = [Extension("rdiff_backup.C", ["cmodule.c"]),
Extension("rdiff_backup._librsync",
["_librsyncmodule.c"],
- libraries=["rsync"])],
+ include_dirs=incdir_list,
+ library_dirs=libdir_list,
+ libraries=libname,
+ extra_link_args=lflags_arg)],
scripts = ['rdiff-backup'],
data_files = [('share/man/man1', ['rdiff-backup.1']),
- ('share/doc/rdiff-backup-%s' % version_string,
+ ('share/doc/rdiff-backup-%s' % (version_string,),
['CHANGELOG', 'COPYING', 'README', 'FAQ.html'])])
-
-