Can you apply this patch to your setup and see if it checks? You really only need to compile lib/test_strod_nol and run it.
- Craig On Mon, Jul 11, 2016 at 8:00 AM Craig Small <csm...@enc.com.au> wrote: > On Mon, Jul 11, 2016 at 7:33 AM Aaron M. Ucko <a...@alum.mit.edu> wrote: > >> Source: procps >> Version: 2:3.3.12-1 >> Severity: serious >> Justification: fails to build from source (but built successfully in the >> past) >> >> The i386 build of procps failed with a test suite error (presumably >> stemming from a small floating-point discrepancy): >> > Yeah, amd64 doesn't have this problem, I'll probably have to make it > "almost equal" but that's pretty bad way to run tests. > Alternatively I might just detect its on something that doesn't do the > conversion right and skip them. > > >> I suspect the hurd-i386 and kfreebsd-i386 builds would have failed in >> the same fashion if they hadn't hit a compilation error, which I'll >> report separately. >> > Ah so you're running i386 kfreebsd (you didn't report it in the other bug > report) > So.. kfreebsd amd64 has the host definition and kfreebsd i386 does not. > As I said, kfreebsd has include problems all the time (most of the ifdefs > are for it) > > - Craig > -- > Craig Small (@smallsees) http://dropbear.xyz/ csmall at : enc.com.au > Debian GNU/Linux http://www.debian.org/ csmall at : debian.org > GPG fingerprint: 5D2F B320 B825 D939 04D2 0519 3938 F96B DF50 FEA5 > > -- Craig Small (@smallsees) http://dropbear.xyz/ csmall at : enc.com.au Debian GNU/Linux http://www.debian.org/ csmall at : debian.org GPG fingerprint: 5D2F B320 B825 D939 04D2 0519 3938 F96B DF50 FEA5
diff --git a/lib/test_strtod_nol.c b/lib/test_strtod_nol.c index 0be798c..71a5756 100644 --- a/lib/test_strtod_nol.c +++ b/lib/test_strtod_nol.c @@ -33,8 +33,8 @@ int main(int argc, char *argv[]) double val; for(i=0; tests[i].string != NULL; i++) { - if(strtod_nol_or_err(tests[i].string, "Cannot parse number") != - tests[i].result) { + if((int)(strtod_nol_or_err(tests[i].string, "Cannot parse number")*100) != + (int)(tests[i].result * 100)) { fprintf(stderr, "FAIL: strtod_nol_or_err(\"%s\") != %f\n", tests[i].string, tests[i].result); return EXIT_FAILURE;