Title: [117298] trunk/Tools
Revision
117298
Author
[email protected]
Date
2012-05-16 09:09:41 -0700 (Wed, 16 May 2012)

Log Message

[EFL] Rounding errors on 32-bit machines causes tests to fail
https://bugs.webkit.org/show_bug.cgi?id=86194

Patch by Christophe Dumez <[email protected]> on 2012-05-16
Reviewed by Martin Robinson.

Pass additional CXXFLAGS to CMake in an attempt to harmonize floating
point values between 32-bit and 64-bit architectures.
Same flags are already used by Qt and GTK ports.

* Scripts/webkitdirs.pm:
(determineArchitecture):
(generateBuildSystemFromCMakeProject):

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (117297 => 117298)


--- trunk/Tools/ChangeLog	2012-05-16 16:00:54 UTC (rev 117297)
+++ trunk/Tools/ChangeLog	2012-05-16 16:09:41 UTC (rev 117298)
@@ -1,3 +1,18 @@
+2012-05-16  Christophe Dumez  <[email protected]>
+
+        [EFL] Rounding errors on 32-bit machines causes tests to fail
+        https://bugs.webkit.org/show_bug.cgi?id=86194
+
+        Reviewed by Martin Robinson.
+
+        Pass additional CXXFLAGS to CMake in an attempt to harmonize floating
+        point values between 32-bit and 64-bit architectures.
+        Same flags are already used by Qt and GTK ports. 
+
+        * Scripts/webkitdirs.pm:
+        (determineArchitecture):
+        (generateBuildSystemFromCMakeProject):
+
 2012-05-16  Balazs Kelemen  <[email protected]>
 
         [Qt] Web process hangs while waiting for plugin process connection during layouttests

Modified: trunk/Tools/Scripts/webkitdirs.pm (117297 => 117298)


--- trunk/Tools/Scripts/webkitdirs.pm	2012-05-16 16:00:54 UTC (rev 117297)
+++ trunk/Tools/Scripts/webkitdirs.pm	2012-05-16 16:09:41 UTC (rev 117298)
@@ -302,10 +302,6 @@
         if ($host_triple =~ m/^host = ([^-]+)-/) {
             # We have a configured build tree; use it.
             $architecture = $1;
-        } else {
-            # Fall back to output of `arch', if it is present.
-            $architecture = `arch`;
-            chomp $architecture;
         }
     } elsif (isAppleMacWebKit()) {
         if (open ARCHITECTURE, "$baseProductDir/Architecture") {
@@ -317,10 +313,23 @@
         } else {
             my $supports64Bit = `sysctl -n hw.optional.x86_64`;
             chomp $supports64Bit;
-            $architecture = $supports64Bit ? 'x86_64' : `arch`;
-            chomp $architecture;
+            $architecture = 'x86_64' if $supports64Bit;
         }
+    } elsif (isEfl()) {
+        my $host_processor = "";
+        $host_processor = `cmake --system-information | grep CMAKE_SYSTEM_PROCESSOR`;
+        if ($host_processor =~ m/^CMAKE_SYSTEM_PROCESSOR \"([^"]+)\"/) {
+            # We have a configured build tree; use it.
+            $architecture = $1;
+            $architecture = 'x86_64' if $architecture eq 'amd64';
+        }
     }
+
+    if (!$architecture && (isGtk() || isAppleMacWebKit() || isEfl())) {
+        # Fall back to output of `arch', if it is present.
+        $architecture = `arch`;
+        chomp $architecture;
+    }
 }
 
 sub determineNumberOfCPUs
@@ -1860,7 +1869,7 @@
     # used on Chromium build.
     determineArchitecture();
     if ($architecture ne "x86_64" && !isARM()) {
-        $ENV{'CXXFLAGS'} = "-march=pentium4 -msse2 -mfpmath=sse";
+        $ENV{'CXXFLAGS'} = "-march=pentium4 -msse2 -mfpmath=sse " . $ENV{'CXXFLAGS'};
     }
 
     # Prefix the command with jhbuild run.
@@ -2080,6 +2089,13 @@
 
     push @args, '"' . sourceDir() . '"';
 
+    # Compiler options to keep floating point values consistent
+    # between 32-bit and 64-bit architectures.
+    determineArchitecture();
+    if ($architecture ne "x86_64" && !isARM()) {
+        $ENV{'CXXFLAGS'} = "-march=pentium4 -msse2 -mfpmath=sse " . $ENV{'CXXFLAGS'};
+    }
+
     # We call system("cmake @args") instead of system("cmake", @args) so that @args is
     # parsed for shell metacharacters.
     my $wrapper = jhbuildWrapperPrefixIfNeeded() . " ";
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to