# -*- makefile -*- PYTHON_VERSION ?= 2.4.6 PYTHON_URL ?= http://www.python.org/ftp/python/$(PYTHON_VERSION)/Python-$(PYTHON_VERSION).tgz SETUPTOOLS_URL ?= http://peak.telecommunity.com/dist/ez_setup.py PIL_VERSION ?= 1.1.6 PIL_URL ?= http://effbot.org/downloads/Imaging-$(PIL_VERSION).tar.gz ########################################################################### PYTHON_DIR=python BASEDIR=$(shell pwd) PYTHON = $(BASEDIR)/$(PYTHON_DIR)/bin/python EASY_INSTALL = $(BASEDIR)/$(PYTHON_DIR)/bin/easy_install PASTER = $(BASEDIR)/$(PYTHON_DIR)/bin/paster default: update-nonet debdepends: sudo aptitude install build-essential zlibc .PHONY: python-unpack python-build python setuptools eggs pil-unpack pil-build pil buildout \ bootstrap update update-nonet shell init otherinit python-unpack: $(PYTHON_DIR)/Python-$(PYTHON_VERSION)/README $(PYTHON_DIR)/Python-$(PYTHON_VERSION)/README: mkdir $(PYTHON_DIR) wget "$(PYTHON_URL)" -O $(PYTHON_DIR)/python.tgz tar -C $(PYTHON_DIR) -xzf $(PYTHON_DIR)/python.tgz rm -f $(PYTHON_DIR)/python.tgz python-build: $(PYTHON) $(PYTHON): cd $(PYTHON_DIR)/Python-$(PYTHON_VERSION) && ./configure --prefix=$(BASEDIR)/$(PYTHON_DIR) cd $(PYTHON_DIR)/Python-$(PYTHON_VERSION) && make cd $(PYTHON_DIR)/Python-$(PYTHON_VERSION) && make install python: python-unpack python-build setuptools: $(EASY_INSTALL) $(EASY_INSTALL): mkdir $(PYTHON_DIR)/Extensions wget $(SETUPTOOLS_URL) -O $(PYTHON_DIR)/Extensions/ez_setup.py cd $(PYTHON_DIR)/Extensions && $(PYTHON) ez_setup.py eggs: $(EASY_INSTALL) ZopeSkel $(EASY_INSTALL) zc.buildout pil-unpack: $(PYTHON_DIR)/Extensions/Imaging-$(PIL_VERSION)/README $(PYTHON_DIR)/Extensions/Imaging-$(PIL_VERSION)/README: wget $(PIL_URL) -O $(PYTHON_DIR)/Extensions/pil.tgz tar -C $(PYTHON_DIR)/Extensions -xzf $(PYTHON_DIR)/Extensions/pil.tgz rm -f $(PYTHON_DIR)/Extensions/pil.tgz pil-build: $(PYTHON_DIR)/bin/pilconvert.py $(PYTHON_DIR)/bin/pilconvert.py: cd $(PYTHON_DIR)/Extensions/Imaging-$(PIL_VERSION) && $(PYTHON) setup.py install pil: pil-unpack pil-build buildout: buildout.cfg buildout.cfg: $(PASTER) create --no-interactive -t plone3_buildout . zope_password=admin bootstrap: sed -i -e '1s/^#!.*\/python/#!$(subst /,\/,$(PYTHON))/' $(PYTHON_DIR)/bin/* $(PYTHON) bootstrap.py .gitignore: @echo "python/" >.gitignore @echo "var/" >>.gitignore @echo "bin/" >>.gitignore @echo "develop-eggs/" >>.gitignore @echo "downloads/" >>.gitignore @echo "eggs/" >>.gitignore @echo "fake-eggs/" >>.gitignore @echo "parts/" >>.gitignore @echo "/.installed.cfg" >>.gitignore @echo "*.pyc" >>.gitignore shell: @PATH=$(BASEDIR)/$(PYTHON_DIR)/bin:$(BASEDIR)/bin:$$PATH $$SHELL init: python setuptools pil eggs buildout otherinit otherupdate bootstrap update .gitignore otherinit:: otherupdate:: update: otherupdate bin/buildout update-nonet: otherupdate bin/buildout -No