diff --git a/COMPILING.md b/COMPILING.md index 5683667c..dbb9989a 100644 --- a/COMPILING.md +++ b/COMPILING.md @@ -2,21 +2,23 @@ #### *Standalone* -1) Open the solution in VS2017 +1) Open the solution in Visual Studio 2019 2) Compile as Release/x64 or Release/x86 3) Run #### *Libretro* -1) Open the solution in VS2017 +1) Open the solution in Visual Studio 2019 2) Compile as Libretro/x64 or Libretro/x86 3) Use the "mesen_libretro.dll" file in bin/(x64 or x86)/Libretro/mesen_libretro.dll +Note: It's also possible to build the Libretro core via MINGW by using the makefile in the Libretro subfolder. + ### Linux #### *Standalone* -To compile Mesen under Linux you will need a recent version of clang/gcc. This is because Mesen requires a C++14 compiler, along with support for the filesystem API (C++17). Additionally, Mesen has the following dependencies: +To compile Mesen under Linux you will need clang 7.0+ or gcc 9.0+ (Mesen requires a C++17 compiler with support for the filesystem API.) Additionally, Mesen has the following dependencies: * Mono 5.18+ (package: mono-devel) * SDL2 (package: libsdl2-dev) @@ -29,9 +31,5 @@ LTO is supported under clang, which gives a large performance boost (25-30%+), s #### *Libretro* -To compile the libretro core you will need a recent version of clang/gcc. This is because Mesen requires a C++14 compiler, along with support for the filesystem API (C++17). - -Running "make libretro" will build the core and put it in "bin/mesen_libretro.(x64 or x86).so". -LTO is supported under clang, which gives a large performance boost (25-30%+), so turning it on is highly recommended (see makefile for details). - -**Note:** There is also another makefile in the Libretro folder - this is used by the RetroArch's buildbot to build the core. You can also try using this makefile if you are having issues with the one in the root folder. +To compile the Libretro core you will need a version of clang/gcc that supports C++14. +Run "make" from the "Libretro" subfolder to build the Libretro core. diff --git a/Core/Console.cpp b/Core/Console.cpp index e96367a8..1b0c2280 100644 --- a/Core/Console.cpp +++ b/Core/Console.cpp @@ -1,6 +1,5 @@ #include "stdafx.h" #include -#include #include #include "Console.h" #include "CPU.h" @@ -624,7 +623,7 @@ void Console::ResetComponents(bool softReset) _resetRunTimers = true; - std::async(std::launch::async, KeyManager::UpdateDevices); + KeyManager::UpdateDevices(); //This notification MUST be sent before the UpdateInputState() below to allow MovieRecorder to grab the first frame's worth of inputs _notificationManager->SendNotification(softReset ? ConsoleNotificationType::GameReset : ConsoleNotificationType::GameLoaded); diff --git a/Core/Core.vcxproj b/Core/Core.vcxproj index 446e2de3..e02d41fc 100644 --- a/Core/Core.vcxproj +++ b/Core/Core.vcxproj @@ -47,74 +47,74 @@ Win32Proj Core Core - 10.0.16299.0 + 10.0 StaticLibrary true - v141 + v142 Unicode StaticLibrary true - v141 + v142 Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode @@ -158,6 +158,7 @@ $(LibraryPath) $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false true @@ -165,46 +166,56 @@ $(LibraryPath) $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + NativeRecommendedRules.ruleset + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false @@ -404,6 +415,7 @@ false + stdcpp17 Console diff --git a/Core/Debugger.cpp b/Core/Debugger.cpp index 076616e0..efbeed6a 100644 --- a/Core/Debugger.cpp +++ b/Core/Debugger.cpp @@ -33,7 +33,6 @@ #include "PerformanceTracker.h" #include "EventManager.h" -const int Debugger::BreakpointTypeCount; string Debugger::_disassemblerOutput = ""; Debugger::Debugger(shared_ptr console, shared_ptr cpu, shared_ptr ppu, shared_ptr apu, shared_ptr memoryManager, shared_ptr mapper) @@ -1641,6 +1640,8 @@ void Debugger::ProcessEvent(EventType type) BreakImmediately(BreakSource::BreakOnBusConflict); } break; + + default: break; } } diff --git a/Core/EventManager.cpp b/Core/EventManager.cpp index 98f6bec7..f1ca6545 100644 --- a/Core/EventManager.cpp +++ b/Core/EventManager.cpp @@ -87,6 +87,10 @@ void EventManager::DrawEvent(DebugEventInfo &evt, bool drawBackground, uint32_t bool showEvent = false; uint32_t color = 0; switch(evt.Type) { + case DebugEventType::None: + case DebugEventType::BgColorChange: + break; + case DebugEventType::Breakpoint: showEvent = options.ShowMarkedBreakpoints; color = options.BreakpointColor; break; case DebugEventType::Irq: showEvent = options.ShowIrq; color = options.IrqColor; break; case DebugEventType::Nmi: showEvent = options.ShowNmi; color = options.NmiColor; break; diff --git a/Core/StudyBox.h b/Core/StudyBox.h index 83e1e515..a68c254f 100644 --- a/Core/StudyBox.h +++ b/Core/StudyBox.h @@ -107,7 +107,7 @@ protected: _byteReadDelay = 3355; _pagePosition++; - if(_pagePosition >= _pageData.size()) { + if(_pagePosition >= (int32_t)_pageData.size()) { _pageFound = false; _inDataRegion = false; //_motorDisabled = true; @@ -129,7 +129,7 @@ protected: } _console->GetCpu()->ClearIrqSource(IRQSource::External); - if(_pagePosition >= 0 && _pagePosition < _pageData.size()) { + if(_pagePosition >= 0 && _pagePosition < (int32_t)_pageData.size()) { //MessageManager::Log("Read: " + HexUtilities::ToHex(_pageData[_pagePosition])); return _pageData[_pagePosition]; } @@ -222,7 +222,7 @@ protected: _seekPageDelay = 3000000; _motorDisabled = false; } else if(_command == 0x86) { - while(_pagePosition < _pageData.size() && _pageData[_pagePosition] != 0xC5) { + while(_pagePosition < (int32_t)_pageData.size() && _pageData[_pagePosition] != 0xC5) { _pagePosition++; } _pagePosition--; diff --git a/InteropDLL/InteropDLL.vcxproj b/InteropDLL/InteropDLL.vcxproj index 06f3808c..6192db98 100644 --- a/InteropDLL/InteropDLL.vcxproj +++ b/InteropDLL/InteropDLL.vcxproj @@ -46,74 +46,74 @@ {37749BB2-FA78-4EC9-8990-5628FC0BBA19} Win32Proj InteropDLL - 10.0.16299.0 + 10.0 DynamicLibrary true - v141 + v142 Unicode DynamicLibrary true - v141 + v142 Unicode DynamicLibrary false - v141 + v142 true Unicode DynamicLibrary false - v141 + v142 true Unicode DynamicLibrary false - v141 + v142 true Unicode DynamicLibrary false - v141 + v142 true Unicode DynamicLibrary false - v141 + v142 true Unicode DynamicLibrary false - v141 + v142 true Unicode DynamicLibrary false - v141 + v142 true Unicode DynamicLibrary false - v141 + v142 true Unicode @@ -156,60 +156,70 @@ MesenCore $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false true MesenCore $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false MesenCore $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false MesenCore $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false MesenCore $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false MesenCore $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false false MesenCore $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false MesenCore $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false MesenCore $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false MesenCore $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false @@ -363,6 +373,7 @@ MultiThreaded true true + stdcpp17 Windows diff --git a/Libretro/Libretro.vcxproj b/Libretro/Libretro.vcxproj index 2304d2ab..41875f40 100644 --- a/Libretro/Libretro.vcxproj +++ b/Libretro/Libretro.vcxproj @@ -31,47 +31,47 @@ {4432139E-528B-44DE-961C-B37CD5E92E0E} Win32Proj Libretro - 10.0.16299.0 + 10.0 Libretro DynamicLibrary true - v141 + v142 Unicode DynamicLibrary false - v141 + v142 true Unicode DynamicLibrary false - v141 + v142 true Unicode DynamicLibrary true - v141 + v142 Unicode DynamicLibrary false - v141 + v142 true Unicode DynamicLibrary false - v141 + v142 true Unicode @@ -104,36 +104,42 @@ $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ mesen_libretro + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ mesen_libretro + false true $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ mesen_libretro + false true $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ mesen_libretro + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ mesen_libretro + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ mesen_libretro + false diff --git a/Linux/LinuxKeyManager.cpp b/Linux/LinuxKeyManager.cpp index 29321431..b215d0c5 100755 --- a/Linux/LinuxKeyManager.cpp +++ b/Linux/LinuxKeyManager.cpp @@ -366,7 +366,7 @@ void LinuxKeyManager::CheckForGamepads(bool logInformation) int deviceId = 0; try { deviceId = std::stoi(filename.substr(5)); - } catch(std::exception e) { + } catch(std::exception &) { continue; } diff --git a/Lua/Lua.vcxproj b/Lua/Lua.vcxproj index 4837d199..e082cd80 100644 --- a/Lua/Lua.vcxproj +++ b/Lua/Lua.vcxproj @@ -141,74 +141,74 @@ {B609E0A0-5050-4871-91D6-E760633BCDD1} Win32Proj Lua - 10.0.16299.0 + 10.0 StaticLibrary true - v141 + v142 Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary true - v141 + v142 Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode @@ -251,42 +251,52 @@ $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false diff --git a/PGOHelper/PGOHelper.cpp b/PGOHelper/PGOHelper.cpp index 9f93d8af..2817a564 100644 --- a/PGOHelper/PGOHelper.cpp +++ b/PGOHelper/PGOHelper.cpp @@ -2,9 +2,9 @@ #include #include #include -#include +#include #include "../Core/PgoUtilities.h" -namespace fs = std::experimental::filesystem; +namespace fs = std::filesystem; using std::string; using std::vector; diff --git a/PGOHelper/PGOHelper.vcxproj b/PGOHelper/PGOHelper.vcxproj index a5070d78..0c801b3c 100644 --- a/PGOHelper/PGOHelper.vcxproj +++ b/PGOHelper/PGOHelper.vcxproj @@ -46,74 +46,74 @@ {38D74EE1-5276-4D24-AABC-104B912A27D2} Win32Proj PGOHelper - 10.0.16299.0 + 10.0 Application true - v141 + v142 Unicode Application true - v141 + v142 Unicode Application false - v141 + v142 true Unicode Application false - v141 + v142 true Unicode Application false - v141 + v142 true Unicode Application false - v141 + v142 true Unicode Application false - v141 + v142 true Unicode Application false - v141 + v142 true Unicode Application false - v141 + v142 true Unicode Application false - v141 + v142 true Unicode @@ -155,51 +155,61 @@ true $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false true $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false @@ -332,6 +342,7 @@ true MultiThreaded + stdcpp17 Console diff --git a/SevenZip/SevenZip.vcxproj b/SevenZip/SevenZip.vcxproj index 3fc2fb8e..eba13365 100644 --- a/SevenZip/SevenZip.vcxproj +++ b/SevenZip/SevenZip.vcxproj @@ -87,74 +87,74 @@ {52C4BA3A-E699-4305-B23F-C9083FD07AB6} Win32Proj SevenZip - 10.0.16299.0 + 10.0 StaticLibrary true - v141 + v142 Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary true - v141 + v142 Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode @@ -197,42 +197,52 @@ $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false diff --git a/TestHelper/TestHelper.vcxproj b/TestHelper/TestHelper.vcxproj index 1df95cb3..16aab42c 100644 --- a/TestHelper/TestHelper.vcxproj +++ b/TestHelper/TestHelper.vcxproj @@ -46,74 +46,74 @@ {2A607369-8B5D-494A-9E40-C5DC8D821AA3} Win32Proj TestHelper - 10.0.16299.0 + 10.0 Application true - v141 + v142 Unicode Application true - v141 + v142 Unicode Application false - v141 + v142 true Unicode Application false - v141 + v142 true Unicode Application false - v141 + v142 true Unicode Application false - v141 + v142 true Unicode Application false - v141 + v142 true Unicode Application false - v141 + v142 true Unicode Application false - v141 + v142 true Unicode Application false - v141 + v142 true Unicode @@ -155,51 +155,61 @@ true $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false obj\$(Platform)\$(Configuration)\ true $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false false $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false obj\$(Platform)\$(Configuration)\ false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ + false obj\$(Platform)\$(Configuration)\ false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ + false obj\$(Platform)\$(Configuration)\ false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ + false obj\$(Platform)\PGO Profile\ false $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ + false diff --git a/Utilities/FolderUtilities.cpp b/Utilities/FolderUtilities.cpp index bb4d4f34..4c782034 100644 --- a/Utilities/FolderUtilities.cpp +++ b/Utilities/FolderUtilities.cpp @@ -1,9 +1,8 @@ #include "stdafx.h" -//TODO: Use non-experimental namespace (once it is officially supported by VC & GCC) #ifndef LIBRETRO -#include -namespace fs = std::experimental::filesystem; + #include + namespace fs = std::filesystem; #endif #include @@ -135,13 +134,14 @@ vector FolderUtilities::GetFolders(string rootFolder) return folders; } - for(fs::recursive_directory_iterator i(fs::u8path(rootFolder)), end; i != end; i++) { - if(i.depth() > 1) { + fs::recursive_directory_iterator itt(fs::u8path(rootFolder)); + for(auto path : itt) { + if(itt.depth() > 1) { //Prevent excessive recursion - i.disable_recursion_pending(); + itt.disable_recursion_pending(); } else { - if(fs::is_directory(i->path(), errorCode)) { - folders.push_back(i->path().u8string()); + if(fs::is_directory(itt->path(), errorCode)) { + folders.push_back(itt->path().u8string()); } } } diff --git a/Utilities/Timer.h b/Utilities/Timer.h index 19888fce..5ed9fdda 100644 --- a/Utilities/Timer.h +++ b/Utilities/Timer.h @@ -5,7 +5,7 @@ class Timer { private: #ifndef LIBRETRO - #ifdef WIN32 + #ifdef _WIN32 double _frequency = 0.0; #endif uint64_t _start; diff --git a/Utilities/UPnPPortMapper.cpp b/Utilities/UPnPPortMapper.cpp index 2b5bc8e6..093496f4 100644 --- a/Utilities/UPnPPortMapper.cpp +++ b/Utilities/UPnPPortMapper.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" #include "UPnPPortMapper.h" -#ifdef _WIN32 +#if defined(_MSC_VER) && !defined(LIBRETRO) #include #include #include diff --git a/Utilities/UTF8Util.h b/Utilities/UTF8Util.h index c60c9662..c123f44d 100644 --- a/Utilities/UTF8Util.h +++ b/Utilities/UTF8Util.h @@ -11,7 +11,7 @@ namespace utf8 { static std::string encode(const std::u16string &wstr); }; -#if defined(_WIN32) && !defined(LIBRETRO) +#if defined(_MSC_VER) && !defined(LIBRETRO) class ifstream : public std::ifstream { public: diff --git a/Utilities/Utilities.vcxproj b/Utilities/Utilities.vcxproj index 1a36bd01..933e0dba 100644 --- a/Utilities/Utilities.vcxproj +++ b/Utilities/Utilities.vcxproj @@ -46,74 +46,74 @@ {B5330148-E8C7-46BA-B54E-69BE59EA337D} Win32Proj Utilities - 10.0.16299.0 + 10.0 StaticLibrary true - v141 + v142 Unicode StaticLibrary true - v141 + v142 Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode StaticLibrary false - v141 + v142 true Unicode @@ -154,42 +154,52 @@ $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false @@ -321,12 +331,13 @@ MaxSpeed true true - WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions) + _SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions) true MultiThreaded true + stdcpp17 Windows diff --git a/Windows/Windows.vcxproj b/Windows/Windows.vcxproj index dc86dc52..ad22795c 100644 --- a/Windows/Windows.vcxproj +++ b/Windows/Windows.vcxproj @@ -46,74 +46,74 @@ {7761E790-B42C-4179-8550-8365FF9EB23E} Win32Proj Windows - 10.0.16299.0 + 10.0 StaticLibrary true - v141 + v142 MultiByte StaticLibrary true - v141 + v142 MultiByte StaticLibrary false - v141 + v142 true MultiByte StaticLibrary false - v141 + v142 true MultiByte StaticLibrary false - v141 + v142 true MultiByte StaticLibrary false - v141 + v142 true MultiByte StaticLibrary false - v141 + v142 true MultiByte StaticLibrary false - v141 + v142 true MultiByte StaticLibrary false - v141 + v142 true MultiByte StaticLibrary false - v141 + v142 true MultiByte @@ -154,42 +154,52 @@ $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\$(Configuration)\ obj\$(Platform)\$(Configuration)\ + false $(SolutionDir)\bin\$(PlatformTarget)\PGO Profile\ obj\$(Platform)\PGO Profile\ + false @@ -305,6 +315,7 @@ WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions) MultiThreaded true + stdcpp17 Windows diff --git a/makefile b/makefile index d161fa0f..58f15a10 100644 --- a/makefile +++ b/makefile @@ -32,7 +32,7 @@ else PROFILE_USE_FLAG = -fprofile-instr-use=$(CURDIR)/PGOHelper/pgo.profdata endif -GCCOPTIONS=-fPIC -Wall --std=c++14 -O3 $(MESENFLAGS) +GCCOPTIONS=-fPIC -Wall --std=c++17 -O3 $(MESENFLAGS) CCOPTIONS=-fPIC -Wall -O3 $(MESENFLAGS) ifeq ($(MESENPLATFORM),x86)