Source: gecode Version: 4.2.1-1 Severity: wishlist Tags: patch sid User: debian-powerpc...@breakpoint.cc Usertags: powerpcspe
Hi, gecode FTBFS on powerpcspe[1] like this: ... g++ -I. -fcx-limited-range -fno-signaling-nans -fno-rounding-math -ffinite-math-only -fno-math-errno -fno-strict-aliasing -fvisibility=hidden -ggdb -pipe -Wall -Wextra -fPIC -pthread -DNDEBUG -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -O3 -D_REENTRANT -D_FORTIFY_SOURCE=2 \ -c -o gecode/float/arithmetic.o gecode/float/arithmetic.cpp In file included from ./gecode/third-party/boost/numeric/interval.hpp:28:0, from ./gecode/float.hh:82, from ./gecode/float/arithmetic.hh:46, from gecode/float/arithmetic.cpp:40: ./gecode/third-party/boost/numeric/interval/detail/ppc_rounding_control.hpp: In function 'boost::numeric::interval<T, Policies> boost::numeric::pow(const boost::numeric::interval<T, Policies>&, int) [with T = double, Policies = boost::numeric::interval_lib::policies<boost::numeric::interval_lib::save_state<Gecode::Float::Rounding>, boost::numeric::interval_lib::checking_strict<double> >]': ./gecode/third-party/boost/numeric/interval/detail/ppc_rounding_control.hpp:41:56: error: impossible constraint in 'asm' ./gecode/third-party/boost/numeric/interval/detail/ppc_rounding_control.hpp:44:50: error: impossible constraint in 'asm' ./gecode/third-party/boost/numeric/interval/detail/ppc_rounding_control.hpp:41:56: error: impossible constraint in 'asm' ./gecode/third-party/boost/numeric/interval/detail/ppc_rounding_control.hpp:41:56: error: impossible constraint in 'asm' ./gecode/third-party/boost/numeric/interval/detail/ppc_rounding_control.hpp:41:56: error: impossible constraint in 'asm' ./gecode/third-party/boost/numeric/interval/detail/ppc_rounding_control.hpp:41:56: error: impossible constraint in 'asm' ./gecode/third-party/boost/numeric/interval/detail/ppc_rounding_control.hpp:44:50: error: impossible constraint in 'asm' ./gecode/third-party/boost/numeric/interval/detail/ppc_rounding_control.hpp:41:56: error: impossible constraint in 'asm' ./gecode/third-party/boost/numeric/interval/detail/ppc_rounding_control.hpp:41:56: error: impossible constraint in 'asm' ./gecode/third-party/boost/numeric/interval/interval.hpp:22: confused by earlier errors, bailing out Preprocessed source stored into /tmp/cc15vljH.out file, please attach this to your bugreport. make[2]: *** [gecode/float/arithmetic.o] Error 1 make[2]: Leaving directory `/«PKGBUILDDIR»' make[1]: *** [compilelib] Error 2 make[1]: Leaving directory `/«PKGBUILDDIR»' ... Attaching a patch that fixes it. Roland [1] https://wiki.debian.org/PowerPCSPEPort -- System Information: Debian Release: 7.0 APT prefers unreleased APT policy: (500, 'unreleased'), (500, 'unstable') Architecture: powerpcspe (ppc) Kernel: Linux 3.9.0-dirty (SMP w/2 CPU cores) Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash
Index: gecode-4.2.1/gecode/third-party/boost/numeric/interval/hw_rounding.hpp =================================================================== --- gecode-4.2.1.orig/gecode/third-party/boost/numeric/interval/hw_rounding.hpp 2013-11-20 23:17:27.000000000 +0100 +++ gecode-4.2.1/gecode/third-party/boost/numeric/interval/hw_rounding.hpp 2013-11-21 09:38:46.715734335 +0100 @@ -22,7 +22,9 @@ #elif defined(__i386__) || defined(_M_IX86) || defined(__BORLANDC__) || defined(_M_X64) # include <gecode/third-party/boost/numeric/interval/detail/x86_rounding_control.hpp> #elif defined(powerpc) || defined(__powerpc__) || defined(__ppc__) +#ifndef __NO_FPRS__ # include <gecode/third-party/boost/numeric/interval/detail/ppc_rounding_control.hpp> +#endif #elif defined(sparc) || defined(__sparc__) # include <gecode/third-party/boost/numeric/interval/detail/sparc_rounding_control.hpp> #elif defined(alpha) || defined(__alpha__)