From c095135d047db6190beafab48d083b00ec82f2d8 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Fri, 22 May 2015 16:43:27 +0200 Subject: Fix build with MSVC2015. - Remove os-win32 from the include path since the system headers are now sufficient. - Introduce some #if depending on version for traits and snprintf(). Change-Id: I290b2260e3c1595a7940c76ec2d9a4372709b156 Reviewed-by: Simon Hausmann --- src/3rdparty/javascriptcore/JavaScriptCore/wtf/StringExtras.h | 2 ++ src/3rdparty/javascriptcore/JavaScriptCore/wtf/TypeTraits.h | 2 +- src/3rdparty/javascriptcore/WebKit.pri | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/StringExtras.h b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/StringExtras.h index b1ec09f..a1c4344 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/StringExtras.h +++ b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/StringExtras.h @@ -36,6 +36,7 @@ #if COMPILER(MSVC) // FIXME: why a COMPILER check instead of OS? also, these should be HAVE checks +# if _MSC_VER < 1900 inline int snprintf(char* buffer, size_t count, const char* format, ...) { int result; @@ -45,6 +46,7 @@ inline int snprintf(char* buffer, size_t count, const char* format, ...) va_end(args); return result; } +# endif // _MSC_VER < 1900 #if COMPILER(MSVC7) || OS(WINCE) diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/TypeTraits.h b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/TypeTraits.h index 3ef0f9f..92e9c3b 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/TypeTraits.h +++ b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/TypeTraits.h @@ -179,7 +179,7 @@ namespace WTF { template struct HasTrivialDestructor { static const bool value = __has_trivial_destructor(T) || IsPod >::value; }; -#elif (defined(__GLIBCXX__) && (__GLIBCXX__ >= 20070724) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || (defined(_MSC_VER) && (_MSC_VER >= 1600)) +#elif (defined(__GLIBCXX__) && (__GLIBCXX__ >= 20070724) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || (defined(_MSC_VER) && (_MSC_VER >= 1600 && _MSC_VER < 1900)) // GCC's libstdc++ 20070724 and later supports C++ TR1 type_traits in the std namespace. // VC10 (VS2010) and later support C++ TR1 type_traits in the std::tr1 namespace. template struct HasTrivialConstructor : public std::tr1::has_trivial_constructor { }; diff --git a/src/3rdparty/javascriptcore/WebKit.pri b/src/3rdparty/javascriptcore/WebKit.pri index 69c412f..932b17a 100644 --- a/src/3rdparty/javascriptcore/WebKit.pri +++ b/src/3rdparty/javascriptcore/WebKit.pri @@ -20,7 +20,7 @@ isEmpty(OUTPUT_DIR) { DEFINES += BUILDING_QT__=1 building-libs { - win32-msvc*|win32-icc: INCLUDEPATH += $$PWD/JavaScriptCore/os-win32 + win32-msvc2008|win32-msvc2010|win32-msvc2012|win32-msvc2013|win32-icc: INCLUDEPATH += $$PWD/JavaScriptCore/os-win32 } else { CONFIG(QTDIR_build) { QT += webkit -- cgit v1.2.1