From fd432b43bf554c3a67c2cb4b4a301ced20143714 Mon Sep 17 00:00:00 2001 From: Brian Warner <warner@lothar.com> Date: Tue, 16 Sep 2008 18:36:27 -0700 Subject: [PATCH] #249: get dependent libs from tahoe-deps and ../tahoe-deps --- setup.cfg | 18 ++++++++++++++++++ setup.py | 15 ++++----------- 2 files changed, 22 insertions(+), 11 deletions(-) diff --git a/setup.cfg b/setup.cfg index 5fe33836..4c7ef133 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,2 +1,20 @@ [easy_install] zip_ok=False + +# Tahoe depends upon several libraries (foolscap, twisted, pycryptopp, and +# others). Left to its own devices, setuptools will look on PyPI for these +# and will download them at build time. The 'find_links=' entry in setup.cfg +# causes setuptools to look for these dependent tarballs in tahoe-deps/ and +# ../tahoe-deps/ before it resorts to downloading them from PyPI. + +# http://allmydata.org/source/tahoe/tarballs/tahoe-deps.tar.gz contains a +# bundle of these dependencies. So it you want to avoid the build-time +# download (say, if you're on an airplane, or a desert island), just grab a +# copy and unpack it in your tahoe darcs tree. + +# Alternatively, if you're building from a release/nightly tarball instead of +# a darcs tree, the 'sumo' tarball variant will include all of these +# dependencies in the tahoe-deps/ directory. + +find_links=misc/dependencies tahoe-deps ../tahoe-deps + http://allmydata.org/trac/tahoe/wiki/Dependencies diff --git a/setup.py b/setup.py index 181e4eda..7352d0c5 100644 --- a/setup.py +++ b/setup.py @@ -189,19 +189,12 @@ This filesystem is encrypted and spread over multiple peers in such a way that it remains available even when some of the peers are unavailable, malfunctioning, or malicious.""" -# For Desert Island builds, assume that the user has extracted the dependency -# tarball into a directory named 'misc/dependencies'. -dependency_links=[os.path.join(os.getcwd(), 'misc', 'dependencies')] - -# By adding a web page to the dependency_links we are able to put new packages -# up there and have them be automatically discovered by existing copies of the -# tahoe source when that source was built. -dependency_links.append("http://allmydata.org/trac/tahoe/wiki/Dependencies") # Default setup_requires are pyutil for the Windows installer builder(see # misc/sub-ver.py) and Twisted for the tests. #setup_requires = ['pyutil >= 1.3.16', 'Twisted >= 2.4.0'] setup_requires = [] + # darcsver is needed only if you want "./setup.py darcsver" to write a new # version stamp in src/allmydata/_version.py, with a version number derived from # darcs history. @@ -406,8 +399,9 @@ class MySdist(sdist.sdist): if data not in dist_files: dist_files.append(data) -# get a list of the libraries that we depend upon, for use in the call to -# setup() at the end of this file +# Tahoe's dependencies are managed by the find_links= entry in setup.cfg and +# the _auto_deps.install_requires list, which is used in the call to setup() +# at the end of this file from _auto_deps import install_requires setup(name='allmydata-tahoe', @@ -433,7 +427,6 @@ setup(name='allmydata-tahoe', install_requires=install_requires, include_package_data=True, setup_requires=setup_requires, - dependency_links=dependency_links, entry_points = { 'console_scripts': [ 'tahoe = allmydata.scripts.runner:run' ] }, zip_safe=False, # We prefer unzipped for easier access. ) -- 2.45.2