[buildout]
extends =
  bzip2.cfg
  gdbm.cfg
  gettext.cfg
  ncurses.cfg
  openssl.cfg
  readline.cfg
  sqlite3.cfg
  zlib.cfg

parts =
    pythonbin2.4

[python2.4-dbm-patch]
recipe = hexagonit.recipe.download
# original patch from http://bugs.gentoo.org/attachment.cgi?id=109117
url = ${:_profile_base_location_}/../patch/${:filename}
md5sum = 8611020af1463b42f253ac73a91b09a1
download-only = true
filename = python2.4-dbm.patch

[python2.4-no_system_inc_dirs-patch]
recipe = hexagonit.recipe.download
url = ${:_profile_base_location_}/../patch/${:filename}
md5sum = 65c1193ac42c15109be0e6f9b7a671b8
download-only = true
filename = python2.4-no_system_inc_dirs.patch

[python2.4-CPPFLAGS-patch]
recipe = hexagonit.recipe.download
url = ${:_profile_base_location_}/../patch/${:filename}
md5sum = 912b6d4b107e3f382995a4d3afcd3eca
download-only = true
filename = python2.4-backport-CPPFLAGS-setup-from-python2.6.patch

[python2.4]
recipe = hexagonit.recipe.cmmi
# This is actually the default setting for prefix, but we can't use it in
# other settings in this part if we don't set it explicitly here.
prefix = ${buildout:parts-directory}/${:_buildout_section_name_}
version = 2.4
package_version = ${:version}.6
executable = ${:prefix}/bin/python${:version}

python_version_major = 2.4
python_version_minor = 6
python_version_full = ${:python_version_major}.${:python_version_minor}
url =
  http://python.org/ftp/python/${:python_version_full}/Python-${:python_version_full}.tgz
patches =
	${python2.4-dbm-patch:location}/${python2.4-dbm-patch:filename}
        ${python2.4-no_system_inc_dirs-patch:location}/${python2.4-no_system_inc_dirs-patch:filename}
        ${python2.4-CPPFLAGS-patch:location}/${python2.4-CPPFLAGS-patch:filename}

configure-options =
  --enable-unicode=ucs4
  --with-threads

environment =
  CPPFLAGS=-I${zlib:location}/include -I${readline:location}/include -I${ncurses:location}/include/ -I${ncurses:location}/include/ncursesw/ -I${bzip2:location}/include  -I${gdbm:location}/include -I${openssl:location}/include -I${sqlite3:location}/include -I${gettext:location}/include
  LDFLAGS=-L${zlib:location}/lib -L${readline:location}/lib -L${ncurses:location}/lib -L${bzip2:location}/lib -L${gdbm:location}/lib -L${openssl:location}/lib -L${sqlite3:location}/lib -Wl,-rpath -Wl,${zlib:location}/lib -Wl,-rpath -Wl,${readline:location}/lib -Wl,-rpath -Wl,${ncurses:location}/lib -Wl,-rpath -Wl,${bzip2:location}/lib -Wl,-rpath -Wl,${gdbm:location}/lib -Wl,-rpath -Wl,${openssl:location}/lib -Wl,-rpath -Wl,${sqlite3:location}/lib -L${gettext:location}/lib -Wl,-rpath -Wl,${gettext:location}/lib

[pythonbin2.4]
# XXX/Note: This is hackish way to have fully featured python interpreter
recipe = zc.recipe.egg:scripts
python = python2.4
eggs = ${eggs:eggs}
  invokepython>=0.4
extra-paths =
  ${zope-2.8:location}/lib/python
scripts =
  invokepython=python${python2.4:python_version_major}
  ipython=ipython${python2.4:python_version_major}

[bootstrap2.4]
recipe = zc.recipe.egg
eggs = zc.buildout
suffix =
scripts =
    buildout=bootstrap2.4
arguments = sys.argv[1:] + ["bootstrap"]
suffix = 2.4
python = python2.4