aboutsummaryrefslogtreecommitdiff
path: root/src/threading/thread.cpp
diff options
context:
space:
mode:
authoradrido <robots_only_adrido@gmx.com>2017-06-27 11:54:40 +0200
committerLoïc Blot <nerzhul@users.noreply.github.com>2017-06-27 11:54:40 +0200
commitd7343b6c930d22857f858929ea684acbbeefe482 (patch)
treea4611d3bc6546af879e8cf433cf49ce8df41ab55 /src/threading/thread.cpp
parent48cd217e3b6f53af32802c1897ddd1914d215078 (diff)
downloadminetest-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/thread.cpp')
-rw-r--r--src/threading/thread.cpp12
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;