[Webkit-unassigned] [Bug 106004] New: build fails - MathExtras.h on Solaris using gcc
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Jan 3 00:56:07 PST 2013
https://bugs.webkit.org/show_bug.cgi?id=106004
Summary: build fails - MathExtras.h on Solaris using gcc
Product: WebKit
Version: 528+ (Nightly build)
Platform: Other
OS/Version: Other
Status: UNCONFIRMED
Severity: Blocker
Priority: P2
Component: WebKit Gtk
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: richard.palo at baou.fr
reference https://bugs.webkit.org/show_bug.cgi?id=41953
and http://article.gmane.org/gmane.os.opendarwin.webkit.gtk/1317
When building on solaris with gcc (4.7.x), e.g. using pkgsrc, the build will fail with the following:
GEN DerivedSources/JavaScriptCore/LLIntDesiredOffsets.h
offlineasm: Parsing ./Source/JavaScriptCore/llint/LowLevelInterpreter.asm and creating offset extractor DerivedSources/JavaScriptCore/LLIntDesiredOffsets.h.
offlineasm: Including file ./Source/JavaScriptCore/llint/LowLevelInterpreter64.asm
offlineasm: Including file ./Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm
offlineasm: offset extractor DerivedSources/JavaScriptCore/LLIntDesiredOffsets.h successfully generated.
CXX Source/JavaScriptCore/llint/Programs_LLIntOffsetsExtractor-LLIntOffsetsExtractor.o
In file included from ./Source/JavaScriptCore/runtime/JSValue.h:33:0,
from ./Source/JavaScriptCore/runtime/CachedTranscendentalFunction.h:29,
from ./Source/JavaScriptCore/runtime/JSGlobalData.h:32,
from ./Source/JavaScriptCore/interpreter/CallFrame.h:27,
from ./Source/JavaScriptCore/runtime/ArgList.h:25,
from ./Source/JavaScriptCore/runtime/JSObject.h:26,
from ./Source/JavaScriptCore/runtime/JSArray.h:24,
from ./Source/JavaScriptCore/bytecode/ArrayProfile.h:29,
from Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp:28:
./Source/WTF/wtf/MathExtras.h: In function 'void doubleToInteger(double, long long unsigned int&)':
./Source/WTF/wtf/MathExtras.h:349:16: error: 'isnan' was not declared in this scope
./Source/WTF/wtf/MathExtras.h:349:16: note: suggested alternative:
In file included from ./Source/WTF/wtf/MathExtras.h:30:0,
from ./Source/JavaScriptCore/runtime/JSValue.h:33,
from ./Source/JavaScriptCore/runtime/CachedTranscendentalFunction.h:29,
from ./Source/JavaScriptCore/runtime/JSGlobalData.h:32,
from ./Source/JavaScriptCore/interpreter/CallFrame.h:27,
from ./Source/JavaScriptCore/runtime/ArgList.h:25,
from ./Source/JavaScriptCore/runtime/JSObject.h:26,
from ./Source/JavaScriptCore/runtime/JSArray.h:24,
from ./Source/JavaScriptCore/bytecode/ArrayProfile.h:29,
from Source/JavaScriptCore/llint/LLIntOffsetsExtractor.cpp:28:
/opt/pkg/gcc47/include/c++/cmath:839:5: note: 'std::isnan'
gmake: *** [Source/JavaScriptCore/llint/Programs_LLIntOffsetsExtractor-LLIntOffsetsExtractor.o] Error 1
*** Error code 2
Stop.
bmake: stopped in /home/richard/src/pkgsrc/www/webkit-gtk3
*** Error code 1
Stop.
bmake: stopped in /home/richard/src/pkgsrc/www/webkit-gtk3
After finding the previous bug referenced above, I notice that the solaris check is inappropriate as implemented.
SunStudio defines __SUNPRO_CC... so this check should be added in addition to the solaris check.
Here is my patch (using 1.10.2 source kit):
diff --git a/www/webkit-gtk/patches/patch-Source_WTF_wtf_MathExtras.h
b/www/webkit-gtk/patches/patch-Source_WTF_wtf_MathExtras.h
new file mode 100644
index 0000000..7ab4e16
--- /dev/null
+++ b/www/webkit-gtk/patches/patch-Source_WTF_wtf_MathExtras.h
@@ -0,0 +1,13 @@
+$NetBSD$
+
+--- Source/WTF/wtf/MathExtras.h.orig 2012-11-23 20:12:16.000000000 +0000
++++ Source/WTF/wtf/MathExtras.h
+@@ -288,7 +288,7 @@ inline bool isWithinIntRange(float x)
+ return x > static_cast<float>(std::numeric_limits<int>::min()) &&
x < static_cast<float>(std::numeric_limits<int>::max());
+ }
+
+-#if !COMPILER(MSVC) && !COMPILER(RVCT) && !OS(SOLARIS)
++#if !COMPILER(MSVC) && !COMPILER(RVCT) && !(OS(SOLARIS) &&
defined(__SUNPRO_CC))
+ using std::isfinite;
+ #if !COMPILER_QUIRK(GCC11_GLOBAL_ISINF_ISNAN)
+ using std::isinf;
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list