nixpkgs/pkgs/development/compilers/gcc-upc-4.0/default.nix
Eelco Dolstra 6c2de318ad * Move all gcc versions to development/compilers/gcc.
svn path=/nixpkgs/branches/stdenv-updates/; revision=32371
2012-02-17 21:47:08 +00:00

64 lines
1.6 KiB
Nix

# Nix expression for GCC-UPC 4.0, based on that of GCC 4.0.
{ stdenv, fetchurl, noSysDirs, bison, autoconf, gnum4
, profiledCompiler ? false
, gmp ? null , mpfr ? null
, texinfo ? null
}:
with stdenv.lib;
# GCC-UPC apparently doesn't support GCov and friends.
assert profiledCompiler == false;
stdenv.mkDerivation {
name = "gcc-upc-4.0.3.5";
builder = ../gcc/4.0/builder.sh;
src = fetchurl {
url = "ftp://ftp.intrepid.com/pub/upc/rls/upc-4.0.3.5/upc-4.0.3.5.src.tar.gz";
sha256 = "0afnz1bz0kknhl18205bbwncyza08983ivfaagj5yl7x3nwy7prv";
};
patches = [ ./honor-cflags.patch ]
++ optional noSysDirs [ ./no-sys-dirs.patch ];
inherit noSysDirs profiledCompiler;
# Attributes used by `wrapGCC'.
langC = true ;
langCC = false;
langF77 = false;
langUPC = true; # unused
buildInputs =
[ gmp mpfr texinfo
# Bison is needed to build the parsers.
bison
# For some reason, `autoheader' and `m4' are needed.
autoconf gnum4
];
# Note: We use `--enable-maintainer-mode' so that `bison' is actually
# run when needed.
configureFlags = "
--disable-multilib
--disable-libstdcxx-pch
--disable-libmudflap
--with-system-zlib
${if stdenv.isi686 then "--with-arch=i686" else ""}
--enable-maintainer-mode
";
meta = {
homepage = http://www.intrepid.com/upc.html;
license = "GPL/LGPL";
longDscription = ''
A GCC-based compiler for the Unified Parallel C (UPC) language,
a distributed shared memory aware variant of C (see
http://upc.gwu.edu/).
'';
};
}