diff options
author | adrido <robots_only_adrido@gmx.com> | 2017-06-27 11:54:40 +0200 |
---|---|---|
committer | Loïc Blot <nerzhul@users.noreply.github.com> | 2017-06-27 11:54:40 +0200 |
commit | d7343b6c930d22857f858929ea684acbbeefe482 (patch) | |
tree | a4611d3bc6546af879e8cf433cf49ce8df41ab55 /src/threading | |
parent | 48cd217e3b6f53af32802c1897ddd1914d215078 (diff) | |
download | minetest-d7343b6c930d22857f858929ea684acbbeefe482.tar.gz minetest-d7343b6c930d22857f858929ea684acbbeefe482.tar.bz2 minetest-d7343b6c930d22857f858929ea684acbbeefe482.zip |
Fix msvc annoyances (#5963)
* MSVC: Fix '/std:c++11' is not a valid compiler option
* MSVC/MINGW: Define 'WIN32_LEAN_AND_MEAN' for the whole project
In some obscure cases 'Windows.h" got includet before that definition, which leaded to compilation warnings+errors
* MSVC: '/arch:SSE' is only available for x86
* MSVC: Fix float conversation
* MSVC/MINGW: use winthreads on Windows
* MSVC: 'USE_CMAKE_CONFIG' might be already definied by CMake build system
* MSVC: Use all available cpu cores for compiling
* Add missing include ctime and use std::time_t
Diffstat (limited to 'src/threading')
-rw-r--r-- | src/threading/thread.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/threading/thread.cpp b/src/threading/thread.cpp index 8f54fb762..09cc7d836 100644 --- a/src/threading/thread.cpp +++ b/src/threading/thread.cpp @@ -261,10 +261,14 @@ bool Thread::bindToProcessor(unsigned int proc_number) return false; -#elif USE_WIN_THREADS +#elif _MSC_VER return SetThreadAffinityMask(getThreadHandle(), 1 << proc_number); +#elif __MINGW32__ + + return SetThreadAffinityMask(pthread_gethandle(getThreadHandle()), 1 << proc_number); + #elif __FreeBSD_version >= 702106 || defined(__linux__) cpu_set_t cpuset; @@ -309,10 +313,14 @@ bool Thread::bindToProcessor(unsigned int proc_number) bool Thread::setPriority(int prio) { -#if USE_WIN_THREADS +#ifdef _MSC_VER return SetThreadPriority(getThreadHandle(), prio); +#elif __MINGW32__ + + return SetThreadPriority(pthread_gethandle(getThreadHandle()), prio); + #else struct sched_param sparam; |