UNCONFIRMED 106004
build fails - MathExtras.h on Solaris using gcc
https://bugs.webkit.org/show_bug.cgi?id=106004
Summary build fails - MathExtras.h on Solaris using gcc
richard
Reported 2013-01-03 00:58:07 PST
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;
Attachments
Alberto Garcia
Comment 1 2013-09-09 05:21:53 PDT
This code changed a bit since http://trac.webkit.org/changeset/143232 Is this problem still there? If so, can you post a new patch? Thanks!
Note You need to log in before you can comment on or make changes to this bug.