##// END OF EJS Templates
Add
Add

File last commit:

r1752:af0aa7a3
r23671:b0d4cc7a
Show More
Makefile
130 lines | 3.2 KiB | text/x-makefile | MakefileLexer
# 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)