# GNU C Compiler
# Mostly required to support languages different then C or C++
[buildout]
extends =
  fastjar.cfg
  m4.cfg
  zip.cfg

parts =
  gcc-java

[gmp]
recipe = hexagonit.recipe.cmmi
url = ftp://ftp.gmplib.org/pub/gmp-4.3.2/gmp-4.3.2.tar.bz2
md5sum = dd60683d7057917e34630b4a787932e8
# GMP does not correctly detect achitecture so it have to be given
# as hexagonit.recipe.cmmi is using shell expansion in subproceses
# backticks are working
configure-options =
  --build=`uname -m`-linux
environment =
  PATH=${m4:location}/bin:%(PATH)s

[mpfr]
recipe = hexagonit.recipe.cmmi
url = http://www.mpfr.org/mpfr-3.0.0/mpfr-3.0.0.tar.bz2
md5sum = f45bac3584922c8004a10060ab1a8f9f
configure-options =
  --with-gmp=${gmp:location}
environment =
  CPPFLAGS =-I${gmp:location}/include
  LDFLAGS =-L${gmp:location}/lib -Wl,-rpath -Wl,${gmp:location}/lib

[mpc]
recipe = hexagonit.recipe.cmmi
url = http://www.multiprecision.org/mpc/download/mpc-0.9.tar.gz
md5sum = 0d6acab8d214bd7d1fbbc593e83dd00d
configure-options =
  --with-gmp=${gmp:location}
  --with-mpfr=${mpfr:location}
environment =
  CPPFLAGS =-I${mpfr:location}/include -I${gmp:location}/include
  LDFLAGS =-L${mpfr:location}/lib -Wl,-rpath -Wl,${mpfr:location}/lib -L${gmp:location}/lib -Wl,-rpath -Wl,${gmp:location}/lib

[ecj]
recipe = hexagonit.recipe.download
download-only = true
url = ftp://sourceware.org/pub/java/ecj-4.5.jar
md5sum = d7cd6a27c8801e66cbaa964a039ecfdb
filename = ecj.jar

[gcc-download]
recipe = hexagonit.recipe.download
url = http://www.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-4.5.2/gcc-4.5.2.tar.bz2
md5sum = d6559145853fbaaa0fd7556ed93bce9a
strip-top-level-dir = True
destination = ${gcc-java-source:location}

[gcc-java-download]
recipe = hexagonit.recipe.download
url = http://www.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-4.5.2/gcc-java-4.5.2.tar.bz2
md5sum = fe2b647bace18dc7867a4192def46e2c
strip-top-level-dir = True
destination = ${gcc-java-source:location}
ignore-existing = true

[gcc-java-source]
location = ${buildout:parts-directory}/${:_buildout_section_name_}

[gcc-java]
depends =
  ${gcc-download:location}
  ${gcc-java-download:location}
recipe = hexagonit.recipe.cmmi
path = ${gcc-java-source:location}
md5sum = bb3265edf0fa7543e50cedb93e04e427
configure-command = make clean \\; make distclean \\; ./configure
# GMP does not correctly detect achitecture so it have to be given
# as hexagonit.recipe.cmmi is using shell expansion in subproceses
# backticks are working
configure-options =
  --disable-bootstrap
  --build=`uname -m`-linux
  --enable-languages=java
  --disable-multilib
  --with-gmp=${gmp:location}
  --with-mpfr=${mpfr:location}
  --with-mpc=${mpc:location}
  --with-ecj-jar=${ecj:location}/${ecj:filename}
  --prefix=${buildout:parts-directory}/${:_buildout_section_name_}

environment =
  CPPFLAGS =-I${mpfr:location}/include -I${gmp:location}/include -I${mpc:location}/include
  LDFLAGS =-L${mpfr:location}/lib -Wl,-rpath -Wl,${mpfr:location}/lib -L${gmp:location}/lib -Wl,-rpath -Wl,${gmp:location}/lib -Wl,-rpath -Wl,${mpc:location}/lib
  PATH=${fastjar:location}/bin:${zip:location}/bin:%(PATH)s