summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2019-04-15 17:32:47 -0400
committerLioncash <mathew1800@gmail.com>2019-04-16 21:23:34 -0400
commit819c21d99e39dd90cefd84a2c4d8884982456d44 (patch)
tree81850ba85c4465654727608948aa561b4a24dfd9 /src
parent1f4dfb3998fc1ef91132a79bd3a5153a56e03eca (diff)
CMakeLists: Ensure we specify Unicode as the codepage on Windows
Previously we were building with MBCS, which is pretty undesirable. We want the application to be Unicode-aware in general. Currently, we make the command line variant of yuzu use ANSI variants of the non-standard getopt functions that we link in for Windows, given we only have an ANSI option-set. We should really replace getopt with a library that we make all build types of yuzu link in, but this will have to do for the time being.
Diffstat (limited to 'src')
-rw-r--r--src/CMakeLists.txt3
-rw-r--r--src/yuzu_cmd/yuzu.cpp10
2 files changed, 9 insertions, 4 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 6c99dd5e2..9aea4af87 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -18,6 +18,9 @@ if (MSVC)
# Avoid windows.h from including some usually unused libs like winsocks.h, since this might cause some redefinition errors.
add_definitions(-DWIN32_LEAN_AND_MEAN)
+ # Ensure that projects build with Unicode support.
+ add_definitions(-DUNICODE -D_UNICODE)
+
# /W3 - Level 3 warnings
# /MP - Multi-threaded compilation
# /Zi - Output debugging information
diff --git a/src/yuzu_cmd/yuzu.cpp b/src/yuzu_cmd/yuzu.cpp
index 7ea4a1b18..a1d7879b1 100644
--- a/src/yuzu_cmd/yuzu.cpp
+++ b/src/yuzu_cmd/yuzu.cpp
@@ -32,11 +32,7 @@
#include "yuzu_cmd/config.h"
#include "yuzu_cmd/emu_window/emu_window_sdl2.h"
-#include <getopt.h>
#include "core/file_sys/registered_cache.h"
-#ifndef _MSC_VER
-#include <unistd.h>
-#endif
#ifdef _WIN32
// windows.h needs to be included before shellapi.h
@@ -45,6 +41,12 @@
#include <shellapi.h>
#endif
+#undef _UNICODE
+#include <getopt.h>
+#ifndef _MSC_VER
+#include <unistd.h>
+#endif
+
#ifdef _WIN32
extern "C" {
// tells Nvidia and AMD drivers to use the dedicated GPU by default on laptops with switchable