Bug 126431

Summary: [GTK] configure errors out when building with libc++
Product: WebKit Reporter: Jeremy Huddleston Sequoia <jeremyhu>
Component: WebKitGTKAssignee: Zan Dobersek <zan>
Status: RESOLVED FIXED    
Severity: Normal CC: cgarcia, mrobinson, zan
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 126325    
Bug Blocks: 126492    
Attachments:
Description Flags
Patch none

Description Jeremy Huddleston Sequoia 2014-01-03 09:00:09 PST
In webkit-gtk-2.3.3 (compared to 2.2.3), CheckSystemAndBasicDependencies.m4 was updated to error out if anything other than libstdc++ >= 4.8.1 is used.  This causes configure to error out when using libc++, but libc++ should work fine.

--- Source/autotools/CheckSystemAndBasicDependencies.m4.orig	2014-01-03 08:55:20.000000000 -0800
+++ Source/autotools/CheckSystemAndBasicDependencies.m4	2014-01-03 08:57:19.000000000 -0800
@@ -123,14 +123,6 @@ elif test "$cxx_compiler" = "clang++"; t
     OLD_CXXFLAGS="$CXXFLAGS"
     CXXFLAGS="-std=c++11"
     AC_LANG_PUSH([C++])
-    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
-#include <type_traits>
-#if defined(__GLIBCXX__) && __GLIBCXX__ >= 20130531
-bool libstdcxxTest = std::is_trivially_destructible<bool>::value;
-#else
-#error libstdc++ >= 4.8.1 is required
-#endif
-])], [], [AC_MSG_ERROR([libstdc++ >= 4.8.1 is required as the standard library used with the Clang compiler.])])
     AC_LANG_POP([C++])
     CXXFLAGS="$OLD_CXXFLAGS"
 fi
Comment 1 Jeremy Huddleston Sequoia 2014-01-03 09:03:45 PST
Note that we're using the above as a workaround.  I was just providing it to indicate the source of the problem.  It's obviously not suited for integration as you likely just want to error out if libstdc++ older than 4.8.1 is used.

I suggest you change that to:

#if defined(__GLIBCXX__) && __GLIBCXX__ < 20130531
#error libstdc++ < 4.8.1 is not supported
#endif
Comment 2 Jeremy Huddleston Sequoia 2014-01-03 10:28:55 PST
Related to #126325
Comment 3 Zan Dobersek 2014-01-05 05:09:46 PST
The solution to this bug depends on bug #126325.
Comment 4 Zan Dobersek 2014-01-06 01:34:54 PST
Created attachment 220421 [details]
Patch
Comment 5 Zan Dobersek 2014-01-06 11:59:09 PST
Comment on attachment 220421 [details]
Patch

Clearing flags on attachment: 220421

Committed r161359: <http://trac.webkit.org/changeset/161359>
Comment 6 Zan Dobersek 2014-01-06 11:59:14 PST
All reviewed patches have been landed.  Closing bug.