python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / development / libraries / cloog-ppl / default.nix
blob65d6a392ffdbb4f6b1891d20a1da4e412e15f701
1 { fetchurl, lib, stdenv, ppl, autoreconfHook }:
3 stdenv.mkDerivation rec {
4   pname = "cloog-ppl";
5   version = "0.15.11";
7   src = fetchurl {
8     url = "mirror://gcc/infrastructure/${pname}-${version}.tar.gz";
9     sha256 = "0psdm0bn5gx60glfh955x5b3b23zqrd92idmjr0b00dlnb839mkw";
10   };
12   propagatedBuildInputs = [ ppl ];
14   nativeBuildInputs = [ autoreconfHook ];
16   patches = [ ./fix-ppl-version.patch ];
18   configureFlags = [ "--with-ppl=${ppl}" ];
20   preAutoreconf = ''
21     touch NEWS ChangeLog AUTHORS
22   '';
24   doCheck = true;
26   meta = {
27     description = "CLooG-PPL, the Chunky Loop Generator";
29     longDescription = ''
30       CLooG is a free software library to generate code for scanning
31       Z-polyhedra.  That is, it finds a code (e.g., in C, FORTRAN...) that
32       reaches each integral point of one or more parameterized polyhedra.
33       CLooG has been originally written to solve the code generation problem
34       for optimizing compilers based on the polytope model.  Nevertheless it
35       is used now in various area e.g., to build control automata for
36       high-level synthesis or to find the best polynomial approximation of a
37       function.  CLooG may help in any situation where scanning polyhedra
38       matters.  While the user has full control on generated code quality,
39       CLooG is designed to avoid control overhead and to produce a very
40       effective code.
41     '';
43     # CLooG-PPL is actually a port of GLooG from PolyLib to PPL.
44     homepage = "http://www.cloog.org/";
46     license = lib.licenses.gpl2Plus;
48     maintainers = [ ];
50     /* Leads to an ICE on Cygwin:
52        make[3]: Entering directory `/tmp/nix-build-9q5gw5m37q5l4f0kjfv9ar8fsc9plk27-ppl-0.10.2.drv-1/ppl-0.10.2/src'
53        /bin/sh ../libtool --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I..  -I.. -I../src    -g -O2 -frounding-math  -W -Wall -c -o Box.lo Box.cc
54        libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I.. -I../src -g -O2 -frounding-math -W -Wall -c Box.cc  -DDLL_EXPORT -DPIC -o .libs/Box.o
55        In file included from checked.defs.hh:595,
56                         from Checked_Number.defs.hh:27,
57                         from Coefficient.types.hh:15,
58                         from Coefficient.defs.hh:26,
59                         from Box.defs.hh:28,
60                         from Box.cc:24:
61        checked.inlines.hh: In function `Parma_Polyhedra_Library::Result Parma_Polyhedra_Library::Checked::input_generic(Type&, std::istream&, Parma_Polyhedra_Library::Rounding_Dir)':
62        checked.inlines.hh:607: internal compiler error: in invert_truthvalue, at fold-const.c:2719
63        Please submit a full bug report,
64        with preprocessed source if appropriate.
65        See <URL:http://cygwin.com/problems.html> for instructions.
66        make[3]: *** [Box.lo] Error 1
68     */
69     platforms = lib.platforms.unix; # Once had cygwin problems
70   };