buildout.cfg 5.28 KB
Newer Older
1 2 3 4
# GNU C Compiler
# Mostly required to support languages different then C or C++
[buildout]
extends =
Łukasz Nowak's avatar
Łukasz Nowak committed
5 6
  ../m4/buildout.cfg
  ../zip/buildout.cfg
7 8

parts =
9
  gcc
10 11 12

[gmp]
recipe = hexagonit.recipe.cmmi
13 14 15
# we should use version 4.x for ppl-0.10
url = ftp://ftp.gmplib.org/pub/gmp-4.3.2/gmp-4.3.2.tar.bz2
md5sum = dd60683d7057917e34630b4a787932e8
16 17 18 19 20
# 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
21 22
  --enable-cxx
  --disable-static
23 24 25 26 27
environment =
  PATH=${m4:location}/bin:%(PATH)s

[mpfr]
recipe = hexagonit.recipe.cmmi
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
28 29
url = http://www.mpfr.org/mpfr-3.0.1/mpfr-3.0.1.tar.bz2
md5sum = bfbecb2eacb6d48432ead5cfc3f7390a
30 31
configure-options =
  --with-gmp=${gmp:location}
32
  --disable-static
33
environment =
34
  LDFLAGS=-Wl,-rpath=${gmp:location}/lib
35 36 37 38 39 40 41 42

[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}
43
  --disable-static
44
environment =
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
  LDFLAGS=-Wl,-rpath=${mpfr:location}/lib -Wl,-rpath=${gmp:location}/lib

[ppl]
recipe = hexagonit.recipe.cmmi
# we should use version 0.10.x for gcc-4.5
url = http://www.cs.unipr.it/ppl/Download/ftp/releases/0.10.2/ppl-0.10.2.tar.bz2
md5sum = 5667111f53150618b0fa522ffc53fc3e
configure-options =
  --with-libgmp-prefix=${gmp:location}
  --with-libgmpxx-prefix=${gmp:location}
  --disable-static
environment =
  PATH=${m4:location}/bin:%(PATH)s
  LDFLAGS=-Wl,-rpath=${gmp:location}/lib

[cloog-ppl]
recipe = hexagonit.recipe.cmmi
url = ftp://gcc.gnu.org/pub/gcc/infrastructure/cloog-ppl-0.15.9.tar.gz
md5sum = 806e001d1b1a6b130069ff6274900af5
configure-options =
  --with-gmp=${gmp:location}
  --with-ppl=${ppl:location}
  --disable-static
environment =
  PATH=${m4:location}/bin:%(PATH)s
  LDFLAGS=-Wl,-rpath=${gmp:location}/lib -Wl,-rpath=${ppl:location}/lib
71 72 73 74 75 76 77 78 79 80

[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
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
81 82
url = http://www.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-4.5.3/gcc-4.5.3.tar.bz2
md5sum = 8e0b5c12212e185f3e4383106bfa9cc6
83
strip-top-level-dir = True
84
destination = ${gcc-source:location}
85 86 87

[gcc-java-download]
recipe = hexagonit.recipe.download
Kazuhiko Shiozaki's avatar
Kazuhiko Shiozaki committed
88 89
url = http://www.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-4.5.3/gcc-java-4.5.3.tar.bz2
md5sum = 08e045fdbdc22ac9af3aec3b8d16dbab
90
strip-top-level-dir = True
91
destination = ${gcc-source:location}
92 93
ignore-existing = true

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

97 98 99 100 101 102 103 104
[gcc-multiarch.patch]
recipe = hexagonit.recipe.download
md5sum = 819e6735270c8a432b0512b49f40219f
url = ${:_profile_base_location_}/${:filename}
filename = ${:_buildout_section_name_}
download-only = true

[gcc-java-minimal]
105 106 107 108
depends =
  ${gcc-download:location}
  ${gcc-java-download:location}
recipe = hexagonit.recipe.cmmi
109
path = ${gcc-source:location}
110
md5sum = bb3265edf0fa7543e50cedb93e04e427
111 112 113
patches =
  ${gcc-multiarch.patch:location}/${gcc-multiarch.patch:filename}
patch-options = -p2
114 115 116 117 118 119 120 121 122 123 124 125 126
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
  --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_}
127 128
  --without-ppl
  --without-cloog
129 130 131

environment =
  CPPFLAGS =-I${mpfr:location}/include -I${gmp:location}/include -I${mpc:location}/include
132
  LDFLAGS =-L${mpfr:location}/lib -Wl,-rpath=${mpfr:location}/lib -L${gmp:location}/lib -Wl,-rpath=${gmp:location}/lib -Wl,-rpath=${mpc:location}/lib
133 134 135
  PATH=${zip:location}/bin:%(PATH)s
# make install does not work when several core are used
make-targets = install -j1
136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167

[gcc]
depends =
  ${gcc-download:location}
  ${gcc-java-download:location}
recipe = hexagonit.recipe.cmmi
path = ${gcc-source:location}
md5sum = bb3265edf0fa7543e50cedb93e04e427
patches =
  ${gcc-multiarch.patch:location}/${gcc-multiarch.patch:filename}
patch-options = -p2
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
  --enable-languages="c,c++,java"
  --disable-multilib
  --with-gmp=${gmp:location}
  --with-mpfr=${mpfr:location}
  --with-mpc=${mpc:location}
  --with-ppl=${ppl:location}
  --with-cloog=${cloog-ppl:location}
  --with-ecj-jar=${ecj:location}/${ecj:filename}
  --prefix=${buildout:parts-directory}/${:_buildout_section_name_}

environment =
  LDFLAGS=-Wl,-rpath=${mpfr:location}/lib -Wl,-rpath=${gmp:location}/lib -Wl,-rpath=${mpc:location}/lib -Wl,-rpath=${ppl:location}/lib -Wl,-rpath=${cloog-ppl:location}/lib
  PATH=${zip:location}/bin:%(PATH)s
# make install does not work when several core are used
make-targets = install -j1