Makefile
130 lines
| 3.2 KiB
| text/x-makefile
|
MakefileLexer
Fernando Perez
|
r1752 | # Simple makefile to rapidly deploy IPython with all its dependencies. | ||
# Configuration section. The version numbers and paths declared here may | ||||
# change with each release. | ||||
# IPython version | ||||
IPYTHON_VER=0.9.1 | ||||
# Declare here version numbers of all the dependencies | ||||
PYOPENSSL_VER=0.6 | ||||
ZOPE_INTERFACE_VER=3.4.1 | ||||
TWISTED_VER=8.1.0 | ||||
FOOLSCAP_VER=0.3.1 | ||||
NOSE_VER=0.10.3 | ||||
# Repository URLs for all packages. Make sure these are correct for each | ||||
# release, since projects may change paths! | ||||
IPYTHON_REPO=http://ipython.scipy.org/dist | ||||
PYOPENSSL_REPO=http://downloads.sourceforge.net/pyopenssl | ||||
ZOPE_INTERFACE_REPO=http://pypi.python.org/packages/source/z/zope.interface | ||||
TWISTED_REPO=http://tmrc.mit.edu/mirror/twisted/Twisted/8.1 | ||||
FOOLSCAP_REPO=http://foolscap.lothar.com/releases | ||||
NOSE_REPO=http://somethingaboutorange.com/mrl/projects/nose | ||||
#----------------------------------------------------------------------------- | ||||
# Main code begins. There shouldn't be much to change here with each release. | ||||
# | ||||
# Hand-written files to ship in self-contained tarball | ||||
SOURCES=pkginstall pkginstall.cfg Makefile README.txt README.html | ||||
# Versions of tarballs we ship | ||||
IPYTHON=ipython-$(IPYTHON_VER).tar.gz | ||||
IP_ALLDEPS=ipython-alldeps-$(IPYTHON_VER) | ||||
PYOPENSSL=pyOpenSSL-$(PYOPENSSL_VER).tar.gz | ||||
ZOPE_INTERFACE=zope.interface-$(ZOPE_INTERFACE_VER).tar.gz | ||||
NOSE=nose-$(NOSE_VER).tar.gz | ||||
TWISTED=Twisted-$(TWISTED_VER).tar.bz2 | ||||
FOOLSCAP=foolscap-$(FOOLSCAP_VER).tar.gz | ||||
TARBALLS=$(PYOPENSSL) $(ZOPE_INTERFACE) $(TWISTED) $(FOOLSCAP) \ | ||||
$(NOSE) $(IPYTHON) | ||||
# URLs for downloads | ||||
#----------------------------------------------------------------------------- | ||||
# Target declaration | ||||
# | ||||
# Targets to install, in correct dependency order | ||||
install: pyopenssl zope.interface twisted foolscap nose ipython | ||||
echo | ||||
echo "IPython Installation finished." | ||||
echo "You can now run the ipython test suite by running:" | ||||
echo "iptest" | ||||
echo "If all tests pass, you can delete this entire directory." | ||||
echo | ||||
# Download targets | ||||
download: $(TARBALLS) | ||||
$(IPYTHON): | ||||
wget $(IPYTHON_REPO)/$(IPYTHON) | ||||
$(PYOPENSSL): | ||||
wget $(PYOPENSSL_REPO)/$(PYOPENSSL) | ||||
$(ZOPE_INTERFACE): | ||||
wget $(ZOPE_INTERFACE_REPO)/$(ZOPE_INTERFACE) | ||||
$(TWISTED): | ||||
wget $(TWISTED_REPO)/$(TWISTED) | ||||
$(FOOLSCAP): | ||||
wget $(FOOLSCAP_REPO)/$(FOOLSCAP) | ||||
$(NOSE): | ||||
wget $(NOSE_REPO)/$(NOSE) | ||||
# The calls to pkginstall must use the actual Python package name | ||||
nose: $(NOSE) | ||||
./pkginstall nose | ||||
zope.interface: $(ZOPE_INTERFACE) | ||||
./pkginstall zope.interface zope | ||||
pyopenssl: $(PYOPENSSL) | ||||
./pkginstall pyOpenSSL OpenSSL | ||||
twisted: $(TWISTED) | ||||
./pkginstall Twisted | ||||
foolscap: $(FOOLSCAP) | ||||
./pkginstall foolscap | ||||
ipython: $(IPYTHON) | ||||
./pkginstall ipython IPython | ||||
# Distribution targets | ||||
dist: $(IP_ALLDEPS).tar | ||||
$(IP_ALLDEPS).tar: download readme | ||||
-mkdir $(IP_ALLDEPS) | ||||
-ln $(SOURCES) $(TARBALLS) $(IP_ALLDEPS)/ | ||||
tar cf $(IP_ALLDEPS).tar $(IP_ALLDEPS) | ||||
rm -rf $(IP_ALLDEPS) | ||||
readme: README.html | ||||
README.html: README.txt | ||||
rst2html README.txt > README.html | ||||
# Auxiliary targets | ||||
upload: dist | ||||
rsync -e ssh -av README.html $(IP_ALLDEPS).tar \ | ||||
ipython@ipython.scipy.org:www/dist/alldeps | ||||
clean: | ||||
ls -p | grep /$ | xargs rm -rf | ||||
rm -f $(IP_ALLDEPS)* *~ | ||||
distclean: clean | ||||
rm -f $(TARBALLS) | ||||
rm README.html | ||||
info: | ||||
echo "TARBALLS" | ||||
echo $(TARBALLS) | ||||