<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">Good catch!<br><br>Applying the following patch enabled it to start compiling using the system-bundled clang:<br><br><blockquote type="cite">diff --git a/./Source/autotools/CheckSystemAndBasicDependencies.m4 b/./Source/autotools/CheckSystemAndBasicDependencies.m4-orig<br>index 012ffed..6ba892d 100644<br>--- a/./Source/autotools/CheckSystemAndBasicDependencies.m4<br>+++ b/./Source/autotools/CheckSystemAndBasicDependencies.m4-orig<br>@@ -92,7 +92,7 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([<br>#endif<br>])], [c_compiler="gcc"], [])<br>AC_COMPILE_IFELSE([AC_LANG_PROGRAM([<br>-#if !(defined(__clang__) &amp;&amp; __clang_major__ &gt;= 3 &amp;&amp; __clang_minor__ &gt;= 3)<br>+#if !(defined(__clang__) &amp;&amp; (__clang_major__ &gt; 3) || (__clang_major__ == 3 &amp;&amp; __clang_minor__ &gt;= 3))<br>#error Not a supported Clang compiler<br>#endif<br>])], [c_compiler="clang"], [])<br>@@ -111,7 +111,7 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([<br>#endif<br>])], [cxx_compiler="g++"], [])<br>AC_COMPILE_IFELSE([AC_LANG_PROGRAM([<br>-#if !(defined(__clang__) &amp;&amp; __clang_major__ &gt;= 3 &amp;&amp; __clang_minor__ &gt;= 3)<br>+#if !(defined(__clang__) &amp;&amp; (__clang_major__ &gt; 3) || (__clang_major__ == 3 &amp;&amp; __clang_minor__ &gt;= 3))<br>#error Not a supported Clang++ compiler<br>#endif<br>])], [cxx_compiler="clang++"], [])<br></blockquote><br>-Devon<div><br><div><div>On Aug 31, 2014, at 11:33 PM, Žan Doberšek &lt;<a href="mailto:zandobersek@gmail.com">zandobersek@gmail.com</a>&gt; wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div dir="ltr"><div class="gmail_extra">Hi,<br><br><div class="gmail_quote">On Sun, Aug 31, 2014 at 3:15 PM, Devon Stewart <span dir="ltr">&lt;<a href="mailto:blast@hardchee.se" target="_blank">blast@hardchee.se</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I'm getting a strange compilation failure trying to build webkitgtk 2.4.5 with gcc-4.7 (which is stated as the low-end of the compiler requirement, and is already packaged in Homebrew). The error is as follows:<br>

<br>
&gt; rawrbookpro:webkitgtk-2.4.5 blast$ make<br>
&gt;&nbsp; &nbsp;CXX&nbsp; &nbsp; &nbsp; Source/WTF/wtf/libWTF_la-PrintStream.lo<br>
&gt;&nbsp; &nbsp;CXX&nbsp; &nbsp; &nbsp; Source/WTF/wtf/libWTF_la-RandomNumber.lo<br>
&gt;&nbsp; &nbsp;CXX&nbsp; &nbsp; &nbsp; Source/WTF/wtf/libWTF_la-FastMalloc.lo<br>
&gt;&nbsp; &nbsp;CXX&nbsp; &nbsp; &nbsp; Source/WTF/wtf/libWTF_la-RefCountedLeakCounter.lo<br>
&gt;&nbsp; &nbsp;CXX&nbsp; &nbsp; &nbsp; Source/WTF/wtf/libWTF_la-RunLoop.lo<br>
&gt;&nbsp; &nbsp;CXX&nbsp; &nbsp; &nbsp; Source/WTF/wtf/libWTF_la-SHA1.lo<br>
&gt;&nbsp; &nbsp;CXX&nbsp; &nbsp; &nbsp; Source/WTF/wtf/libWTF_la-SixCharacterHash.lo<br>
&gt;&nbsp; &nbsp;CXX&nbsp; &nbsp; &nbsp; Source/WTF/wtf/libWTF_la-StackBounds.lo<br>
&gt;&nbsp; &nbsp;CXX&nbsp; &nbsp; &nbsp; Source/WTF/wtf/libWTF_la-StringPrintStream.lo<br>
&gt;&nbsp; &nbsp;CXX&nbsp; &nbsp; &nbsp; Source/WTF/wtf/libWTF_la-TCSystemAlloc.lo<br>
&gt;&nbsp; &nbsp;CXX&nbsp; &nbsp; &nbsp; Source/WTF/wtf/libWTF_la-ThreadIdentifierDataPthreads.lo<br>
&gt; Source/WTF/wtf/FastMalloc.cpp: In member function 'void WTF::TCMalloc_PageHeap::initializeScavenger()':<br>
&gt; Source/WTF/wtf/FastMalloc.cpp:1953:56: error: expected primary-expression before '^' token<br>
&gt; Source/WTF/wtf/FastMalloc.cpp:1953:57: error: expected primary-expression before '{' token<br>
&gt; Source/WTF/wtf/FastMalloc.cpp:1953:80: error: 'dispatch_source_set_event_handler' was not declared in this scope<br>
&gt;&nbsp; &nbsp;CXX&nbsp; &nbsp; &nbsp; Source/WTF/wtf/libWTF_la-ThreadSpecificWin.lo<br>
&gt;&nbsp; &nbsp;CXX&nbsp; &nbsp; &nbsp; Source/WTF/wtf/libWTF_la-Threading.lo<br>
&gt; make: *** [Source/WTF/wtf/libWTF_la-FastMalloc.lo] Error 1<br>
&gt; make: *** Waiting for unfinished jobs....<br>
<br>
Now, I know dispatch.h is being found and used, because line 1952 is<br>
<br>
&gt;&nbsp; &nbsp; &nbsp;dispatch_source_set_timer(m_scavengeTimer, startTime, scavengeDelayInNanoseconds, scavengeDelayInNanoseconds / 10);<br>
<br>
and dispatch_source_set_timer is defined in the same header as dispatch_source_set_event_handler.<br>
<br>
jfpoole on Freenode's #macdev suggested gcc-4.7 might not understand blocks, but there doesn't seem to be anything in gcc-4.7's configure script that references blocks at all. I'm out of my element here, looking for other ideas.<br>
</blockquote><div><br></div><div>Does GCC also require the -fblocks compiler flag to be specified? The few examples that I found use that flag when compiling code with Clang.</div><div>&nbsp;</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<br>
Thanks!<br>
-Devon<br>
<br>
PS: Apple's version of clang fails the clang &gt;= 3.3 version test, despite being based on clang 3.4... kind of strange.<br>
<br>
&gt; rawrbookpro:~ blast$ clang --version<br>
&gt; Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn)<br>
&gt; Target: x86_64-apple-darwin13.3.0<br>
&gt; Thread model: posix<br></blockquote><div><br></div><div>The __clang_major__ and __clang_minor__ macros are used to check the Clang version in Source/autotools/CheckSystemAndBasicDependencies.m4.</div><div>The logic there is really specific to upstream Clang versions, so it's obvious why the 5.1 version would fail the check.</div>
<div><br></div><div>Cheers,</div><div>Zan</div><div>&nbsp;</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>_______________________________________________<br>
webkit-gtk mailing list<br>
<a href="mailto:webkit-gtk@lists.webkit.org">webkit-gtk@lists.webkit.org</a><br>
<a href="https://lists.webkit.org/mailman/listinfo/webkit-gtk" target="_blank">https://lists.webkit.org/mailman/listinfo/webkit-gtk</a><br>
<br></blockquote></div><br></div></div>
</blockquote></div><br></div></body></html>