summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2016-11-16 02:07:23 +0100
committerGitHub <noreply@github.com>2016-11-16 02:07:23 +0100
commitfb13bfe693e9536df700b675fef3affe09622fdd (patch)
tree133bc7a610f8ae94a5381f8c8aaba6a6050d7ac1
parentMerge pull request #1753 from jroweboy/frame_layouts (diff)
parentAdd mingw compile support (diff)
downloadyuzu-fb13bfe693e9536df700b675fef3affe09622fdd.tar
yuzu-fb13bfe693e9536df700b675fef3affe09622fdd.tar.gz
yuzu-fb13bfe693e9536df700b675fef3affe09622fdd.tar.bz2
yuzu-fb13bfe693e9536df700b675fef3affe09622fdd.tar.lz
yuzu-fb13bfe693e9536df700b675fef3affe09622fdd.tar.xz
yuzu-fb13bfe693e9536df700b675fef3affe09622fdd.tar.zst
yuzu-fb13bfe693e9536df700b675fef3affe09622fdd.zip
-rw-r--r--CMakeLists.txt11
-rw-r--r--externals/microprofile/microprofile.h4
-rw-r--r--src/citra_qt/main.cpp4
-rw-r--r--src/common/string_util.cpp5
-rw-r--r--src/core/gdbstub/gdbstub.cpp2
5 files changed, 20 insertions, 6 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 26dec8f86..56503f1ad 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -68,6 +68,15 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
if (NOT MSVC)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-attributes")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
+
+ if (MINGW)
+ add_definitions(-DMINGW_HAS_SECURE_API)
+ if (MINGW_STATIC_BUILD)
+ add_definitions(-DQT_STATICPLUGIN)
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -static")
+ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static")
+ endif()
+ endif()
else()
# Silence "deprecation" warnings
add_definitions(/D_CRT_SECURE_NO_WARNINGS /D_CRT_NONSTDC_NO_DEPRECATE /D_SCL_SECURE_NO_WARNINGS)
@@ -175,7 +184,7 @@ IF (APPLE)
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -stdlib=libc++")
ELSEIF(MINGW)
# PSAPI is the Process Status API
- set(PLATFORM_LIBRARIES winmm ws2_32 psapi)
+ set(PLATFORM_LIBRARIES winmm ws2_32 psapi imm32 version)
# WSAPoll functionality doesn't exist before WinNT 6.x (Vista and up)
add_definitions(-D_WIN32_WINNT=0x0600)
diff --git a/externals/microprofile/microprofile.h b/externals/microprofile/microprofile.h
index 30613b3b0..f45c9ba82 100644
--- a/externals/microprofile/microprofile.h
+++ b/externals/microprofile/microprofile.h
@@ -512,7 +512,7 @@ typedef int MpSocket;
#ifndef _WIN32
typedef pthread_t MicroProfileThread;
-#elif defined(_WIN32)
+#elif defined(_MSC_VER)
typedef HANDLE MicroProfileThread;
#else
typedef std::thread* MicroProfileThread;
@@ -921,7 +921,7 @@ void MicroProfileThreadJoin(MicroProfileThread* pThread)
int r = pthread_join(*pThread, 0);
MP_ASSERT(r == 0);
}
-#elif defined(_WIN32)
+#elif defined(_MSC_VER)
typedef HANDLE MicroProfileThread;
DWORD _stdcall ThreadTrampoline(void* pFunc)
{
diff --git a/src/citra_qt/main.cpp b/src/citra_qt/main.cpp
index bcf2a706f..0bf9f48d6 100644
--- a/src/citra_qt/main.cpp
+++ b/src/citra_qt/main.cpp
@@ -48,6 +48,10 @@
#include "qhexedit.h"
#include "video_core/video_core.h"
+#ifdef QT_STATICPLUGIN
+Q_IMPORT_PLUGIN(QWindowsIntegrationPlugin);
+#endif
+
GMainWindow::GMainWindow() : config(new Config()), emu_thread(nullptr) {
Pica::g_debug_context = Pica::DebugContext::Construct();
diff --git a/src/common/string_util.cpp b/src/common/string_util.cpp
index 596ae01bf..df1008180 100644
--- a/src/common/string_util.cpp
+++ b/src/common/string_util.cpp
@@ -11,7 +11,8 @@
#include "common/common_paths.h"
#include "common/logging/log.h"
#include "common/string_util.h"
-#ifdef _MSC_VER
+
+#ifdef _WIN32
#include <codecvt>
#include <Windows.h>
#include "common/common_funcs.h"
@@ -270,7 +271,7 @@ std::string ReplaceAll(std::string result, const std::string& src, const std::st
return result;
}
-#ifdef _MSC_VER
+#ifdef _WIN32
std::string UTF16ToUTF8(const std::u16string& input) {
#if _MSC_VER >= 1900
diff --git a/src/core/gdbstub/gdbstub.cpp b/src/core/gdbstub/gdbstub.cpp
index ceb993ea1..aea43e92b 100644
--- a/src/core/gdbstub/gdbstub.cpp
+++ b/src/core/gdbstub/gdbstub.cpp
@@ -14,7 +14,7 @@
#include <numeric>
#include <fcntl.h>
-#ifdef _MSC_VER
+#ifdef _WIN32
#include <WinSock2.h>
#include <common/x64/abi.h>
#include <io.h>