One has OS(WINDOWS), the other has PLATFORM(WIN). As a result, MinGW gets one half of the code (the OS(WINDOWS) one), but not the other.
Created attachment 250799 [details] Harmonize binary semaphore ifdefs They should be either OS(WINDOWS) (in which case we'd need BinarySemaphoreWin.cpp, which is not shipped by WebKitGTK) or PLATFORM(WIN) (in which case Mutex/ThreadCondition-based implementation is used). This fixes errors like: CXX Source/WTF/wtf/threads/libWTF_la-BinarySemaphore.lo ../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp: In constructor 'WTF::BinarySemaphore::BinarySemaphore()': ../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:34:7: error: class 'WTF::BinarySemaphore' does not have any field named 'm_isSet' : m_isSet(false) ^ ../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp: In member function 'void WTF::BinarySemaphore::signal()': ../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:44:24: error: 'm_mutex' was not declared in this scope MutexLocker locker(m_mutex); ^ ../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:46:5: error: 'm_isSet' was not declared in this scope m_isSet = true; ^ ../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:47:5: error: 'm_condition' was not declared in this scope m_condition.signal(); ^ ../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp: In member function 'bool WTF::BinarySemaphore::wait(double)': ../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:52:24: error: 'm_mutex' was not declared in this scope MutexLocker locker(m_mutex); ^ ../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:55:13: error: 'm_isSet' was not declared in this scope while (!m_isSet) { ^ ../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:56:21: error: 'm_condition' was not declared in this scope timedOut = !m_condition.timedWait(m_mutex, absoluteTime); ^ ../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:62:5: error: 'm_isSet' was not declared in this scope m_isSet = false; ^ GNUmakefile:52762: recipe for target 'Source/WTF/wtf/threads/libWTF_la-BinarySemaphore.lo' failed
Comment on attachment 250799 [details] Harmonize binary semaphore ifdefs Clearing flags on attachment: 250799 Committed r182848: <http://trac.webkit.org/changeset/182848>
All reviewed patches have been landed. Closing bug.