diff options
author | Jonathan Liu <net147@gmail.com> | 2012-05-20 00:25:37 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-05-21 13:27:07 +0200 |
commit | 515e5b5194bada3a41a9026a02a9cb1773893fdd (patch) | |
tree | 9fb034de1f9679b549f6edb5aca0a89e30e6819b /src/3rdparty/v8/src/platform-win32.cc | |
parent | a023fd39276e66c2d3cbb6a8c05f8a6b75a97527 (diff) | |
download | qtjsbackend-515e5b5194bada3a41a9026a02a9cb1773893fdd.tar.gz |
[V8] Add support for MinGW-w64
This includes several upstream patches to allow V8 to work properly
with MinGW-w64.
Upstream patches:
- https://chromiumcodereview.appspot.com/9959050
- https://chromiumcodereview.appspot.com/10103030
- https://chromiumcodereview.appspot.com/10019012
- https://chromiumcodereview.appspot.com/10108022
- https://chromiumcodereview.appspot.com/10116001
Change-Id: I86876aa67a5bdea1208c7ee33a739eb7c00fd72b
Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Diffstat (limited to 'src/3rdparty/v8/src/platform-win32.cc')
-rw-r--r-- | src/3rdparty/v8/src/platform-win32.cc | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/src/3rdparty/v8/src/platform-win32.cc b/src/3rdparty/v8/src/platform-win32.cc index e36fc87..aa16c85 100644 --- a/src/3rdparty/v8/src/platform-win32.cc +++ b/src/3rdparty/v8/src/platform-win32.cc @@ -51,6 +51,22 @@ int strncasecmp(const char* s1, const char* s2, int n) { // the Microsoft Visual Studio C++ CRT. #ifdef __MINGW32__ + +#ifndef __MINGW64_VERSION_MAJOR + +#define _TRUNCATE 0 +#define STRUNCATE 80 + +inline void MemoryBarrier() { + int barrier = 0; + __asm__ __volatile__("xchgl %%eax,%0 ":"=r" (barrier)); +} + +#endif // __MINGW64_VERSION_MAJOR + + +#ifndef MINGW_HAS_SECURE_API + int localtime_s(tm* out_tm, const time_t* time) { tm* posix_local_time_struct = localtime(time); if (posix_local_time_struct == NULL) return 1; @@ -64,13 +80,6 @@ int fopen_s(FILE** pFile, const char* filename, const char* mode) { return *pFile != NULL ? 0 : 1; } - -#ifndef __MINGW64_VERSION_MAJOR -#define _TRUNCATE 0 -#define STRUNCATE 80 -#endif // __MINGW64_VERSION_MAJOR - - int _vsnprintf_s(char* buffer, size_t sizeOfBuffer, size_t count, const char* format, va_list argptr) { ASSERT(count == _TRUNCATE); @@ -104,16 +113,7 @@ int strncpy_s(char* dest, size_t dest_size, const char* source, size_t count) { return 0; } - -#ifndef __MINGW64_VERSION_MAJOR - -inline void MemoryBarrier() { - int barrier = 0; - __asm__ __volatile__("xchgl %%eax,%0 ":"=r" (barrier)); -} - -#endif // __MINGW64_VERSION_MAJOR - +#endif // MINGW_HAS_SECURE_API #endif // __MINGW32__ |