I can't seem to find the equivalent of bugzilla for Mandrake so I'm reporting this here with the hopes it will make it back to appropriate parties. I'm a developer in the process of packaging Perl 5.6.0 for another distribution. I'm all for optimization as long as the code still passes its tests. With this in mind I tried Mandrake's 7.2 IMHO aggressive i586 optimization flags for my build of Perl 5.6.0. After a lot of debugging I found out that the -ffast-math flag causes Perl to fail at least 7 subtests of the op/cmp.t test of the Perl regression tests. I tested perl-5.600-17mdk on a Mandrake 7.2 and it fails the same tests. FYI from GCC man page: -ffast-math "This option allows GCC to violate some ANSI or IEEE rules/specifications in the interest of optimizing code for speed." This led me to wonder what else is slightly undetectably broken as a result of -ffast-math. Having seen this, I certainly wouldn't want it on for every package as it is it seems to be in Mandrake. I have forced gcc not to use fast-math in my RPM by appending a -fno-fast-math to the optimization flags as below. I suggest you should do the same and unless you can assess the damage -ffast-math is causing to other programs (I certainly can't) I would suggest removing it from your global options. %build [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT sh Configure -des -Doptimize="$RPM_OPT_FLAGS -fno-fast-math" \ Name : perl Relocations: (not relocateable) Version : 5.600 Vendor: MandrakeSoft Release : 17mdk Build Date: Sat Sep 30 12:25:56 2000Install date: Sat Nov 25 19:41:42 2000 Build Host: debris.mandrakesoft.com Group : Development/Perl Source RPM: perl-5.600-17mdk.src.rpmSize : 13907113 License: GPL Packager : Pixel <[EMAIL PROTECTED]> Summary : The Perl programming language. Default i586 optimization flags from MDK7.2 rpmrc: i586 -O3 -fomit-frame-pointer -pipe -mcpu=pentiumpro -march=i586 -ffast-math Test process: cd /usr/src/RPM/BUILD/perl-5.6.0/t perl op/cmp.t With -ffast-math this will fail: not ok 7 (s <=> NaN) gives: '-1' not ok 21 (N/A <=> NaN) gives: '-1' not ok 33 (a <=> NaN) gives: '-1' not ok 43 (NaN <=> NaN) gives: '-1' not ok 45 (NaN <=> -1) gives: '-1' not ok 47 (NaN <=> ) gives: '-1' not ok 49 (NaN <=> 0) gives: '-1' not ok 51 (NaN <=> 1) gives: '-1' Regards, Rob -- ---------------------"Happiness is understanding."---------------------- Robert Hardy C.E.O. Webcon Inc. [EMAIL PROTECTED] PGP Key available by finger (613) 276-6206