diff options
| author | OatmealDome <OatmealDome@users.noreply.github.com> | 2026-07-24 22:28:25 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-07-24 22:28:25 -0400 |
| commit | 707d3c7a732634ad8d522bd27e52b075f54ac4f3 (patch) | |
| tree | c40fa1fe84e6cc216da5ec17614a74c1b7a8caa2 /Source | |
| parent | d6e803e63d7a809fcafb4e39c79bdf4aabb49c79 (diff) | |
| parent | c1261e74060e9938678f2c0472c8e87196c2b496 (diff) | |
Merge pull request #14475 from JoshuaVandaele/cmake-replaces-vs
CMake: Replace the Visual Studio project
Diffstat (limited to 'Source')
49 files changed, 76 insertions, 7070 deletions
diff --git a/Source/Android/app/build.gradle.kts b/Source/Android/app/build.gradle.kts index 64abfd0037..2fc4cb7a94 100644 --- a/Source/Android/app/build.gradle.kts +++ b/Source/Android/app/build.gradle.kts @@ -91,7 +91,7 @@ android { externalNativeBuild { cmake { path = file("../../../CMakeLists.txt") - version = "3.22.1+" + version = "3.25.0+" } } namespace = "org.dolphinemu.dolphinemu" diff --git a/Source/Core/Common/FileUtil.cpp b/Source/Core/Common/FileUtil.cpp index 10032a03c5..053614f31f 100644 --- a/Source/Core/Common/FileUtil.cpp +++ b/Source/Core/Common/FileUtil.cpp @@ -759,27 +759,27 @@ std::string GetExeDirectory() static std::string CreateSysDirectoryPath() { -#if defined(_WIN32) || defined(LINUX_LOCAL_DEV) -#define SYSDATA_DIR "Sys" -#elif defined __APPLE__ -#define SYSDATA_DIR "Contents/Resources/Sys" +#define SYS_FOLDER_NAME "Sys" +#if defined __APPLE__ +#define SYSDATA_DIR "Contents/Resources/" SYS_FOLDER_NAME #else -#ifdef DATA_DIR -#define SYSDATA_DIR DATA_DIR "sys" -#else -#define SYSDATA_DIR "sys" -#endif +#define SYSDATA_DIR DATA_DIR SYS_FOLDER_NAME #endif + std::string sys_directory; + #if defined(__APPLE__) - const std::string sys_directory = GetBundleDirectory() + DIR_SEP SYSDATA_DIR DIR_SEP; -#elif defined(_WIN32) || defined(LINUX_LOCAL_DEV) - const std::string sys_directory = GetExeDirectory() + DIR_SEP SYSDATA_DIR DIR_SEP; + sys_directory = GetBundleDirectory() + DIR_SEP SYSDATA_DIR DIR_SEP; #elif defined ANDROID - const std::string sys_directory = s_android_sys_directory + DIR_SEP; + sys_directory = s_android_sys_directory + DIR_SEP; ASSERT_MSG(COMMON, !s_android_sys_directory.empty(), "Sys directory has not been set"); #else - const std::string sys_directory = SYSDATA_DIR DIR_SEP; + const std::string local_sys_directory = GetExeDirectory() + DIR_SEP SYS_FOLDER_NAME DIR_SEP; + if (IsDirectory(local_sys_directory)) + sys_directory = local_sys_directory; + else + sys_directory = SYSDATA_DIR DIR_SEP; + #endif INFO_LOG_FMT(COMMON, "CreateSysDirectoryPath: Setting to {}", sys_directory); diff --git a/Source/Core/Common/SCMRevGen.vcxproj b/Source/Core/Common/SCMRevGen.vcxproj deleted file mode 100644 index eea1446caa..0000000000 --- a/Source/Core/Common/SCMRevGen.vcxproj +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <Import Project="..\..\VSProps\Base.Macros.props" /> - <Import Project="$(VSPropsDir)Base.Targets.props" /> - <PropertyGroup Label="Globals"> - <ProjectGuid>{41279555-F94F-4EBC-99DE-AF863C10C5C4}</ProjectGuid> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <Import Project="$(VSPropsDir)Configuration.Utility.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings"> - </ImportGroup> - <ImportGroup Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="$(VSPropsDir)Base.props" /> - </ImportGroup> - <Target Name="GenerateScmRevHeader" BeforeTargets="BuildGenerateSources" Outputs="scmrev.h"> - <Exec Command="$(CScript) /nologo /E:JScript make_scmrev.h.js" /> - </Target> - <!-- - DisableFastUpToDateCheck bypasses Visual Studio's build manager and forces MSBuild to be run - on the project. This is only needed for VS-initiated builds, not msbuild itself. - --> - <PropertyGroup> - <DisableFastUpToDateCheck>true</DisableFastUpToDateCheck> - </PropertyGroup> - <ItemGroup> - <None Include="make_scmrev.h.js" /> - </ItemGroup> - <ItemGroup> - <ClInclude Include="scmrev.h" /> - </ItemGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets"> - </ImportGroup> -</Project>
\ No newline at end of file diff --git a/Source/Core/Common/make_scmrev.h.js b/Source/Core/Common/make_scmrev.h.js deleted file mode 100644 index b2ff644ecc..0000000000 --- a/Source/Core/Common/make_scmrev.h.js +++ /dev/null @@ -1,135 +0,0 @@ -var wshShell = new ActiveXObject("WScript.Shell") -var oFS = new ActiveXObject("Scripting.FileSystemObject"); - -var outfile = "./scmrev.h"; -var cmd_revision = " rev-parse HEAD"; -var cmd_describe = " describe --always --long --dirty"; -var cmd_branch = " rev-parse --abbrev-ref HEAD"; -var cmd_commits_ahead = " rev-list --count HEAD ^master"; -var cmd_get_tag = " describe --exact-match HEAD"; - -function GetGitExe() -{ - try - { - gitexe = wshShell.RegRead("HKCU\\Software\\GitExtensions\\gitcommand"); - wshShell.Exec(gitexe); - return gitexe; - } - catch (e) - {} - - for (var gitexe in {"git.cmd":1, "git":1, "git.bat":1}) - { - try - { - wshShell.Exec(gitexe); - return gitexe; - } - catch (e) - {} - } - - // last try - msysgit not in path (vs2015 default) - msyspath = "\\Git\\cmd\\git.exe"; - gitexe = wshShell.ExpandEnvironmentStrings("%PROGRAMFILES(x86)%") + msyspath; - if (oFS.FileExists(gitexe)) { - return gitexe; - } - gitexe = wshShell.ExpandEnvironmentStrings("%PROGRAMFILES%") + msyspath; - if (oFS.FileExists(gitexe)) { - return gitexe; - } - - WScript.Echo("Cannot find git or git.cmd, check your PATH:\n" + - wshShell.ExpandEnvironmentStrings("%PATH%")); - WScript.Quit(1); -} - -function GetFirstStdOutLine(cmd) -{ - try - { - return wshShell.Exec(cmd).StdOut.ReadLine(); - } - catch (e) - { - // catch "the system cannot find the file specified" error - WScript.Echo("Failed to exec " + cmd + " this should never happen"); - WScript.Quit(1); - } -} - -function AttemptToExecuteCommand(cmd) -{ - try - { - var exec = wshShell.Exec(cmd) - - // wait until the command has finished - while (exec.Status == 0) {} - - return exec.ExitCode; - } - catch (e) - { - // catch "the system cannot find the file specified" error - WScript.Echo("Failed to exec " + cmd + " this should never happen"); - WScript.Quit(1); - } -} - -function GetFileContents(f) -{ - try - { - return oFS.OpenTextFile(f).ReadAll(); - } - catch (e) - { - // file doesn't exist - return ""; - } -} - -// get info from git -var gitexe = GetGitExe(); -var revision = GetFirstStdOutLine(gitexe + cmd_revision); -var describe = GetFirstStdOutLine(gitexe + cmd_describe); -var branch = GetFirstStdOutLine(gitexe + cmd_branch); -var commits_ahead = GetFirstStdOutLine(gitexe + cmd_commits_ahead); - -// Get environment information. -var distributor = wshShell.ExpandEnvironmentStrings("%DOLPHIN_DISTRIBUTOR%"); -if (distributor == "%DOLPHIN_DISTRIBUTOR%") distributor = "None"; -var default_update_track = wshShell.ExpandEnvironmentStrings("%DOLPHIN_DEFAULT_UPDATE_TRACK%"); -if (default_update_track == "%DOLPHIN_DEFAULT_UPDATE_TRACK%") default_update_track = ""; - -// remove hash (and trailing "-0" if needed) from description -describe = describe.replace(/(-0)?-[^-]+(-dirty)?$/, '$2'); - -// set commits ahead to zero if on a tag -if (AttemptToExecuteCommand(gitexe + cmd_get_tag) == 0) -{ - commits_ahead = "0"; -} - -var out_contents = - "#define SCM_REV_STR \"" + revision + "\"\n" + - "#define SCM_DESC_STR \"" + describe + "\"\n" + - "#define SCM_BRANCH_STR \"" + branch + "\"\n" + - "#define SCM_COMMITS_AHEAD_MASTER " + commits_ahead + "\n" + - "#define SCM_DISTRIBUTOR_STR \"" + distributor + "\"\n" + - "#define SCM_UPDATE_TRACK_STR \"" + default_update_track + "\"\n"; - -// check if file needs updating -if (out_contents == GetFileContents(outfile)) -{ - WScript.Echo(outfile + " current at " + describe); -} -else -{ - // needs updating - writeout current info - oFS.CreateTextFile(outfile, true).Write(out_contents); - WScript.Echo(outfile + " updated to " + describe); -} diff --git a/Source/Core/DolphinLib.ARM64.props b/Source/Core/DolphinLib.ARM64.props deleted file mode 100644 index 4ff1c4d912..0000000000 --- a/Source/Core/DolphinLib.ARM64.props +++ /dev/null @@ -1,35 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <ItemGroup> - <ClInclude Include="Common\Arm64Emitter.h" /> - <ClInclude Include="Common\ArmCommon.h" /> - <ClInclude Include="Core\PowerPC\JitArm64\Jit_Util.h" /> - <ClInclude Include="Core\PowerPC\JitArm64\Jit.h" /> - <ClInclude Include="Core\PowerPC\JitArm64\JitArm64_RegCache.h" /> - <ClInclude Include="Core\PowerPC\JitArm64\JitArm64Cache.h" /> - <ClInclude Include="Core\PowerPC\JitArmCommon\BackPatch.h" /> - <ClInclude Include="VideoCommon\VertexLoaderARM64.h" /> - </ItemGroup> - <ItemGroup> - <ClCompile Include="Common\Arm64Emitter.cpp" /> - <ClCompile Include="Common\ArmCPUDetect.cpp" /> - <ClCompile Include="Common\ArmFPURoundMode.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\Jit_Util.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\Jit.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\JitArm64_BackPatch.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\JitArm64_Branch.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\JitArm64_FloatingPoint.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\JitArm64_Integer.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\JitArm64_LoadStore.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\JitArm64_LoadStoreFloating.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\JitArm64_LoadStorePaired.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\JitArm64_Paired.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\JitArm64_RegCache.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\JitArm64_SystemRegisters.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\JitArm64_Tables.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\JitArm64Cache.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\JitAsm.cpp" /> - <ClCompile Include="VideoCommon\TextureDecoder_Generic.cpp" /> - <ClCompile Include="VideoCommon\VertexLoaderARM64.cpp" /> - </ItemGroup> -</Project>
\ No newline at end of file diff --git a/Source/Core/DolphinLib.props b/Source/Core/DolphinLib.props deleted file mode 100644 index d343d4b151..0000000000 --- a/Source/Core/DolphinLib.props +++ /dev/null @@ -1,1491 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <ItemGroup Condition="'$(EnableCubeb)'!='false'"> - <ClInclude Include="AudioCommon\CubebStream.h" /> - <ClInclude Include="AudioCommon\CubebUtils.h" /> - <ClInclude Include="Core\HW\EXI\EXI_DeviceMic.h" /> - </ItemGroup> - <ItemGroup> - <ClInclude Include="AudioCommon\AudioCommon.h" /> - <ClInclude Include="AudioCommon\Enums.h" /> - <ClInclude Include="AudioCommon\Mixer.h" /> - <ClInclude Include="AudioCommon\NullSoundStream.h" /> - <ClInclude Include="AudioCommon\OpenALStream.h" /> - <ClInclude Include="AudioCommon\SoundStream.h" /> - <ClInclude Include="AudioCommon\SurroundDecoder.h" /> - <ClInclude Include="AudioCommon\WASAPIStream.h" /> - <ClInclude Include="AudioCommon\WaveFile.h" /> - <ClInclude Include="Common\Align.h" /> - <ClInclude Include="Common\Analytics.h" /> - <ClInclude Include="Common\Assert.h" /> - <ClInclude Include="Common\Assembler\AssemblerShared.h" /> - <ClInclude Include="Common\Assembler\AssemblerTables.h" /> - <ClInclude Include="Common\Assembler\CaseInsensitiveDict.h" /> - <ClInclude Include="Common\Assembler\GekkoAssembler.h" /> - <ClInclude Include="Common\Assembler\GekkoIRGen.h" /> - <ClInclude Include="Common\Assembler\GekkoLexer.h" /> - <ClInclude Include="Common\Assembler\GekkoParser.h" /> - <ClInclude Include="Common\BitField.h" /> - <ClInclude Include="Common\BitSet.h" /> - <ClInclude Include="Common\BitUtils.h" /> - <ClInclude Include="Common\BlockingLoop.h" /> - <ClInclude Include="Common\Buffer.h" /> - <ClInclude Include="Common\ChunkFile.h" /> - <ClInclude Include="Common\CodeBlock.h" /> - <ClInclude Include="Common\ColorUtil.h" /> - <ClInclude Include="Common\Common.h" /> - <ClInclude Include="Common\CommonFuncs.h" /> - <ClInclude Include="Common\CommonPaths.h" /> - <ClInclude Include="Common\CommonTypes.h" /> - <ClInclude Include="Common\Config\Config.h" /> - <ClInclude Include="Common\Config\ConfigInfo.h" /> - <ClInclude Include="Common\Config\Enums.h" /> - <ClInclude Include="Common\Config\Layer.h" /> - <ClInclude Include="Common\Contains.h" /> - <ClInclude Include="Common\CPUDetect.h" /> - <ClInclude Include="Common\Crypto\AES.h" /> - <ClInclude Include="Common\Crypto\bn.h" /> - <ClInclude Include="Common\Crypto\ec.h" /> - <ClInclude Include="Common\Crypto\HMAC.h" /> - <ClInclude Include="Common\Crypto\SHA1.h" /> - <ClInclude Include="Common\CWDemangler.h" /> - <ClInclude Include="Common\Debug\MemoryPatches.h" /> - <ClInclude Include="Common\Debug\Threads.h" /> - <ClInclude Include="Common\Debug\Watches.h" /> - <ClInclude Include="Common\DirectIOFile.h" /> - <ClInclude Include="Common\DynamicLibrary.h" /> - <ClInclude Include="Common\ENet.h" /> - <ClInclude Include="Common\EnumFormatter.h" /> - <ClInclude Include="Common\EnumMap.h" /> - <ClInclude Include="Common\Event.h" /> - <ClInclude Include="Common\FatFsUtil.h" /> - <ClInclude Include="Common\FileSearch.h" /> - <ClInclude Include="Common\FilesystemWatcher.h" /> - <ClInclude Include="Common\FileUtil.h" /> - <ClInclude Include="Common\FixedSizeQueue.h" /> - <ClInclude Include="Common\Flag.h" /> - <ClInclude Include="Common\FloatUtils.h" /> - <ClInclude Include="Common\FormatUtil.h" /> - <ClInclude Include="Common\FPURoundMode.h" /> - <ClInclude Include="Common\Functional.h" /> - <ClInclude Include="Common\GekkoDisassembler.h" /> - <ClInclude Include="Common\GL\GLContext.h" /> - <ClInclude Include="Common\GL\GLExtensions\AMD_pinned_memory.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_blend_func_extended.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_buffer_storage.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_clip_control.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_compute_shader.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_copy_image.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_debug_output.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_draw_elements_base_vertex.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_ES2_compatibility.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_ES3_compatibility.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_framebuffer_object.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_get_program_binary.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_map_buffer_range.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_occlusion_query2.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_sample_shading.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_sampler_objects.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_shader_image_load_store.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_shader_storage_buffer_object.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_sync.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_texture_compression_bptc.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_texture_multisample.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_texture_storage_multisample.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_texture_storage.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_uniform_buffer_object.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_vertex_array_object.h" /> - <ClInclude Include="Common\GL\GLExtensions\ARB_viewport_array.h" /> - <ClInclude Include="Common\GL\GLExtensions\EXT_texture_compression_s3tc.h" /> - <ClInclude Include="Common\GL\GLExtensions\EXT_texture_filter_anisotropic.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_1_1.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_1_2.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_1_3.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_1_4.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_1_5.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_2_0.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_2_1.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_3_0.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_3_1.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_3_2.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_4_2.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_4_3.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_4_4.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_4_5.h" /> - <ClInclude Include="Common\GL\GLExtensions\gl_common.h" /> - <ClInclude Include="Common\GL\GLExtensions\GLExtensions.h" /> - <ClInclude Include="Common\GL\GLExtensions\HP_occlusion_test.h" /> - <ClInclude Include="Common\GL\GLExtensions\KHR_debug.h" /> - <ClInclude Include="Common\GL\GLExtensions\NV_depth_buffer_float.h" /> - <ClInclude Include="Common\GL\GLExtensions\NV_occlusion_query_samples.h" /> - <ClInclude Include="Common\GL\GLExtensions\NV_primitive_restart.h" /> - <ClInclude Include="Common\GL\GLInterface\WGL.h" /> - <ClInclude Include="Common\GL\GLUtil.h" /> - <ClInclude Include="Common\GL\GLX11Window.h" /> - <ClInclude Include="Common\Hash.h" /> - <ClInclude Include="Common\HookableEvent.h" /> - <ClInclude Include="Common\HostDisassembler.h" /> - <ClInclude Include="Common\HRWrap.h" /> - <ClInclude Include="Common\HttpRequest.h" /> - <ClInclude Include="Common\Image.h" /> - <ClInclude Include="Common\IniFile.h" /> - <ClInclude Include="Common\Inline.h" /> - <ClInclude Include="Common\Intrinsics.h" /> - <ClInclude Include="Common\IOFile.h" /> - <ClInclude Include="Common\JitRegister.h" /> - <ClInclude Include="Common\JsonUtil.h" /> - <ClInclude Include="Common\Lazy.h" /> - <ClInclude Include="Common\LdrWatcher.h" /> - <ClInclude Include="Common\LinearDiskCache.h" /> - <ClInclude Include="Common\Logging\ConsoleListener.h" /> - <ClInclude Include="Common\Logging\Log.h" /> - <ClInclude Include="Common\Logging\LogManager.h" /> - <ClInclude Include="Common\MathUtil.h" /> - <ClInclude Include="Common\Matrix.h" /> - <ClInclude Include="Common\MemArena.h" /> - <ClInclude Include="Common\MemoryUtil.h" /> - <ClInclude Include="Common\MinizipUtil.h" /> - <ClInclude Include="Common\MsgHandler.h" /> - <ClInclude Include="Common\Mutex.h" /> - <ClInclude Include="Common\NandPaths.h" /> - <ClInclude Include="Common\Network.h" /> - <ClInclude Include="Common\OneShotEvent.h" /> - <ClInclude Include="Common\PcapFile.h" /> - <ClInclude Include="Common\Profiler.h" /> - <ClInclude Include="Common\Projection.h" /> - <ClInclude Include="Common\QoSSession.h" /> - <ClInclude Include="Common\Random.h" /> - <ClInclude Include="Common\RangeSet.h" /> - <ClInclude Include="Common\RangeSizeSet.h" /> - <ClInclude Include="Common\scmrev.h" /> - <ClInclude Include="Common\ScopeGuard.h" /> - <ClInclude Include="Common\SDCardUtil.h" /> - <ClInclude Include="Common\SettingsHandler.h" /> - <ClInclude Include="Common\SFMLHelper.h" /> - <ClInclude Include="Common\SmallVector.h" /> - <ClInclude Include="Common\SocketContext.h" /> - <ClInclude Include="Common\SpanUtils.h" /> - <ClInclude Include="Common\SPSCQueue.h" /> - <ClInclude Include="Common\StringUtil.h" /> - <ClInclude Include="Common\Swap.h" /> - <ClInclude Include="Common\SymbolDB.h" /> - <ClInclude Include="Common\Thread.h" /> - <ClInclude Include="Common\Timer.h" /> - <ClInclude Include="Common\TimeUtil.h" /> - <ClInclude Include="Common\TransferableSharedMutex.h" /> - <ClInclude Include="Common\TraversalClient.h" /> - <ClInclude Include="Common\TraversalProto.h" /> - <ClInclude Include="Common\TypeUtils.h" /> - <ClInclude Include="Common\UPnP.h" /> - <ClInclude Include="Common\VariantUtil.h" /> - <ClInclude Include="Common\Version.h" /> - <ClInclude Include="Common\WaitableFlag.h" /> - <ClInclude Include="Common\WindowsDevice.h" /> - <ClInclude Include="Common\WindowsRegistry.h" /> - <ClInclude Include="Common\WindowSystemInfo.h" /> - <ClInclude Include="Common\WorkQueueThread.h" /> - <ClInclude Include="Core\AchievementApprovedHash.h" /> - <ClInclude Include="Core\AchievementManager.h" /> - <ClInclude Include="Core\ActionReplay.h" /> - <ClInclude Include="Core\ARDecrypt.h" /> - <ClInclude Include="Core\Boot\Boot.h" /> - <ClInclude Include="Core\Boot\DolReader.h" /> - <ClInclude Include="Core\Boot\ElfReader.h" /> - <ClInclude Include="Core\Boot\ElfTypes.h" /> - <ClInclude Include="Core\BootManager.h" /> - <ClInclude Include="Core\CheatCodes.h" /> - <ClInclude Include="Core\CheatGeneration.h" /> - <ClInclude Include="Core\CheatSearch.h" /> - <ClInclude Include="Core\CommonTitles.h" /> - <ClInclude Include="Core\Config\AchievementSettings.h" /> - <ClInclude Include="Core\Config\DefaultLocale.h" /> - <ClInclude Include="Core\Config\FreeLookSettings.h" /> - <ClInclude Include="Core\Config\GraphicsSettings.h" /> - <ClInclude Include="Core\Config\MainSettings.h" /> - <ClInclude Include="Core\Config\NetplaySettings.h" /> - <ClInclude Include="Core\Config\SessionSettings.h" /> - <ClInclude Include="Core\Config\SYSCONFSettings.h" /> - <ClInclude Include="Core\Config\UISettings.h" /> - <ClInclude Include="Core\Config\WiimoteSettings.h" /> - <ClInclude Include="Core\ConfigLoaders\BaseConfigLoader.h" /> - <ClInclude Include="Core\ConfigLoaders\GameConfigLoader.h" /> - <ClInclude Include="Core\ConfigLoaders\IsSettingSaveable.h" /> - <ClInclude Include="Core\ConfigLoaders\MovieConfigLoader.h" /> - <ClInclude Include="Core\ConfigLoaders\NetPlayConfigLoader.h" /> - <ClInclude Include="Core\ConfigManager.h" /> - <ClInclude Include="Core\Core.h" /> - <ClInclude Include="Core\CoreTiming.h" /> - <ClInclude Include="Core\CPUThreadConfigCallback.h" /> - <ClInclude Include="Core\Debugger\BranchWatch.h" /> - <ClInclude Include="Core\Debugger\CodeTrace.h" /> - <ClInclude Include="Core\Debugger\DebugInterface.h" /> - <ClInclude Include="Core\Debugger\Debugger_SymbolMap.h" /> - <ClInclude Include="Core\Debugger\Dump.h" /> - <ClInclude Include="Core\Debugger\OSThread.h" /> - <ClInclude Include="Core\Debugger\PPCDebugInterface.h" /> - <ClInclude Include="Core\Debugger\RSO.h" /> - <ClInclude Include="Core\DolphinAnalytics.h" /> - <ClInclude Include="Core\DSP\DSPAccelerator.h" /> - <ClInclude Include="Core\DSP\DSPAnalyzer.h" /> - <ClInclude Include="Core\DSP\DSPAssembler.h" /> - <ClInclude Include="Core\DSP\DSPBreakpoints.h" /> - <ClInclude Include="Core\DSP\DSPCaptureLogger.h" /> - <ClInclude Include="Core\DSP\DSPCodeUtil.h" /> - <ClInclude Include="Core\DSP\DSPCommon.h" /> - <ClInclude Include="Core\DSP\DSPCore.h" /> - <ClInclude Include="Core\DSP\DSPDisassembler.h" /> - <ClInclude Include="Core\DSP\DSPHost.h" /> - <ClInclude Include="Core\DSP\DSPHWInterface.h" /> - <ClInclude Include="Core\DSP\DSPMemoryMap.h" /> - <ClInclude Include="Core\DSP\DSPStacks.h" /> - <ClInclude Include="Core\DSP\DSPTables.h" /> - <ClInclude Include="Core\DSP\Interpreter\DSPIntCCUtil.h" /> - <ClInclude Include="Core\DSP\Interpreter\DSPInterpreter.h" /> - <ClInclude Include="Core\DSP\Interpreter\DSPIntExtOps.h" /> - <ClInclude Include="Core\DSP\Interpreter\DSPIntTables.h" /> - <ClInclude Include="Core\DSP\Interpreter\DSPIntUtil.h" /> - <ClInclude Include="Core\DSP\Jit\DSPEmitterBase.h" /> - <ClInclude Include="Core\DSP\LabelMap.h" /> - <ClInclude Include="Core\DSPEmulator.h" /> - <ClInclude Include="Core\FifoPlayer\FifoDataFile.h" /> - <ClInclude Include="Core\FifoPlayer\FifoPlayer.h" /> - <ClInclude Include="Core\FifoPlayer\FifoRecorder.h" /> - <ClInclude Include="Core\FreeLookManager.h" /> - <ClInclude Include="Core\GeckoCode.h" /> - <ClInclude Include="Core\GeckoCodeConfig.h" /> - <ClInclude Include="Core\HLE\HLE_Misc.h" /> - <ClInclude Include="Core\HLE\HLE_OS.h" /> - <ClInclude Include="Core\HLE\HLE_VarArgs.h" /> - <ClInclude Include="Core\HLE\HLE.h" /> - <ClInclude Include="Core\Host.h" /> - <ClInclude Include="Core\HotkeyManager.h" /> - <ClInclude Include="Core\HW\AddressSpace.h" /> - <ClInclude Include="Core\HW\AudioInterface.h" /> - <ClInclude Include="Core\HW\CPU.h" /> - <ClInclude Include="Core\HW\DSP.h" /> - <ClInclude Include="Core\HW\DSPHLE\DSPHLE.h" /> - <ClInclude Include="Core\HW\DSPHLE\MailHandler.h" /> - <ClInclude Include="Core\HW\DSPHLE\UCodes\ASnd.h" /> - <ClInclude Include="Core\HW\DSPHLE\UCodes\AESnd.h" /> - <ClInclude Include="Core\HW\DSPHLE\UCodes\AX.h" /> - <ClInclude Include="Core\HW\DSPHLE\UCodes\AXStructs.h" /> - <ClInclude Include="Core\HW\DSPHLE\UCodes\AXVoice.h" /> - <ClInclude Include="Core\HW\DSPHLE\UCodes\AXWii.h" /> - <ClInclude Include="Core\HW\DSPHLE\UCodes\CARD.h" /> - <ClInclude Include="Core\HW\DSPHLE\UCodes\GBA.h" /> - <ClInclude Include="Core\HW\DSPHLE\UCodes\INIT.h" /> - <ClInclude Include="Core\HW\DSPHLE\UCodes\ROM.h" /> - <ClInclude Include="Core\HW\DSPHLE\UCodes\UCodes.h" /> - <ClInclude Include="Core\HW\DSPHLE\UCodes\Zelda.h" /> - <ClInclude Include="Core\HW\DSPLLE\DSPDebugInterface.h" /> - <ClInclude Include="Core\HW\DSPLLE\DSPLLE.h" /> - <ClInclude Include="Core\HW\DSPLLE\DSPSymbols.h" /> - <ClInclude Include="Core\HW\DVD\AMMediaboard.h" /> - <ClInclude Include="Core\HW\DVD\DVDInterface.h" /> - <ClInclude Include="Core\HW\DVD\DVDMath.h" /> - <ClInclude Include="Core\HW\DVD\DVDThread.h" /> - <ClInclude Include="Core\HW\DVD\FileMonitor.h" /> - <ClInclude Include="Core\HW\EXI\BBA\BuiltIn.h" /> - <ClInclude Include="Core\HW\EXI\BBA\TAP_Win32.h" /> - <ClInclude Include="Core\HW\EXI\EXI_Channel.h" /> - <ClInclude Include="Core\HW\EXI\EXI_Device.h" /> - <ClInclude Include="Core\HW\EXI\EXI_DeviceAD16.h" /> - <ClInclude Include="Core\HW\EXI\EXI_DeviceAGP.h" /> - <ClInclude Include="Core\HW\EXI\EXI_DeviceBaseboard.h" /> - <ClInclude Include="Core\HW\EXI\EXI_DeviceDummy.h" /> - <ClInclude Include="Core\HW\EXI\EXI_DeviceEthernet.h" /> - <ClInclude Include="Core\HW\EXI\EXI_DeviceGecko.h" /> - <ClInclude Include="Core\HW\EXI\EXI_DeviceIPL.h" /> - <ClInclude Include="Core\HW\EXI\EXI_DeviceMemoryCard.h" /> - <ClInclude Include="Core\HW\EXI\EXI_DeviceModem.h" /> - <ClInclude Include="Core\HW\EXI\EXI.h" /> - <ClInclude Include="Core\HW\GBACore.h" /> - <ClInclude Include="Core\HW\GBAPad.h" /> - <ClInclude Include="Core\HW\GBAPadEmu.h" /> - <ClInclude Include="Core\HW\GCKeyboard.h" /> - <ClInclude Include="Core\HW\GCKeyboardEmu.h" /> - <ClInclude Include="Core\HW\GCMemcard\GCIFile.h" /> - <ClInclude Include="Core\HW\GCMemcard\GCMemcard.h" /> - <ClInclude Include="Core\HW\GCMemcard\GCMemcardBase.h" /> - <ClInclude Include="Core\HW\GCMemcard\GCMemcardDirectory.h" /> - <ClInclude Include="Core\HW\GCMemcard\GCMemcardRaw.h" /> - <ClInclude Include="Core\HW\GCMemcard\GCMemcardUtils.h" /> - <ClInclude Include="Core\HW\GCPad.h" /> - <ClInclude Include="Core\HW\GCPadEmu.h" /> - <ClInclude Include="Core\HW\GPFifo.h" /> - <ClInclude Include="Core\HW\HSP\HSP.h" /> - <ClInclude Include="Core\HW\HSP\HSP_Device.h" /> - <ClInclude Include="Core\HW\HSP\HSP_DeviceARAMExpansion.h" /> - <ClInclude Include="Core\HW\HSP\HSP_DeviceGBPlayer.h" /> - <ClInclude Include="Core\HW\HSP\HSP_DeviceNull.h" /> - <ClInclude Include="Core\HW\HW.h" /> - <ClInclude Include="Core\HW\MagCard\C1231BR.h" /> - <ClInclude Include="Core\HW\MagCard\C1231LR.h" /> - <ClInclude Include="Core\HW\MagCard\MagneticCardReader.h" /> - <ClInclude Include="Core\HW\Memmap.h" /> - <ClInclude Include="Core\HW\MemoryInterface.h" /> - <ClInclude Include="Core\HW\MMIO.h" /> - <ClInclude Include="Core\HW\MMIOHandlers.h" /> - <ClInclude Include="Core\HW\ProcessorInterface.h" /> - <ClInclude Include="Core\HW\SI\SI_Device.h" /> - <ClInclude Include="Core\HW\SI\SI_DeviceAMBaseboard.h" /> - <ClInclude Include="Core\HW\SI\SI_DeviceDanceMat.h" /> - <ClInclude Include="Core\HW\SI\SI_DeviceGBA.h" /> - <ClInclude Include="Core\HW\SI\SI_DeviceGBAEmu.h" /> - <ClInclude Include="Core\HW\SI\SI_DeviceGCAdapter.h" /> - <ClInclude Include="Core\HW\SI\SI_DeviceGCController.h" /> - <ClInclude Include="Core\HW\SI\SI_DeviceGCSteeringWheel.h" /> - <ClInclude Include="Core\HW\SI\SI_DeviceKeyboard.h" /> - <ClInclude Include="Core\HW\SI\SI_DeviceNull.h" /> - <ClInclude Include="Core\HW\SI\SI.h" /> - <ClInclude Include="Core\HW\Sram.h" /> - <ClInclude Include="Core\HW\StreamADPCM.h" /> - <ClInclude Include="Core\HW\SystemTimers.h" /> - <ClInclude Include="Core\HW\Triforce\DeckReader.h" /> - <ClInclude Include="Core\HW\Triforce\FZeroAX.h" /> - <ClInclude Include="Core\HW\Triforce\ICCardReader.h" /> - <ClInclude Include="Core\HW\Triforce\IOPorts.h" /> - <ClInclude Include="Core\HW\Triforce\JVSIO.h" /> - <ClInclude Include="Core\HW\Triforce\MarioKartGP.h" /> - <ClInclude Include="Core\HW\Triforce\SerialDevice.h" /> - <ClInclude Include="Core\HW\Triforce\Touchscreen.h" /> - <ClInclude Include="Core\HW\VideoInterface.h" /> - <ClInclude Include="Core\HW\WII_IPC.h" /> - <ClInclude Include="Core\HW\Wiimote.h" /> - <ClInclude Include="Core\HW\WiimoteCommon\DataReport.h" /> - <ClInclude Include="Core\HW\WiimoteCommon\WiimoteConstants.h" /> - <ClInclude Include="Core\HW\WiimoteCommon\WiimoteHid.h" /> - <ClInclude Include="Core\HW\WiimoteCommon\WiimoteReport.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Camera.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Dynamics.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\DesiredWiimoteState.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Encryption.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Extension\Classic.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Extension\DesiredExtensionState.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Extension\DrawsomeTablet.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Extension\Drums.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Extension\Extension.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Extension\Guitar.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Extension\Nunchuk.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Extension\Shinkansen.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Extension\TaTaCon.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Extension\Turntable.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Extension\UDrawTablet.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\ExtensionPort.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\I2CBus.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\MotionPlus.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\Speaker.h" /> - <ClInclude Include="Core\HW\WiimoteEmu\WiimoteEmu.h" /> - <ClInclude Include="Core\HW\WiimoteReal\IOWin.h" /> - <ClInclude Include="Core\HW\WiimoteReal\WiimoteReal.h" /> - <ClInclude Include="Core\HW\WiiSave.h" /> - <ClInclude Include="Core\HW\WiiSaveStructs.h" /> - <ClInclude Include="Core\IOS\Crypto\Sha.h" /> - <ClInclude Include="Core\IOS\Crypto\AesDevice.h" /> - <ClInclude Include="Core\IOS\Device.h" /> - <ClInclude Include="Core\IOS\DeviceStub.h" /> - <ClInclude Include="Core\IOS\DI\DI.h" /> - <ClInclude Include="Core\IOS\DolphinDevice.h" /> - <ClInclude Include="Core\IOS\ES\ES.h" /> - <ClInclude Include="Core\IOS\ES\Formats.h" /> - <ClInclude Include="Core\IOS\FS\FileSystem.h" /> - <ClInclude Include="Core\IOS\FS\FileSystemProxy.h" /> - <ClInclude Include="Core\IOS\FS\HostBackend\FS.h" /> - <ClInclude Include="Core\IOS\IOS.h" /> - <ClInclude Include="Core\IOS\IOSC.h" /> - <ClInclude Include="Core\IOS\MIOS.h" /> - <ClInclude Include="Core\IOS\Network\ICMP.h" /> - <ClInclude Include="Core\IOS\Network\IP\Top.h" /> - <ClInclude Include="Core\IOS\Network\KD\NetKDRequest.h" /> - <ClInclude Include="Core\IOS\Network\KD\NetKDTime.h" /> - <ClInclude Include="Core\IOS\Network\KD\NWC24Config.h" /> - <ClInclude Include="Core\IOS\Network\KD\NWC24DL.h" /> - <ClInclude Include="Core\IOS\Network\KD\VFF\VFFUtil.h" /> - <ClInclude Include="Core\IOS\Network\KD\WC24File.h" /> - <ClInclude Include="Core\IOS\Network\KD\Mail\MailCommon.h" /> - <ClInclude Include="Core\IOS\Network\KD\Mail\WC24FriendList.h" /> - <ClInclude Include="Core\IOS\Network\KD\Mail\WC24Send.h" /> - <ClInclude Include="Core\IOS\Network\MACUtils.h" /> - <ClInclude Include="Core\IOS\Network\NCD\Manage.h" /> - <ClInclude Include="Core\IOS\Network\NCD\WiiNetConfig.h" /> - <ClInclude Include="Core\IOS\Network\Socket.h" /> - <ClInclude Include="Core\IOS\Network\SSL.h" /> - <ClInclude Include="Core\IOS\Network\WD\Command.h" /> - <ClInclude Include="Core\IOS\SDIO\SDIOSlot0.h" /> - <ClInclude Include="Core\IOS\STM\STM.h" /> - <ClInclude Include="Core\IOS\Uids.h" /> - <ClInclude Include="Core\IOS\USB\Bluetooth\BTBase.h" /> - <ClInclude Include="Core\IOS\USB\Bluetooth\BTEmu.h" /> - <ClInclude Include="Core\IOS\USB\Bluetooth\BTReal.h" /> - <ClInclude Include="Core\IOS\USB\Bluetooth\BTStub.h" /> - <ClInclude Include="Core\IOS\USB\Bluetooth\LibUSBBluetoothAdapter.h" /> - <ClInclude Include="Core\IOS\USB\Bluetooth\RealtekFirmwareLoader.h" /> - <ClInclude Include="Core\IOS\USB\Bluetooth\hci.h" /> - <ClInclude Include="Core\IOS\USB\Bluetooth\l2cap.h" /> - <ClInclude Include="Core\IOS\USB\Bluetooth\WiimoteDevice.h" /> - <ClInclude Include="Core\IOS\USB\Bluetooth\WiimoteHIDAttr.h" /> - <ClInclude Include="Core\IOS\USB\Common.h" /> - <ClInclude Include="Core\IOS\USB\Emulated\Infinity.h" /> - <ClInclude Include="Core\IOS\USB\Emulated\LogitechMic.h" /> - <ClInclude Include="Core\IOS\USB\Emulated\Microphone.h" /> - <ClInclude Include="Core\IOS\USB\Emulated\Skylanders\Skylander.h" /> - <ClInclude Include="Core\IOS\USB\Emulated\Skylanders\SkylanderCrypto.h" /> - <ClInclude Include="Core\IOS\USB\Emulated\Skylanders\SkylanderFigure.h" /> - <ClInclude Include="Core\IOS\USB\Emulated\WiiSpeak.h" /> - <ClInclude Include="Core\IOS\USB\Host.h" /> - <ClInclude Include="Core\IOS\USB\LibusbDevice.h" /> - <ClInclude Include="Core\IOS\USB\OH0\OH0.h" /> - <ClInclude Include="Core\IOS\USB\OH0\OH0Device.h" /> - <ClInclude Include="Core\IOS\USB\USB_HID\HIDv4.h" /> - <ClInclude Include="Core\IOS\USB\USB_HID\HIDv5.h" /> - <ClInclude Include="Core\IOS\USB\USB_KBD.h" /> - <ClInclude Include="Core\IOS\USB\USB_VEN\VEN.h" /> - <ClInclude Include="Core\IOS\USB\USBScanner.h" /> - <ClInclude Include="Core\IOS\USB\USBV0.h" /> - <ClInclude Include="Core\IOS\USB\USBV4.h" /> - <ClInclude Include="Core\IOS\USB\USBV5.h" /> - <ClInclude Include="Core\IOS\VersionInfo.h" /> - <ClInclude Include="Core\IOS\WFS\WFSI.h" /> - <ClInclude Include="Core\IOS\WFS\WFSSRV.h" /> - <ClInclude Include="Core\LibusbUtils.h" /> - <ClInclude Include="Core\MachineContext.h" /> - <ClInclude Include="Core\MemTools.h" /> - <ClInclude Include="Core\Movie.h" /> - <ClInclude Include="Core\NetPlayClient.h" /> - <ClInclude Include="Core\NetPlayCommon.h" /> - <ClInclude Include="Core\NetPlayProto.h" /> - <ClInclude Include="Core\NetPlayServer.h" /> - <ClInclude Include="Core\NetworkCaptureLogger.h" /> - <ClInclude Include="Core\PatchEngine.h" /> - <ClInclude Include="Core\PowerPC\BreakPoints.h" /> - <ClInclude Include="Core\PowerPC\CachedInterpreter\CachedInterpreter.h" /> - <ClInclude Include="Core\PowerPC\CachedInterpreter\CachedInterpreterBlockCache.h" /> - <ClInclude Include="Core\PowerPC\CachedInterpreter\CachedInterpreterEmitter.h" /> - <ClInclude Include="Core\PowerPC\ConditionRegister.h" /> - <ClInclude Include="Core\PowerPC\CPUCoreBase.h" /> - <ClInclude Include="Core\PowerPC\Expression.h" /> - <ClInclude Include="Core\PowerPC\GDBStub.h" /> - <ClInclude Include="Core\PowerPC\Gekko.h" /> - <ClInclude Include="Core\PowerPC\Interpreter\ExceptionUtils.h" /> - <ClInclude Include="Core\PowerPC\Interpreter\Interpreter_FPUtils.h" /> - <ClInclude Include="Core\PowerPC\Interpreter\Interpreter.h" /> - <ClInclude Include="Core\PowerPC\JitCommon\ConstantPropagation.h" /> - <ClInclude Include="Core\PowerPC\JitCommon\DivUtils.h" /> - <ClInclude Include="Core\PowerPC\JitCommon\JitAsmCommon.h" /> - <ClInclude Include="Core\PowerPC\JitCommon\JitBase.h" /> - <ClInclude Include="Core\PowerPC\JitCommon\JitCache.h" /> - <ClInclude Include="Core\PowerPC\JitInterface.h" /> - <ClInclude Include="Core\PowerPC\MMU.h" /> - <ClInclude Include="Core\PowerPC\PowerPC.h" /> - <ClInclude Include="Core\PowerPC\PPCAnalyst.h" /> - <ClInclude Include="Core\PowerPC\PPCCache.h" /> - <ClInclude Include="Core\PowerPC\PPCSymbolDB.h" /> - <ClInclude Include="Core\PowerPC\PPCTables.h" /> - <ClInclude Include="Core\PowerPC\SignatureDB\CSVSignatureDB.h" /> - <ClInclude Include="Core\PowerPC\SignatureDB\DSYSignatureDB.h" /> - <ClInclude Include="Core\PowerPC\SignatureDB\MEGASignatureDB.h" /> - <ClInclude Include="Core\PowerPC\SignatureDB\SignatureDB.h" /> - <ClInclude Include="Core\State.h" /> - <ClInclude Include="Core\SyncIdentifier.h" /> - <ClInclude Include="Core\SysConf.h" /> - <ClInclude Include="Core\System.h" /> - <ClInclude Include="Core\TimePlayed.h" /> - <ClInclude Include="Core\TitleDatabase.h" /> - <ClInclude Include="Core\USBUtils.h" /> - <ClInclude Include="Core\WC24PatchEngine.h" /> - <ClInclude Include="Core\WiiRoot.h" /> - <ClInclude Include="Core\WiiUtils.h" /> - <ClInclude Include="DiscIO\Blob.h" /> - <ClInclude Include="DiscIO\CISOBlob.h" /> - <ClInclude Include="DiscIO\CachedBlob.h" /> - <ClInclude Include="DiscIO\CompressedBlob.h" /> - <ClInclude Include="DiscIO\DirectoryBlob.h" /> - <ClInclude Include="DiscIO\DiscExtractor.h" /> - <ClInclude Include="DiscIO\DiscScrubber.h" /> - <ClInclude Include="DiscIO\DiscUtils.h" /> - <ClInclude Include="DiscIO\Enums.h" /> - <ClInclude Include="DiscIO\FileBlob.h" /> - <ClInclude Include="DiscIO\Filesystem.h" /> - <ClInclude Include="DiscIO\FileSystemGCWii.h" /> - <ClInclude Include="DiscIO\GameModDescriptor.h" /> - <ClInclude Include="DiscIO\LaggedFibonacciGenerator.h" /> - <ClInclude Include="DiscIO\MultithreadedCompressor.h" /> - <ClInclude Include="DiscIO\NANDImporter.h" /> - <ClInclude Include="DiscIO\NFSBlob.h" /> - <ClInclude Include="DiscIO\RiivolutionParser.h" /> - <ClInclude Include="DiscIO\RiivolutionPatcher.h" /> - <ClInclude Include="DiscIO\ScrubbedBlob.h" /> - <ClInclude Include="DiscIO\SplitFileBlob.h" /> - <ClInclude Include="DiscIO\TGCBlob.h" /> - <ClInclude Include="DiscIO\Volume.h" /> - <ClInclude Include="DiscIO\VolumeDisc.h" /> - <ClInclude Include="DiscIO\VolumeFileBlobReader.h" /> - <ClInclude Include="DiscIO\VolumeGC.h" /> - <ClInclude Include="DiscIO\VolumeVerifier.h" /> - <ClInclude Include="DiscIO\VolumeWad.h" /> - <ClInclude Include="DiscIO\VolumeWii.h" /> - <ClInclude Include="DiscIO\WbfsBlob.h" /> - <ClInclude Include="DiscIO\WIABlob.h" /> - <ClInclude Include="DiscIO\WIACompression.h" /> - <ClInclude Include="DiscIO\WiiEncryptionCache.h" /> - <ClInclude Include="DiscIO\WiiSaveBanner.h" /> - <ClInclude Include="InputCommon\ControllerEmu\Control\Control.h" /> - <ClInclude Include="InputCommon\ControllerEmu\Control\Input.h" /> - <ClInclude Include="InputCommon\ControllerEmu\Control\Output.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\AnalogStick.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\Attachments.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\Buttons.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\ControlGroup.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\Cursor.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\Force.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\IMUAccelerometer.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\IMUCursor.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\IMUGyroscope.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\IRPassthrough.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\MixedTriggers.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\ModifySettingsButton.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\Slider.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\Tilt.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControlGroup\Triggers.h" /> - <ClInclude Include="InputCommon\ControllerEmu\ControllerEmu.h" /> - <ClInclude Include="InputCommon\ControllerEmu\Setting\NumericSetting.h" /> - <ClInclude Include="InputCommon\ControllerEmu\StickGate.h" /> - <ClInclude Include="InputCommon\ControllerInterface\ControllerInterface.h" /> - <ClInclude Include="InputCommon\ControllerInterface\CoreDevice.h" /> - <ClInclude Include="InputCommon\ControllerInterface\InputBackend.h" /> - <ClInclude Include="InputCommon\ControllerInterface\DInput\DInput.h" /> - <ClInclude Include="InputCommon\ControllerInterface\DInput\DInput8.h" /> - <ClInclude Include="InputCommon\ControllerInterface\DInput\DInputJoystick.h" /> - <ClInclude Include="InputCommon\ControllerInterface\DInput\DInputKeyboardMouse.h" /> - <ClInclude Include="InputCommon\ControllerInterface\DInput\NamedKeys.h" /> - <ClInclude Include="InputCommon\ControllerInterface\DInput\XInputFilter.h" /> - <ClInclude Include="InputCommon\ControllerInterface\DualShockUDPClient\DualShockUDPClient.h" /> - <ClInclude Include="InputCommon\ControllerInterface\DualShockUDPClient\DualShockUDPProto.h" /> - <ClInclude Include="InputCommon\ControllerInterface\evdev\evdev.h" /> - <ClInclude Include="InputCommon\ControllerInterface\ForceFeedback\ForceFeedbackDevice.h" /> - <ClInclude Include="InputCommon\ControllerInterface\MappingCommon.h" /> - <ClInclude Include="InputCommon\ControllerInterface\WGInput\WGInput.h" /> - <ClInclude Include="InputCommon\ControllerInterface\Wiimote\WiimoteController.h" /> - <ClInclude Include="InputCommon\ControllerInterface\Win32\Win32.h" /> - <ClInclude Include="InputCommon\ControllerInterface\XInput\XInput.h" /> - <ClInclude Include="InputCommon\ControllerInterface\SDL\SDL.h" /> - <ClInclude Include="InputCommon\ControllerInterface\SDL\SDLGamepad.h" /> - <ClInclude Include="InputCommon\ControlReference\ControlReference.h" /> - <ClInclude Include="InputCommon\ControlReference\ExpressionParser.h" /> - <ClInclude Include="InputCommon\ControlReference\FunctionExpression.h" /> - <ClInclude Include="InputCommon\DynamicInputTextures\DITConfiguration.h" /> - <ClInclude Include="InputCommon\DynamicInputTextures\DITData.h" /> - <ClInclude Include="InputCommon\DynamicInputTextures\DITSpecification.h" /> - <ClInclude Include="InputCommon\DynamicInputTextureManager.h" /> - <ClInclude Include="InputCommon\GCAdapter.h" /> - <ClInclude Include="InputCommon\GCPadStatus.h" /> - <ClInclude Include="InputCommon\ImageOperations.h" /> - <ClInclude Include="InputCommon\InputConfig.h" /> - <ClInclude Include="InputCommon\InputProfile.h" /> - <ClInclude Include="InputCommon\KeyboardStatus.h" /> - <ClInclude Include="UICommon\AutoUpdate.h" /> - <ClInclude Include="UICommon\CommandLineParse.h" /> - <ClInclude Include="UICommon\DiscordPresence.h" /> - <ClInclude Include="UICommon\GameFile.h" /> - <ClInclude Include="UICommon\GameFileCache.h" /> - <ClInclude Include="UICommon\NetPlayIndex.h" /> - <ClInclude Include="UICommon\ResourcePack\Manager.h" /> - <ClInclude Include="UICommon\ResourcePack\Manifest.h" /> - <ClInclude Include="UICommon\ResourcePack\ResourcePack.h" /> - <ClInclude Include="UICommon\UICommon.h" /> - <ClInclude Include="UpdaterCommon\UI.h" /> - <ClInclude Include="UpdaterCommon\UpdaterCommon.h" /> - <ClInclude Include="VideoBackends\D3D\D3DBase.h" /> - <ClInclude Include="VideoBackends\D3D\D3DBoundingBox.h" /> - <ClInclude Include="VideoBackends\D3D\D3DPerfQuery.h" /> - <ClInclude Include="VideoBackends\D3D\D3DGfx.h" /> - <ClInclude Include="VideoBackends\D3D\D3DState.h" /> - <ClInclude Include="VideoBackends\D3D\D3DSwapChain.h" /> - <ClInclude Include="VideoBackends\D3D\D3DVertexManager.h" /> - <ClInclude Include="VideoBackends\D3D\DXPipeline.h" /> - <ClInclude Include="VideoBackends\D3D\DXShader.h" /> - <ClInclude Include="VideoBackends\D3D\DXTexture.h" /> - <ClInclude Include="VideoBackends\D3D\VideoBackend.h" /> - <ClInclude Include="VideoBackends\D3D12\Common.h" /> - <ClInclude Include="VideoBackends\D3D12\D3D12BoundingBox.h" /> - <ClInclude Include="VideoBackends\D3D12\D3D12PerfQuery.h" /> - <ClInclude Include="VideoBackends\D3D12\D3D12Gfx.h" /> - <ClInclude Include="VideoBackends\D3D12\D3D12StreamBuffer.h" /> - <ClInclude Include="VideoBackends\D3D12\D3D12SwapChain.h" /> - <ClInclude Include="VideoBackends\D3D12\D3D12VertexManager.h" /> - <ClInclude Include="VideoBackends\D3D12\DescriptorAllocator.h" /> - <ClInclude Include="VideoBackends\D3D12\DescriptorHeapManager.h" /> - <ClInclude Include="VideoBackends\D3D12\DX12Context.h" /> - <ClInclude Include="VideoBackends\D3D12\DX12Pipeline.h" /> - <ClInclude Include="VideoBackends\D3D12\DX12Shader.h" /> - <ClInclude Include="VideoBackends\D3D12\DX12Texture.h" /> - <ClInclude Include="VideoBackends\D3D12\DX12VertexFormat.h" /> - <ClInclude Include="VideoBackends\D3D12\VideoBackend.h" /> - <ClInclude Include="VideoBackends\D3DCommon\D3DCommon.h" /> - <ClInclude Include="VideoBackends\D3DCommon\Shader.h" /> - <ClInclude Include="VideoBackends\D3DCommon\SwapChain.h" /> - <ClInclude Include="VideoBackends\Null\NullBoundingBox.h" /> - <ClInclude Include="VideoBackends\Null\NullGfx.h" /> - <ClInclude Include="VideoBackends\Null\NullTexture.h" /> - <ClInclude Include="VideoBackends\Null\NullVertexManager.h" /> - <ClInclude Include="VideoBackends\Null\PerfQuery.h" /> - <ClInclude Include="VideoBackends\Null\TextureCache.h" /> - <ClInclude Include="VideoBackends\Null\VideoBackend.h" /> - <ClInclude Include="VideoBackends\OGL\OGLBoundingBox.h" /> - <ClInclude Include="VideoBackends\OGL\OGLConfig.h" /> - <ClInclude Include="VideoBackends\OGL\OGLGfx.h" /> - <ClInclude Include="VideoBackends\OGL\OGLPerfQuery.h" /> - <ClInclude Include="VideoBackends\OGL\OGLPipeline.h" /> - <ClInclude Include="VideoBackends\OGL\OGLShader.h" /> - <ClInclude Include="VideoBackends\OGL\OGLStreamBuffer.h" /> - <ClInclude Include="VideoBackends\OGL\OGLTexture.h" /> - <ClInclude Include="VideoBackends\OGL\OGLVertexManager.h" /> - <ClInclude Include="VideoBackends\OGL\ProgramShaderCache.h" /> - <ClInclude Include="VideoBackends\OGL\SamplerCache.h" /> - <ClInclude Include="VideoBackends\OGL\VideoBackend.h" /> - <ClInclude Include="VideoBackends\Software\Clipper.h" /> - <ClInclude Include="VideoBackends\Software\CopyRegion.h" /> - <ClInclude Include="VideoBackends\Software\EfbCopy.h" /> - <ClInclude Include="VideoBackends\Software\NativeVertexFormat.h" /> - <ClInclude Include="VideoBackends\Software\Rasterizer.h" /> - <ClInclude Include="VideoBackends\Software\SetupUnit.h" /> - <ClInclude Include="VideoBackends\Software\SWBoundingBox.h" /> - <ClInclude Include="VideoBackends\Software\SWEfbInterface.h" /> - <ClInclude Include="VideoBackends\Software\SWGfx.h" /> - <ClInclude Include="VideoBackends\Software\SWOGLWindow.h" /> - <ClInclude Include="VideoBackends\Software\SWTexture.h" /> - <ClInclude Include="VideoBackends\Software\SWVertexLoader.h" /> - <ClInclude Include="VideoBackends\Software\Tev.h" /> - <ClInclude Include="VideoBackends\Software\TextureCache.h" /> - <ClInclude Include="VideoBackends\Software\TextureEncoder.h" /> - <ClInclude Include="VideoBackends\Software\TextureSampler.h" /> - <ClInclude Include="VideoBackends\Software\TransformUnit.h" /> - <ClInclude Include="VideoBackends\Software\VideoBackend.h" /> - <ClInclude Include="VideoBackends\Vulkan\CommandBufferManager.h" /> - <ClInclude Include="VideoBackends\Vulkan\Constants.h" /> - <ClInclude Include="VideoBackends\Vulkan\ObjectCache.h" /> - <ClInclude Include="VideoBackends\Vulkan\ShaderCompiler.h" /> - <ClInclude Include="VideoBackends\Vulkan\StagingBuffer.h" /> - <ClInclude Include="VideoBackends\Vulkan\StateTracker.h" /> - <ClInclude Include="VideoBackends\Vulkan\VideoBackend.h" /> - <ClInclude Include="VideoBackends\Vulkan\VKBoundingBox.h" /> - <ClInclude Include="VideoBackends\Vulkan\VKPerfQuery.h" /> - <ClInclude Include="VideoBackends\Vulkan\VKPipeline.h" /> - <ClInclude Include="VideoBackends\Vulkan\VKGfx.h" /> - <ClInclude Include="VideoBackends\Vulkan\VKShader.h" /> - <ClInclude Include="VideoBackends\Vulkan\VKStreamBuffer.h" /> - <ClInclude Include="VideoBackends\Vulkan\VKSwapChain.h" /> - <ClInclude Include="VideoBackends\Vulkan\VKTexture.h" /> - <ClInclude Include="VideoBackends\Vulkan\VKVertexFormat.h" /> - <ClInclude Include="VideoBackends\Vulkan\VKVertexManager.h" /> - <ClInclude Include="VideoBackends\Vulkan\VulkanContext.h" /> - <ClInclude Include="VideoBackends\Vulkan\VulkanLoader.h" /> - <ClInclude Include="VideoCommon\AbstractFramebuffer.h" /> - <ClInclude Include="VideoCommon\AbstractGfx.h" /> - <ClInclude Include="VideoCommon\AbstractPipeline.h" /> - <ClInclude Include="VideoCommon\AbstractShader.h" /> - <ClInclude Include="VideoCommon\AbstractStagingTexture.h" /> - <ClInclude Include="VideoCommon\AbstractTexture.h" /> - <ClInclude Include="VideoCommon\Assets\AssetListener.h" /> - <ClInclude Include="VideoCommon\Assets\CustomAsset.h" /> - <ClInclude Include="VideoCommon\Assets\CustomAssetCache.h" /> - <ClInclude Include="VideoCommon\Assets\CustomAssetLibrary.h" /> - <ClInclude Include="VideoCommon\Assets\CustomAssetLoader.h" /> - <ClInclude Include="VideoCommon\Assets\CustomTextureData.h" /> - <ClInclude Include="VideoCommon\Assets\DirectFilesystemAssetLibrary.h" /> - <ClInclude Include="VideoCommon\Assets\MaterialAsset.h" /> - <ClInclude Include="VideoCommon\Assets\MeshAsset.h" /> - <ClInclude Include="VideoCommon\Assets\ShaderAsset.h" /> - <ClInclude Include="VideoCommon\Assets\TextureAsset.h" /> - <ClInclude Include="VideoCommon\Assets\TextureAssetUtils.h" /> - <ClInclude Include="VideoCommon\Assets\TextureSamplerValue.h" /> - <ClInclude Include="VideoCommon\Assets\Types.h" /> - <ClInclude Include="VideoCommon\Assets\WatchableFilesystemAssetLibrary.h" /> - <ClInclude Include="VideoCommon\AsyncRequests.h" /> - <ClInclude Include="VideoCommon\AsyncShaderCompiler.h" /> - <ClInclude Include="VideoCommon\BoundingBox.h" /> - <ClInclude Include="VideoCommon\BPFunctions.h" /> - <ClInclude Include="VideoCommon\BPMemory.h" /> - <ClInclude Include="VideoCommon\BPStructs.h" /> - <ClInclude Include="VideoCommon\CommandProcessor.h" /> - <ClInclude Include="VideoCommon\ConstantManager.h" /> - <ClInclude Include="VideoCommon\Constants.h" /> - <ClInclude Include="VideoCommon\CPMemory.h" /> - <ClInclude Include="VideoCommon\CPUCull.h" /> - <ClInclude Include="VideoCommon\CPUCullImpl.h" /> - <ClInclude Include="VideoCommon\DataReader.h" /> - <ClInclude Include="VideoCommon\DriverDetails.h" /> - <ClInclude Include="VideoCommon\EFBInterface.h" /> - <ClInclude Include="VideoCommon\Fifo.h" /> - <ClInclude Include="VideoCommon\FramebufferManager.h" /> - <ClInclude Include="VideoCommon\FramebufferShaderGen.h" /> - <ClInclude Include="VideoCommon\FrameDumpFFMpeg.h" /> - <ClInclude Include="VideoCommon\FrameDumper.h" /> - <ClInclude Include="VideoCommon\FreeLookCamera.h" /> - <ClInclude Include="VideoCommon\GeometryShaderGen.h" /> - <ClInclude Include="VideoCommon\GeometryShaderManager.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Config\GraphicsMod.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Config\GraphicsModAsset.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Config\GraphicsModFeature.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Config\GraphicsModGroup.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Config\GraphicsTarget.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Config\GraphicsTargetGroup.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Constants.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Runtime\Actions\CustomPipelineAction.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Runtime\Actions\MoveAction.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Runtime\Actions\PrintAction.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Runtime\Actions\ScaleAction.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Runtime\Actions\SkipAction.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Runtime\CustomPipeline.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Runtime\CustomShaderCache.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Runtime\FBInfo.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Runtime\GraphicsModAction.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Runtime\GraphicsModActionData.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Runtime\GraphicsModActionFactory.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Runtime\GraphicsModGroup.h" /> - <ClInclude Include="VideoCommon\GraphicsModSystem\Runtime\GraphicsModManager.h" /> - <ClInclude Include="VideoCommon\GXPipelineTypes.h" /> - <ClInclude Include="VideoCommon\HiresTextures.h" /> - <ClInclude Include="VideoCommon\ImageWrite.h" /> - <ClInclude Include="VideoCommon\IndexGenerator.h" /> - <ClInclude Include="VideoCommon\LightingShaderGen.h" /> - <ClInclude Include="VideoCommon\LookUpTables.h" /> - <ClInclude Include="VideoCommon\NativeVertexFormat.h" /> - <ClInclude Include="VideoCommon\NetPlayChatUI.h" /> - <ClInclude Include="VideoCommon\NetPlayGolfUI.h" /> - <ClInclude Include="VideoCommon\OnScreenDisplay.h" /> - <ClInclude Include="VideoCommon\OnScreenUI.h" /> - <ClInclude Include="VideoCommon\OnScreenUIKeyMap.h" /> - <ClInclude Include="VideoCommon\OpcodeDecoding.h" /> - <ClInclude Include="VideoCommon\PerfQueryBase.h" /> - <ClInclude Include="VideoCommon\PerformanceMetrics.h" /> - <ClInclude Include="VideoCommon\PerformanceTracker.h" /> - <ClInclude Include="VideoCommon\PipelineUtils.h" /> - <ClInclude Include="VideoCommon\PixelEngine.h" /> - <ClInclude Include="VideoCommon\PixelShaderGen.h" /> - <ClInclude Include="VideoCommon\PixelShaderManager.h" /> - <ClInclude Include="VideoCommon\PostProcessing.h" /> - <ClInclude Include="VideoCommon\Present.h" /> - <ClInclude Include="VideoCommon\RenderState.h" /> - <ClInclude Include="VideoCommon\Resources\CustomResourceManager.h" /> - <ClInclude Include="VideoCommon\Resources\InvalidTextures.h" /> - <ClInclude Include="VideoCommon\Resources\MaterialResource.h" /> - <ClInclude Include="VideoCommon\Resources\Resource.h" /> - <ClInclude Include="VideoCommon\Resources\ShaderResource.h" /> - <ClInclude Include="VideoCommon\Resources\TextureAndSampler.h" /> - <ClInclude Include="VideoCommon\Resources\TextureDataResource.h" /> - <ClInclude Include="VideoCommon\Resources\TexturePool.h" /> - <ClInclude Include="VideoCommon\ShaderCache.h" /> - <ClInclude Include="VideoCommon\ShaderCompileUtils.h" /> - <ClInclude Include="VideoCommon\ShaderGenCommon.h" /> - <ClInclude Include="VideoCommon\Spirv.h" /> - <ClInclude Include="VideoCommon\Statistics.h" /> - <ClInclude Include="VideoCommon\TextureCacheBase.h" /> - <ClInclude Include="VideoCommon\TextureConfig.h" /> - <ClInclude Include="VideoCommon\TextureConversionShader.h" /> - <ClInclude Include="VideoCommon\TextureConverterShaderGen.h" /> - <ClInclude Include="VideoCommon\TextureDecoder_Util.h" /> - <ClInclude Include="VideoCommon\TextureDecoder.h" /> - <ClInclude Include="VideoCommon\TextureInfo.h" /> - <ClInclude Include="VideoCommon\TextureUtils.h" /> - <ClInclude Include="VideoCommon\TMEM.h" /> - <ClInclude Include="VideoCommon\UberShaderCommon.h" /> - <ClInclude Include="VideoCommon\UberShaderPixel.h" /> - <ClInclude Include="VideoCommon\UberShaderVertex.h" /> - <ClInclude Include="VideoCommon\VertexLoader_Color.h" /> - <ClInclude Include="VideoCommon\VertexLoader_Normal.h" /> - <ClInclude Include="VideoCommon\VertexLoader_Position.h" /> - <ClInclude Include="VideoCommon\VertexLoader_TextCoord.h" /> - <ClInclude Include="VideoCommon\VertexLoader.h" /> - <ClInclude Include="VideoCommon\VertexLoaderBase.h" /> - <ClInclude Include="VideoCommon\VertexLoaderManager.h" /> - <ClInclude Include="VideoCommon\VertexLoaderUtils.h" /> - <ClInclude Include="VideoCommon\VertexManagerBase.h" /> - <ClInclude Include="VideoCommon\VertexShaderGen.h" /> - <ClInclude Include="VideoCommon\VertexShaderManager.h" /> - <ClInclude Include="VideoCommon\VideoBackendBase.h" /> - <ClInclude Include="VideoCommon\VideoCommon.h" /> - <ClInclude Include="VideoCommon\VideoConfig.h" /> - <ClInclude Include="VideoCommon\VideoEvents.h" /> - <ClInclude Include="VideoCommon\VideoState.h" /> - <ClInclude Include="VideoCommon\Widescreen.h" /> - <ClInclude Include="VideoCommon\XFMemory.h" /> - <ClInclude Include="VideoCommon\XFStateManager.h" /> - <ClInclude Include="VideoCommon\XFStructs.h" /> - </ItemGroup> - <ItemGroup Condition="'$(EnableCubeb)'!='false'"> - <ClCompile Include="AudioCommon\CubebStream.cpp" /> - <ClCompile Include="AudioCommon\CubebUtils.cpp" /> - <ClCompile Include="Core\HW\EXI\EXI_DeviceMic.cpp" /> - </ItemGroup> - <ItemGroup> - <ClCompile Include="AudioCommon\AudioCommon.cpp" /> - <ClCompile Include="AudioCommon\Mixer.cpp" /> - <ClCompile Include="AudioCommon\NullSoundStream.cpp" /> - <ClCompile Include="AudioCommon\OpenALStream.cpp" /> - <ClCompile Include="AudioCommon\SurroundDecoder.cpp" /> - <ClCompile Include="AudioCommon\WASAPIStream.cpp" /> - <ClCompile Include="AudioCommon\WaveFile.cpp" /> - <ClCompile Include="Common\Analytics.cpp" /> - <ClCompile Include="Common\Assembler\AssemblerShared.cpp" /> - <ClCompile Include="Common\Assembler\AssemblerTables.cpp" /> - <ClCompile Include="Common\Assembler\GekkoAssembler.cpp" /> - <ClCompile Include="Common\Assembler\GekkoIRGen.cpp" /> - <ClCompile Include="Common\Assembler\GekkoLexer.cpp" /> - <ClCompile Include="Common\Assembler\GekkoParser.cpp" /> - <ClCompile Include="Common\ColorUtil.cpp" /> - <ClCompile Include="Common\CommonFuncs.cpp" /> - <ClCompile Include="Common\CompatPatches.cpp" /> - <ClCompile Include="Common\Config\Config.cpp" /> - <ClCompile Include="Common\Config\ConfigInfo.cpp" /> - <ClCompile Include="Common\Config\Layer.cpp" /> - <ClCompile Include="Common\Crypto\AES.cpp" /> - <ClCompile Include="Common\Crypto\bn.cpp" /> - <ClCompile Include="Common\Crypto\ec.cpp" /> - <ClCompile Include="Common\Crypto\HMAC.cpp" /> - <ClCompile Include="Common\Crypto\SHA1.cpp" /> - <ClCompile Include="Common\CWDemangler.cpp" /> - <ClCompile Include="Common\Debug\MemoryPatches.cpp" /> - <ClCompile Include="Common\Debug\Watches.cpp" /> - <ClCompile Include="Common\DirectIOFile.cpp" /> - <ClCompile Include="Common\DynamicLibrary.cpp" /> - <ClCompile Include="Common\ENet.cpp" /> - <ClCompile Include="Common\FatFsUtil.cpp" /> - <ClCompile Include="Common\FileSearch.cpp" /> - <ClCompile Include="Common\FilesystemWatcher.cpp" /> - <ClCompile Include="Common\FileUtil.cpp" /> - <ClCompile Include="Common\FloatUtils.cpp" /> - <ClCompile Include="Common\GekkoDisassembler.cpp" /> - <ClCompile Include="Common\GL\GLContext.cpp" /> - <ClCompile Include="Common\GL\GLExtensions\GLExtensions.cpp" /> - <ClCompile Include="Common\GL\GLInterface\WGL.cpp" /> - <ClCompile Include="Common\GL\GLUtil.cpp" /> - <ClCompile Include="Common\Hash.cpp" /> - <ClCompile Include="Common\HostDisassembler.cpp" /> - <ClCompile Include="Common\HRWrap.cpp" /> - <ClCompile Include="Common\HttpRequest.cpp" /> - <ClCompile Include="Common\Image.cpp" /> - <ClCompile Include="Common\IniFile.cpp" /> - <ClCompile Include="Common\IOFile.cpp" /> - <ClCompile Include="Common\JitRegister.cpp" /> - <ClCompile Include="Common\JsonUtil.cpp" /> - <ClCompile Include="Common\LdrWatcher.cpp" /> - <ClCompile Include="Common\Logging\ConsoleListenerWin.cpp" /> - <ClCompile Include="Common\Logging\LogManager.cpp" /> - <ClCompile Include="Common\Matrix.cpp" /> - <ClCompile Include="Common\MemArenaWin.cpp" /> - <ClCompile Include="Common\MemoryUtil.cpp" /> - <ClCompile Include="Common\MsgHandler.cpp" /> - <ClCompile Include="Common\NandPaths.cpp" /> - <ClCompile Include="Common\Network.cpp" /> - <ClCompile Include="Common\PcapFile.cpp" /> - <ClCompile Include="Common\Profiler.cpp" /> - <ClCompile Include="Common\QoSSession.cpp" /> - <ClCompile Include="Common\Random.cpp" /> - <ClCompile Include="Common\SDCardUtil.cpp" /> - <ClCompile Include="Common\SettingsHandler.cpp" /> - <ClCompile Include="Common\SFMLHelper.cpp" /> - <ClCompile Include="Common\SocketContext.cpp" /> - <ClCompile Include="Common\StringUtil.cpp" /> - <ClCompile Include="Common\SymbolDB.cpp" /> - <ClCompile Include="Common\Thread.cpp" /> - <ClCompile Include="Common\Timer.cpp" /> - <ClCompile Include="Common\TimeUtil.cpp" /> - <ClCompile Include="Common\TraversalClient.cpp" /> - <ClCompile Include="Common\UPnP.cpp" /> - <ClCompile Include="Common\WindowsDevice.cpp" /> - <ClCompile Include="Common\WindowsRegistry.cpp" /> - <ClCompile Include="Common\Version.cpp" /> - <ClCompile Include="Core\AchievementManager.cpp" /> - <ClCompile Include="Core\ActionReplay.cpp" /> - <ClCompile Include="Core\ARDecrypt.cpp" /> - <ClCompile Include="Core\Boot\Boot_BS2Emu.cpp" /> - <ClCompile Include="Core\Boot\Boot_WiiWAD.cpp" /> - <ClCompile Include="Core\Boot\Boot.cpp" /> - <ClCompile Include="Core\Boot\DolReader.cpp" /> - <ClCompile Include="Core\Boot\ElfReader.cpp" /> - <ClCompile Include="Core\BootManager.cpp" /> - <ClCompile Include="Core\CheatGeneration.cpp" /> - <ClCompile Include="Core\CheatSearch.cpp" /> - <ClCompile Include="Core\Config\AchievementSettings.cpp" /> - <ClCompile Include="Core\Config\DefaultLocale.cpp" /> - <ClCompile Include="Core\Config\FreeLookSettings.cpp" /> - <ClCompile Include="Core\Config\GraphicsSettings.cpp" /> - <ClCompile Include="Core\Config\MainSettings.cpp" /> - <ClCompile Include="Core\Config\NetplaySettings.cpp" /> - <ClCompile Include="Core\Config\SessionSettings.cpp" /> - <ClCompile Include="Core\Config\SYSCONFSettings.cpp" /> - <ClCompile Include="Core\Config\UISettings.cpp" /> - <ClCompile Include="Core\Config\WiimoteSettings.cpp" /> - <ClCompile Include="Core\ConfigLoaders\BaseConfigLoader.cpp" /> - <ClCompile Include="Core\ConfigLoaders\GameConfigLoader.cpp" /> - <ClCompile Include="Core\ConfigLoaders\IsSettingSaveable.cpp" /> - <ClCompile Include="Core\ConfigLoaders\MovieConfigLoader.cpp" /> - <ClCompile Include="Core\ConfigLoaders\NetPlayConfigLoader.cpp" /> - <ClCompile Include="Core\ConfigManager.cpp" /> - <ClCompile Include="Core\Core.cpp" /> - <ClCompile Include="Core\CoreTiming.cpp" /> - <ClCompile Include="Core\CPUThreadConfigCallback.cpp" /> - <ClCompile Include="Core\Debugger\BranchWatch.cpp" /> - <ClCompile Include="Core\Debugger\CodeTrace.cpp" /> - <ClCompile Include="Core\Debugger\Debugger_SymbolMap.cpp" /> - <ClCompile Include="Core\Debugger\Dump.cpp" /> - <ClCompile Include="Core\Debugger\OSThread.cpp" /> - <ClCompile Include="Core\Debugger\PPCDebugInterface.cpp" /> - <ClCompile Include="Core\Debugger\RSO.cpp" /> - <ClCompile Include="Core\DolphinAnalytics.cpp" /> - <ClCompile Include="Core\DSP\DSPAccelerator.cpp" /> - <ClCompile Include="Core\DSP\DSPAnalyzer.cpp" /> - <ClCompile Include="Core\DSP\DSPAssembler.cpp" /> - <ClCompile Include="Core\DSP\DSPCaptureLogger.cpp" /> - <ClCompile Include="Core\DSP\DSPCodeUtil.cpp" /> - <ClCompile Include="Core\DSP\DSPCore.cpp" /> - <ClCompile Include="Core\DSP\DSPDisassembler.cpp" /> - <ClCompile Include="Core\DSP\DSPHWInterface.cpp" /> - <ClCompile Include="Core\DSP\DSPMemoryMap.cpp" /> - <ClCompile Include="Core\DSP\DSPStacks.cpp" /> - <ClCompile Include="Core\DSP\DSPTables.cpp" /> - <ClCompile Include="Core\DSP\Interpreter\DSPIntArithmetic.cpp" /> - <ClCompile Include="Core\DSP\Interpreter\DSPIntBranch.cpp" /> - <ClCompile Include="Core\DSP\Interpreter\DSPInterpreter.cpp" /> - <ClCompile Include="Core\DSP\Interpreter\DSPIntExtOps.cpp" /> - <ClCompile Include="Core\DSP\Interpreter\DSPIntLoadStore.cpp" /> - <ClCompile Include="Core\DSP\Interpreter\DSPIntMisc.cpp" /> - <ClCompile Include="Core\DSP\Interpreter\DSPIntMultiplier.cpp" /> - <ClCompile Include="Core\DSP\Interpreter\DSPIntTables.cpp" /> - <ClCompile Include="Core\DSP\Jit\DSPEmitterBase.cpp" /> - <ClCompile Include="Core\DSP\LabelMap.cpp" /> - <ClCompile Include="Core\DSPEmulator.cpp" /> - <ClCompile Include="Core\FifoPlayer\FifoDataFile.cpp" /> - <ClCompile Include="Core\FifoPlayer\FifoPlayer.cpp" /> - <ClCompile Include="Core\FifoPlayer\FifoRecorder.cpp" /> - <ClCompile Include="Core\FreeLookManager.cpp" /> - <ClCompile Include="Core\GeckoCode.cpp" /> - <ClCompile Include="Core\GeckoCodeConfig.cpp" /> - <ClCompile Include="Core\HLE\HLE_Misc.cpp" /> - <ClCompile Include="Core\HLE\HLE_OS.cpp" /> - <ClCompile Include="Core\HLE\HLE_VarArgs.cpp" /> - <ClCompile Include="Core\HLE\HLE.cpp" /> - <ClCompile Include="Core\HotkeyManager.cpp" /> - <ClCompile Include="Core\HW\AddressSpace.cpp" /> - <ClCompile Include="Core\HW\AudioInterface.cpp" /> - <ClCompile Include="Core\HW\CPU.cpp" /> - <ClCompile Include="Core\HW\DSP.cpp" /> - <ClCompile Include="Core\HW\DSPHLE\DSPHLE.cpp" /> - <ClCompile Include="Core\HW\DSPHLE\MailHandler.cpp" /> - <ClCompile Include="Core\HW\DSPHLE\UCodes\ASnd.cpp" /> - <ClCompile Include="Core\HW\DSPHLE\UCodes\AESnd.cpp" /> - <ClCompile Include="Core\HW\DSPHLE\UCodes\AX.cpp" /> - <ClCompile Include="Core\HW\DSPHLE\UCodes\AXWii.cpp" /> - <ClCompile Include="Core\HW\DSPHLE\UCodes\CARD.cpp" /> - <ClCompile Include="Core\HW\DSPHLE\UCodes\GBA.cpp" /> - <ClCompile Include="Core\HW\DSPHLE\UCodes\INIT.cpp" /> - <ClCompile Include="Core\HW\DSPHLE\UCodes\ROM.cpp" /> - <ClCompile Include="Core\HW\DSPHLE\UCodes\UCodes.cpp" /> - <ClCompile Include="Core\HW\DSPHLE\UCodes\Zelda.cpp" /> - <ClCompile Include="Core\HW\DSPLLE\DSPHost.cpp" /> - <ClCompile Include="Core\HW\DSPLLE\DSPLLE.cpp" /> - <ClCompile Include="Core\HW\DSPLLE\DSPSymbols.cpp" /> - <ClCompile Include="Core\HW\DVD\AMMediaboard.cpp" /> - <ClCompile Include="Core\HW\DVD\DVDInterface.cpp" /> - <ClCompile Include="Core\HW\DVD\DVDMath.cpp" /> - <ClCompile Include="Core\HW\DVD\DVDThread.cpp" /> - <ClCompile Include="Core\HW\DVD\FileMonitor.cpp" /> - <ClCompile Include="Core\HW\EXI\BBA\BuiltIn.cpp" /> - <ClCompile Include="Core\HW\EXI\BBA\IPC.cpp" /> - <ClCompile Include="Core\HW\EXI\BBA\TAP_Win32.cpp" /> - <ClCompile Include="Core\HW\EXI\BBA\TAPServerConnection.cpp" /> - <ClCompile Include="Core\HW\EXI\BBA\TAPServerBBA.cpp" /> - <ClCompile Include="Core\HW\EXI\BBA\XLINK_KAI_BBA.cpp" /> - <ClCompile Include="Core\HW\EXI\Modem\TAPServerModem.cpp" /> - <ClCompile Include="Core\HW\EXI\EXI_Channel.cpp" /> - <ClCompile Include="Core\HW\EXI\EXI_Device.cpp" /> - <ClCompile Include="Core\HW\EXI\EXI_DeviceAD16.cpp" /> - <ClCompile Include="Core\HW\EXI\EXI_DeviceAGP.cpp" /> - <ClCompile Include="Core\HW\EXI\EXI_DeviceBaseboard.cpp" /> - <ClCompile Include="Core\HW\EXI\EXI_DeviceDummy.cpp" /> - <ClCompile Include="Core\HW\EXI\EXI_DeviceEthernet.cpp" /> - <ClCompile Include="Core\HW\EXI\EXI_DeviceGecko.cpp" /> - <ClCompile Include="Core\HW\EXI\EXI_DeviceIPL.cpp" /> - <ClCompile Include="Core\HW\EXI\EXI_DeviceMemoryCard.cpp" /> - <ClCompile Include="Core\HW\EXI\EXI_DeviceModem.cpp" /> - <ClCompile Include="Core\HW\EXI\EXI.cpp" /> - <ClCompile Include="Core\HW\GBACore.cpp" /> - <ClCompile Include="Core\HW\GBAPad.cpp" /> - <ClCompile Include="Core\HW\GBAPadEmu.cpp" /> - <ClCompile Include="Core\HW\GCKeyboard.cpp" /> - <ClCompile Include="Core\HW\GCKeyboardEmu.cpp" /> - <ClCompile Include="Core\HW\GCMemcard\GCIFile.cpp" /> - <ClCompile Include="Core\HW\GCMemcard\GCMemcard.cpp" /> - <ClCompile Include="Core\HW\GCMemcard\GCMemcardDirectory.cpp" /> - <ClCompile Include="Core\HW\GCMemcard\GCMemcardRaw.cpp" /> - <ClCompile Include="Core\HW\GCMemcard\GCMemcardUtils.cpp" /> - <ClCompile Include="Core\HW\GCPad.cpp" /> - <ClCompile Include="Core\HW\GCPadEmu.cpp" /> - <ClCompile Include="Core\HW\GPFifo.cpp" /> - <ClCompile Include="Core\HW\HSP\HSP.cpp" /> - <ClCompile Include="Core\HW\HSP\HSP_Device.cpp" /> - <ClCompile Include="Core\HW\HSP\HSP_DeviceARAMExpansion.cpp" /> - <ClCompile Include="Core\HW\HSP\HSP_DeviceGBPlayer.cpp" /> - <ClCompile Include="Core\HW\HSP\HSP_DeviceNull.cpp" /> - <ClCompile Include="Core\HW\HW.cpp" /> - <ClCompile Include="Core\HW\MagCard\C1231BR.cpp" /> - <ClCompile Include="Core\HW\MagCard\C1231LR.cpp" /> - <ClCompile Include="Core\HW\MagCard\MagneticCardReader.cpp" /> - <ClCompile Include="Core\HW\Memmap.cpp" /> - <ClCompile Include="Core\HW\MemoryInterface.cpp" /> - <ClCompile Include="Core\HW\MMIO.cpp" /> - <ClCompile Include="Core\HW\ProcessorInterface.cpp" /> - <ClCompile Include="Core\HW\SI\SI_Device.cpp" /> - <ClCompile Include="Core\HW\SI\SI_DeviceAMBaseboard.cpp" /> - <ClCompile Include="Core\HW\SI\SI_DeviceDanceMat.cpp" /> - <ClCompile Include="Core\HW\SI\SI_DeviceGBA.cpp" /> - <ClCompile Include="Core\HW\SI\SI_DeviceGBAEmu.cpp" /> - <ClCompile Include="Core\HW\SI\SI_DeviceGCAdapter.cpp" /> - <ClCompile Include="Core\HW\SI\SI_DeviceGCController.cpp" /> - <ClCompile Include="Core\HW\SI\SI_DeviceGCSteeringWheel.cpp" /> - <ClCompile Include="Core\HW\SI\SI_DeviceKeyboard.cpp" /> - <ClCompile Include="Core\HW\SI\SI_DeviceNull.cpp" /> - <ClCompile Include="Core\HW\SI\SI.cpp" /> - <ClCompile Include="Core\HW\Sram.cpp" /> - <ClCompile Include="Core\HW\StreamADPCM.cpp" /> - <ClCompile Include="Core\HW\SystemTimers.cpp" /> - <ClCompile Include="Core\HW\Triforce\DeckReader.cpp" /> - <ClCompile Include="Core\HW\Triforce\FZeroAX.cpp" /> - <ClCompile Include="Core\HW\Triforce\ICCardReader.cpp" /> - <ClCompile Include="Core\HW\Triforce\IOPorts.cpp" /> - <ClCompile Include="Core\HW\Triforce\JVSIO.cpp" /> - <ClCompile Include="Core\HW\Triforce\MarioKartGP.cpp" /> - <ClCompile Include="Core\HW\Triforce\SerialDevice.cpp" /> - <ClCompile Include="Core\HW\Triforce\Touchscreen.cpp" /> - <ClCompile Include="Core\HW\VideoInterface.cpp" /> - <ClCompile Include="Core\HW\WII_IPC.cpp" /> - <ClCompile Include="Core\HW\Wiimote.cpp" /> - <ClCompile Include="Core\HW\WiimoteCommon\DataReport.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\Camera.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\DesiredWiimoteState.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\Dynamics.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\EmuSubroutines.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\Encryption.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\Extension\Classic.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\Extension\DrawsomeTablet.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\Extension\Drums.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\Extension\Extension.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\Extension\Guitar.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\Extension\Nunchuk.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\Extension\Shinkansen.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\Extension\TaTaCon.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\Extension\Turntable.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\Extension\UDrawTablet.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\ExtensionPort.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\I2CBus.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\MotionPlus.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\Speaker.cpp" /> - <ClCompile Include="Core\HW\WiimoteEmu\WiimoteEmu.cpp" /> - <ClCompile Include="Core\HW\WiimoteReal\IOWin.cpp" /> - <ClCompile Include="Core\HW\WiimoteReal\WiimoteReal.cpp" /> - <ClCompile Include="Core\HW\WiiSave.cpp" /> - <ClCompile Include="Core\IOS\Crypto\Sha.cpp" /> - <ClCompile Include="Core\IOS\Crypto\AesDevice.cpp" /> - <ClCompile Include="Core\IOS\Device.cpp" /> - <ClCompile Include="Core\IOS\DeviceStub.cpp" /> - <ClCompile Include="Core\IOS\DI\DI.cpp" /> - <ClCompile Include="Core\IOS\DolphinDevice.cpp" /> - <ClCompile Include="Core\IOS\ES\ES.cpp" /> - <ClCompile Include="Core\IOS\ES\Formats.cpp" /> - <ClCompile Include="Core\IOS\ES\Identity.cpp" /> - <ClCompile Include="Core\IOS\ES\NandUtils.cpp" /> - <ClCompile Include="Core\IOS\ES\TitleContents.cpp" /> - <ClCompile Include="Core\IOS\ES\TitleInformation.cpp" /> - <ClCompile Include="Core\IOS\ES\TitleManagement.cpp" /> - <ClCompile Include="Core\IOS\ES\Views.cpp" /> - <ClCompile Include="Core\IOS\FS\FileSystemCommon.cpp" /> - <ClCompile Include="Core\IOS\FS\FileSystemProxy.cpp" /> - <ClCompile Include="Core\IOS\FS\HostBackend\File.cpp" /> - <ClCompile Include="Core\IOS\FS\HostBackend\FS.cpp" /> - <ClCompile Include="Core\IOS\IOS.cpp" /> - <ClCompile Include="Core\IOS\IOSC.cpp" /> - <ClCompile Include="Core\IOS\MIOS.cpp" /> - <ClCompile Include="Core\IOS\Network\ICMPWin.cpp" /> - <ClCompile Include="Core\IOS\Network\IP\Top.cpp" /> - <ClCompile Include="Core\IOS\Network\KD\NetKDRequest.cpp" /> - <ClCompile Include="Core\IOS\Network\KD\NetKDTime.cpp" /> - <ClCompile Include="Core\IOS\Network\KD\NWC24Config.cpp" /> - <ClCompile Include="Core\IOS\Network\KD\NWC24DL.cpp" /> - <ClCompile Include="Core\IOS\Network\KD\VFF\VFFUtil.cpp" /> - <ClCompile Include="Core\IOS\Network\KD\Mail\WC24FriendList.cpp" /> - <ClCompile Include="Core\IOS\Network\KD\Mail\WC24Send.cpp" /> - <ClCompile Include="Core\IOS\Network\MACUtils.cpp" /> - <ClCompile Include="Core\IOS\Network\NCD\Manage.cpp" /> - <ClCompile Include="Core\IOS\Network\NCD\WiiNetConfig.cpp" /> - <ClCompile Include="Core\IOS\Network\Socket.cpp" /> - <ClCompile Include="Core\IOS\Network\SSL.cpp" /> - <ClCompile Include="Core\IOS\Network\WD\Command.cpp" /> - <ClCompile Include="Core\IOS\SDIO\SDIOSlot0.cpp" /> - <ClCompile Include="Core\IOS\STM\STM.cpp" /> - <ClCompile Include="Core\IOS\USB\Bluetooth\BTBase.cpp" /> - <ClCompile Include="Core\IOS\USB\Bluetooth\BTEmu.cpp" /> - <ClCompile Include="Core\IOS\USB\Bluetooth\BTReal.cpp" /> - <ClCompile Include="Core\IOS\USB\Bluetooth\BTStub.cpp" /> - <ClCompile Include="Core\IOS\USB\Bluetooth\LibUSBBluetoothAdapter.cpp" /> - <ClCompile Include="Core\IOS\USB\Bluetooth\RealtekFirmwareLoader.cpp" /> - <ClCompile Include="Core\IOS\USB\Bluetooth\WiimoteDevice.cpp" /> - <ClCompile Include="Core\IOS\USB\Bluetooth\WiimoteHIDAttr.cpp" /> - <ClCompile Include="Core\IOS\USB\Common.cpp" /> - <ClCompile Include="Core\IOS\USB\Emulated\Infinity.cpp" /> - <ClCompile Include="Core\IOS\USB\Emulated\LogitechMic.cpp" /> - <ClCompile Include="Core\IOS\USB\Emulated\Microphone.cpp" /> - <ClCompile Include="Core\IOS\USB\Emulated\Skylanders\Skylander.cpp" /> - <ClCompile Include="Core\IOS\USB\Emulated\Skylanders\SkylanderCrypto.cpp" /> - <ClCompile Include="Core\IOS\USB\Emulated\Skylanders\SkylanderFigure.cpp" /> - <ClCompile Include="Core\IOS\USB\Emulated\WiiSpeak.cpp" /> - <ClCompile Include="Core\IOS\USB\Host.cpp" /> - <ClCompile Include="Core\IOS\USB\LibusbDevice.cpp" /> - <ClCompile Include="Core\IOS\USB\OH0\OH0.cpp" /> - <ClCompile Include="Core\IOS\USB\OH0\OH0Device.cpp" /> - <ClCompile Include="Core\IOS\USB\USB_HID\HIDv4.cpp" /> - <ClCompile Include="Core\IOS\USB\USB_HID\HIDv5.cpp" /> - <ClCompile Include="Core\IOS\USB\USB_KBD.cpp" /> - <ClCompile Include="Core\IOS\USB\USB_VEN\VEN.cpp" /> - <ClCompile Include="Core\IOS\USB\USBScanner.cpp" /> - <ClCompile Include="Core\IOS\USB\USBV0.cpp" /> - <ClCompile Include="Core\IOS\USB\USBV4.cpp" /> - <ClCompile Include="Core\IOS\USB\USBV5.cpp" /> - <ClCompile Include="Core\IOS\VersionInfo.cpp" /> - <ClCompile Include="Core\IOS\WFS\WFSI.cpp" /> - <ClCompile Include="Core\IOS\WFS\WFSSRV.cpp" /> - <ClCompile Include="Core\LibusbUtils.cpp" /> - <ClCompile Include="Core\MemTools.cpp" /> - <ClCompile Include="Core\Movie.cpp" /> - <ClCompile Include="Core\NetPlayClient.cpp" /> - <ClCompile Include="Core\NetPlayCommon.cpp" /> - <ClCompile Include="Core\NetPlayServer.cpp" /> - <ClCompile Include="Core\NetworkCaptureLogger.cpp" /> - <ClCompile Include="Core\PatchEngine.cpp" /> - <ClCompile Include="Core\PowerPC\BreakPoints.cpp" /> - <ClCompile Include="Core\PowerPC\CachedInterpreter\CachedInterpreter_Disassembler.cpp" /> - <ClCompile Include="Core\PowerPC\CachedInterpreter\CachedInterpreter.cpp" /> - <ClCompile Include="Core\PowerPC\CachedInterpreter\CachedInterpreterBlockCache.cpp" /> - <ClCompile Include="Core\PowerPC\CachedInterpreter\CachedInterpreterEmitter.cpp" /> - <ClCompile Include="Core\PowerPC\ConditionRegister.cpp" /> - <ClCompile Include="Core\PowerPC\Expression.cpp" /> - <ClCompile Include="Core\PowerPC\GDBStub.cpp" /> - <ClCompile Include="Core\PowerPC\Interpreter\Interpreter_Branch.cpp" /> - <ClCompile Include="Core\PowerPC\Interpreter\Interpreter_FloatingPoint.cpp" /> - <ClCompile Include="Core\PowerPC\Interpreter\Interpreter_Integer.cpp" /> - <ClCompile Include="Core\PowerPC\Interpreter\Interpreter_LoadStore.cpp" /> - <ClCompile Include="Core\PowerPC\Interpreter\Interpreter_LoadStorePaired.cpp" /> - <ClCompile Include="Core\PowerPC\Interpreter\Interpreter_Paired.cpp" /> - <ClCompile Include="Core\PowerPC\Interpreter\Interpreter_SystemRegisters.cpp" /> - <ClCompile Include="Core\PowerPC\Interpreter\Interpreter_Tables.cpp" /> - <ClCompile Include="Core\PowerPC\Interpreter\Interpreter.cpp" /> - <ClCompile Include="Core\PowerPC\JitCommon\ConstantPropagation.cpp" /> - <ClCompile Include="Core\PowerPC\JitCommon\DivUtils.cpp" /> - <ClCompile Include="Core\PowerPC\JitCommon\JitAsmCommon.cpp" /> - <ClCompile Include="Core\PowerPC\JitCommon\JitBase.cpp" /> - <ClCompile Include="Core\PowerPC\JitCommon\JitCache.cpp" /> - <ClCompile Include="Core\PowerPC\JitInterface.cpp" /> - <ClCompile Include="Core\PowerPC\MMU.cpp" /> - <ClCompile Include="Core\PowerPC\PowerPC.cpp" /> - <ClCompile Include="Core\PowerPC\PPCAnalyst.cpp" /> - <ClCompile Include="Core\PowerPC\PPCCache.cpp" /> - <ClCompile Include="Core\PowerPC\PPCSymbolDB.cpp" /> - <ClCompile Include="Core\PowerPC\PPCTables.cpp" /> - <ClCompile Include="Core\PowerPC\SignatureDB\CSVSignatureDB.cpp" /> - <ClCompile Include="Core\PowerPC\SignatureDB\DSYSignatureDB.cpp" /> - <ClCompile Include="Core\PowerPC\SignatureDB\MEGASignatureDB.cpp" /> - <ClCompile Include="Core\PowerPC\SignatureDB\SignatureDB.cpp" /> - <ClCompile Include="Core\State.cpp" /> - <ClCompile Include="Core\SysConf.cpp" /> - <ClCompile Include="Core\System.cpp" /> - <ClCompile Include="Core\TimePlayed.cpp" /> - <ClCompile Include="Core\TitleDatabase.cpp" /> - <ClCompile Include="Core\USBUtils.cpp" /> - <ClCompile Include="Core\WiiRoot.cpp" /> - <ClCompile Include="Core\WiiUtils.cpp" /> - <ClCompile Include="Core\WC24PatchEngine.cpp" /> - <ClCompile Include="DiscIO\Blob.cpp" /> - <ClCompile Include="DiscIO\CISOBlob.cpp" /> - <ClCompile Include="DiscIO\CachedBlob.cpp" /> - <ClCompile Include="DiscIO\CompressedBlob.cpp" /> - <ClCompile Include="DiscIO\DirectoryBlob.cpp" /> - <ClCompile Include="DiscIO\DiscExtractor.cpp" /> - <ClCompile Include="DiscIO\DiscScrubber.cpp" /> - <ClCompile Include="DiscIO\DiscUtils.cpp" /> - <ClCompile Include="DiscIO\Enums.cpp" /> - <ClCompile Include="DiscIO\FileBlob.cpp" /> - <ClCompile Include="DiscIO\Filesystem.cpp" /> - <ClCompile Include="DiscIO\FileSystemGCWii.cpp" /> - <ClCompile Include="DiscIO\GameModDescriptor.cpp" /> - <ClCompile Include="DiscIO\LaggedFibonacciGenerator.cpp" /> - <ClCompile Include="DiscIO\NANDImporter.cpp" /> - <ClCompile Include="DiscIO\NFSBlob.cpp" /> - <ClCompile Include="DiscIO\RiivolutionParser.cpp" /> - <ClCompile Include="DiscIO\RiivolutionPatcher.cpp" /> - <ClCompile Include="DiscIO\ScrubbedBlob.cpp" /> - <ClCompile Include="DiscIO\SplitFileBlob.cpp" /> - <ClCompile Include="DiscIO\TGCBlob.cpp" /> - <ClCompile Include="DiscIO\Volume.cpp" /> - <ClCompile Include="DiscIO\VolumeDisc.cpp" /> - <ClCompile Include="DiscIO\VolumeFileBlobReader.cpp" /> - <ClCompile Include="DiscIO\VolumeGC.cpp" /> - <ClCompile Include="DiscIO\VolumeVerifier.cpp" /> - <ClCompile Include="DiscIO\VolumeWad.cpp" /> - <ClCompile Include="DiscIO\VolumeWii.cpp" /> - <ClCompile Include="DiscIO\WbfsBlob.cpp" /> - <ClCompile Include="DiscIO\WIABlob.cpp" /> - <ClCompile Include="DiscIO\WIACompression.cpp" /> - <ClCompile Include="DiscIO\WiiEncryptionCache.cpp" /> - <ClCompile Include="DiscIO\WiiSaveBanner.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\Control\Control.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\Control\Input.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\Control\Output.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\AnalogStick.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\Attachments.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\Buttons.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\ControlGroup.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\Cursor.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\Force.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\IMUAccelerometer.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\IMUCursor.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\IMUGyroscope.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\IRPassthrough.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\MixedTriggers.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\ModifySettingsButton.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\Slider.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\Tilt.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControlGroup\Triggers.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\ControllerEmu.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\Setting\NumericSetting.cpp" /> - <ClCompile Include="InputCommon\ControllerEmu\StickGate.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\ControllerInterface.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\CoreDevice.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\InputBackend.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\DInput\DInput.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\DInput\DInputJoystick.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\DInput\DInputKeyboardMouse.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\DInput\XInputFilter.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\DualShockUDPClient\DualShockUDPClient.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\ForceFeedback\ForceFeedbackDevice.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\MappingCommon.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\WGInput\WGInput.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\Wiimote\WiimoteController.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\Win32\Win32.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\XInput\XInput.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\SDL\SDL.cpp" /> - <ClCompile Include="InputCommon\ControllerInterface\SDL\SDLGamepad.cpp" /> - <ClCompile Include="InputCommon\ControlReference\ControlReference.cpp" /> - <ClCompile Include="InputCommon\ControlReference\ExpressionParser.cpp" /> - <ClCompile Include="InputCommon\ControlReference\FunctionExpression.cpp" /> - <ClCompile Include="InputCommon\DynamicInputTextures\DITConfiguration.cpp" /> - <ClCompile Include="InputCommon\DynamicInputTextures\DITSpecification.cpp" /> - <ClCompile Include="InputCommon\DynamicInputTextureManager.cpp" /> - <ClCompile Include="InputCommon\GCAdapter.cpp" /> - <ClCompile Include="InputCommon\ImageOperations.cpp" /> - <ClCompile Include="InputCommon\InputConfig.cpp" /> - <ClCompile Include="InputCommon\InputProfile.cpp" /> - <ClCompile Include="UICommon\AutoUpdate.cpp" /> - <ClCompile Include="UICommon\CommandLineParse.cpp" /> - <ClCompile Include="UICommon\DiscordPresence.cpp" /> - <ClCompile Include="UICommon\GameFile.cpp" /> - <ClCompile Include="UICommon\GameFileCache.cpp" /> - <ClCompile Include="UICommon\NetPlayIndex.cpp" /> - <ClCompile Include="UICommon\ResourcePack\Manager.cpp" /> - <ClCompile Include="UICommon\ResourcePack\Manifest.cpp" /> - <ClCompile Include="UICommon\ResourcePack\ResourcePack.cpp" /> - <ClCompile Include="UICommon\UICommon.cpp" /> - <ClCompile Include="UpdaterCommon\UpdaterCommon.cpp" /> - <ClCompile Include="VideoBackends\D3D\D3DBase.cpp" /> - <ClCompile Include="VideoBackends\D3D\D3DBoundingBox.cpp" /> - <ClCompile Include="VideoBackends\D3D\D3DMain.cpp" /> - <ClCompile Include="VideoBackends\D3D\D3DNativeVertexFormat.cpp" /> - <ClCompile Include="VideoBackends\D3D\D3DPerfQuery.cpp" /> - <ClCompile Include="VideoBackends\D3D\D3DGfx.cpp" /> - <ClCompile Include="VideoBackends\D3D\D3DState.cpp" /> - <ClCompile Include="VideoBackends\D3D\D3DSwapChain.cpp" /> - <ClCompile Include="VideoBackends\D3D\D3DVertexManager.cpp" /> - <ClCompile Include="VideoBackends\D3D\DXPipeline.cpp" /> - <ClCompile Include="VideoBackends\D3D\DXShader.cpp" /> - <ClCompile Include="VideoBackends\D3D\DXTexture.cpp" /> - <ClCompile Include="VideoBackends\D3D12\D3D12BoundingBox.cpp" /> - <ClCompile Include="VideoBackends\D3D12\D3D12PerfQuery.cpp" /> - <ClCompile Include="VideoBackends\D3D12\D3D12Gfx.cpp" /> - <ClCompile Include="VideoBackends\D3D12\D3D12StreamBuffer.cpp" /> - <ClCompile Include="VideoBackends\D3D12\D3D12SwapChain.cpp" /> - <ClCompile Include="VideoBackends\D3D12\D3D12VertexManager.cpp" /> - <ClCompile Include="VideoBackends\D3D12\DescriptorAllocator.cpp" /> - <ClCompile Include="VideoBackends\D3D12\DescriptorHeapManager.cpp" /> - <ClCompile Include="VideoBackends\D3D12\DX12Context.cpp" /> - <ClCompile Include="VideoBackends\D3D12\DX12Pipeline.cpp" /> - <ClCompile Include="VideoBackends\D3D12\DX12Shader.cpp" /> - <ClCompile Include="VideoBackends\D3D12\DX12Texture.cpp" /> - <ClCompile Include="VideoBackends\D3D12\DX12VertexFormat.cpp" /> - <ClCompile Include="VideoBackends\D3D12\VideoBackend.cpp" /> - <ClCompile Include="VideoBackends\D3DCommon\D3DCommon.cpp" /> - <ClCompile Include="VideoBackends\D3DCommon\Shader.cpp" /> - <ClCompile Include="VideoBackends\D3DCommon\SwapChain.cpp" /> - <ClCompile Include="VideoBackends\Null\NullBackend.cpp" /> - <ClCompile Include="VideoBackends\Null\NullGfx.cpp" /> - <ClCompile Include="VideoBackends\Null\NullTexture.cpp" /> - <ClCompile Include="VideoBackends\Null\NullVertexManager.cpp" /> - <ClCompile Include="VideoBackends\OGL\OGLBoundingBox.cpp" /> - <ClCompile Include="VideoBackends\OGL\OGLConfig.cpp" /> - <ClCompile Include="VideoBackends\OGL\OGLGfx.cpp" /> - <ClCompile Include="VideoBackends\OGL\OGLMain.cpp" /> - <ClCompile Include="VideoBackends\OGL\OGLNativeVertexFormat.cpp" /> - <ClCompile Include="VideoBackends\OGL\OGLPerfQuery.cpp" /> - <ClCompile Include="VideoBackends\OGL\OGLPipeline.cpp" /> - <ClCompile Include="VideoBackends\OGL\OGLShader.cpp" /> - <ClCompile Include="VideoBackends\OGL\OGLStreamBuffer.cpp" /> - <ClCompile Include="VideoBackends\OGL\OGLTexture.cpp" /> - <ClCompile Include="VideoBackends\OGL\OGLVertexManager.cpp" /> - <ClCompile Include="VideoBackends\OGL\ProgramShaderCache.cpp" /> - <ClCompile Include="VideoBackends\OGL\SamplerCache.cpp" /> - <ClCompile Include="VideoBackends\Software\Clipper.cpp" /> - <ClCompile Include="VideoBackends\Software\EfbCopy.cpp" /> - <ClCompile Include="VideoBackends\Software\Rasterizer.cpp" /> - <ClCompile Include="VideoBackends\Software\SetupUnit.cpp" /> - <ClCompile Include="VideoBackends\Software\SWmain.cpp" /> - <ClCompile Include="VideoBackends\Software\SWBoundingBox.cpp" /> - <ClCompile Include="VideoBackends\Software\SWEfbInterface.cpp" /> - <ClCompile Include="VideoBackends\Software\SWGfx.cpp" /> - <ClCompile Include="VideoBackends\Software\SWOGLWindow.cpp" /> - <ClCompile Include="VideoBackends\Software\SWTexture.cpp" /> - <ClCompile Include="VideoBackends\Software\SWVertexLoader.cpp" /> - <ClCompile Include="VideoBackends\Software\Tev.cpp" /> - <ClCompile Include="VideoBackends\Software\TextureEncoder.cpp" /> - <ClCompile Include="VideoBackends\Software\TextureSampler.cpp" /> - <ClCompile Include="VideoBackends\Software\TransformUnit.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\CommandBufferManager.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\ObjectCache.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\ShaderCompiler.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\StagingBuffer.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\StateTracker.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\VKBoundingBox.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\VKMain.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\VKPerfQuery.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\VKPipeline.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\VKGfx.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\VKShader.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\VKStreamBuffer.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\VKSwapChain.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\VKTexture.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\VKVertexFormat.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\VKVertexManager.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\VulkanContext.cpp" /> - <ClCompile Include="VideoBackends\Vulkan\VulkanLoader.cpp" /> - <ClCompile Include="VideoCommon\AbstractFramebuffer.cpp" /> - <ClCompile Include="VideoCommon\AbstractGfx.cpp" /> - <ClCompile Include="VideoCommon\AbstractStagingTexture.cpp" /> - <ClCompile Include="VideoCommon\AbstractTexture.cpp" /> - <ClCompile Include="VideoCommon\Assets\CustomAsset.cpp" /> - <ClCompile Include="VideoCommon\Assets\CustomAssetCache.cpp" /> - <ClCompile Include="VideoCommon\Assets\CustomAssetLoader.cpp" /> - <ClCompile Include="VideoCommon\Assets\CustomTextureData.cpp" /> - <ClCompile Include="VideoCommon\Assets\DirectFilesystemAssetLibrary.cpp" /> - <ClCompile Include="VideoCommon\Assets\MaterialAsset.cpp" /> - <ClCompile Include="VideoCommon\Assets\MeshAsset.cpp" /> - <ClCompile Include="VideoCommon\Assets\ShaderAsset.cpp" /> - <ClCompile Include="VideoCommon\Assets\TextureAsset.cpp" /> - <ClCompile Include="VideoCommon\Assets\TextureAssetUtils.cpp" /> - <ClCompile Include="VideoCommon\Assets\TextureSamplerValue.cpp" /> - <ClCompile Include="VideoCommon\AsyncRequests.cpp" /> - <ClCompile Include="VideoCommon\AsyncShaderCompiler.cpp" /> - <ClCompile Include="VideoCommon\BoundingBox.cpp" /> - <ClCompile Include="VideoCommon\BPFunctions.cpp" /> - <ClCompile Include="VideoCommon\BPMemory.cpp" /> - <ClCompile Include="VideoCommon\BPStructs.cpp" /> - <ClCompile Include="VideoCommon\CommandProcessor.cpp" /> - <ClCompile Include="VideoCommon\CPMemory.cpp" /> - <ClCompile Include="VideoCommon\CPUCull.cpp" /> - <ClCompile Include="VideoCommon\DriverDetails.cpp" /> - <ClCompile Include="VideoCommon\EFBInterface.cpp" /> - <ClCompile Include="VideoCommon\Fifo.cpp" /> - <ClCompile Include="VideoCommon\FramebufferManager.cpp" /> - <ClCompile Include="VideoCommon\FramebufferShaderGen.cpp" /> - <ClCompile Include="VideoCommon\FrameDumpFFMpeg.cpp" /> - <ClCompile Include="VideoCommon\FrameDumper.cpp" /> - <ClCompile Include="VideoCommon\FreeLookCamera.cpp" /> - <ClCompile Include="VideoCommon\GeometryShaderGen.cpp" /> - <ClCompile Include="VideoCommon\GeometryShaderManager.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Config\GraphicsMod.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Config\GraphicsModAsset.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Config\GraphicsModFeature.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Config\GraphicsModGroup.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Config\GraphicsTarget.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Config\GraphicsTargetGroup.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Runtime\Actions\CustomPipelineAction.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Runtime\Actions\MoveAction.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Runtime\Actions\PrintAction.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Runtime\Actions\ScaleAction.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Runtime\Actions\SkipAction.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Runtime\CustomPipeline.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Runtime\CustomShaderCache.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Runtime\FBInfo.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Runtime\GraphicsModActionFactory.cpp" /> - <ClCompile Include="VideoCommon\GraphicsModSystem\Runtime\GraphicsModManager.cpp" /> - <ClCompile Include="VideoCommon\HiresTextures.cpp" /> - <ClCompile Include="VideoCommon\IndexGenerator.cpp" /> - <ClCompile Include="VideoCommon\LightingShaderGen.cpp" /> - <ClCompile Include="VideoCommon\NetPlayChatUI.cpp" /> - <ClCompile Include="VideoCommon\NetPlayGolfUI.cpp" /> - <ClCompile Include="VideoCommon\OnScreenDisplay.cpp" /> - <ClCompile Include="VideoCommon\OnScreenUI.cpp" /> - <ClCompile Include="VideoCommon\OpcodeDecoding.cpp" /> - <ClCompile Include="VideoCommon\PerfQueryBase.cpp" /> - <ClCompile Include="VideoCommon\PerformanceMetrics.cpp" /> - <ClCompile Include="VideoCommon\PerformanceTracker.cpp" /> - <ClCompile Include="VideoCommon\PipelineUtils.cpp" /> - <ClCompile Include="VideoCommon\PixelEngine.cpp" /> - <ClCompile Include="VideoCommon\PixelShaderGen.cpp" /> - <ClCompile Include="VideoCommon\PixelShaderManager.cpp" /> - <ClCompile Include="VideoCommon\PostProcessing.cpp" /> - <ClCompile Include="VideoCommon\Present.cpp" /> - <ClCompile Include="VideoCommon\RenderState.cpp" /> - <ClCompile Include="VideoCommon\Resources\CustomResourceManager.cpp" /> - <ClCompile Include="VideoCommon\Resources\InvalidTextures.cpp" /> - <ClCompile Include="VideoCommon\Resources\MaterialResource.cpp" /> - <ClCompile Include="VideoCommon\Resources\Resource.cpp" /> - <ClCompile Include="VideoCommon\Resources\ShaderResource.cpp" /> - <ClCompile Include="VideoCommon\Resources\TextureAndSamplerResource.cpp" /> - <ClCompile Include="VideoCommon\Resources\TextureDataResource.cpp" /> - <ClCompile Include="VideoCommon\Resources\TexturePool.cpp" /> - <ClCompile Include="VideoCommon\ShaderCache.cpp" /> - <ClCompile Include="VideoCommon\ShaderCompileUtils.cpp" /> - <ClCompile Include="VideoCommon\ShaderGenCommon.cpp" /> - <ClCompile Include="VideoCommon\Spirv.cpp" /> - <ClCompile Include="VideoCommon\Statistics.cpp" /> - <ClCompile Include="VideoCommon\TextureCacheBase.cpp" /> - <ClCompile Include="VideoCommon\TextureConfig.cpp" /> - <ClCompile Include="VideoCommon\TextureConversionShader.cpp" /> - <ClCompile Include="VideoCommon\TextureConverterShaderGen.cpp" /> - <ClCompile Include="VideoCommon\TextureDecoder_Common.cpp" /> - <ClCompile Include="VideoCommon\TextureInfo.cpp" /> - <ClCompile Include="VideoCommon\TextureUtils.cpp" /> - <ClCompile Include="VideoCommon\TMEM.cpp" /> - <ClCompile Include="VideoCommon\UberShaderCommon.cpp" /> - <ClCompile Include="VideoCommon\UberShaderPixel.cpp" /> - <ClCompile Include="VideoCommon\UberShaderVertex.cpp" /> - <ClCompile Include="VideoCommon\VertexLoader_Color.cpp" /> - <ClCompile Include="VideoCommon\VertexLoader_Normal.cpp" /> - <ClCompile Include="VideoCommon\VertexLoader_Position.cpp" /> - <ClCompile Include="VideoCommon\VertexLoader_TextCoord.cpp" /> - <ClCompile Include="VideoCommon\VertexLoader.cpp" /> - <ClCompile Include="VideoCommon\VertexLoaderBase.cpp" /> - <ClCompile Include="VideoCommon\VertexLoaderManager.cpp" /> - <ClCompile Include="VideoCommon\VertexManagerBase.cpp" /> - <ClCompile Include="VideoCommon\VertexShaderGen.cpp" /> - <ClCompile Include="VideoCommon\VertexShaderManager.cpp" /> - <ClCompile Include="VideoCommon\VideoBackendBase.cpp" /> - <ClCompile Include="VideoCommon\VideoConfig.cpp" /> - <ClCompile Include="VideoCommon\VideoState.cpp" /> - <ClCompile Include="VideoCommon\Widescreen.cpp" /> - <ClCompile Include="VideoCommon\XFMemory.cpp" /> - <ClCompile Include="VideoCommon\XFStateManager.cpp" /> - <ClCompile Include="VideoCommon\XFStructs.cpp" /> - </ItemGroup> - <ItemGroup> - <Natvis Include="Common\BitField.natvis" /> - <Natvis Include="Common\EnumMap.natvis" /> - </ItemGroup> -</Project> diff --git a/Source/Core/DolphinLib.vcxproj b/Source/Core/DolphinLib.vcxproj deleted file mode 100644 index 104b2d86ed..0000000000 --- a/Source/Core/DolphinLib.vcxproj +++ /dev/null @@ -1,101 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <Import Project="..\VSProps\Base.Macros.props" /> - <Import Project="$(VSPropsDir)Base.Targets.props" /> - <PropertyGroup Label="Globals"> - <ProjectGuid>{d79392f7-06d6-4b4b-a39f-4d587c215d3a}</ProjectGuid> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <Import Project="$(VSPropsDir)Configuration.StaticLibrary.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings" /> - <ImportGroup Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="$(VSPropsDir)Base.props" /> - <Import Project="$(VSPropsDir)Base.Dolphin.props" /> - <Import Project="$(VSPropsDir)PCHUse.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <Import Project="DolphinLib.props" /> - <ImportGroup Condition="'$(Platform)'=='x64'"> - <Import Project="DolphinLib.x64.props" /> - </ImportGroup> - <ImportGroup Condition="'$(Platform)'=='ARM64'"> - <Import Project="DolphinLib.ARM64.props" /> - </ImportGroup> - <ItemGroup> - <ProjectReference Include="$(CoreDir)Common\SCMRevGen.vcxproj"> - <Project>{41279555-f94f-4ebc-99de-af863c10c5c4}</Project> - </ProjectReference> - </ItemGroup> - <Import Project="$(ExternalsDir)Bochs_disasm\exports.props" /> - <Import Project="$(ExternalsDir)bzip2\exports.props" /> - <Import Project="$(ExternalsDir)cpp-ipc\exports.props" /> - <Import Project="$(ExternalsDir)cpp-optparse\exports.props" /> - <Import Project="$(ExternalsDir)cubeb\exports.props" /> - <Import Project="$(ExternalsDir)curl\exports.props" /> - <Import Project="$(ExternalsDir)discord-rpc\exports.props" /> - <Import Project="$(ExternalsDir)ed25519\exports.props" /> - <Import Project="$(ExternalsDir)enet\exports.props" /> - <Import Project="$(ExternalsDir)FatFs\exports.props" /> - <Import Project="$(ExternalsDir)fmt\exports.props" /> - <Import Project="$(ExternalsDir)FreeSurround\exports.props" /> - <Import Project="$(ExternalsDir)glslang\exports.props" /> - <Import Project="$(ExternalsDir)imgui\exports.props" /> - <Import Project="$(ExternalsDir)implot\exports.props" /> - <Import Project="$(ExternalsDir)liblzma\exports.props" /> - <Import Project="$(ExternalsDir)libspng\exports.props" /> - <Import Project="$(ExternalsDir)libusb\exports.props" /> - <Import Project="$(ExternalsDir)LZO\exports.props" /> - <Import Project="$(ExternalsDir)LZ4\exports.props" /> - <Import Project="$(ExternalsDir)mbedtls\exports.props" /> - <Import Project="$(ExternalsDir)mGBA\exports.props" /> - <Import Project="$(ExternalsDir)miniupnpc\exports.props" /> - <Import Project="$(ExternalsDir)minizip-ng\exports.props" /> - <Import Project="$(ExternalsDir)picojson\exports.props" /> - <Import Project="$(ExternalsDir)pugixml\exports.props" /> - <Import Project="$(ExternalsDir)rcheevos\exports.props" /> - <Import Project="$(ExternalsDir)SDL\exports.props" /> - <Import Project="$(ExternalsDir)SFML\exports.props" /> - <Import Project="$(ExternalsDir)spirv_cross\exports.props" /> - <Import Project="$(ExternalsDir)tinygltf\exports.props" /> - <Import Project="$(ExternalsDir)xxhash\exports.props" /> - <Import Project="$(ExternalsDir)zlib-ng\exports.props" /> - <Import Project="$(ExternalsDir)zstd\exports.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets" /> - <PropertyGroup> - <BuildInfoTemplate>Common\build_info.txt.in</BuildInfoTemplate> - <BuildInfoOutput>$(BinaryOutputDir)build_info.txt</BuildInfoOutput> - </PropertyGroup> - <ItemGroup> - <Text Include="$(BuildInfoTemplate)" /> - </ItemGroup> - <UsingTask TaskName="GetProductVersion" - TaskFactory="CodeTaskFactory" - AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.Core.dll"> - <ParameterGroup> - <Path ParameterType="System.String" Required="true" /> - <ProductVersion ParameterType="System.String" Output="true" /> - </ParameterGroup> - <Task> - <Using Namespace="System.Diagnostics"/> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - ProductVersion = FileVersionInfo.GetVersionInfo(Path).ProductVersion; - ]]> - </Code> - </Task> - </UsingTask> - <Target Name="WriteBuildInfo" AfterTargets="Build" Inputs="$(BuildInfoTemplate)" Outputs="$(BuildInfoOutput)"> - <GetProductVersion Path="$(VCToolsRedistInstallDir)vc_redist.x64.exe"> - <Output PropertyName="VCToolsProductVersion" TaskParameter="ProductVersion" /> - </GetProductVersion> - <Message Text="VCToolsProductVersion $(VCToolsProductVersion)" Importance="High" /> - <WriteLinesToFile - File="$(BuildInfoOutput)" - Lines="$([System.IO.File]::ReadAllText($(BuildInfoTemplate)).Replace('${VC_TOOLS_VERSION}', $(VCToolsProductVersion)))" - Overwrite="true" - /> - </Target> -</Project>
\ No newline at end of file diff --git a/Source/Core/DolphinLib.vcxproj.user b/Source/Core/DolphinLib.vcxproj.user deleted file mode 100644 index 0f3d711228..0000000000 --- a/Source/Core/DolphinLib.vcxproj.user +++ /dev/null @@ -1,6 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <PropertyGroup> - <ShowAllFiles>true</ShowAllFiles> - </PropertyGroup> -</Project>
\ No newline at end of file diff --git a/Source/Core/DolphinLib.x64.props b/Source/Core/DolphinLib.x64.props deleted file mode 100644 index fc9bb3fa65..0000000000 --- a/Source/Core/DolphinLib.x64.props +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <ItemGroup> - <ClInclude Include="Common\x64ABI.h" /> - <ClInclude Include="Common\x64Emitter.h" /> - <ClInclude Include="Common\x64Reg.h" /> - <ClInclude Include="Core\DSP\Jit\x64\DSPEmitter.h" /> - <ClInclude Include="Core\DSP\Jit\x64\DSPJitRegCache.h" /> - <ClInclude Include="Core\DSP\Jit\x64\DSPJitTables.h" /> - <ClInclude Include="Core\PowerPC\Jit64\Jit.h" /> - <ClInclude Include="Core\PowerPC\Jit64\JitAsm.h" /> - <ClInclude Include="Core\PowerPC\Jit64\RegCache\CachedReg.h" /> - <ClInclude Include="Core\PowerPC\Jit64\RegCache\FPURegCache.h" /> - <ClInclude Include="Core\PowerPC\Jit64\RegCache\GPRRegCache.h" /> - <ClInclude Include="Core\PowerPC\Jit64\RegCache\JitRegCache.h" /> - <ClInclude Include="Core\PowerPC\Jit64\RegCache\RCMode.h" /> - <ClInclude Include="Core\PowerPC\Jit64Common\BlockCache.h" /> - <ClInclude Include="Core\PowerPC\Jit64Common\ConstantPool.h" /> - <ClInclude Include="Core\PowerPC\Jit64Common\EmuCodeBlock.h" /> - <ClInclude Include="Core\PowerPC\Jit64Common\FarCodeCache.h" /> - <ClInclude Include="Core\PowerPC\Jit64Common\Jit64AsmCommon.h" /> - <ClInclude Include="Core\PowerPC\Jit64Common\Jit64Constants.h" /> - <ClInclude Include="Core\PowerPC\Jit64Common\Jit64PowerPCState.h" /> - <ClInclude Include="Core\PowerPC\Jit64Common\TrampolineCache.h" /> - <ClInclude Include="Core\PowerPC\Jit64Common\TrampolineInfo.h" /> - <ClInclude Include="VideoCommon\VertexLoaderX64.h" /> - </ItemGroup> - <ItemGroup> - <ClCompile Include="Common\x64ABI.cpp" /> - <ClCompile Include="Common\x64CPUDetect.cpp" /> - <ClCompile Include="Common\x64Emitter.cpp" /> - <ClCompile Include="Common\x64FPURoundMode.cpp" /> - <ClCompile Include="Core\DSP\Jit\x64\DSPEmitter.cpp" /> - <ClCompile Include="Core\DSP\Jit\x64\DSPJitArithmetic.cpp" /> - <ClCompile Include="Core\DSP\Jit\x64\DSPJitBranch.cpp" /> - <ClCompile Include="Core\DSP\Jit\x64\DSPJitCCUtil.cpp" /> - <ClCompile Include="Core\DSP\Jit\x64\DSPJitExtOps.cpp" /> - <ClCompile Include="Core\DSP\Jit\x64\DSPJitLoadStore.cpp" /> - <ClCompile Include="Core\DSP\Jit\x64\DSPJitMisc.cpp" /> - <ClCompile Include="Core\DSP\Jit\x64\DSPJitMultiplier.cpp" /> - <ClCompile Include="Core\DSP\Jit\x64\DSPJitRegCache.cpp" /> - <ClCompile Include="Core\DSP\Jit\x64\DSPJitTables.cpp" /> - <ClCompile Include="Core\DSP\Jit\x64\DSPJitUtil.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64\Jit_Branch.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64\Jit_FloatingPoint.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64\Jit_Integer.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64\Jit_LoadStore.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64\Jit_LoadStoreFloating.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64\Jit_LoadStorePaired.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64\Jit_Paired.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64\Jit_SystemRegisters.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64\Jit.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64\Jit64_Tables.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64\JitAsm.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64\RegCache\FPURegCache.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64\RegCache\GPRRegCache.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64\RegCache\JitRegCache.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64Common\BlockCache.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64Common\ConstantPool.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64Common\EmuCodeBlock.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64Common\FarCodeCache.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64Common\Jit64AsmCommon.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64Common\TrampolineCache.cpp" /> - <ClCompile Include="VideoCommon\TextureDecoder_x64.cpp" /> - <ClCompile Include="VideoCommon\VertexLoaderX64.cpp" /> - </ItemGroup> -</Project>
\ No newline at end of file diff --git a/Source/Core/DolphinNoGUI/CMakeLists.txt b/Source/Core/DolphinNoGUI/CMakeLists.txt index 9dad1b5f86..51c3fff708 100644 --- a/Source/Core/DolphinNoGUI/CMakeLists.txt +++ b/Source/Core/DolphinNoGUI/CMakeLists.txt @@ -65,5 +65,6 @@ if(USE_DISCORD_PRESENCE) endif() set(CPACK_PACKAGE_EXECUTABLES ${CPACK_PACKAGE_EXECUTABLES} dolphin-nogui) -install(TARGETS dolphin-nogui RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) - +if (NOT WIN32) + install(TARGETS dolphin-nogui RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) +endif() diff --git a/Source/Core/DolphinNoGUI/DolphinNoGUI.vcxproj b/Source/Core/DolphinNoGUI/DolphinNoGUI.vcxproj deleted file mode 100644 index 7c11dac0dd..0000000000 --- a/Source/Core/DolphinNoGUI/DolphinNoGUI.vcxproj +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <Import Project="..\..\VSProps\Base.Macros.props" /> - <Import Project="$(VSPropsDir)Base.Targets.props" /> - <PropertyGroup Label="Globals"> - <ProjectGuid>{974E563D-23F8-4E8F-9083-F62876B04E08}</ProjectGuid> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <Import Project="$(VSPropsDir)Configuration.Application.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings" /> - <ImportGroup Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="$(VSPropsDir)Base.props" /> - <Import Project="$(VSPropsDir)Base.Dolphin.props" /> - <Import Project="$(VSPropsDir)PCHUse.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <ItemDefinitionGroup> - <Link> - <SubSystem>Console</SubSystem> - </Link> - </ItemDefinitionGroup> - <ItemGroup> - <ProjectReference Include="$(CoreDir)DolphinLib.vcxproj"> - <Project>{D79392F7-06D6-4B4B-A39F-4D587C215D3A}</Project> - </ProjectReference> - <ProjectReference Include="$(CoreDir)Common\SCMRevGen.vcxproj"> - <Project>{41279555-f94f-4ebc-99de-af863c10c5c4}</Project> - </ProjectReference> - <ProjectReference Include="$(DolphinRootDir)Languages\Languages.vcxproj"> - <Project>{0e033be3-2e08-428e-9ae9-bc673efa12b5}</Project> - </ProjectReference> - </ItemGroup> - <Import Project="$(ExternalsDir)cpp-optparse\exports.props" /> - <Import Project="$(ExternalsDir)fmt\exports.props" /> - <Import Project="$(ExternalsDir)glslang\exports.props" /> - <ItemGroup> - <ClCompile Include="MainNoGUI.cpp" /> - <ClCompile Include="Platform.cpp" /> - <ClCompile Include="PlatformHeadless.cpp" /> - <ClCompile Include="PlatformWin32.cpp" /> - </ItemGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets"> - </ImportGroup> - <!--Copy the .exe to binary output folder--> - <ItemGroup> - <SourceFiles Include="$(TargetPath)" /> - </ItemGroup> - <ItemGroup> - <ClInclude Include="Platform.h" /> - </ItemGroup> - <ItemGroup> - <Manifest Include="DolphinNoGUI.exe.manifest" /> - </ItemGroup> - <ItemGroup> - <Text Include="CMakeLists.txt" /> - </ItemGroup> - <ItemGroup> - <ResourceCompile Include="DolphinNoGUI.rc" /> - </ItemGroup> - <Target Name="AfterBuild" Inputs="@(SourceFiles)" Outputs="@(SourceFiles -> '$(BinaryOutputDir)%(Filename)%(Extension)')"> - <Message Text="Copy: @(SourceFiles) -> $(BinaryOutputDir)" Importance="High" /> - <Copy SourceFiles="@(SourceFiles)" DestinationFolder="$(BinaryOutputDir)" /> - </Target> -</Project> diff --git a/Source/Core/DolphinNoGUI/DolphinNoGUI.vcxproj.filters b/Source/Core/DolphinNoGUI/DolphinNoGUI.vcxproj.filters deleted file mode 100644 index 91e0dceb56..0000000000 --- a/Source/Core/DolphinNoGUI/DolphinNoGUI.vcxproj.filters +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <ItemGroup> - <ClCompile Include="Platform.cpp" /> - <ClCompile Include="PlatformHeadless.cpp" /> - <ClCompile Include="MainNoGUI.cpp" /> - <ClCompile Include="PlatformWin32.cpp" /> - </ItemGroup> - <ItemGroup> - <ClInclude Include="Platform.h" /> - </ItemGroup> - <ItemGroup> - <Manifest Include="DolphinNoGUI.exe.manifest" /> - </ItemGroup> - <ItemGroup> - <Text Include="CMakeLists.txt" /> - </ItemGroup> - <ItemGroup> - <ResourceCompile Include="DolphinNoGUI.rc" /> - </ItemGroup> -</Project>
\ No newline at end of file diff --git a/Source/Core/DolphinQt/CMakeLists.txt b/Source/Core/DolphinQt/CMakeLists.txt index f4ba46d2f9..2e02eda5c3 100644 --- a/Source/Core/DolphinQt/CMakeLists.txt +++ b/Source/Core/DolphinQt/CMakeLists.txt @@ -495,43 +495,58 @@ if (MSVC) target_compile_options(dolphin-emu PRIVATE "/GR") endif() -if(WIN32) - target_sources(dolphin-emu PRIVATE DolphinQt.manifest DolphinQt.rc) - - set_target_properties(dolphin-emu PROPERTIES - DEBUG_POSTFIX D - OUTPUT_NAME Dolphin - WIN32_EXECUTABLE TRUE - ) - - # Copy Sys dir +if (NOT APPLE AND NOT ANDROID) + # Symlink Sys add_custom_command(TARGET dolphin-emu POST_BUILD - COMMAND ${CMAKE_COMMAND} -E remove_directory "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Sys" - COMMAND ${CMAKE_COMMAND} -E copy_directory "${CMAKE_SOURCE_DIR}/Data/Sys" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Sys" + COMMAND ${CMAKE_COMMAND} + -Dtarget="${CMAKE_SOURCE_DIR}/Data/Sys" + -Dlink="${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Sys" + -P="${CMAKE_SOURCE_DIR}/CMake/DolphinSymlinkOrCopy.cmake" ) - # Copy COPYING + # Symlink COPYING add_custom_command(TARGET dolphin-emu POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_SOURCE_DIR}/COPYING" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/COPYING" + COMMAND ${CMAKE_COMMAND} + -Dtarget="${CMAKE_SOURCE_DIR}/COPYING" + -Dlink="${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/COPYING" + -P="${CMAKE_SOURCE_DIR}/CMake/DolphinSymlinkOrCopy.cmake" ) - # Copy Licenses dir + # Symlink Licenses dir add_custom_command(TARGET dolphin-emu POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy_directory "${CMAKE_SOURCE_DIR}/LICENSES" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Licenses" + COMMAND ${CMAKE_COMMAND} + -Dtarget="${CMAKE_SOURCE_DIR}/LICENSES" + -Dlink="${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Licenses" + -P="${CMAKE_SOURCE_DIR}/CMake/DolphinSymlinkOrCopy.cmake" ) - - # Copy qt.conf +endif() +if (WIN32) + # Symlink qt.conf add_custom_command(TARGET dolphin-emu POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/qt.conf.win" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qt.conf" + COMMAND ${CMAKE_COMMAND} + -Dtarget="${CMAKE_CURRENT_SOURCE_DIR}/qt.conf.win" + -Dlink="${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/qt.conf" + -P="${CMAKE_SOURCE_DIR}/CMake/DolphinSymlinkOrCopy.cmake" ) if (ENABLE_AUTOUPDATE) - # Copy build_info.txt + # Symlink build_info.txt add_custom_command(TARGET dolphin-emu POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_BINARY_DIR}/build_info.txt" "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/build_info.txt" + COMMAND ${CMAKE_COMMAND} + -Dtarget="${CMAKE_BINARY_DIR}/build_info.txt" + -Dlink="${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/build_info.txt" + -P="${CMAKE_SOURCE_DIR}/CMake/DolphinSymlinkOrCopy.cmake" ) endif() + + target_sources(dolphin-emu PRIVATE DolphinQt.manifest DolphinQt.rc) + + set_target_properties(dolphin-emu PROPERTIES + DEBUG_POSTFIX D + OUTPUT_NAME Dolphin + WIN32_EXECUTABLE TRUE + ) # Delegate to Qt's official deployment binary on Windows to copy over the necessary Qt-specific libraries, etc. get_target_property(MOC_EXECUTABLE_LOCATION Qt6::moc IMPORTED_LOCATION) get_filename_component(QT_BINARY_DIRECTORY "${MOC_EXECUTABLE_LOCATION}" DIRECTORY) @@ -582,13 +597,9 @@ if(GETTEXT_MSGFMT_EXECUTABLE) foreach(po ${LINGUAS}) get_filename_component(lang ${po} NAME_WE) - if(WIN32) - set(mo_dir ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Languages) - set(mo ${mo_dir}/${lang}.mo) - else() - set(mo_dir ${CMAKE_CURRENT_BINARY_DIR}/${lang}) - set(mo ${mo_dir}/dolphin-emu.mo) - endif() + + set(mo_dir ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Languages/${lang}) + set(mo ${mo_dir}/dolphin-emu.mo) target_sources(dolphin-emu PRIVATE ${mo}) source_group("Localization\\\\Generated" FILES ${mo}) @@ -599,20 +610,11 @@ if(GETTEXT_MSGFMT_EXECUTABLE) install(FILES ${mo} DESTINATION share/locale/${lang}/LC_MESSAGES) endif() - if(WIN32) - add_custom_command(OUTPUT ${mo} - COMMAND ${CMAKE_COMMAND} -E make_directory ${mo_dir} - COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${mo} ${po} - DEPENDS ${po} - ) - else() - add_custom_command(OUTPUT ${mo} - COMMAND ${CMAKE_COMMAND} -E make_directory ${mo_dir} - COMMAND ${GETTEXT_MSGMERGE_EXECUTABLE} --quiet --update --backup=none ${po} ${pot_file} - COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${mo} ${po} - DEPENDS ${po} - ) - endif() + add_custom_command(OUTPUT ${mo} + COMMAND ${CMAKE_COMMAND} -E make_directory ${mo_dir} + COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${mo} ${po} + DEPENDS ${po} + ) endforeach() endif() @@ -699,7 +701,7 @@ if(APPLE) "$<TARGET_BUNDLE_DIR:dolphin-emu>" ) endif() -else() +elseif (NOT WIN32) install(TARGETS dolphin-emu RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) endif() diff --git a/Source/Core/DolphinQt/DolphinQt.vcxproj b/Source/Core/DolphinQt/DolphinQt.vcxproj deleted file mode 100644 index dc2c53727b..0000000000 --- a/Source/Core/DolphinQt/DolphinQt.vcxproj +++ /dev/null @@ -1,534 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <Import Project="..\..\VSProps\Base.Macros.props" /> - <Import Project="$(VSPropsDir)Base.Targets.props" /> - <PropertyGroup Label="Globals"> - <ProjectGuid>{FA3FA62B-6F58-4B86-9453-4D149940A066}</ProjectGuid> - <ProjectName>Dolphin</ProjectName> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <Import Project="$(VSPropsDir)Configuration.Application.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings" /> - <ImportGroup Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="$(VSPropsDir)Base.props" /> - <Import Project="$(VSPropsDir)Base.Dolphin.props" /> - <Import Project="$(VSPropsDir)QtCompile.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <ItemDefinitionGroup> - <ClCompile> - <AdditionalIncludeDirectories>$(ProjectDir)Config\Graphics;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ProjectDir)Config;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ProjectDir)Config\ControllerInterface;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ProjectDir)Config\Mapping;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ProjectDir)Debugger;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ProjectDir)FIFO;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ProjectDir)GameList;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ProjectDir)NetPlay;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ProjectDir)QtUtils;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ProjectDir)Settings;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ProjectDir)TAS;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ProjectDir)VideoInterface;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <!--Qt 6.3.0 headers use std::aligned_storage instead of alignas--> - <PreprocessorDefinitions>_SILENCE_CXX23_ALIGNED_STORAGE_DEPRECATION_WARNING;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <!--Jump through some hoops to generate a pch file local to this project--> - <AdditionalIncludeDirectories>$(SourceDir)PCH;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <PrecompiledHeader>Use</PrecompiledHeader> - <PrecompiledHeaderFile>pch_qt.h</PrecompiledHeaderFile> - <ForcedIncludeFiles>pch_qt.h</ForcedIncludeFiles> - </ClCompile> - <Manifest> - <AdditionalManifestFiles>DolphinQt.manifest;%(AdditionalManifestFiles)</AdditionalManifestFiles> - </Manifest> - </ItemDefinitionGroup> - <ItemGroup> - <ClCompile Include="AboutDialog.cpp" /> - <ClCompile Include="CheatSearchFactoryWidget.cpp" /> - <ClCompile Include="CheatSearchWidget.cpp" /> - <ClCompile Include="CheatsManager.cpp" /> - <ClCompile Include="Achievements\AchievementBox.cpp" /> - <ClCompile Include="Achievements\AchievementHeaderWidget.cpp" /> - <ClCompile Include="Achievements\AchievementLeaderboardWidget.cpp" /> - <ClCompile Include="Achievements\AchievementProgressWidget.cpp" /> - <ClCompile Include="Achievements\AchievementSettingsWidget.cpp" /> - <ClCompile Include="Achievements\AchievementsWindow.cpp" /> - <ClCompile Include="Config\ARCodeWidget.cpp" /> - <ClCompile Include="Config\CheatCodeEditor.cpp" /> - <ClCompile Include="Config\CheatWarningWidget.cpp" /> - <ClCompile Include="Config\CommonControllersWidget.cpp" /> - <ClCompile Include="Config\ConfigControls\ConfigBool.cpp" /> - <ClCompile Include="Config\ConfigControls\ConfigChoice.cpp" /> - <ClCompile Include="Config\ConfigControls\ConfigInteger.cpp" /> - <ClCompile Include="Config\ConfigControls\ConfigRadio.cpp" /> - <ClCompile Include="Config\ConfigControls\ConfigFloatSlider.cpp" /> - <ClCompile Include="Config\ConfigControls\ConfigSlider.cpp" /> - <ClCompile Include="Config\ConfigControls\ConfigText.cpp" /> - <ClCompile Include="Config\ConfigControls\ConfigUserPath.cpp" /> - <ClCompile Include="Config\ControllerInterface\ControllerInterfaceWindow.cpp" /> - <ClCompile Include="Config\SDLHints\SDLHintsWindow.cpp" /> - <ClCompile Include="Config\ControllerInterface\DualShockUDPClientEditServerDialog.cpp" /> - <ClCompile Include="Config\ControllerInterface\DualShockUDPClientWidget.cpp" /> - <ClCompile Include="Config\ControllerInterface\DualShockUDPSettings.cpp" /> - <ClCompile Include="Config\ControllerInterface\ServerStringValidator.cpp" /> - <ClCompile Include="Config\ControllersPane.cpp" /> - <ClCompile Include="Config\FilesystemWidget.cpp" /> - <ClCompile Include="Config\FreeLookWidget.cpp" /> - <ClCompile Include="Config\FreeLookWindow.cpp" /> - <ClCompile Include="Config\GameConfigEdit.cpp" /> - <ClCompile Include="Config\GameConfigHighlighter.cpp" /> - <ClCompile Include="Config\GameConfigWidget.cpp" /> - <ClCompile Include="Config\GamecubeControllersWidget.cpp" /> - <ClCompile Include="Config\GeckoCodeWidget.cpp" /> - <ClCompile Include="Config\Graphics\AdvancedWidget.cpp" /> - <ClCompile Include="Config\Graphics\EnhancementsWidget.cpp" /> - <ClCompile Include="Config\Graphics\GeneralWidget.cpp" /> - <ClCompile Include="Config\Graphics\GraphicsPane.cpp" /> - <ClCompile Include="Config\Graphics\HacksWidget.cpp" /> - <ClCompile Include="Config\Graphics\ColorCorrectionConfigWindow.cpp" /> - <ClCompile Include="Config\Graphics\PostProcessingConfigWindow.cpp" /> - <ClCompile Include="Config\GraphicsModListWidget.cpp" /> - <ClCompile Include="Config\GraphicsModWarningWidget.cpp" /> - <ClCompile Include="Config\HardcoreWarningWidget.cpp" /> - <ClCompile Include="Config\InfoWidget.cpp" /> - <ClCompile Include="Config\LogConfigWidget.cpp" /> - <ClCompile Include="Config\LogWidget.cpp" /> - <ClCompile Include="Config\Mapping\FreeLookGeneral.cpp" /> - <ClCompile Include="Config\Mapping\FreeLookRotation.cpp" /> - <ClCompile Include="Config\Mapping\GBAPadEmu.cpp" /> - <ClCompile Include="Config\Mapping\GCKeyboardEmu.cpp" /> - <ClCompile Include="Config\Mapping\GCMicrophone.cpp" /> - <ClCompile Include="Config\Mapping\GCPadEmu.cpp" /> - <ClCompile Include="Config\Mapping\GCPadWiiUConfigDialog.cpp" /> - <ClCompile Include="Config\Mapping\Hotkey3D.cpp" /> - <ClCompile Include="Config\Mapping\HotkeyControllerProfile.cpp" /> - <ClCompile Include="Config\Mapping\HotkeyDebugging.cpp" /> - <ClCompile Include="Config\Mapping\HotkeyGBA.cpp" /> - <ClCompile Include="Config\Mapping\HotkeyGeneral.cpp" /> - <ClCompile Include="Config\Mapping\HotkeyGraphics.cpp" /> - <ClCompile Include="Config\Mapping\HotkeyStates.cpp" /> - <ClCompile Include="Config\Mapping\HotkeyStatesOther.cpp" /> - <ClCompile Include="Config\Mapping\HotkeyTAS.cpp" /> - <ClCompile Include="Config\Mapping\HotkeyUSBEmu.cpp" /> - <ClCompile Include="Config\Mapping\HotkeyWii.cpp" /> - <ClCompile Include="Config\Mapping\IOWindow.cpp" /> - <ClCompile Include="Config\Mapping\MappingButton.cpp" /> - <ClCompile Include="Config\Mapping\MappingCommon.cpp" /> - <ClCompile Include="Config\Mapping\MappingIndicator.cpp" /> - <ClCompile Include="Config\Mapping\MappingNumeric.cpp" /> - <ClCompile Include="Config\Mapping\MappingWidget.cpp" /> - <ClCompile Include="Config\Mapping\MappingWindow.cpp" /> - <ClCompile Include="Config\Mapping\WiimoteEmuExtension.cpp" /> - <ClCompile Include="Config\Mapping\WiimoteEmuExtensionMotionInput.cpp" /> - <ClCompile Include="Config\Mapping\WiimoteEmuExtensionMotionSimulation.cpp" /> - <ClCompile Include="Config\Mapping\WiimoteEmuGeneral.cpp" /> - <ClCompile Include="Config\Mapping\WiimoteEmuMotionControl.cpp" /> - <ClCompile Include="Config\Mapping\WiimoteEmuMotionControlIMU.cpp" /> - <ClCompile Include="Config\NewPatchDialog.cpp" /> - <ClCompile Include="Config\PatchesWidget.cpp" /> - <ClCompile Include="Config\PropertiesDialog.cpp" /> - <ClCompile Include="Config\SettingsWindow.cpp" /> - <ClCompile Include="Config\ToolTipControls\BalloonTip.cpp" /> - <ClCompile Include="Config\ToolTipControls\ToolTipCheckBox.cpp" /> - <ClCompile Include="Config\ToolTipControls\ToolTipComboBox.cpp" /> - <ClCompile Include="Config\ToolTipControls\ToolTipPushButton.cpp" /> - <ClCompile Include="Config\ToolTipControls\ToolTipRadioButton.cpp" /> - <ClCompile Include="Config\ToolTipControls\ToolTipSlider.cpp" /> - <ClCompile Include="Config\ToolTipControls\ToolTipSpinBox.cpp" /> - <ClCompile Include="Config\VerifyWidget.cpp" /> - <ClCompile Include="Config\WiimoteControllersWidget.cpp" /> - <ClCompile Include="ConvertDialog.cpp" /> - <ClCompile Include="Debugger\AssembleInstructionDialog.cpp" /> - <ClCompile Include="Debugger\AssemblerWidget.cpp" /> - <ClCompile Include="Debugger\AssemblyEditor.cpp" /> - <ClCompile Include="Debugger\BranchWatchDialog.cpp" /> - <ClCompile Include="Debugger\BranchWatchTableModel.cpp" /> - <ClCompile Include="Debugger\BreakpointDialog.cpp" /> - <ClCompile Include="Debugger\BreakpointWidget.cpp" /> - <ClCompile Include="Debugger\CodeViewWidget.cpp" /> - <ClCompile Include="Debugger\CodeWidget.cpp" /> - <ClCompile Include="Debugger\EditSymbolDialog.cpp" /> - <ClCompile Include="Debugger\GekkoSyntaxHighlight.cpp" /> - <ClCompile Include="Debugger\JitBlockTableModel.cpp" /> - <ClCompile Include="Debugger\JITWidget.cpp" /> - <ClCompile Include="Debugger\MemoryViewWidget.cpp" /> - <ClCompile Include="Debugger\MemoryWidget.cpp" /> - <ClCompile Include="Debugger\NetworkWidget.cpp" /> - <ClCompile Include="Debugger\PatchInstructionDialog.cpp" /> - <ClCompile Include="Debugger\RegisterColumn.cpp" /> - <ClCompile Include="Debugger\RegisterWidget.cpp" /> - <ClCompile Include="Debugger\ThreadWidget.cpp" /> - <ClCompile Include="Debugger\WatchWidget.cpp" /> - <ClCompile Include="DiscordHandler.cpp" /> - <ClCompile Include="DiscordJoinRequestDialog.cpp" /> - <ClCompile Include="EmulatedUSB\LogitechMicWindow.cpp" /> - <ClCompile Include="EmulatedUSB\WiiSpeakWindow.cpp" /> - <ClCompile Include="FIFO\FIFOAnalyzer.cpp" /> - <ClCompile Include="FIFO\FIFOPlayerWindow.cpp" /> - <ClCompile Include="GameCount.cpp" /> - <ClCompile Include="GameList\GameList.cpp" /> - <ClCompile Include="GameList\GameListModel.cpp" /> - <ClCompile Include="GameList\GameTracker.cpp" /> - <ClCompile Include="GameList\GridProxyModel.cpp" /> - <ClCompile Include="GameList\ListProxyModel.cpp" /> - <ClCompile Include="GBAHost.cpp" /> - <ClCompile Include="GBAWidget.cpp" /> - <ClCompile Include="GCMemcardCreateNewDialog.cpp" /> - <ClCompile Include="GCMemcardManager.cpp" /> - <ClCompile Include="Host.cpp" /> - <ClCompile Include="HotkeyScheduler.cpp" /> - <ClCompile Include="InfinityBase/InfinityBaseWindow.cpp" /> - <ClCompile Include="Main.cpp" /> - <ClCompile Include="MainWindow.cpp" /> - <ClCompile Include="MenuBar.cpp" /> - <ClCompile Include="NetPlay\ChunkedProgressDialog.cpp" /> - <ClCompile Include="NetPlay\GameDigestDialog.cpp" /> - <ClCompile Include="NetPlay\GameListDialog.cpp" /> - <ClCompile Include="NetPlay\ClickBlurLabel.cpp" /> - <ClCompile Include="NetPlay\NetPlayBrowser.cpp" /> - <ClCompile Include="NetPlay\NetPlayDialog.cpp" /> - <ClCompile Include="NetPlay\NetPlaySetupDialog.cpp" /> - <ClCompile Include="NetPlay\PadMappingDialog.cpp" /> - <ClCompile Include="NANDRepairDialog.cpp" /> - <ClCompile Include="NKitWarningDialog.cpp" /> - <ClCompile Include="pch_qt.cpp"> - <PrecompiledHeader>Create</PrecompiledHeader> - </ClCompile> - <ClCompile Include="QtUtils\AnalyticsPrompt.cpp" /> - <ClCompile Include="QtUtils\AspectRatioWidget.cpp" /> - <ClCompile Include="QtUtils\BlockUserInputFilter.cpp" /> - <ClCompile Include="QtUtils\ClearLayoutRecursively.cpp" /> - <ClCompile Include="QtUtils\DolphinFileDialog.cpp" /> - <ClCompile Include="QtUtils\DoubleClickEventFilter.cpp" /> - <ClCompile Include="QtUtils\ElidedButton.cpp" /> - <ClCompile Include="QtUtils\FileOpenEventFilter.cpp" /> - <ClCompile Include="QtUtils\ImageConverter.cpp" /> - <ClCompile Include="QtUtils\ModalMessageBox.cpp" /> - <ClCompile Include="QtUtils\NonAutodismissibleMenu.cpp" /> - <ClCompile Include="QtUtils\NonDefaultQPushButton.cpp" /> - <ClCompile Include="QtUtils\PartiallyClosableTabWidget.cpp" /> - <ClCompile Include="QtUtils\QtUtils.cpp" /> - <ClCompile Include="QtUtils\SetWindowDecorations.cpp" /> - <ClCompile Include="QtUtils\UTF8CodePointCountValidator.cpp" /> - <ClCompile Include="QtUtils\WindowActivationEventFilter.cpp" /> - <ClCompile Include="QtUtils\WrapInScrollArea.cpp" /> - <ClCompile Include="RenderWidget.cpp" /> - <ClCompile Include="ResourcePackManager.cpp" /> - <ClCompile Include="Resources.cpp" /> - <ClCompile Include="RiivolutionBootWidget.cpp" /> - <ClCompile Include="SearchBar.cpp" /> - <ClCompile Include="Settings.cpp" /> - <ClCompile Include="Settings\AdvancedPane.cpp" /> - <ClCompile Include="Settings\AudioPane.cpp" /> - <ClCompile Include="Settings\BroadbandAdapterSettingsDialog.cpp" /> - <ClCompile Include="Settings\GameCubePane.cpp" /> - <ClCompile Include="Settings\GeneralPane.cpp" /> - <ClCompile Include="Settings\InterfacePane.cpp" /> - <ClCompile Include="Settings\OnScreenDisplayPane.cpp" /> - <ClCompile Include="Settings\TriforcePane.cpp" /> - <ClCompile Include="Settings\PathPane.cpp" /> - <ClCompile Include="Settings\USBDevicePicker.cpp" /> - <ClCompile Include="Settings\WiiPane.cpp" /> - <ClCompile Include="SkylanderPortal\SkylanderModifyDialog.cpp" /> - <ClCompile Include="SkylanderPortal\SkylanderPortalWindow.cpp" /> - <ClCompile Include="TAS\GCTASInputWindow.cpp" /> - <ClCompile Include="TAS\GBATASInputWindow.cpp" /> - <ClCompile Include="TAS\IRWidget.cpp" /> - <ClCompile Include="TAS\StickWidget.cpp" /> - <ClCompile Include="TAS\TASCheckBox.cpp" /> - <ClCompile Include="TAS\TASInputWindow.cpp" /> - <ClCompile Include="TAS\TASControlState.cpp" /> - <ClCompile Include="TAS\TASSlider.cpp" /> - <ClCompile Include="TAS\TASSpinBox.cpp" /> - <ClCompile Include="TAS\WiiTASInputWindow.cpp" /> - <ClCompile Include="ToolBar.cpp" /> - <ClCompile Include="Translation.cpp" /> - <ClCompile Include="Updater.cpp" /> - <ClCompile Include="WiiUpdate.cpp" /> - </ItemGroup> - <!-- - Put C/C++ headers here. If moc needs to be run for the file (only needed if - Q_OBJECT is used in the file), set the item type to QtMoc. This list can - also be modified using the VS UI. - --> - <ItemGroup> - <ClInclude Include="Config\CheatCodeEditor.h" /> - <ClInclude Include="Config\ConfigControls\ConfigControl.h" /> - <ClInclude Include="Config\GameConfigEdit.h" /> - <ClInclude Include="Config\Mapping\MappingCommon.h" /> - <QtMoc Include="Config\Mapping\MappingIndicator.h" /> - <ClInclude Include="Config\Mapping\MappingNumeric.h" /> - <ClInclude Include="Config\NewPatchDialog.h" /> - <QtMoc Include="Config\PatchesWidget.h" /> - <ClInclude Include="Debugger\RegisterColumn.h" /> - <ClInclude Include="GBAHost.h" /> - <ClInclude Include="QtUtils\ActionHelper.h" /> - <ClInclude Include="QtUtils\ClearLayoutRecursively.h" /> - <QtMoc Include="QtUtils\ClickableStatusBar.h" /> - <ClInclude Include="QtUtils\DolphinFileDialog.h" /> - <ClInclude Include="QtUtils\ImageConverter.h" /> - <ClInclude Include="QtUtils\ModalMessageBox.h" /> - <ClInclude Include="QtUtils\NonAutodismissibleMenu.h" /> - <ClInclude Include="QtUtils\NonDefaultQPushButton.h" /> - <ClInclude Include="QtUtils\QueueOnObject.h" /> - <ClInclude Include="QtUtils\RunOnObject.h" /> - <ClInclude Include="QtUtils\SignalBlocking.h" /> - <ClInclude Include="QtUtils\WrapInScrollArea.h" /> - <ClInclude Include="ResourcePackManager.h" /> - <ClInclude Include="Resources.h" /> - <ClInclude Include="Settings\OnScreenDisplayPane.h" /> - <ClInclude Include="SkylanderPortal\SkylanderModifyDialog.h" /> - <ClInclude Include="TAS\TASControlState.h" /> - <ClInclude Include="TAS\TASSlider.h" /> - <ClInclude Include="Translation.h" /> - <ClInclude Include="WiiUpdate.h" /> - <QtMoc Include="AboutDialog.h" /> - <QtMoc Include="CheatSearchFactoryWidget.h" /> - <QtMoc Include="CheatSearchWidget.h" /> - <QtMoc Include="CheatsManager.h" /> - <QtMoc Include="Achievements\AchievementBox.h" /> - <QtMoc Include="Achievements\AchievementHeaderWidget.h" /> - <QtMoc Include="Achievements\AchievementLeaderboardWidget.h" /> - <QtMoc Include="Achievements\AchievementProgressWidget.h" /> - <QtMoc Include="Achievements\AchievementSettingsWidget.h" /> - <QtMoc Include="Achievements\AchievementsWindow.h" /> - <QtMoc Include="Config\ARCodeWidget.h" /> - <QtMoc Include="Config\CheatWarningWidget.h" /> - <QtMoc Include="Config\CommonControllersWidget.h" /> - <QtMoc Include="Config\ConfigControls\ConfigBool.h" /> - <QtMoc Include="Config\ConfigControls\ConfigChoice.h" /> - <QtMoc Include="Config\ConfigControls\ConfigInteger.h" /> - <QtMoc Include="Config\ConfigControls\ConfigRadio.h" /> - <QtMoc Include="Config\ConfigControls\ConfigFloatSlider.h" /> - <QtMoc Include="Config\ConfigControls\ConfigSlider.h" /> - <QtMoc Include="Config\ConfigControls\ConfigText.h" /> - <QtMoc Include="Config\ConfigControls\ConfigUserPath.h" /> - <QtMoc Include="Config\ControllerInterface\ControllerInterfaceWindow.h" /> - <QtMoc Include="Config\SDLHints\SDLHintsWindow.h" /> - <QtMoc Include="Config\ControllerInterface\DualShockUDPClientEditServerDialog.h" /> - <QtMoc Include="Config\ControllerInterface\DualShockUDPClientWidget.h" /> - <QtMoc Include="Config\ControllerInterface\DualShockUDPSettings.h" /> - <QtMoc Include="Config\ControllerInterface\ServerStringValidator.h" /> - <QtMoc Include="Config\ControllersPane.h" /> - <QtMoc Include="Config\FilesystemWidget.h" /> - <QtMoc Include="Config\FreeLookWidget.h" /> - <QtMoc Include="Config\FreeLookWindow.h" /> - <QtMoc Include="Config\GamecubeControllersWidget.h" /> - <QtMoc Include="Config\GameConfigHighlighter.h" /> - <QtMoc Include="Config\GameConfigWidget.h" /> - <QtMoc Include="Config\GeckoCodeWidget.h" /> - <QtMoc Include="Config\Graphics\AdvancedWidget.h" /> - <QtMoc Include="Config\Graphics\EnhancementsWidget.h" /> - <QtMoc Include="Config\Graphics\GeneralWidget.h" /> - <QtMoc Include="Config\Graphics\GraphicsPane.h" /> - <QtMoc Include="Config\Graphics\HacksWidget.h" /> - <QtMoc Include="Config\Graphics\ColorCorrectionConfigWindow.h" /> - <QtMoc Include="Config\Graphics\PostProcessingConfigWindow.h" /> - <QtMoc Include="Config\GraphicsModListWidget.h" /> - <QtMoc Include="Config\GraphicsModWarningWidget.h" /> - <QtMoc Include="Config\HardcoreWarningWidget.h" /> - <QtMoc Include="Config\InfoWidget.h" /> - <QtMoc Include="Config\LogConfigWidget.h" /> - <QtMoc Include="Config\LogWidget.h" /> - <QtMoc Include="Config\Mapping\FreeLookGeneral.h" /> - <QtMoc Include="Config\Mapping\FreeLookRotation.h" /> - <QtMoc Include="Config\Mapping\GBAPadEmu.h" /> - <QtMoc Include="Config\Mapping\GCKeyboardEmu.h" /> - <QtMoc Include="Config\Mapping\GCMicrophone.h" /> - <QtMoc Include="Config\Mapping\GCPadEmu.h" /> - <QtMoc Include="Config\Mapping\GCPadWiiUConfigDialog.h" /> - <QtMoc Include="Config\Mapping\Hotkey3D.h" /> - <QtMoc Include="Config\Mapping\HotkeyControllerProfile.h" /> - <QtMoc Include="Config\Mapping\HotkeyDebugging.h" /> - <QtMoc Include="Config\Mapping\HotkeyGBA.h" /> - <QtMoc Include="Config\Mapping\HotkeyGeneral.h" /> - <QtMoc Include="Config\Mapping\HotkeyGraphics.h" /> - <QtMoc Include="Config\Mapping\HotkeyStates.h" /> - <QtMoc Include="Config\Mapping\HotkeyStatesOther.h" /> - <QtMoc Include="Config\Mapping\HotkeyTAS.h" /> - <QtMoc Include="Config\Mapping\HotkeyUSBEmu.h" /> - <QtMoc Include="Config\Mapping\HotkeyWii.h" /> - <QtMoc Include="Config\Mapping\IOWindow.h" /> - <QtMoc Include="Config\Mapping\MappingButton.h" /> - <QtMoc Include="Config\Mapping\MappingWidget.h" /> - <QtMoc Include="Config\Mapping\MappingWindow.h" /> - <QtMoc Include="Config\Mapping\WiimoteEmuExtension.h" /> - <QtMoc Include="Config\Mapping\WiimoteEmuExtensionMotionInput.h" /> - <QtMoc Include="Config\Mapping\WiimoteEmuExtensionMotionSimulation.h" /> - <QtMoc Include="Config\Mapping\WiimoteEmuGeneral.h" /> - <QtMoc Include="Config\Mapping\WiimoteEmuMotionControl.h" /> - <QtMoc Include="Config\Mapping\WiimoteEmuMotionControlIMU.h" /> - <QtMoc Include="Config\PropertiesDialog.h" /> - <QtMoc Include="Config\SettingsWindow.h" /> - <QtMoc Include="Config\ToolTipControls\BalloonTip.h" /> - <ClInclude Include="Config\ToolTipControls\ToolTipCheckBox.h" /> - <ClInclude Include="Config\ToolTipControls\ToolTipComboBox.h" /> - <ClInclude Include="Config\ToolTipControls\ToolTipPushButton.h" /> - <ClInclude Include="Config\ToolTipControls\ToolTipRadioButton.h" /> - <ClInclude Include="Config\ToolTipControls\ToolTipSlider.h" /> - <ClInclude Include="Config\ToolTipControls\ToolTipSpinBox.h" /> - <ClInclude Include="Config\ToolTipControls\ToolTipWidget.h" /> - <QtMoc Include="Config\VerifyWidget.h" /> - <QtMoc Include="Config\WiimoteControllersWidget.h" /> - <QtMoc Include="ConvertDialog.h" /> - <QtMoc Include="Debugger\AssembleInstructionDialog.h" /> - <QtMoc Include="Debugger\AssemblerWidget.h" /> - <QtMoc Include="Debugger\AssemblyEditor.h" /> - <QtMoc Include="Debugger\BranchWatchDialog.h" /> - <QtMoc Include="Debugger\BranchWatchTableModel.h" /> - <QtMoc Include="Debugger\BreakpointDialog.h" /> - <QtMoc Include="Debugger\BreakpointWidget.h" /> - <QtMoc Include="Debugger\CodeViewWidget.h" /> - <QtMoc Include="Debugger\CodeWidget.h" /> - <QtMoc Include="Debugger\EditSymbolDialog.h" /> - <QtMoc Include="Debugger\GekkoSyntaxHighlight.h" /> - <QtMoc Include="Debugger\JitBlockTableModel.h" /> - <QtMoc Include="Debugger\JITWidget.h" /> - <QtMoc Include="Debugger\MemoryViewWidget.h" /> - <QtMoc Include="Debugger\MemoryWidget.h" /> - <QtMoc Include="Debugger\NetworkWidget.h" /> - <QtMoc Include="Debugger\PatchInstructionDialog.h" /> - <QtMoc Include="Debugger\RegisterWidget.h" /> - <QtMoc Include="Debugger\ThreadWidget.h" /> - <QtMoc Include="Debugger\WatchWidget.h" /> - <QtMoc Include="DiscordHandler.h" /> - <QtMoc Include="DiscordJoinRequestDialog.h" /> - <QtMoc Include="EmulatedUSB\LogitechMicWindow.h" /> - <QtMoc Include="EmulatedUSB\WiiSpeakWindow.h" /> - <QtMoc Include="FIFO\FIFOAnalyzer.h" /> - <QtMoc Include="FIFO\FIFOPlayerWindow.h" /> - <QtMoc Include="GameCount.h" /> - <QtMoc Include="GameList\GameList.h" /> - <QtMoc Include="GameList\GameListModel.h" /> - <QtMoc Include="GameList\GameTracker.h" /> - <QtMoc Include="GameList\GridProxyModel.h" /> - <QtMoc Include="GameList\ListProxyModel.h" /> - <QtMoc Include="GBAWidget.h" /> - <QtMoc Include="GCMemcardCreateNewDialog.h" /> - <QtMoc Include="GCMemcardManager.h" /> - <QtMoc Include="Host.h" /> - <QtMoc Include="HotkeyScheduler.h" /> - <QtMoc Include="InfinityBase/InfinityBaseWindow.h" /> - <QtMoc Include="MainWindow.h" /> - <QtMoc Include="MenuBar.h" /> - <QtMoc Include="NetPlay\ChunkedProgressDialog.h" /> - <QtMoc Include="NetPlay\GameDigestDialog.h" /> - <QtMoc Include="NetPlay\GameListDialog.h" /> - <QtMoc Include="NetPlay\ClickBlurLabel.h" /> - <QtMoc Include="NetPlay\NetPlayBrowser.h" /> - <QtMoc Include="NetPlay\NetPlayDialog.h" /> - <QtMoc Include="NetPlay\NetPlaySetupDialog.h" /> - <QtMoc Include="NetPlay\PadMappingDialog.h" /> - <QtMoc Include="NANDRepairDialog.h" /> - <QtMoc Include="NKitWarningDialog.h" /> - <QtMoc Include="QtUtils\AnalyticsPrompt.h" /> - <QtMoc Include="QtUtils\AspectRatioWidget.h" /> - <QtMoc Include="QtUtils\BlockUserInputFilter.h" /> - <QtMoc Include="QtUtils\DoubleClickEventFilter.h" /> - <QtMoc Include="QtUtils\ElidedButton.h" /> - <QtMoc Include="QtUtils\FileOpenEventFilter.h" /> - <ClInclude Include="QtUtils\FromStdString.h" /> - <QtMoc Include="QtUtils\ParallelProgressDialog.h" /> - <QtMoc Include="QtUtils\PartiallyClosableTabWidget.h" /> - <ClInclude Include="QtUtils\QtUtils.h" /> - <ClInclude Include="QtUtils\SetWindowDecorations.h" /> - <QtMoc Include="QtUtils\UTF8CodePointCountValidator.h" /> - <QtMoc Include="QtUtils\WindowActivationEventFilter.h" /> - <QtMoc Include="RenderWidget.h" /> - <QtMoc Include="RiivolutionBootWidget.h" /> - <QtMoc Include="SearchBar.h" /> - <QtMoc Include="Settings.h" /> - <QtMoc Include="Settings\AdvancedPane.h" /> - <QtMoc Include="Settings\AudioPane.h" /> - <QtMoc Include="Settings\BroadbandAdapterSettingsDialog.h" /> - <QtMoc Include="Settings\GameCubePane.h" /> - <QtMoc Include="Settings\GeneralPane.h" /> - <QtMoc Include="Settings\InterfacePane.h" /> - <QtMoc Include="Settings\PathPane.h" /> - <QtMoc Include="Settings\TriforcePane.h" /> - <QtMoc Include="Settings\USBDevicePicker.h" /> - <QtMoc Include="Settings\WiiPane.h" /> - <QtMoc Include="SkylanderPortal\SkylanderPortalWindow.h" /> - <QtMoc Include="TAS\GCTASInputWindow.h" /> - <QtMoc Include="TAS\GBATASInputWindow.h" /> - <QtMoc Include="TAS\IRWidget.h" /> - <QtMoc Include="TAS\StickWidget.h" /> - <QtMoc Include="TAS\TASCheckBox.h" /> - <QtMoc Include="TAS\TASInputWindow.h" /> - <QtMoc Include="TAS\TASSpinBox.h" /> - <QtMoc Include="TAS\WiiTASInputWindow.h" /> - <QtMoc Include="ToolBar.h" /> - <QtMoc Include="Updater.h" /> - </ItemGroup> - <ItemGroup> - <Text Include="CMakeLists.txt" /> - </ItemGroup> - <ItemGroup> - <ResourceCompile Include="DolphinQt.rc" /> - </ItemGroup> - <ItemGroup> - <Natvis Include="qt6.natvis" /> - </ItemGroup> - <ItemGroup> - <Text Include="Styles\Dark\dark.qss" /> - <QtRcc Include="Styles\Dark\dark.qrc" /> - </ItemGroup> - <ItemGroup> - <ProjectReference Include="$(CoreDir)DolphinLib.vcxproj"> - <Project>{D79392F7-06D6-4B4B-A39F-4D587C215D3A}</Project> - </ProjectReference> - <ProjectReference Include="$(CoreDir)Common\SCMRevGen.vcxproj"> - <Project>{41279555-f94f-4ebc-99de-af863c10c5c4}</Project> - </ProjectReference> - <ProjectReference Include="$(DolphinRootDir)Languages\Languages.vcxproj"> - <Project>{0e033be3-2e08-428e-9ae9-bc673efa12b5}</Project> - </ProjectReference> - <!-- - This project uses its own PCH during compile (because RTTI setting differs), - but we must also link the "main" pch for the dependants (DolphinLib) - --> - <ProjectReference Include="$(SourceDir)PCH\pch.vcxproj"> - <Project>{76563A7F-1011-4EAD-B667-7BB18D09568E}</Project> - <Private>false</Private> - <LinkLibraryDependencies>true</LinkLibraryDependencies> - <UseLibraryDependencyInputs>true</UseLibraryDependencyInputs> - </ProjectReference> - </ItemGroup> - <Import Project="$(ExternalsDir)bzip2\exports.props" /> - <Import Project="$(ExternalsDir)cpp-optparse\exports.props" /> - <Import Project="$(ExternalsDir)discord-rpc\exports.props" /> - <Import Project="$(ExternalsDir)enet\exports.props" /> - <Import Project="$(ExternalsDir)fmt\exports.props" /> - <Import Project="$(ExternalsDir)glslang\exports.props" /> - <Import Project="$(ExternalsDir)imgui\exports.props" /> - <Import Project="$(ExternalsDir)implot\exports.props" /> - <Import Project="$(ExternalsDir)liblzma\exports.props" /> - <Import Project="$(ExternalsDir)mbedtls\exports.props" /> - <Import Project="$(ExternalsDir)mGBA\exports.props" /> - <Import Project="$(ExternalsDir)picojson\exports.props" /> - <Import Project="$(ExternalsDir)rcheevos\exports.props" /> - <Import Project="$(ExternalsDir)SFML\exports.props" /> - <Import Project="$(ExternalsDir)xxhash\exports.props" /> - <Import Project="$(ExternalsDir)zstd\exports.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets" /> - <!--Copy Exe, Data directory and DLLs which should be located in the executable directory--> - <ItemGroup> - <DataSysFiles Include="$(DolphinRootDir)Data\**\Sys\**\*.*" /> - <DataTxtFiles Include="$(DolphinRootDir)\COPYING" /> - <DataLicenseFiles Include="$(DolphinRootDir)\LICENSES\*.*" /> - <BinaryFiles Include="$(TargetPath)" /> - <AllInputFiles Include="@(DataSysFiles);@(DataTxtFiles);@(DataLicenseFiles);@(BinaryFiles)" /> - </ItemGroup> - <Target Name="AfterBuild" Inputs="@(AllInputFiles)" Outputs="@(AllInputFiles -> '$(BinaryOutputDir)%(RecursiveDir)%(Filename)%(Extension)')"> - <Message Text="Copying Data directory..." Importance="High" /> - <RemoveDir Directories="$(BinaryOutputDir)Sys" /> - <Copy SourceFiles="@(DataSysFiles)" DestinationFolder="$(BinaryOutputDir)%(RecursiveDir)" SkipUnchangedFiles="True" /> - <Copy SourceFiles="@(DataTxtFiles)" DestinationFolder="$(BinaryOutputDir)" SkipUnchangedFiles="True" /> - <RemoveDir Directories="$(BinaryOutputDir)LICENSES" /> - <Copy SourceFiles="@(DataLicenseFiles)" DestinationFolder="$(BinaryOutputDir)LICENSES" SkipUnchangedFiles="True" /> - <Message Text="Copy: @(BinaryFiles) -> $(BinaryOutputDir)" Importance="High" /> - <Copy SourceFiles="@(BinaryFiles)" DestinationFolder="$(BinaryOutputDir)" /> - </Target> -</Project> diff --git a/Source/Core/DolphinQt/DolphinQt.vcxproj.user b/Source/Core/DolphinQt/DolphinQt.vcxproj.user deleted file mode 100644 index 22760f9a5b..0000000000 --- a/Source/Core/DolphinQt/DolphinQt.vcxproj.user +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <PropertyGroup> - <LocalDebuggerCommand>$(BinaryOutputDir)$(TargetFileName)</LocalDebuggerCommand> - <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor> - <ShowAllFiles>true</ShowAllFiles> - </PropertyGroup> -</Project>
\ No newline at end of file diff --git a/Source/Core/DolphinQt/Translation.cpp b/Source/Core/DolphinQt/Translation.cpp index 1b93536ac9..8e4339cb2b 100644 --- a/Source/Core/DolphinQt/Translation.cpp +++ b/Source/Core/DolphinQt/Translation.cpp @@ -274,18 +274,17 @@ static bool TryInstallTranslator(const QString& exact_language_code) for (const auto& qlang : FindPossibleLanguageCodes(exact_language_code)) { std::string lang = qlang.toStdString(); - auto filename = -#if defined _WIN32 - fmt::format("{}/Languages/{}.mo", File::GetExeDirectory(), lang) -#elif defined __APPLE__ - fmt::format("{}/Contents/Resources/{}.lproj/dolphin-emu.mo", File::GetBundleDirectory(), - lang) -#elif defined LINUX_LOCAL_DEV - fmt::format("{}/../Source/Core/DolphinQt/{}/dolphin-emu.mo", File::GetExeDirectory(), lang) + std::string filename; +#if defined __APPLE__ + filename = fmt::format("{}/Contents/Resources/{}.lproj/dolphin-emu.mo", + File::GetBundleDirectory(), lang); #else - fmt::format("{}/../locale/{}/LC_MESSAGES/dolphin-emu.mo", DATA_DIR, lang) + filename = fmt::format("{}/Languages/{}/dolphin-emu.mo", File::GetExeDirectory(), lang); +#ifndef _WIN32 + if (!File::Exists(filename)) + filename = fmt::format("{}/../locale/{}/LC_MESSAGES/dolphin-emu.mo", DATA_DIR, lang); +#endif #endif - ; auto* translator = new MoTranslator(QApplication::instance()); if (translator->load(filename)) diff --git a/Source/Core/DolphinTool/CMakeLists.txt b/Source/Core/DolphinTool/CMakeLists.txt index 562ba1dc0a..cbc15fe85f 100644 --- a/Source/Core/DolphinTool/CMakeLists.txt +++ b/Source/Core/DolphinTool/CMakeLists.txt @@ -34,4 +34,6 @@ if(MSVC) endif() set(CPACK_PACKAGE_EXECUTABLES ${CPACK_PACKAGE_EXECUTABLES} dolphin-tool) -install(TARGETS dolphin-tool RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) +if (NOT WIN32) + install(TARGETS dolphin-tool RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) +endif() diff --git a/Source/Core/DolphinTool/DolphinTool.vcxproj b/Source/Core/DolphinTool/DolphinTool.vcxproj deleted file mode 100644 index 79e1264b38..0000000000 --- a/Source/Core/DolphinTool/DolphinTool.vcxproj +++ /dev/null @@ -1,73 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <Import Project="..\..\VSProps\Base.Macros.props" /> - <Import Project="$(VSPropsDir)Base.Targets.props" /> - <PropertyGroup Label="Globals"> - <ProjectGuid>{8F91523C-5C5E-4B22-A1F1-67560B6DC714}</ProjectGuid> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <Import Project="$(VSPropsDir)Configuration.Application.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings" /> - <ImportGroup Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="$(VSPropsDir)Base.props" /> - <Import Project="$(VSPropsDir)Base.Dolphin.props" /> - <Import Project="$(VSPropsDir)PCHUse.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <ItemGroup> - <ProjectReference Include="$(CoreDir)DolphinLib.vcxproj"> - <Project>{D79392F7-06D6-4B4B-A39F-4D587C215D3A}</Project> - </ProjectReference> - <ProjectReference Include="$(CoreDir)Common\SCMRevGen.vcxproj"> - <Project>{41279555-f94f-4ebc-99de-af863c10c5c4}</Project> - </ProjectReference> - <ProjectReference Include="$(DolphinRootDir)Languages\Languages.vcxproj"> - <Project>{0e033be3-2e08-428e-9ae9-bc673efa12b5}</Project> - </ProjectReference> - </ItemGroup> - <ItemGroup> - <ClCompile Include="ConvertCommand.cpp" /> - <ClCompile Include="VerifyCommand.cpp" /> - <ClCompile Include="ExtractCommand.cpp" /> - <ClCompile Include="HeaderCommand.cpp" /> - <ClCompile Include="ToolHeadlessPlatform.cpp" /> - <ClCompile Include="ToolMain.cpp" /> - </ItemGroup> - <Import Project="$(ExternalsDir)bzip2\exports.props" /> - <Import Project="$(ExternalsDir)cpp-optparse\exports.props" /> - <Import Project="$(ExternalsDir)fmt\exports.props" /> - <Import Project="$(ExternalsDir)glslang\exports.props" /> - <Import Project="$(ExternalsDir)liblzma\exports.props" /> - <Import Project="$(ExternalsDir)mbedtls\exports.props" /> - <Import Project="$(ExternalsDir)picojson\exports.props" /> - <Import Project="$(ExternalsDir)rcheevos\exports.props" /> - <Import Project="$(ExternalsDir)zstd\exports.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets"> - </ImportGroup> - <!--Copy the .exe to binary output folder--> - <ItemGroup> - <SourceFiles Include="$(TargetPath)" /> - </ItemGroup> - <ItemGroup> - <ClInclude Include="ConvertCommand.h" /> - <ClInclude Include="VerifyCommand.h" /> - <ClInclude Include="HeaderCommand.h" /> - <ClInclude Include="ExtractCommand.h" /> - </ItemGroup> - <ItemGroup> - <Manifest Include="DolphinTool.exe.manifest" /> - </ItemGroup> - <ItemGroup> - <Text Include="CMakeLists.txt" /> - </ItemGroup> - <ItemGroup> - <ResourceCompile Include="DolphinTool.rc" /> - </ItemGroup> - <Target Name="AfterBuild" Inputs="@(SourceFiles)" Outputs="@(SourceFiles -> '$(BinaryOutputDir)%(Filename)%(Extension)')"> - <Message Text="Copy: @(SourceFiles) -> $(BinaryOutputDir)" Importance="High" /> - <Copy SourceFiles="@(SourceFiles)" DestinationFolder="$(BinaryOutputDir)" /> - </Target> -</Project> diff --git a/Source/Core/WinUpdater/WinUpdater.vcxproj b/Source/Core/WinUpdater/WinUpdater.vcxproj deleted file mode 100644 index 28ae61bb34..0000000000 --- a/Source/Core/WinUpdater/WinUpdater.vcxproj +++ /dev/null @@ -1,58 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <Import Project="..\..\VSProps\Base.Macros.props" /> - <Import Project="$(VSPropsDir)Base.Targets.props" /> - <PropertyGroup Label="Globals"> - <ProjectGuid>{E4BECBAB-9C6E-41AB-BB56-F9D70AB6BE03}</ProjectGuid> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <Import Project="$(VSPropsDir)Configuration.Application.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings" /> - <ImportGroup Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="$(VSPropsDir)Base.props" /> - <Import Project="$(VSPropsDir)Base.Dolphin.props" /> - <Import Project="$(VSPropsDir)PCHUse.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <PropertyGroup> - <TargetName>Updater</TargetName> - </PropertyGroup> - <ItemGroup> - <ProjectReference Include="$(CoreDir)DolphinLib.vcxproj"> - <Project>{D79392F7-06D6-4B4B-A39F-4D587C215D3A}</Project> - </ProjectReference> - </ItemGroup> - <ItemGroup> - <ClInclude Include="..\UpdaterCommon\Platform.h" /> - <ClInclude Include="..\UpdaterCommon\UI.h" /> - <ClInclude Include="..\UpdaterCommon\UpdaterCommon.h" /> - </ItemGroup> - <ItemGroup> - <ClCompile Include="..\UpdaterCommon\UpdaterCommon.cpp" /> - <ClCompile Include="Main.cpp" /> - <ClCompile Include="Platform.cpp" /> - <ClCompile Include="WinUI.cpp" /> - </ItemGroup> - <Import Project="$(ExternalsDir)cpp-optparse\exports.props" /> - <Import Project="$(ExternalsDir)curl\exports.props" /> - <Import Project="$(ExternalsDir)ed25519\exports.props" /> - <Import Project="$(ExternalsDir)fmt\exports.props" /> - <Import Project="$(ExternalsDir)mbedtls\exports.props" /> - <Import Project="$(ExternalsDir)zlib-ng\exports.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets"> - </ImportGroup> - <!--Copy the .exe to binary output folder--> - <ItemGroup> - <SourceFiles Include="$(TargetPath)" /> - </ItemGroup> - <ItemGroup> - <Manifest Include="Updater.exe.manifest" /> - </ItemGroup> - <Target Name="AfterBuild" Inputs="@(SourceFiles)" Outputs="@(SourceFiles -> '$(BinaryOutputDir)%(Filename)%(Extension)')"> - <Message Text="Copy: @(SourceFiles) -> $(BinaryOutputDir)" Importance="High" /> - <Copy SourceFiles="@(SourceFiles)" DestinationFolder="$(BinaryOutputDir)" /> - </Target> -</Project>
\ No newline at end of file diff --git a/Source/Core/WinUpdater/WinUpdater.vcxproj.filters b/Source/Core/WinUpdater/WinUpdater.vcxproj.filters deleted file mode 100644 index d26f8a82cf..0000000000 --- a/Source/Core/WinUpdater/WinUpdater.vcxproj.filters +++ /dev/null @@ -1,10 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <ItemGroup> - <ClCompile Include="Main.cpp" /> - <ClCompile Include="WinUI.cpp" /> - </ItemGroup> - <ItemGroup> - <Manifest Include="Updater.exe.manifest" /> - </ItemGroup> -</Project> diff --git a/Source/DSPSpy/DSPSpy.vcxproj b/Source/DSPSpy/DSPSpy.vcxproj deleted file mode 100644 index f3eb4620b5..0000000000 --- a/Source/DSPSpy/DSPSpy.vcxproj +++ /dev/null @@ -1,180 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <ItemGroup Label="ProjectConfigurations"> - <ProjectConfiguration Include="GC|Win32"> - <Configuration>GC</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="GC|x64"> - <Configuration>GC</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Wii|Win32"> - <Configuration>Wii</Configuration> - <Platform>Win32</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Wii|x64"> - <Configuration>Wii</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - </ItemGroup> - <PropertyGroup Label="Globals"> - <ProjectGuid>{3877AA3E-9CC0-4ADF-8E71-272EE4443478}</ProjectGuid> - <RootNamespace>DSPSpy</RootNamespace> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='GC|Win32'" Label="Configuration"> - <ConfigurationType>Makefile</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <WholeProgramOptimization>true</WholeProgramOptimization> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Wii|Win32'" Label="Configuration"> - <ConfigurationType>Makefile</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <WholeProgramOptimization>true</WholeProgramOptimization> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='GC|x64'" Label="Configuration"> - <ConfigurationType>Makefile</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <WholeProgramOptimization>true</WholeProgramOptimization> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Wii|x64'" Label="Configuration"> - <ConfigurationType>Makefile</ConfigurationType> - <CharacterSet>MultiByte</CharacterSet> - <WholeProgramOptimization>true</WholeProgramOptimization> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings"> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='GC|Win32'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Wii|Win32'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='GC|x64'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - </ImportGroup> - <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Wii|x64'" Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <PropertyGroup> - <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion> - <OutDir Condition="'$(Configuration)|$(Platform)'=='Wii|Win32'">build\</OutDir> - <IntDir Condition="'$(Configuration)|$(Platform)'=='Wii|Win32'">build\</IntDir> - <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Wii|Win32'">..\..\Binary\$(Platform)\DSPTool.exe -h dsp_code tests\dsp_test.ds -make -</NMakeBuildCommandLine> - <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Wii|Win32'">make clean -..\..\Binary\$(Platform)\DSPTool.exe -h dsp_code tests\dsp_code.ds -make</NMakeReBuildCommandLine> - <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='Wii|Win32'">make clean</NMakeCleanCommandLine> - <NMakeOutput Condition="'$(Configuration)|$(Platform)'=='Wii|Win32'">DSPSpy.dol</NMakeOutput> - <NMakePreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Wii|Win32'">$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions> - <NMakeIncludeSearchPath Condition="'$(Configuration)|$(Platform)'=='Wii|Win32'">$(ProjectDir);C:\devkitPro\libogc\include;$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath> - <NMakeForcedIncludes Condition="'$(Configuration)|$(Platform)'=='Wii|Win32'">$(NMakeForcedIncludes)</NMakeForcedIncludes> - <NMakeAssemblySearchPath Condition="'$(Configuration)|$(Platform)'=='Wii|Win32'">$(NMakeAssemblySearchPath)</NMakeAssemblySearchPath> - <NMakeForcedUsingAssemblies Condition="'$(Configuration)|$(Platform)'=='Wii|Win32'">$(NMakeForcedUsingAssemblies)</NMakeForcedUsingAssemblies> - <OutDir Condition="'$(Configuration)|$(Platform)'=='Wii|x64'">build\</OutDir> - <IntDir Condition="'$(Configuration)|$(Platform)'=='Wii|x64'">build\</IntDir> - <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Wii|x64'">..\..\Binary\$(Platform)\DSPTool.exe -h dsp_code tests\dsp_test.ds -make -</NMakeBuildCommandLine> - <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Wii|x64'">make clean -..\..\Binary\$(Platform)\DSPTool.exe -h dsp_code tests\dsp_code.ds -make</NMakeReBuildCommandLine> - <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='Wii|x64'">make clean</NMakeCleanCommandLine> - <NMakeOutput Condition="'$(Configuration)|$(Platform)'=='Wii|x64'">DSPSpy.dol</NMakeOutput> - <NMakePreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Wii|x64'">$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions> - <NMakeIncludeSearchPath Condition="'$(Configuration)|$(Platform)'=='Wii|x64'">$(ProjectDir);C:\devkitPro\libogc\include;$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath> - <NMakeForcedIncludes Condition="'$(Configuration)|$(Platform)'=='Wii|x64'">$(NMakeForcedIncludes)</NMakeForcedIncludes> - <NMakeAssemblySearchPath Condition="'$(Configuration)|$(Platform)'=='Wii|x64'">$(NMakeAssemblySearchPath)</NMakeAssemblySearchPath> - <NMakeForcedUsingAssemblies Condition="'$(Configuration)|$(Platform)'=='Wii|x64'">$(NMakeForcedUsingAssemblies)</NMakeForcedUsingAssemblies> - <OutDir Condition="'$(Configuration)|$(Platform)'=='GC|Win32'">build\</OutDir> - <IntDir Condition="'$(Configuration)|$(Platform)'=='GC|Win32'">build\</IntDir> - <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='GC|Win32'">..\..\Binary\$(Platform)\DSPTool.exe -h dsp_code tests\dsp_test.ds -make HW_TYPE=gamecube</NMakeBuildCommandLine> - <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='GC|Win32'">make HW_TYPE=gamecube clean -..\..\Binary\$(Platform)\DSPTool.exe -h dsp_code tests\dsp_code.ds -make HW_TYPE=gamecube</NMakeReBuildCommandLine> - <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='GC|Win32'">make HW_TYPE=gamecube clean</NMakeCleanCommandLine> - <NMakeOutput Condition="'$(Configuration)|$(Platform)'=='GC|Win32'">DSPSpyGC.dol</NMakeOutput> - <NMakePreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='GC|Win32'">$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions> - <NMakeIncludeSearchPath Condition="'$(Configuration)|$(Platform)'=='GC|Win32'">$(ProjectDir);C:\devkitPro\libogc\include;$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath> - <NMakeForcedIncludes Condition="'$(Configuration)|$(Platform)'=='GC|Win32'">$(NMakeForcedIncludes)</NMakeForcedIncludes> - <NMakeAssemblySearchPath Condition="'$(Configuration)|$(Platform)'=='GC|Win32'">$(NMakeAssemblySearchPath)</NMakeAssemblySearchPath> - <NMakeForcedUsingAssemblies Condition="'$(Configuration)|$(Platform)'=='GC|Win32'">$(NMakeForcedUsingAssemblies)</NMakeForcedUsingAssemblies> - <OutDir Condition="'$(Configuration)|$(Platform)'=='GC|x64'">build\</OutDir> - <IntDir Condition="'$(Configuration)|$(Platform)'=='GC|x64'">build\</IntDir> - <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='GC|x64'">..\..\Binary\$(Platform)\DSPTool.exe -h dsp_code tests\dsp_test.ds -make HW_TYPE=gamecube</NMakeBuildCommandLine> - <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='GC|x64'">make HW_TYPE=gamecube clean -..\..\Binary\$(Platform)\DSPTool.exe -h dsp_code tests\dsp_code.ds -make HW_TYPE=gamecube</NMakeReBuildCommandLine> - <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='GC|x64'">make HW_TYPE=gamecube clean</NMakeCleanCommandLine> - <NMakeOutput Condition="'$(Configuration)|$(Platform)'=='GC|x64'">DSPSpyGC.dol</NMakeOutput> - <NMakePreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='GC|x64'">$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions> - <NMakeIncludeSearchPath Condition="'$(Configuration)|$(Platform)'=='GC|x64'">$(ProjectDir);C:\devkitPro\libogc\include;$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath> - <NMakeForcedIncludes Condition="'$(Configuration)|$(Platform)'=='GC|x64'">$(NMakeForcedIncludes)</NMakeForcedIncludes> - <NMakeAssemblySearchPath Condition="'$(Configuration)|$(Platform)'=='GC|x64'">$(NMakeAssemblySearchPath)</NMakeAssemblySearchPath> - <NMakeForcedUsingAssemblies Condition="'$(Configuration)|$(Platform)'=='GC|x64'">$(NMakeForcedUsingAssemblies)</NMakeForcedUsingAssemblies> - </PropertyGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Wii|Win32'"> - <BuildLog> - <Path>build\BuildLog.htm</Path> - </BuildLog> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Wii|x64'"> - <BuildLog> - <Path>build\BuildLog.htm</Path> - </BuildLog> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='GC|Win32'"> - <BuildLog> - <Path>build\BuildLogGC.htm</Path> - </BuildLog> - </ItemDefinitionGroup> - <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='GC|x64'"> - <BuildLog> - <Path>build\BuildLogGC.htm</Path> - </BuildLog> - </ItemDefinitionGroup> - <ItemGroup> - <None Include="tests\arith_test.ds" /> - <None Include="tests\dr_test.ds" /> - <None Include="tests\dsp_base.inc" /> - <None Include="tests\dsp_test.ds" /> - <None Include="tests\ir_test.ds" /> - <None Include="tests\ld_test.ds" /> - <None Include="tests\mul_test.ds" /> - <None Include="tests\neg_test.ds" /> - <None Include="tests\op_test.ds" /> - <None Include="tests\unk_regs_test.ds" /> - <None Include="util\createtest.pl" /> - <None Include="util\dump_roms.ds" /> - <None Include="templates\if_test.tpl" /> - <None Include="templates\tst_test.tpl" /> - <None Include="..\..\docs\DSP\dsp_rom.txt" /> - <None Include="..\..\docs\DSP\unlockmemcard.ds" /> - <None Include="build.sh" /> - <None Include="Makefile" /> - <None Include="sbuild.sh" /> - </ItemGroup> - <ItemGroup> - <ClCompile Include="dsp_interface.cpp" /> - <ClCompile Include="real_dsp.cpp" /> - <ClCompile Include="main_spy.cpp" /> - </ItemGroup> - <ItemGroup> - <ClInclude Include="dsp_interface.h" /> - <ClInclude Include="mem_dump.h" /> - <ClInclude Include="real_dsp.h" /> - <ClInclude Include="Config.h" /> - <ClInclude Include="ConsoleHelper.h" /> - <ClInclude Include="dspregs.h" /> - </ItemGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets"> - </ImportGroup> -</Project> diff --git a/Source/DSPSpy/DSPSpy.vcxproj.filters b/Source/DSPSpy/DSPSpy.vcxproj.filters deleted file mode 100644 index 5e52860f1d..0000000000 --- a/Source/DSPSpy/DSPSpy.vcxproj.filters +++ /dev/null @@ -1,96 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <ItemGroup> - <Filter Include="tests"> - <UniqueIdentifier>{14442340-8be2-4dcf-93f5-421cce23dd31}</UniqueIdentifier> - </Filter> - <Filter Include="util"> - <UniqueIdentifier>{1a60828b-80d9-4b23-8b84-9116bf6e2630}</UniqueIdentifier> - </Filter> - <Filter Include="templates"> - <UniqueIdentifier>{ad8f68d7-73a6-4192-b188-125d2bef2a7a}</UniqueIdentifier> - </Filter> - <Filter Include="DSP Interface"> - <UniqueIdentifier>{251f77cb-8874-4bf1-bb2a-f7e6b009a0fb}</UniqueIdentifier> - </Filter> - <Filter Include="Misc uCodes"> - <UniqueIdentifier>{80668e83-9986-4389-b587-21e9c6734589}</UniqueIdentifier> - </Filter> - </ItemGroup> - <ItemGroup> - <None Include="tests\arith_test.ds"> - <Filter>tests</Filter> - </None> - <None Include="tests\dr_test.ds"> - <Filter>tests</Filter> - </None> - <None Include="tests\dsp_base.inc"> - <Filter>tests</Filter> - </None> - <None Include="tests\dsp_test.ds"> - <Filter>tests</Filter> - </None> - <None Include="tests\ir_test.ds"> - <Filter>tests</Filter> - </None> - <None Include="tests\ld_test.ds"> - <Filter>tests</Filter> - </None> - <None Include="tests\mul_test.ds"> - <Filter>tests</Filter> - </None> - <None Include="tests\neg_test.ds"> - <Filter>tests</Filter> - </None> - <None Include="tests\op_test.ds"> - <Filter>tests</Filter> - </None> - <None Include="tests\unk_regs_test.ds"> - <Filter>tests</Filter> - </None> - <None Include="util\createtest.pl"> - <Filter>util</Filter> - </None> - <None Include="util\dump_roms.ds"> - <Filter>util</Filter> - </None> - <None Include="templates\if_test.tpl"> - <Filter>templates</Filter> - </None> - <None Include="templates\tst_test.tpl"> - <Filter>templates</Filter> - </None> - <None Include="..\..\docs\DSP\dsp_rom.txt"> - <Filter>Misc uCodes</Filter> - </None> - <None Include="..\..\docs\DSP\unlockmemcard.ds"> - <Filter>Misc uCodes</Filter> - </None> - <None Include="build.sh" /> - <None Include="Makefile" /> - <None Include="sbuild.sh" /> - </ItemGroup> - <ItemGroup> - <ClCompile Include="dsp_interface.cpp"> - <Filter>DSP Interface</Filter> - </ClCompile> - <ClCompile Include="real_dsp.cpp"> - <Filter>DSP Interface</Filter> - </ClCompile> - <ClCompile Include="main_spy.cpp" /> - </ItemGroup> - <ItemGroup> - <ClInclude Include="dsp_interface.h"> - <Filter>DSP Interface</Filter> - </ClInclude> - <ClInclude Include="mem_dump.h"> - <Filter>DSP Interface</Filter> - </ClInclude> - <ClInclude Include="real_dsp.h"> - <Filter>DSP Interface</Filter> - </ClInclude> - <ClInclude Include="Config.h" /> - <ClInclude Include="ConsoleHelper.h" /> - <ClInclude Include="dspregs.h" /> - </ItemGroup> -</Project> diff --git a/Source/DSPTool/CMakeLists.txt b/Source/DSPTool/CMakeLists.txt index 7656bc8ce6..fb0cc41bcb 100644 --- a/Source/DSPTool/CMakeLists.txt +++ b/Source/DSPTool/CMakeLists.txt @@ -1,5 +1,5 @@ add_executable(dsptool DSPTool.cpp StubHost.cpp) target_link_libraries(dsptool core) -if(NOT APPLE) +if(NOT APPLE AND NOT WIN32) install(TARGETS dsptool RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) endif() diff --git a/Source/DSPTool/DSPTool.vcxproj b/Source/DSPTool/DSPTool.vcxproj deleted file mode 100644 index 3cfb41b5fc..0000000000 --- a/Source/DSPTool/DSPTool.vcxproj +++ /dev/null @@ -1,48 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <Import Project="..\VSProps\Base.Macros.props" /> - <Import Project="$(VSPropsDir)Base.Targets.props" /> - <PropertyGroup Label="Globals"> - <ProjectGuid>{1970D175-3DE8-4738-942A-4D98D1CDBF64}</ProjectGuid> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <Import Project="$(VSPropsDir)Configuration.Application.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings" /> - <ImportGroup Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="$(VSPropsDir)Base.props" /> - <Import Project="$(VSPropsDir)Base.Dolphin.props" /> - <Import Project="$(VSPropsDir)PCHUse.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <ItemDefinitionGroup> - <Link> - <SubSystem>Console</SubSystem> - </Link> - </ItemDefinitionGroup> - <ItemGroup> - <ClCompile Include="DSPTool.cpp" /> - <ClCompile Include="StubHost.cpp" /> - </ItemGroup> - <ItemGroup> - <Text Include="CMakeLists.txt" /> - </ItemGroup> - <ItemGroup> - <ProjectReference Include="$(CoreDir)DolphinLib.vcxproj"> - <Project>{D79392F7-06D6-4B4B-A39F-4D587C215D3A}</Project> - </ProjectReference> - </ItemGroup> - <Import Project="$(ExternalsDir)fmt\exports.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets"> - </ImportGroup> - <!--Copy the .exe to binary output folder--> - <ItemGroup> - <SourceFiles Include="$(TargetPath)" /> - </ItemGroup> - <Target Name="AfterBuild" Inputs="@(SourceFiles)" Outputs="@(SourceFiles -> '$(BinaryOutputDir)%(Filename)%(Extension)')"> - <Message Text="Copy: @(SourceFiles) -> $(BinaryOutputDir)" Importance="High" /> - <Copy SourceFiles="@(SourceFiles)" DestinationFolder="$(BinaryOutputDir)" /> - </Target> -</Project>
\ No newline at end of file diff --git a/Source/DSPTool/DSPTool.vcxproj.filters b/Source/DSPTool/DSPTool.vcxproj.filters deleted file mode 100644 index d5c714c943..0000000000 --- a/Source/DSPTool/DSPTool.vcxproj.filters +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <ItemGroup> - <Filter Include="TestData"> - <UniqueIdentifier>{0b70242b-1d98-432f-a60e-d4ca0674852e}</UniqueIdentifier> - </Filter> - </ItemGroup> - <ItemGroup> - <None Include="Testdata\dsp_test.bin"> - <Filter>TestData</Filter> - </None> - <None Include="Testdata\dsp_test.S"> - <Filter>TestData</Filter> - </None> - <None Include="Testdata\hermes.bin"> - <Filter>TestData</Filter> - </None> - <None Include="Testdata\hermes.s"> - <Filter>TestData</Filter> - </None> - </ItemGroup> - <ItemGroup> - <ClCompile Include="DSPTool.cpp" /> - <ClCompile Include="StubHost.cpp" /> - </ItemGroup> - <ItemGroup> - <Text Include="CMakeLists.txt" /> - </ItemGroup> -</Project>
\ No newline at end of file diff --git a/Source/PCH/pch.vcxproj b/Source/PCH/pch.vcxproj deleted file mode 100644 index 1ee60c60c0..0000000000 --- a/Source/PCH/pch.vcxproj +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <Import Project="..\VSProps\Base.Macros.props" /> - <Import Project="$(VSPropsDir)Base.Targets.props" /> - <PropertyGroup Label="Globals"> - <ProjectGuid>{76563A7F-1011-4EAD-B667-7BB18D09568E}</ProjectGuid> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <Import Project="$(VSPropsDir)Configuration.StaticLibrary.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings" /> - <ImportGroup Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="$(VSPropsDir)Base.props" /> - <Import Project="$(VSPropsDir)Base.Dolphin.props" /> - <Import Project="$(VSPropsDir)PCHCreate.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <ItemGroup> - <ClInclude Include="pch.h" /> - </ItemGroup> - <ItemGroup> - <ClCompile Include="pch.cpp" /> - </ItemGroup> - <Import Project="$(ExternalsDir)fmt\exports.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets"> - </ImportGroup> -</Project>
\ No newline at end of file diff --git a/Source/UnitTests/UnitTests.vcxproj b/Source/UnitTests/UnitTests.vcxproj deleted file mode 100644 index 0cda54ff88..0000000000 --- a/Source/UnitTests/UnitTests.vcxproj +++ /dev/null @@ -1,129 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <Import Project="..\VSProps\Base.Macros.props" /> - <Import Project="$(VSPropsDir)Base.Targets.props" /> - <PropertyGroup Label="Globals"> - <ProjectGuid>{474661E7-C73A-43A6-AFEE-EE1EC433D49E}</ProjectGuid> - </PropertyGroup> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> - <Import Project="$(VSPropsDir)Configuration.Application.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> - <ImportGroup Label="ExtensionSettings" /> - <ImportGroup Label="PropertySheets"> - <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> - <Import Project="$(VSPropsDir)Base.props" /> - <Import Project="$(VSPropsDir)Base.Dolphin.props" /> - <Import Project="$(VSPropsDir)PCHUse.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <ItemDefinitionGroup> - <!--This project also compiles gtest--> - <ClCompile> - <AdditionalIncludeDirectories>$(ExternalsDir)gtest\googletest\include;$(ExternalsDir)gtest\googletest;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - </ClCompile> - <Link> - <SubSystem>Console</SubSystem> - </Link> - </ItemDefinitionGroup> - <ItemGroup> - <ClInclude Include="Core\DSP\DSPTestBinary.h" /> - <ClInclude Include="Core\DSP\DSPTestText.h" /> - <ClInclude Include="Core\DSP\HermesBinary.h" /> - <ClInclude Include="Core\DSP\HermesText.h" /> - <ClInclude Include="Core\IOS\ES\TestBinaryData.h" /> - <ClInclude Include="Core\PowerPC\TestValues.h" /> - <ClInclude Include="Core\StubJit.h" /> - </ItemGroup> - <ItemGroup> - <!--gtest is rather small, so just include it into the build here--> - <ClCompile Include="$(ExternalsDir)gtest\googletest\src\gtest-all.cc" /> - <!--Lump all of the tests (and supporting code) into one binary--> - <ClCompile Include="UnitTestsMain.cpp" /> - <ClCompile Include="Common\BitFieldTest.cpp" /> - <ClCompile Include="Common\BitSetTest.cpp" /> - <ClCompile Include="Common\BitUtilsTest.cpp" /> - <ClCompile Include="Common\BlockingLoopTest.cpp" /> - <ClCompile Include="Common\BusyLoopTest.cpp" /> - <ClCompile Include="Common\CommonFuncsTest.cpp" /> - <ClCompile Include="Common\Crypto\EcTest.cpp" /> - <ClCompile Include="Common\Crypto\SHA1Test.cpp" /> - <ClCompile Include="Common\CWDemanglerTest.cpp" /> - <ClCompile Include="Common\EnumFormatterTest.cpp" /> - <ClCompile Include="Common\EventTest.cpp" /> - <ClCompile Include="Common\FileUtilTest.cpp" /> - <ClCompile Include="Common\FixedSizeQueueTest.cpp" /> - <ClCompile Include="Common\FlagTest.cpp" /> - <ClCompile Include="Common\FloatUtilsTest.cpp" /> - <ClCompile Include="Common\MathUtilTest.cpp" /> - <ClCompile Include="Common\MutexTest.cpp" /> - <ClCompile Include="Common\NandPathsTest.cpp" /> - <ClCompile Include="Common\SettingsHandlerTest.cpp" /> - <ClCompile Include="Common\SPSCQueueTest.cpp" /> - <ClCompile Include="Common\StringUtilTest.cpp" /> - <ClCompile Include="Common\SwapTest.cpp" /> - <ClCompile Include="Common\WorkQueueThreadTest.cpp" /> - <ClCompile Include="Core\CoreTimingTest.cpp" /> - <ClCompile Include="Core\DSP\DSPAcceleratorTest.cpp" /> - <ClCompile Include="Core\DSP\DSPAssemblyTest.cpp" /> - <ClCompile Include="Core\DSP\DSPTestBinary.cpp" /> - <ClCompile Include="Core\DSP\DSPTestText.cpp" /> - <ClCompile Include="Core\DSP\HermesBinary.cpp" /> - <ClCompile Include="Core\DSP\HermesText.cpp" /> - <ClCompile Include="Core\IOS\ES\FormatsTest.cpp" /> - <ClCompile Include="Core\IOS\FS\FileSystemTest.cpp" /> - <ClCompile Include="Core\IOS\USB\SkylandersTest.cpp" /> - <ClCompile Include="Core\MMIOTest.cpp" /> - <ClCompile Include="Core\PageFaultTest.cpp" /> - <ClCompile Include="Core\PatchAllowlistTest.cpp" /> - <ClCompile Include="Core\PowerPC\DivUtilsTest.cpp" /> - <ClCompile Include="Core\PowerPC\PageTableHostMappingTest.cpp" /> - <ClCompile Include="VideoCommon\VertexLoaderTest.cpp" /> - <ClCompile Include="StubHost.cpp" /> - </ItemGroup> - <!--Arch-specific tests--> - <ItemGroup Condition="'$(Platform)'=='x64'"> - <ClCompile Include="Common\x64EmitterTest.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64Common\ConvertDoubleToSingle.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64Common\Fres.cpp" /> - <ClCompile Include="Core\PowerPC\Jit64Common\Frsqrte.cpp" /> - </ItemGroup> - <ItemGroup Condition="'$(Platform)'=='ARM64'"> - <ClCompile Include="Common\Arm64EmitterTest.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\ConvertSingleDouble.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\FPRF.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\Fres.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\Frsqrte.cpp" /> - <ClCompile Include="Core\PowerPC\JitArm64\MovI2R.cpp" /> - </ItemGroup> - <ItemGroup> - <Text Include="CMakeLists.txt" /> - </ItemGroup> - <ItemGroup> - <ProjectReference Include="$(CoreDir)DolphinLib.vcxproj"> - <Project>{D79392F7-06D6-4B4B-A39F-4D587C215D3A}</Project> - </ProjectReference> - <ProjectReference Include="$(DolphinRootDir)Languages\Languages.vcxproj"> - <Project>{0e033be3-2e08-428e-9ae9-bc673efa12b5}</Project> - </ProjectReference> - </ItemGroup> - <Import Project="$(ExternalsDir)Bochs_disasm\exports.props" /> - <Import Project="$(ExternalsDir)fmt\exports.props" /> - <Import Project="$(ExternalsDir)glslang\exports.props" /> - <Import Project="$(ExternalsDir)picojson\exports.props" /> - <Import Project="$(ExternalsDir)rcheevos\exports.props" /> - <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> - <ImportGroup Label="ExtensionTargets"> - </ImportGroup> - <ItemGroup> - <DataSysFiles Include="$(DolphinRootDir)Data\**\Sys\**\*.*" /> - </ItemGroup> - <Target Name="AfterBuild"> - <Message Text="Copying Data directory..." Importance="High" /> - <RemoveDir Directories="$(TargetDir)Sys" /> - <Copy SourceFiles="@(DataSysFiles)" DestinationFolder="$(TargetDir)%(RecursiveDir)" SkipUnchangedFiles="True" /> - </Target> - <Target Name="ExecUnitTests" AfterTargets="AfterBuild" Condition="'$(RunUnitTests)'=='true'"> - <!--This is only executed via msbuild, VS test runner automatically does this--> - <Exec Command="$(TargetPath)" /> - </Target> -</Project> diff --git a/Source/UnitTests/UnitTests.vcxproj.user b/Source/UnitTests/UnitTests.vcxproj.user deleted file mode 100644 index 7747d6682d..0000000000 --- a/Source/UnitTests/UnitTests.vcxproj.user +++ /dev/null @@ -1,9 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <PropertyGroup> - <!--For some stupid reason this has to be in the .user file...--> - <!--This is only used to allow UnitTests to find OpenAL DLL...kinda hacky--> - <LocalDebuggerWorkingDirectory>$(BinaryOutputDir)</LocalDebuggerWorkingDirectory> - <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor> - </PropertyGroup> -</Project>
\ No newline at end of file diff --git a/Source/VSProps/Base.Dolphin.props b/Source/VSProps/Base.Dolphin.props deleted file mode 100644 index 93d58df583..0000000000 --- a/Source/VSProps/Base.Dolphin.props +++ /dev/null @@ -1,97 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <!--This file is included by Dolphin code only--> - <PropertyGroup> - <TargetName Condition="'$(ConfigurationType)'=='Application'">$(ProjectName)$(TargetSuffix)</TargetName> - <EnableCubeb>true</EnableCubeb> - </PropertyGroup> - <ItemDefinitionGroup> - <ClCompile> - <!--Dolphin includes are relative to Source\Core--> - <AdditionalIncludeDirectories>$(CoreDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - - <!--For now, header-only libs don't have their own vcxproj/exports, so just supply their include paths to all Dolphin code--> - <AdditionalIncludeDirectories>$(ExternalsDir)FFmpeg-bin\$(Platform)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ExternalsDir)OpenAL\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ExternalsDir)expr\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ExternalsDir)Vulkan-Headers\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ExternalsDir)VulkanMemoryAllocator\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ExternalsDir)watcher\watcher\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(ExternalsDir)wil\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <!--WIL doesn't have it's own vcxproj/exports, and no externals reference WIL, so this is fine to define only for Dolphin--> - <PreprocessorDefinitions>WIL_SUPPRESS_EXCEPTIONS;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <!--Prevent Windows.h from defining some common stuff--> - <PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;%(PreprocessorDefinitions)</PreprocessorDefinitions> - - <!-- - It would be a good idea to disable _CRT_SECURE_NO_WARNINGS and get rid of e.g. C string parsing funcs - Unfortunately this also complains about FILE* APIs, which can be inconvenient to replace. - --> - <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <!--IOS net code uses some ipv4-only functions which are marked as deprecated by winsock2--> - <PreprocessorDefinitions>_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <!--Currently needed for some code in StringUtil used only on Android--> - <PreprocessorDefinitions>_SILENCE_CXX17_CODECVT_HEADER_DEPRECATION_WARNING;%(PreprocessorDefinitions)</PreprocessorDefinitions> - - <!--Dolphin-specific definitions--> - <PreprocessorDefinitions Condition="'$(Platform)'=='x64'">_ARCH_64=1;_M_X86_64=1;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions Condition="'$(Platform)'=='ARM64'">_ARCH_64=1;_M_ARM_64=1;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions>USE_UPNP;__LIBUSB__;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions>USE_ANALYTICS=1;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions>USE_DISCORD_PRESENCE;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions>HAVE_FFMPEG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions Condition="'$(Platform)'=='x64'">HAS_OPENGL;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions>HAS_VULKAN;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions>HAS_LIBMGBA;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions Condition="'$(AutoUpdate)'!='false'">AUTOUPDATE;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions>HAVE_SDL3;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions>USE_RETRO_ACHIEVEMENTS;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions>RC_CLIENT_SUPPORTS_HASH;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions>RC_CLIENT_SUPPORTS_RAINTEGRATION;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions Condition="'$(EnableCubeb)'!='false'">HAVE_CUBEB;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions>HAVE_CPPIPC;%(PreprocessorDefinitions)</PreprocessorDefinitions> - - <!-- Warnings one may want to ignore when using Level4. - 4201 nonstandard extension used : nameless struct/union - 4127 conditional expression is constant - 4100 'identifier' : unreferenced formal parameter - 4244 'conversion' conversion from 'type1' to 'type2', possible loss of data - Level4 warns if type1==int and there is narrowing - 4121 'symbol' : alignment of a member was sensitive to packing - 4324 Padding was added at the end of a structure because you specified a __declspec(align) value. - 4714 function 'function' marked as __forceinline not inlined - --> - <DisableSpecificWarnings>4201;4127;4100;4244;4121;4324;4714;%(DisableSpecificWarnings)</DisableSpecificWarnings> - <!-- Level4 warnings which should eventually be enabled - 4245 'conversion' : conversion from 'type1' to 'type2', signed/unsigned mismatch - Currently jits use some annoying code patterns which makes this common - --> - <DisableSpecificWarnings>4245;%(DisableSpecificWarnings)</DisableSpecificWarnings> - <!-- Enable some off-by-default warnings - 4263 Non-virtual member function hides base class virtual function - 4265 Class has virtual functions, but destructor is not virtual - 4946 Reinterpret cast between related types - --> - <AdditionalOptions>/w44263 /w44265 /w44946 %(AdditionalOptions)</AdditionalOptions> - </ClCompile> - <!--Link Base:Application--> - <Link Condition="'$(ConfigurationType)'=='Application'"> - <AdditionalDependencies>avrt.lib;comctl32.lib;iphlpapi.lib;ksuser.lib;setupapi.lib;shlwapi.lib;winmm.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies> - <AdditionalDependencies Condition="'$(Platform)'=='x64'">opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies> - <!--FFmpeg and the libs it pulls in--> - <AdditionalLibraryDirectories>$(ExternalsDir)FFmpeg-bin\$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> - <AdditionalDependencies>avcodec.lib;avformat.lib;avutil.lib;swresample.lib;swscale.lib;bcrypt.lib;%(AdditionalDependencies)</AdditionalDependencies> - <!--libcurl needs Crypt32.lib--> - <AdditionalDependencies>Crypt32.lib;%(AdditionalDependencies)</AdditionalDependencies> - <!--Needed to set window decorations for dark theme--> - <AdditionalDependencies>dwmapi.lib;%(AdditionalDependencies)</AdditionalDependencies> - <!--See Common/CompatPatches.cpp--> - <ForceSymbolReferences>enableCompatPatches</ForceSymbolReferences> - </Link> - <!--Link Debug:Application--> - <Link Condition="'$(Configuration)'=='Debug' And '$(ConfigurationType)'=='Application'"> - <!--The FFmpeg we link against uses non-debug msvcrt. Ignore it.--> - <AdditionalOptions>/NODEFAULTLIB:msvcrt %(AdditionalOptions)</AdditionalOptions> - </Link> - </ItemDefinitionGroup> -</Project> diff --git a/Source/VSProps/Base.Macros.props b/Source/VSProps/Base.Macros.props deleted file mode 100644 index b2d936ed66..0000000000 --- a/Source/VSProps/Base.Macros.props +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <PropertyGroup Label="UserMacros"> - <DolphinRelease Condition="'$(DolphinRelease)'!='true' or '$(Configuration)'!='Release'">false</DolphinRelease> - <TargetSuffix></TargetSuffix> - <TargetSuffix Condition="'$(Configuration)'=='Debug'">D</TargetSuffix> - <DolphinRootDir>$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..\..'))\</DolphinRootDir> - <BuildRootDir>$(DolphinRootDir)Build\</BuildRootDir> - <BinaryRootDir>$(DolphinRootDir)Binary\</BinaryRootDir> - <BinaryOutputDir>$(BinaryRootDir)$(Platform)\</BinaryOutputDir> - <ExternalsDir>$(DolphinRootDir)Externals\</ExternalsDir> - <SourceDir>$(DolphinRootDir)Source\</SourceDir> - <CoreDir>$(SourceDir)Core\</CoreDir> - <CScript>%windir%\System32\cscript</CScript> - <VSPropsDir>$(SourceDir)VSProps\</VSPropsDir> - </PropertyGroup> - <PropertyGroup> - <BaseMacrosImported>true</BaseMacrosImported> - </PropertyGroup> -</Project>
\ No newline at end of file diff --git a/Source/VSProps/Base.Targets.props b/Source/VSProps/Base.Targets.props deleted file mode 100644 index 99c93fa3e0..0000000000 --- a/Source/VSProps/Base.Targets.props +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <ItemGroup Label="ProjectConfigurations"> - <ProjectConfiguration Include="Debug|ARM64"> - <Configuration>Debug</Configuration> - <Platform>ARM64</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Debug|x64"> - <Configuration>Debug</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|ARM64"> - <Configuration>Release</Configuration> - <Platform>ARM64</Platform> - </ProjectConfiguration> - <ProjectConfiguration Include="Release|x64"> - <Configuration>Release</Configuration> - <Platform>x64</Platform> - </ProjectConfiguration> - </ItemGroup> - <PropertyGroup Label="Globals"> - <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion> - </PropertyGroup> -</Project>
\ No newline at end of file diff --git a/Source/VSProps/Base.props b/Source/VSProps/Base.props deleted file mode 100644 index 2d22925d7b..0000000000 --- a/Source/VSProps/Base.props +++ /dev/null @@ -1,101 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <!-- - This file is included by *everything* (Externals and Dolphin code). - If you want to define something that only applies to Dolphin code, use Base.Dolphin.props - --> - <Import Project="Base.Macros.props" Condition="'$(BaseMacrosImported)'==''" /> - <PropertyGroup> - <IntDir>$(BuildRootDir)$(Platform)\$(Configuration)\$(ProjectName)\</IntDir> - <OutDir>$(IntDir)bin\</OutDir> - <!--Set link /INCREMENTAL:NO to remove some entropy from builds (assists with deterministic build)--> - <LinkIncremental>false</LinkIncremental> - <!--Disable vcpkg to avoid accidentally linking to its packages--> - <VcpkgEnabled>false</VcpkgEnabled> - </PropertyGroup> - <ItemDefinitionGroup> - <!--ClCompile Base--> - <ClCompile> - <!--Base external header policy: ignore all warnings except template instantiations, and disable analyzer--> - <ExternalWarningLevel>TurnOffAllWarnings</ExternalWarningLevel> - <ExternalTemplatesDiagnostics>true</ExternalTemplatesDiagnostics> - <DisableAnalyzeExternal>true</DisableAnalyzeExternal> - <TreatAngleIncludeAsExternal>true</TreatAngleIncludeAsExternal> - - <WarningLevel>Level4</WarningLevel> - <TreatWarningAsError>true</TreatWarningAsError> - <IntrinsicFunctions>true</IntrinsicFunctions> - <RuntimeTypeInfo>false</RuntimeTypeInfo> - <FunctionLevelLinking>true</FunctionLevelLinking> - <MultiProcessorCompilation>true</MultiProcessorCompilation> - <!--This doesn't seem required but nice to be future-proof--> - <LanguageStandard_C>stdc17</LanguageStandard_C> - <!--Enable latest C++ standard--> - <LanguageStandard>stdcpplatest</LanguageStandard> - <BuildStlModules>false</BuildStlModules> - <!--Enable Standard Conformance--> - <ConformanceMode>true</ConformanceMode> - <!--Enforce some behaviors as standards-conformant when they don't default as such.--> - <AdditionalOptions>/Zc:__cplusplus,enumTypes,externConstexpr,preprocessor,templateScope,throwingNew /volatile:iso %(AdditionalOptions)</AdditionalOptions> - <!--Enable detailed debug info--> - <AdditionalOptions>/Zo %(AdditionalOptions)</AdditionalOptions> - <!--Treat sources as utf-8--> - <AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions> - <DebugInformationFormat>OldStyle</DebugInformationFormat> - <DiagnosticsFormat>Caret</DiagnosticsFormat> - <!-- - A (currently) hidden switch, like /Brepro, furthermore enabling warnings about non-deterministic code. - This may be advantageous over /Brepro, which inits __DATE__, __TIME__, etc. equal to 1 (and allows - them to be redefined), which could have unexpected results. - --> - <AdditionalOptions>/experimental:deterministic %(AdditionalOptions)</AdditionalOptions> - <!-- - pathmap replaces path prefixes of source files with a hardcoded value, assisting with keeping output - files uniform even if actually built from different locations. The mapped path doesn't really need full - drive prefix, but it keeps things human readable. Note the trailing "\" is actually to be escaped by a - preceding "\" in the expanded variable. - --> - <AdditionalOptions>/pathmap:"$(DolphinRootDir)\"=d:\ %(AdditionalOptions)</AdditionalOptions> - <AdditionalOptions>/pathmap:"$(WindowsSdkDir)\"=w:\ %(AdditionalOptions)</AdditionalOptions> - <AdditionalOptions>/pathmap:"$(VCToolsetsDir)\"=v:\ %(AdditionalOptions)</AdditionalOptions> - </ClCompile> - <!--ClCompile Debug--> - <ClCompile Condition="'$(Configuration)'=='Debug'"> - <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> - <Optimization>Disabled</Optimization> - </ClCompile> - <ClCompile Condition="'$(Configuration)'=='Debug' And '$(EnableASAN)'=='true'"> - <BasicRuntimeChecks>Default</BasicRuntimeChecks> - </ClCompile> - <!--ClCompile Release--> - <ClCompile Condition="'$(Configuration)'=='Release'"> - <InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion> - <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed> - <OmitFramePointers>true</OmitFramePointers> - <StringPooling>true</StringPooling> - <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> - <BufferSecurityCheck>false</BufferSecurityCheck> - <AdditionalOptions>/Gw /Zc:checkGwOdr %(AdditionalOptions)</AdditionalOptions> - <WholeProgramOptimization Condition="'$(DolphinRelease)'=='true'">true</WholeProgramOptimization> - </ClCompile> - <!--Link Base--> - <Link> - <GenerateDebugInformation>true</GenerateDebugInformation> - <TreatLinkerWarningAsErrors>true</TreatLinkerWarningAsErrors> - <AdditionalOptions>/experimental:deterministic %(AdditionalOptions)</AdditionalOptions> - </Link> - <!--Link Release--> - <Link Condition="'$(Configuration)'=='Release'"> - <LinkTimeCodeGeneration Condition="'$(DolphinRelease)'=='true'">UseLinkTimeCodeGeneration</LinkTimeCodeGeneration> - <OptimizeReferences>true</OptimizeReferences> - <EnableCOMDATFolding>true</EnableCOMDATFolding> - </Link> - <Lib> - <TreatLibWarningAsErrors>true</TreatLibWarningAsErrors> - <LinkTimeCodeGeneration Condition="'$(DolphinRelease)'=='true'">true</LinkTimeCodeGeneration> - <AdditionalOptions>/experimental:deterministic %(AdditionalOptions)</AdditionalOptions> - </Lib> - </ItemDefinitionGroup> - <ItemGroup /> -</Project> diff --git a/Source/VSProps/ClDisableAllWarnings.props b/Source/VSProps/ClDisableAllWarnings.props deleted file mode 100644 index bd683fd3bd..0000000000 --- a/Source/VSProps/ClDisableAllWarnings.props +++ /dev/null @@ -1,11 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <ImportGroup Label="PropertySheets" /> - <PropertyGroup Label="UserMacros" /> - <ItemDefinitionGroup> - <ClCompile> - <WarningLevel>TurnOffAllWarnings</WarningLevel> - </ClCompile> - </ItemDefinitionGroup> - <ItemGroup /> -</Project>
\ No newline at end of file diff --git a/Source/VSProps/Configuration.Application.props b/Source/VSProps/Configuration.Application.props deleted file mode 100644 index 8af23ba8a2..0000000000 --- a/Source/VSProps/Configuration.Application.props +++ /dev/null @@ -1,7 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <Import Project="Configuration.Base.props" /> - <PropertyGroup Label="Configuration"> - <ConfigurationType>Application</ConfigurationType> - </PropertyGroup> -</Project>
\ No newline at end of file diff --git a/Source/VSProps/Configuration.Base.props b/Source/VSProps/Configuration.Base.props deleted file mode 100644 index d36fe43c89..0000000000 --- a/Source/VSProps/Configuration.Base.props +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <PropertyGroup Label="Configuration"> - <PlatformToolset>v143</PlatformToolset> - <CharacterSet>Unicode</CharacterSet> - <PreferredToolArchitecture Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)'=='x64'">x64</PreferredToolArchitecture> - <PreferredToolArchitecture Condition="'$([System.Runtime.InteropServices.RuntimeInformation]::OSArchitecture)'=='ARM64'">ARM64</PreferredToolArchitecture> - <!-- To use ASAN, just uncomment this. For simplicity, you should run VS/windbg/etc - (including the built executables themselves) after using vcvarsall or similar to setup - environment, as ASAN needs access to libs and executables in the toolchain paths. - --> - <!--<EnableASAN>true</EnableASAN>--> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)'=='Debug'" Label="Configuration"> - <UseDebugLibraries>true</UseDebugLibraries> - </PropertyGroup> - <PropertyGroup Condition="'$(Configuration)'=='Release'" Label="Configuration"> - <UseDebugLibraries>false</UseDebugLibraries> - </PropertyGroup> -</Project>
\ No newline at end of file diff --git a/Source/VSProps/Configuration.StaticLibrary.props b/Source/VSProps/Configuration.StaticLibrary.props deleted file mode 100644 index 0da3b50064..0000000000 --- a/Source/VSProps/Configuration.StaticLibrary.props +++ /dev/null @@ -1,7 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <Import Project="Configuration.Base.props" /> - <PropertyGroup Label="Configuration"> - <ConfigurationType>StaticLibrary</ConfigurationType> - </PropertyGroup> -</Project>
\ No newline at end of file diff --git a/Source/VSProps/Configuration.Utility.props b/Source/VSProps/Configuration.Utility.props deleted file mode 100644 index d91a9836ba..0000000000 --- a/Source/VSProps/Configuration.Utility.props +++ /dev/null @@ -1,7 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <Import Project="Configuration.Base.props" /> - <PropertyGroup Label="Configuration"> - <ConfigurationType>Utility</ConfigurationType> - </PropertyGroup> -</Project>
\ No newline at end of file diff --git a/Source/VSProps/PCHCommon.props b/Source/VSProps/PCHCommon.props deleted file mode 100644 index 6572d42fbd..0000000000 --- a/Source/VSProps/PCHCommon.props +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <ImportGroup Label="PropertySheets" /> - <PropertyGroup Label="UserMacros" /> - <ItemDefinitionGroup> - <ClCompile> - <!-- - Creator and ALL users of PCH must have exact same compiler settings! - In dolphin we accomplish this by sharing settings between targets with - Base.props. - --> - <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile> - <!-- - This file will be included by other projects, so we have to manually set - the output path. - --> - <PrecompiledHeaderOutputFile>$(BuildRootDir)$(Platform)\$(Configuration)\pch\pch.pch</PrecompiledHeaderOutputFile> - </ClCompile> - </ItemDefinitionGroup> -</Project>
\ No newline at end of file diff --git a/Source/VSProps/PCHCreate.props b/Source/VSProps/PCHCreate.props deleted file mode 100644 index c51d2803a6..0000000000 --- a/Source/VSProps/PCHCreate.props +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <ImportGroup Label="PropertySheets"> - <Import Project="PCHCommon.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <ItemDefinitionGroup> - <ClCompile> - <PrecompiledHeader>Create</PrecompiledHeader> - </ClCompile> - </ItemDefinitionGroup> - <!-- - Hacks preventing PCH creators from spending time generating .lib files. - It is just an optimization to save some time since only .obj outputs are - really needed by PCH users. - --> - <ItemDefinitionGroup> - <Lib> - <!-- - Clear the output path so projects referencing this one don't try to drag - in a nonexistent .lib file. - --> - <OutputFile /> - </Lib> - </ItemDefinitionGroup> - <!--This prevents the _Lib target from being executed--> - <PropertyGroup> - <BuildLibTargets>$(BuildLibTargets);ClearLibCompiled</BuildLibTargets> - </PropertyGroup> - <Target Name="ClearLibCompiled"> - <PropertyGroup> - <LibCompiled>false</LibCompiled> - </PropertyGroup> - </Target> - <!--End .lib hacks--> -</Project> diff --git a/Source/VSProps/PCHUse.props b/Source/VSProps/PCHUse.props deleted file mode 100644 index 4bfb5fc673..0000000000 --- a/Source/VSProps/PCHUse.props +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <ImportGroup Label="PropertySheets"> - <Import Project="Base.Macros.props" Condition="'$(BaseMacrosImported)'==''" /> - <Import Project="PCHCommon.props" /> - </ImportGroup> - <PropertyGroup Label="UserMacros" /> - <ItemDefinitionGroup> - <ClCompile> - <PrecompiledHeader>Use</PrecompiledHeader> - <ForcedIncludeFiles>pch.h</ForcedIncludeFiles> - </ClCompile> - </ItemDefinitionGroup> - <ItemGroup> - <ProjectReference Include="$(SourceDir)PCH\pch.vcxproj"> - <Project>{76563A7F-1011-4EAD-B667-7BB18D09568E}</Project> - <Private>false</Private> - <LinkLibraryDependencies>true</LinkLibraryDependencies> - <UseLibraryDependencyInputs>true</UseLibraryDependencyInputs> - </ProjectReference> - </ItemGroup> -</Project>
\ No newline at end of file diff --git a/Source/VSProps/QtCompile.props b/Source/VSProps/QtCompile.props deleted file mode 100644 index bc3c4fe410..0000000000 --- a/Source/VSProps/QtCompile.props +++ /dev/null @@ -1,152 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project> - <PropertyGroup Label="UserMacros"> - <ExternalsQtDir>$(ExternalsDir)Qt\Qt6.8.3\</ExternalsQtDir> - <QtTargetDirDefault>$(ExternalsQtDir)$(Platform)\</QtTargetDirDefault> - <QTDIR Condition="Exists('$(QtTargetDirDefault)') And ('$(QTDIR)'=='' Or !Exists('$(QTDIR)'))">$(QtTargetDirDefault)</QTDIR> - <QTDIR Condition="Exists('$(QTDIR)') And !HasTrailingSlash('$(QTDIR)')">$(QTDIR)\</QTDIR> - <QtDirValid>false</QtDirValid> - <QtDirValid Condition="Exists('$(QTDIR)')">true</QtDirValid> - <QtIncludeDir>$(QTDIR)include\</QtIncludeDir> - <QtLibDir>$(QTDIR)lib\</QtLibDir> - <QtBinDir>$(QTDIR)bin\</QtBinDir> - <QtPluginsDir>$(QTDIR)plugins\</QtPluginsDir> - <QtToolOutDir>$(IntDir)</QtToolOutDir> - <QtDebugSuffix>d</QtDebugSuffix> - <QtHostToolsDir>$(ExternalsQtDir)x64\</QtHostToolsDir> - <QtLibSuffix Condition="'$(Configuration)'=='Debug'">$(QtDebugSuffix)</QtLibSuffix> - <QtPluginFolder>QtPlugins</QtPluginFolder> - </PropertyGroup> - <ItemDefinitionGroup> - <ClCompile> - <PreprocessorDefinitions Condition="'$(Configuration)'=='Release'">QT_NO_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions>QT_DLL;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <PreprocessorDefinitions>QT_USE_QSTRINGBUILDER;QT_NO_CAST_FROM_ASCII;QT_NO_CAST_TO_ASCII;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <AdditionalIncludeDirectories>$(QtIncludeDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(QtIncludeDir)QtCore;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(QtIncludeDir)QtGui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <AdditionalIncludeDirectories>$(QtIncludeDir)QtWidgets;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <!-- - As of Qt6.3, Qt needs user code deriving from certain Qt types to have RTTI (AS WELL AS MOC, UGH). - Do NOT enable in dolphin outside of Qt-dependant code. - --> - <RuntimeTypeInfo>true</RuntimeTypeInfo> - </ClCompile> - <Link> - <AdditionalLibraryDirectories>$(QtLibDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> - <AdditionalDependencies>Qt6Core$(QtLibSuffix).lib;Qt6Gui$(QtLibSuffix).lib;Qt6Widgets$(QtLibSuffix).lib;%(AdditionalDependencies)</AdditionalDependencies> - <SubSystem>Windows</SubSystem> - <!-- - <AdditionalOptions>"/manifestdependency:type='Win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\" %(AdditionalOptions)</AdditionalOptions> - --> - </Link> - </ItemDefinitionGroup> - - <!-- - Use the moc implementation provided by (somewhat out-of-date version of) "Qt VS Tools" - see: https://code.qt.io/cgit/qt-labs/vstools.git/tree/QtMSBuild - This provides a wrapper around moc which deals with parallel dispatch to moc, - as well as creating ClCompile inputs from the moc outputs. - Note that we currently pass the same ClCompile.PreprocessorDefinitions to moc, - but not the include paths, as passing include paths drastically slows down - moc, and it doesn't appear to actually need them anyway. - --> - <Import Project="qt_globals.targets"/> - <Import Project="qt_tasks.targets"/> - <ItemDefinitionGroup> - <!--From qtmoc.props--> - <QtMoc> - <ExecutionDescription>moc %(Identity)</ExecutionDescription> - <QTDIR>$(QtHostToolsDir)</QTDIR> - <InputFile>%(FullPath)</InputFile> - <!-- - moc task does not properly detect outputs are outdated if Qt version changes - (possibly causing Q_MOC_OUTPUT_REVISION to change). This *might* be because we - don't give moc the include paths, so it doesn't notice the version change. - In any case, we can workaround it by manually changing output path when needed - to avoid conflicts. (the numeric postfix is the value of Q_MOC_OUTPUT_REVISION) - --> - <OutputFile>$(QtToolOutDir)moc_68\moc_%(Filename).cpp</OutputFile> - <QtMocDir>$(QtToolOutDir)moc_68\</QtMocDir> - <QtMocFileName>moc_%(Filename).cpp</QtMocFileName> - <DynamicSource>output</DynamicSource> - <ParallelProcess>true</ParallelProcess> - <CommandLineTemplate>[AllOptions] [AdditionalOptions]</CommandLineTemplate> - <Outputs>%(OutputFile)</Outputs> - <OverrideClCompile>false</OverrideClCompile> - </QtMoc> - </ItemDefinitionGroup> - <Import Project="qtmoc.targets" /> - <Target Name="QtCheckQtDir" BeforeTargets="QtMocInit" Condition="!$(QtDirValid)"> - <Error Text="QTDIR not set or non-existent (pull the submodule?)" /> - </Target> - - <!--Similar story with rcc--> - <ItemDefinitionGroup> - <!--From qtrcc.props--> - <QtRcc> - <ExecutionDescription>rcc %(Identity)</ExecutionDescription> - <QTDIR>$(QtHostToolsDir)</QTDIR> - <InputFile>%(FullPath)</InputFile> - <OutputFile>$(QtToolOutDir)rcc\qrc_%(Filename).cpp</OutputFile> - <QtRccDir>$(QtToolOutDir)rcc\</QtRccDir> - <QtRccFileName>qrc_%(Filename).cpp</QtRccFileName> - <InitFuncName>%(Filename)</InitFuncName> - <Compression>default</Compression> - <TwoPass>false</TwoPass> - <DynamicSource>output</DynamicSource> - <ParallelProcess>true</ParallelProcess> - <CommandLineTemplate>[AllOptions] [AdditionalOptions]</CommandLineTemplate> - <Outputs>%(OutputFile)</Outputs> - </QtRcc> - </ItemDefinitionGroup> - <Import Project="qtrcc.targets" /> - - <!--Expose the new targets to VS--> - <ItemGroup> - <PropertyPageSchema Include="$(MSBuildThisFileDirectory)$(MSBuildThisFileName).xml" /> - </ItemGroup> - - <!--Copy the needed dlls--> - <ItemGroup> - <QtDllNames_ Include="Qt6Core;Qt6Gui;Qt6Widgets;Qt6Svg" /> - <QtDllNames Include="@(QtDllNames_ -> '%(Identity)$(QtLibSuffix).dll')" /> - <QtDllsSrc Include="@(QtDllNames -> '$(QtBinDir)%(Identity)')" /> - <QtDllsDst Include="@(QtDllNames -> '$(BinaryOutputDir)%(Identity)')" /> - <QtPluginNames_ Include="iconengines\qsvgicon;imageformats\qsvg;platforms\qdirect2d;platforms\qwindows;styles\qmodernwindowsstyle"/> - <QtPluginNames Include="@(QtPluginNames_ -> '%(Identity)$(QtLibSuffix).dll')" /> - <QtPluginsSrc Include="@(QtPluginNames -> '$(QtPluginsDir)%(Identity)')" /> - <QtPluginsDst Include="@(QtPluginNames -> '$(BinaryOutputDir)$(QtPluginFolder)\%(Identity)')" /> - </ItemGroup> - <PropertyGroup> - <QtConfFile>$(BinaryOutputDir)qt.conf</QtConfFile> - </PropertyGroup> - <Target Name="QtCopyBinaries" - AfterTargets="Build" - Inputs="@(QtDllsSrc);@(QtPluginsSrc)" - Outputs="@(QtDllsDst);@(QtPluginsDst)"> - <Copy - SourceFiles="@(QtDllsSrc)" - DestinationFiles="@(QtDllsDst)" - SkipUnchangedFiles="true" - /> - <Copy - SourceFiles="@(QtPluginsSrc)" - DestinationFiles="@(QtPluginsDst)" - SkipUnchangedFiles="true" - /> - </Target> - <Target Name="QtCreateConf" - BeforeTargets="QtCopyBinaries" - Condition="!Exists('$(QtConfFile)')"> - <!-- - Create a file which tells Qt where to look for "plugins". - Otherwise Qt only looks in ./<subtype>/type.dll instead of ./$(QtPluginFolder)/<subtype>/type.dll, which is messy - --> - <WriteLinesToFile - File="$(QtConfFile)" - Lines="[Paths];Plugins = ./$(QtPluginFolder)" - Overwrite="true" - /> - </Target> -</Project> diff --git a/Source/VSProps/qt_globals.targets b/Source/VSProps/qt_globals.targets deleted file mode 100644 index 60abfacc32..0000000000 --- a/Source/VSProps/qt_globals.targets +++ /dev/null @@ -1,558 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- -/**************************************************************************** -** -** Copyright (C) 2018 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the Qt VS Tools. -** -** $QT_BEGIN_LICENSE:GPL-EXCEPT$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ ---> - -<!-- -/////////////////////////////////////////////////////////////////////////////////////////////////// -/// Qt/MSBuild global definitions -/////////////////////////////////////////////////////////////////////////////////////////////////// -// --> -<Project> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Build dependencies - // --> - <PropertyGroup> - <BuildDependsOn> - QtVersion; - $(BuildDependsOn); - Qt - </BuildDependsOn> - <CleanDependsOn> - $(CleanDependsOn); - QtClean - </CleanDependsOn> - <DesignTimeBuildInitTargets> - $(DesignTimeBuildInitTargets); - Qt - </DesignTimeBuildInitTargets> - <ComputeCompileInputsTargets> - $(ComputeCompileInputsTargets); - Qt - </ComputeCompileInputsTargets> - <BeforeClCompileTargets> - $(BeforeClCompileTargets); - Qt - </BeforeClCompileTargets> - <ComputeLinkInputsTargets> - $(ComputeLinkInputsTargets); - Qt - </ComputeLinkInputsTargets> - </PropertyGroup> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Qt/MSBuild global properties - // --> - <Import Project="..\version.targets" Condition="Exists('..\version.targets')"/> - <PropertyGroup> - <QtMsBuildVersion>$(QtVSToolsVersion)</QtMsBuildVersion> - <QtDebug Condition="'$(QtDebug)' == ''">false</QtDebug> - <QtLogFilePath Condition="'$(QtLogFilePath)' == ''" - >$([System.IO.Path]::Combine($(ProjectDir),$(IntDir)qt_work.log))</QtLogFilePath> - <QtMaxProcs Condition="'$(QtMaxProcs)' == ''" - >$([System.Environment]::ProcessorCount)</QtMaxProcs> - </PropertyGroup> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtGetDefaultClCompile - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Get default C++ properties - // --> - <Target Name="QtGetDefaultClCompile"> - <ItemGroup> - <ClCompile Include="DefaultClCompile"/> - </ItemGroup> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtClean - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Clean-up from previous build - // --> - <Target Name="QtClean"> - <Message Importance="High" Condition="'$(QtDebug)' == 'true'" Text="## Qt Clean"/> - <Delete Files="$(QtLogFilePath)"/> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtVersion - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Print debug message with Qt/MSBuild version - // --> - <Target Name="QtVersion"> - <Message Importance="High" Condition="'$(QtDebug)' == 'true'" - Text="Qt/MSBuild v$(QtMsBuildVersion) ($(MSBuildThisFileDirectory))"/> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtPrepare - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Prepare Qt build: read and parse work log file - // --> - <Target Name="QtPrepare" - Condition="'$(QtSkipWork)' != 'true'" - DependsOnTargets="$(QtDependsOn)" - BeforeTargets="QtWorkPrepare"> - - <Message Importance="High" Condition="'$(QtDebug)' == 'true'" Text="#### QtPrepare"/> - - <ReadLinesFromFile File="$(QtLogFilePath)"> - <Output TaskParameter="Lines" ItemName="QtLogData"/> - </ReadLinesFromFile> - <ItemGroup Condition="'@(QtLogData)' != ''"> - <QtWorkLog - Include="@(QtLogData->'$([System.String]::Copy('%(QtLogData.Identity)').Split('|')[0])')"> - <Hash>$([System.String]::Copy('%(QtLogData.Identity)').Split('|')[1])</Hash> - </QtWorkLog> - </ItemGroup> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtWorkPrepare - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Analyze work request and decide if the Qt tool needs to be called or if the output from the - // previous call is still valid. - // --> - <Target Name="QtWorkPrepare" DependsOnTargets="$(QtDependsOn);$(QtBuildTargets)" - Condition="'$(QtSkipWork)' != 'true'" - Inputs="%(QtWork.WorkType)(%(QtWork.Identity))" - Outputs="@(QtWork->'####### Don't skip this target #######')"> - - <Message Importance="High" Condition="'$(QtDebug)' == 'true' AND '@(QtWork)' != ''" - Text="## QtWorkPrepare %(QtWork.Identity)" /> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Calculate hash for the requested work item, based on its associated tool and options - // --> - <GetItemHash Condition="'@(QtWork)' != ''" - Item="@(QtWork)" Keys="Identity;WorkType;ToolPath;Options"> - <Output TaskParameter="Hash" PropertyName="work_hash" /> - </GetItemHash> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Try to find entry in Qt work log for the requested work item; get logged hash - // --> - <PropertyGroup Condition="'@(QtWork)' != ''"> - <work_key>@(QtWork->'%(WorkType)(%(Identity))')</work_key> - <dependencies_changed>@(QtWork->'%(DependenciesChanged)')</dependencies_changed> - <input_changed>@(QtWork->'%(InputChanged)')</input_changed> - <project_changed - Condition="'$(dependencies_changed)' == 'true' AND '$(input_changed)' != 'true'" - >true</project_changed> - </PropertyGroup> - - <FindInList Condition="'@(QtWork)' != '' AND '$(input_changed)' != 'true'" - CaseSensitive="false" List="@(QtWorkLog)" ItemSpecToFind="$(work_key)"> - <Output TaskParameter="ItemFound" ItemName="log_entry"/> - </FindInList> - - <PropertyGroup Condition="'@(QtWork)' != ''"> - <log_hash Condition="'@(log_entry)' != ''">@(log_entry->'%(Hash)')</log_hash> - </PropertyGroup> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Skip work item if: - // * work is not needed: - // - input was not modified - // - AND project was not modified OR command line did not change (i.e. hashes are the same) - // * OR we're in a design-time build - // --> - <PropertyGroup> - <do_work - Condition="'$(input_changed)' == 'true' - OR ('$(project_changed)' == 'true' AND '$(log_hash)' != '$(work_hash)')" - >true</do_work> - <skip_work - Condition="'$(do_work)' != 'true' OR '$(DesignTimeBuild)' == 'true'" - >true</skip_work> - </PropertyGroup> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Skip work item - // --> - <ItemGroup Condition="'@(QtWork)' != '' AND '$(skip_work)' == 'true'"> - <QtWorkResult Include="@(QtWork)"> - <ExitCode>0</ExitCode> - <Skipped>true</Skipped> - </QtWorkResult> - <QtWork Remove="@(QtWork)" /> - </ItemGroup> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Generate new work log entry and ensure path to output exists - // --> - <ItemGroup Condition="'@(QtWork)' != '' AND '$(skip_work)' != 'true'"> - <QtWorkLog Remove="$(work_key)"/> - <QtWorkLog Include="$(work_key)"> - <Hash>$(work_hash)</Hash> - </QtWorkLog> - </ItemGroup> - - <MakeDir Condition="'@(QtWork)' != '' AND '$(skip_work)' != 'true'" - Directories="$([System.IO.Path]::GetDirectoryName(%(QtWork.OutputFile)))"/> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Clean-up - // --> - <PropertyGroup> - <work_key/> - <log_hash/> - <dependencies_changed/> - <input_changed/> - <project_changed/> - <do_work/> - <skip_work/> - </PropertyGroup> - <ItemGroup> - <log_entry Remove="@(log_entry)"/> - </ItemGroup> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtWork - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Run Qt tools and add dynamic C++ sources to build - // --> - <Target Name="QtWork" - Condition="'$(QtSkipWork)' != 'true'" - DependsOnTargets="QtWorkPrepare;QtGetDefaultClCompile"> - - <Message Importance="High" Condition="'$(QtDebug)' == 'true'" - Text="## Qt Build $(QtBuildTargets.Replace(';',' ').Trim())" /> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Run work locally in parallel processes - // --> - <QtRunWork - Condition="'$(ApplicationType)' != 'Linux' AND '@(QtWork)' != '' - AND '%(QtWork.ParallelBuild)' == 'true' - AND '$(DesignTimeBuild)' != 'true'" - QtWork="@(QtWork)" QtMaxProcs="$(QtMaxProcs)" QtDebug="$(QtDebug)"> - <Output TaskParameter="Result" ItemName="QtWorkResult" /> - </QtRunWork> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Run work locally in a single process - // --> - <QtRunWork - Condition="'$(ApplicationType)' != 'Linux' AND '@(QtWork)' != '' - AND '%(QtWork.ParallelBuild)' != 'true' - AND '$(DesignTimeBuild)' != 'true'" - QtWork="@(QtWork)" QtMaxProcs="1" QtDebug="$(QtDebug)"> - <Output TaskParameter="Result" ItemName="QtWorkResult" /> - </QtRunWork> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Run work in build host - // --> - <!-- // Translate local paths to host paths --> - <Flatten - Condition="'$(ApplicationType)' == 'Linux' - AND '@(QtWork)' != '' AND '$(DesignTimeBuild)' != 'true'" - Items="@(QtWork)" Metadata="ResourceFiles"> - <Output TaskParameter="Result" ItemName="ResourceFiles"/> - </Flatten> - <ItemGroup - Condition="'$(ApplicationType)' == 'Linux' - AND '@(QtWork)' != '' AND '$(DesignTimeBuild)' != 'true'"> - <LocalPath Include="%(QtWork.Identity)"> - <Name>InputPath</Name> - <Item>%(QtWork.Identity)</Item> - <Value>%(QtWork.Identity)</Value> - </LocalPath> - <LocalPath - Condition="'%(ResourceFiles.Identity)' != ''" - Include="@(ResourceFiles->'%(Item)')"> - <Name>InputPath</Name> - <Item>@(ResourceFiles->'%(Value)')</Item> - <Value>@(ResourceFiles->'%(Value)')</Value> - </LocalPath> - <LocalPath Include="%(QtWork.Identity)"> - <Name>OutputPath</Name> - <Item>%(QtWork.OutputFile)</Item> - <Value>%(QtWork.OutputFile)</Value> - </LocalPath> - </ItemGroup> - <HostTranslatePaths - Condition="'$(ApplicationType)' == 'Linux' - AND '@(QtWork)' != '' AND '$(DesignTimeBuild)' != 'true'" - Items="@(LocalPath)" Names="InputPath;OutputPath"> - <Output TaskParameter="Result" ItemName="HostPath"/> - </HostTranslatePaths> - <ItemGroup> - <InputPath Include="@(HostPath->WithMetadataValue('Name', 'InputPath'))" /> - <OutputPath Include="@(HostPath->WithMetadataValue('Name', 'OutputPath'))" /> - </ItemGroup> - - <!-- // Run command --> - <HostExec - Condition="'$(ApplicationType)' == 'Linux' - AND '%(Identity)' != '' AND '$(DesignTimeBuild)' != 'true'" - Message="@(QtWork->'%(WorkType) %(Identity)')" - Command="@(QtWork->'%(ToolPath) %(Options)')" - Inputs="@(InputPath)" - Outputs="@(OutputPath)" - RemoteTarget="$(ResolvedRemoteTarget)" - RemoteProjectDir="$(_ResolvedRemoteProjectDir)"> - </HostExec> - - <!-- // Generate result item --> - <ItemGroup - Condition="'$(ApplicationType)' == 'Linux' - AND '@(QtWork)' != '' AND '$(DesignTimeBuild)' != 'true'"> - <QtWorkResult Include="@(QtWork)"> - <ExitCode>0</ExitCode> - </QtWorkResult> - </ItemGroup> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Save tracking log of files read during build; used by VS to check the up-to-date status - // --> - <ItemGroup Condition="'$(DesignTimeBuild)' != 'true'"> - <read_log Include="^%(QtWorkResult.FullPath);%(QtWorkResult.AdditionalDependencies)" - Condition="'%(QtWorkResult.ExitCode)' == '0' AND '%(QtWorkResult.DisableLog)' != 'true'"> - <WorkType>%(QtWorkResult.WorkType)</WorkType> - </read_log> - <read_log> - <Path Condition="$([System.String]::Copy('%(Identity)').StartsWith('^'))">%(Identity)</Path> - <Path Condition="!$([System.String]::Copy('%(Identity)').StartsWith('^'))" - >$([System.IO.Path]::Combine('$(MSBuildProjectDirectory)','%(Identity)'))</Path> - </read_log> - </ItemGroup> - - <WriteLinesToFile - Condition="'@(read_log)' != ''" - File="$(TLogLocation)%(read_log.WorkType).read.1u.tlog" - Lines="@(read_log->MetaData('Path')->ToUpperInvariant());" - Overwrite="true" - Encoding="Unicode"/> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Save tracking log of files written during build; used by VS to check the up-to-date status - // --> - <ItemGroup Condition="'$(DesignTimeBuild)' != 'true'"> - <write_log Include="^%(QtWorkResult.FullPath);%(QtWorkResult.OutputFile)" - Condition="'%(QtWorkResult.ExitCode)' == '0' AND '%(QtWorkResult.DisableLog)' != 'true'"> - <WorkType>%(QtWorkResult.WorkType)</WorkType> - </write_log> - <write_log> - <Path Condition="$([System.String]::Copy('%(Identity)').StartsWith('^'))">%(Identity)</Path> - <Path Condition="!$([System.String]::Copy('%(Identity)').StartsWith('^'))" - >$([System.IO.Path]::Combine('$(MSBuildProjectDirectory)','%(Identity)'))</Path> - </write_log> - </ItemGroup> - - <WriteLinesToFile Condition="'@(write_log)' != ''" - File="$(TLogLocation)%(write_log.WorkType).write.1u.tlog" - Lines="@(write_log->MetaData('Path')->ToUpperInvariant());" - Overwrite="true" Encoding="Unicode"/> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Log output files; this is used by VS to determine what files to delete on "Clean" - // --> - <ItemGroup Condition="'$(DesignTimeBuild)' != 'true'"> - <clean_log Include="%(QtWorkResult.OutputFile)" - Condition="'%(QtWorkResult.ExitCode)' == '0'"> - <Source>@(QtWorkResult, '|')</Source> - </clean_log> - </ItemGroup> - - <WriteLinesToFile Condition="'@(clean_log)' != ''" - File="$(TLogLocation)$(ProjectName).write.1u.tlog" - Lines="^%(clean_log.Source);@(clean_log->'%(Fullpath)')" - Encoding="Unicode"/> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Log calls to Qt tools; used in QtWorkPrepare to detect changes to the options of Qt tools - // --> - <WriteLinesToFile Condition="'@(QtWorkLog)' != '' AND '$(DesignTimeBuild)' != 'true'" - File="$(QtLogFilePath)" - Lines="@(QtWorkLog->'%(Identity)|%(Hash)')" - Overwrite="true" Encoding="Unicode"/> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Generate build error if a Qt tool did not terminate correctly - // --> - <Error - Condition="'%(QtWorkResult.ExitCode)' != '' - AND '%(QtWorkResult.ExitCode)' != '0' - AND '$(DesignTimeBuild)' != 'true'" - File="%(QtWorkResult.Identity)" Code="%(QtWorkResult.ExitCode)" - Text="%(QtWorkResult.WorkType) (%(QtWorkResult.ToolPath))"/> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Add dynamic C++ sources to build - // --> - <ItemGroup> - <QtWork_ClCompile - Condition="'%(QtWorkResult.ExitCode)' == '0' AND '%(QtWorkResult.ClCompile)' != ''" - Include="@(QtWorkResult->'%(ClCompile)')"/> - <QtWork_ClCompile - Condition="Exists('$(QtVarsOutputDir)\qtvars_plugin_import.cpp')" - Include="$(QtVarsOutputDir)\qtvars_plugin_import.cpp"/> - </ItemGroup> - <ItemGroup Condition="'$(ApplicationType)' == 'Linux'"> - <QtWork_ClCompile Condition="'%(QtWork_ClCompile.ObjectFileName)' == ''"> - <ObjectFileName>$(IntDir)%(Filename).o</ObjectFileName> - </QtWork_ClCompile> - </ItemGroup> - - <!-- // Copy default C++ compiler properties --> - <Expand Condition="'@(QtWork_ClCompile)' != ''" - Items="@(QtWork_ClCompile)" - BaseItem="@(ClCompile->WithMetadataValue('Identity', 'DefaultClCompile'))"> - <Output TaskParameter="Result" ItemName="QtWork_ClCompile_Expanded"/> - </Expand> - - <!-- // Force pre-compiled header include --> - <ItemGroup Condition="'$(ApplicationType)' != 'Linux'"> - <QtWork_ClCompile_Expanded> - <AdditionalIncludeDirectories - >$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - <ForcedIncludeFiles Condition="'%(PrecompiledHeader)' == 'Use'" - >%(PrecompiledHeaderFile)</ForcedIncludeFiles> - </QtWork_ClCompile_Expanded> - </ItemGroup> - - <!-- // Add C++ source items and clean-up temp items --> - <ItemGroup> - <ClCompile Include="@(QtWork_ClCompile_Expanded)"/> - <QtWork_ClCompile_Expanded Remove="@(QtWork_ClCompile_Expanded)"/> - <QtWork_ClCompile Remove="@(QtWork_ClCompile)"/> - </ItemGroup> - - <!--// If sources were manually selected (e.g. by the 'Compile' option in the context menu for - // project items), add generated C++ sources to the list of selected files --> - <PropertyGroup Condition="'$(SelectedFiles)' != ''"> - <SelectedClCompile>@(QtWorkResult->'%(ClCompile)')</SelectedClCompile> - </PropertyGroup> - <PropertyGroup Condition="'$(SelectedClCompile)' != ''"> - <SelectedFiles>$(SelectedFiles);$(SelectedClCompile)</SelectedFiles> - </PropertyGroup> - <ItemGroup Condition="'$(SelectedClCompile)' != ''"> - <SelectedFiles Include="$(SelectedClCompile)"/> - </ItemGroup> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Update C++ sources with generated information - // --> - <PropertyGroup> - <QtIncludePath>@(QtIncludePath->Distinct())</QtIncludePath> - </PropertyGroup> - <ItemGroup> - <ClCompile_Updated Include="@(ClCompile)"> - <AdditionalIncludeDirectories ->$(QtIncludePath);%(ClCompile.AdditionalIncludeDirectories)</AdditionalIncludeDirectories> - </ClCompile_Updated> - <ClCompile Remove="@(ClCompile)"/> - <ClCompile Include="@(ClCompile_Updated)"/> - <ClCompile_Updated Remove="@(ClCompile_Updated)"/> - </ItemGroup> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Clean-up - // --> - <ItemGroup> - <QtWork Remove="@(QtWork)"/> - <QtWorkResult Remove="@(QtWorkResult)"/> - <QtWorkLog Remove="@(QtWorkLog)"/> - <read_log Remove="@(read_log)"/> - <write_log Remove="@(write_log)"/> - <clean_log Remove="@(clean_log)"/> - </ItemGroup> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET Qt - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Root Qt target - // --> - <Target Name="Qt" DependsOnTargets="QtPrepare;QtWork" BeforeTargets="FixupCLCompileOptions"> - <ItemGroup> - <ClCompile Remove="DefaultClCompile" /> - </ItemGroup> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtOuterBuild - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Run targets in $(QtOuterBuildDependsOn) and then recursively invoke build - // --> - <Target Name="QtOuterBuild" DependsOnTargets="$(QtOuterBuildDependsOn)"> - <!--// Invoke inner build: recursive build in second MSBuild instance --> - <MSBuild - Projects="$(MSBuildProjectFullPath)" - Targets="Build" - Properties="QtInnerBuild=$(MSBuildProjectFullPath);RandomFileName=$(RandomFileName)"> - </MSBuild> - </Target> - - <PropertyGroup - Condition="'$(QtInnerBuild)' == '' AND '$(DesignTimeBuild)' != 'true'"> - <!--// Outer build: invoke inner build --> - <BuildDependsOn>$(QtOuterBuildPrepare);QtOuterBuild;$(QtOuterBuildFinalize)</BuildDependsOn> - <QtInnerBuild>$(MSBuildProjectFullPath)</QtInnerBuild> - <RandomFileName>$([System.IO.Path]::GetRandomFileName())</RandomFileName> - </PropertyGroup> - - <PropertyGroup - Condition="'$(QtInnerBuild)' != '$(MSBuildProjectFullPath)' AND '$(DesignTimeBuild)' != 'true'"> - <!--// Dependent project inner build: skip build --> - <BuildDependsOn>$(QtOuterBuildPrepare);$(QtOuterBuildFinalize)</BuildDependsOn> - </PropertyGroup> - -</Project> diff --git a/Source/VSProps/qt_tasks.targets b/Source/VSProps/qt_tasks.targets deleted file mode 100644 index b87ccf039b..0000000000 --- a/Source/VSProps/qt_tasks.targets +++ /dev/null @@ -1,1110 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- -/**************************************************************************** -** -** Copyright (C) 2018 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the Qt VS Tools. -** -** $QT_BEGIN_LICENSE:GPL-EXCEPT$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ ---> - -<!-- -/////////////////////////////////////////////////////////////////////////////////////////////////// -// Helper inline tasks used by the Qt/MSBuild targets -// --> -<Project> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TASK ListQrc - ///////////////////////////////////////////////////////////////////////////////////////////////// - // List resource paths in a QRC file. - // Parameters: - // in string QrcFilePath: path to QRC file - // out string[] Result: paths to files referenced in QRC - // --> - <UsingTask TaskName="ListQrc" - TaskFactory="CodeTaskFactory" - AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.Core.dll"> - <ParameterGroup> - <QrcFilePath ParameterType="System.String" Required="true" /> - <Result ParameterType="System.String[]" Output="true" /> - </ParameterGroup> - <Task> - <Reference Include="System.Xml"/> - <Reference Include="System.Xml.Linq"/> - <Using Namespace="System.Xml.Linq"/> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - XDocument qrc = XDocument.Load(QrcFilePath, LoadOptions.SetLineInfo); - IEnumerable<XElement> files = qrc - .Element("RCC") - .Elements("qresource") - .Elements("file"); - Uri QrcPath = new Uri(QrcFilePath); - Result = files - .Select(x => new Uri(QrcPath, x.Value).LocalPath) - .ToArray(); - ]]> - </Code> - </Task> - </UsingTask> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TASK GetItemHash - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Calculate an hash code (Deflate + Base64) for an item, given a list of metadata to use as key - // Parameters: - // in ITaskItem Item: item for which the hash will be calculated - // in string[] Keys: list of names of the metadata to use as item key - // out string Hash: hash code (Base64 representation of Deflate'd UTF-8 item key) - // --> - <UsingTask TaskName="GetItemHash" - TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll"> - <ParameterGroup> - <Item ParameterType="Microsoft.Build.Framework.ITaskItem" Required="true" /> - <Keys ParameterType="System.String[]" Required="true" /> - <Hash Output="true" ParameterType="System.String" /> - </ParameterGroup> - <Task> - <Using Namespace="System"/> - <Using Namespace="System.Text"/> - <Using Namespace="System.IO"/> - <Using Namespace="System.IO.Compression"/> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - var data = Encoding.UTF8.GetBytes(string.Concat(Keys.OrderBy(x => x) - .Select(x => string.Format("[{0}={1}]", x, Item.GetMetadata(x)))) - .ToUpper()); - using (var dataZipped = new MemoryStream()) { - using (var zip = new DeflateStream(dataZipped, CompressionLevel.Fastest)) - zip.Write(data, 0, data.Length); - Hash = Convert.ToBase64String(dataZipped.ToArray()); - } - ]]> - </Code> - </Task> - </UsingTask> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TASK Expand - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Expand a list of items, taking additional metadata from a base item and from a template item. - // Parameters: - // in ITaskItem[] Items: items to expand - // in ITaskItem BaseItem: base item from which the expanded items derive - // in ITaskItem Template = null: (optional) template containing metadata to add / update - // out ITaskItem[] Result: list of new items - // --> - <UsingTask TaskName="Expand" - TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll"> - <ParameterGroup> - <Items ParameterType="Microsoft.Build.Framework.ITaskItem[]" Required="true" /> - <BaseItem ParameterType="Microsoft.Build.Framework.ITaskItem" Required="true" /> - <Template ParameterType="Microsoft.Build.Framework.ITaskItem" Required="false"/> - <Result Output="true" ParameterType="Microsoft.Build.Framework.ITaskItem[]" /> - </ParameterGroup> - <Task> - <Using Namespace="System"/> - <Using Namespace="System.Text.RegularExpressions"/> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - Result = new ITaskItem[] { }; - var reserved = new HashSet<string>(StringComparer.InvariantCultureIgnoreCase) - { - "AccessedTime", "CreatedTime", "DefiningProjectDirectory", - "DefiningProjectExtension", "DefiningProjectFullPath", "DefiningProjectName", - "Directory", "Extension", "Filename", "FullPath", "Identity", "ModifiedTime", - "RecursiveDir", "RelativeDir", "RootDir", - }; - var newItems = new List<ITaskItem>(); - foreach (var item in Items) { - var newItem = new TaskItem(item); - if (BaseItem != null) - BaseItem.CopyMetadataTo(newItem); - var itemExt = newItem.GetMetadata("Extension"); - if (!string.IsNullOrEmpty(itemExt)) - newItem.SetMetadata("Suffix", itemExt.Substring(1)); - if (Template != null) { - var metadataNames = Template.MetadataNames - .Cast<string>().Where(x => !reserved.Contains(x)); - foreach (var metadataName in metadataNames) { - var metadataValue = Template.GetMetadata(metadataName); - newItem.SetMetadata(metadataName, - Regex.Replace(metadataValue, @"(%<)(\w+)(>)", - match => newItem.GetMetadata(match.Groups[2].Value))); - } - } - newItems.Add(newItem); - } - Result = newItems.ToArray(); - ]]> - </Code> - </Task> - </UsingTask> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TASK DumpItems - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Dump contents of items as a log message. The contents are formatted as XML. - // Parameters: - // in string ItemType: type of the items; this is used as the parent node of each - // item dump - // in ITaskItem[] Items: items to dump - // in bool DumpReserved: include MSBuild reserved metadata in dump? - // in string Metadata: list of names of metadata to include in dump; omit to - // include all metadata - // --> - <UsingTask TaskName="DumpItems" - TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll"> - <ParameterGroup> - <ItemType ParameterType="System.String" Required="true" /> - <Items ParameterType="Microsoft.Build.Framework.ITaskItem[]" Required="true" /> - <DumpReserved ParameterType="System.Boolean" Required="false" /> - <Metadata ParameterType="System.String" Required="false" /> - </ParameterGroup> - <Task> - <Using Namespace="System"/> - <Using Namespace="System.Diagnostics"/> - <Using Namespace="System.Text"/> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - var reserved = new HashSet<string> - { - "AccessedTime", "CreatedTime", "DefiningProjectDirectory", - "DefiningProjectExtension", "DefiningProjectFullPath", "DefiningProjectName", - "Directory", "Extension", "Filename", "FullPath", "Identity", "ModifiedTime", - "RecursiveDir", "RelativeDir", "RootDir", - }; - if (Metadata == null) - Metadata = ""; - var requestedNames = new HashSet<string>(Metadata.Split(new[] { ';' }, - StringSplitOptions.RemoveEmptyEntries)); - var itemXml = new StringBuilder(); - if (Items.Any()) { - foreach (var item in Items) { - if (itemXml.Length > 0) - itemXml.Append("\r\n"); - itemXml.AppendFormat("<{0} Include=\"{1}\"", ItemType, item.ItemSpec); - var names = item.MetadataNames.Cast<string>() - .Where(x => (DumpReserved || !reserved.Contains(x)) - && (!requestedNames.Any() || requestedNames.Contains(x))) - .OrderBy(x => x); - if (names.Any()) { - itemXml.Append(">\r\n"); - foreach (string name in names) { - if (!DumpReserved && reserved.Contains(name)) - continue; - if (!item.MetadataNames.Cast<string>().Contains(name)) - continue; - var value = item.GetMetadata(name); - if (!string.IsNullOrEmpty(value)) - itemXml.AppendFormat(" <{0}>{1}</{0}>\r\n", name, value); - else - itemXml.AppendFormat(" <{0}/>\r\n", name); - } - itemXml.AppendFormat("</{0}>", ItemType); - } else { - itemXml.Append("/>"); - } - } - } else { - itemXml.AppendFormat("<{0}/>", ItemType); - } - Log.LogMessage(MessageImportance.High, itemXml.ToString()); - ]]> - </Code> - </Task> - </UsingTask> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TASK QtRunWork - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Run work items in parallel processes. - // Parameters: - // in ITaskItem[] QtWork: work items - // in int QtMaxProcs: maximum number of processes to run in parallel - // in bool QtDebug: generate debug messages - // out ITaskItem[] Result: list of new items with the result of each work item - // --> - <UsingTask - TaskName="QtRunWork" - TaskFactory="CodeTaskFactory" - AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll"> - <ParameterGroup> - <QtWork ParameterType="Microsoft.Build.Framework.ITaskItem[]" Required="true" /> - <QtMaxProcs ParameterType="System.Int32" Required="true" /> - <QtDebug ParameterType="System.Boolean" Required="true" /> - <Result Output="true" ParameterType="Microsoft.Build.Framework.ITaskItem[]" /> - </ParameterGroup> - <Task> - <Using Namespace="System"/> - <Using Namespace="System.IO"/> - <Using Namespace="System.Diagnostics"/> - <Using Namespace="System.Collections.Generic"/> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - Result = new ITaskItem[] { }; - bool ok = true; - var Comparer = StringComparer.InvariantCultureIgnoreCase; - var Comparison = StringComparison.InvariantCultureIgnoreCase; - - // Work item key = "%(WorkType)(%(Identity))" - Func<string, string, string> KeyString = (x, y) => string.Format("{0}{{{1}}}", x, y); - Func<ITaskItem, string> Key = (item) => - KeyString(item.GetMetadata("WorkType"), item.ItemSpec); - var workItemKeys = new HashSet<string>(QtWork.Select(x => Key(x)), Comparer); - - // Work items, indexed by %(Identity) - var workItemsByIdentity = QtWork - .GroupBy(x => x.ItemSpec, x => Key(x), Comparer) - .ToDictionary(x => x.Key, x => new List<string>(x), Comparer); - - // Work items, indexed by work item key - var workItems = QtWork.Select(x => new - { - Self = x, - Key = Key(x), - ToolPath = x.GetMetadata("ToolPath"), - Message = x.GetMetadata("Message"), - DependsOn = new HashSet<string>(comparer: Comparer, - collection: x.GetMetadata("DependsOn") - .Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries) - .Where(y => workItemsByIdentity.ContainsKey(y)) - .SelectMany(y => workItemsByIdentity[y]) - .Union(x.GetMetadata("DependsOnWork") - .Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries) - .Select(y => KeyString(y, x.ItemSpec)) - .Where(y => workItemKeys.Contains(y))) - .GroupBy(y => y, Comparer).Select(y => y.Key) - .Where(y => !y.Equals(Key(x), Comparison))), - ProcessStartInfo = new ProcessStartInfo - { - FileName = x.GetMetadata("ToolPath"), - Arguments = x.GetMetadata("Options"), - CreateNoWindow = true, - UseShellExecute = false, - RedirectStandardError = true, - RedirectStandardOutput = true, - }, - }) - // In case of items with duplicate keys, use only the first one - .GroupBy(x => x.Key, Comparer) - .ToDictionary(x => x.Key, x => x.First(), Comparer); - - // Result - var result = workItems.Values - .ToDictionary(x => x.Key, x => new TaskItem(x.Self)); - - // Dependency relation [item -> dependent items] - var dependentsOf = workItems.Values - .Where(x => x.DependsOn.Any()) - .SelectMany(x => x.DependsOn.Select(y => new { Dependent = x.Key, Dependency = y })) - .GroupBy(x => x.Dependency, x => x.Dependent, Comparer) - .ToDictionary(x => x.Key, x => new List<string>(x), Comparer); - - // Work items that are ready to start; initially queue all independent items - var workQueue = new Queue<string>(workItems.Values - .Where(x => !x.DependsOn.Any()) - .Select(x => x.Key)); - - if (QtDebug) { - Log.LogMessage(MessageImportance.High, - string.Format("## QtRunWork queueing\r\n## {0}", - string.Join("\r\n## ", workQueue))); - } - - // Postponed items; save dependent items to queue later when ready - var postponedItems = new HashSet<string>(workItems.Values - .Where(x => x.DependsOn.Any()) - .Select(x => x.Key)); - - if (QtDebug && postponedItems.Any()) { - Log.LogMessage(MessageImportance.High, - string.Format("## QtRunWork postponed dependents\r\n## {0}", - string.Join("\r\n## ", postponedItems - .Select(x => string.Format("{0} <- {1}", x, - string.Join(", ", workItems[x].DependsOn)))))); - } - - // Work items that are running; must synchronize with the exit of all processes - var running = new Queue<KeyValuePair<string, Process>>(); - - // Work items that have terminated - var terminated = new HashSet<string>(Comparer); - - // While there are work items queued, start a process for each item - while (ok && workQueue.Any()) { - - var workItem = workItems[workQueue.Dequeue()]; - Log.LogMessage(MessageImportance.High, workItem.Message); - - try { - var proc = Process.Start(workItem.ProcessStartInfo); - proc.OutputDataReceived += (object sender, DataReceivedEventArgs e) => - { - if (!string.IsNullOrEmpty(e.Data)) - Log.LogMessage(MessageImportance.High, string.Join(" ", new[] - { - (QtDebug ? "[" + (((Process)sender).Id.ToString()) + "]" : ""), - e.Data - })); - }; - proc.ErrorDataReceived += (object sender, DataReceivedEventArgs e) => - { - if (!string.IsNullOrEmpty(e.Data)) - Log.LogMessage(MessageImportance.High, string.Join(" ", new[] - { - (QtDebug ? "[" + (((Process)sender).Id.ToString()) + "]" : ""), - e.Data - })); - }; - proc.BeginOutputReadLine(); - proc.BeginErrorReadLine(); - running.Enqueue(new KeyValuePair<string, Process>(workItem.Key, proc)); - } catch (Exception e) { - Log.LogError( - string.Format("[QtRunWork] Error starting process {0}: {1}", - workItem.ToolPath, e.Message)); - ok = false; - } - - string qtDebugRunning = ""; - if (QtDebug) { - qtDebugRunning = string.Format("## QtRunWork waiting {0}", - string.Join(", ", running - .Select(x => string.Format("{0} [{1}]", x.Key, x.Value.Id)))); - } - - // Wait for process to terminate when there are processes running, and... - while (ok && running.Any() - // ...work is queued but already reached the maximum number of processes, or... - && ((workQueue.Any() && running.Count >= QtMaxProcs) - // ...work queue is empty but there are dependents that haven't yet been queued - || (!workQueue.Any() && postponedItems.Any()))) { - - var itemProc = running.Dequeue(); - workItem = workItems[itemProc.Key]; - var proc = itemProc.Value; - - if (QtDebug && !string.IsNullOrEmpty(qtDebugRunning)) { - Log.LogMessage(MessageImportance.High, qtDebugRunning); - qtDebugRunning = ""; - } - - if (proc.WaitForExit(100)) { - if (QtDebug) { - Log.LogMessage(MessageImportance.High, - string.Format("## QtRunWork exit {0} [{1}] = {2} ({3:0.00} msecs)", - workItem.Key, proc.Id, proc.ExitCode, - (proc.ExitTime - proc.StartTime).TotalMilliseconds)); - } - - // Process terminated; check exit code and close - terminated.Add(workItem.Key); - result[workItem.Key].SetMetadata("ExitCode", proc.ExitCode.ToString()); - ok &= (proc.ExitCode == 0); - proc.Close(); - - // Add postponed dependent items to work queue - if (ok && dependentsOf.ContainsKey(workItem.Key)) { - // Dependents of workItem... - var readyDependents = dependentsOf[workItem.Key] - // ...that have not yet been queued... - .Where(x => postponedItems.Contains(x) - // ...and whose depending items have all terminated. - && workItems[x].DependsOn.All(y => terminated.Contains(y))); - - if (QtDebug && readyDependents.Any()) { - Log.LogMessage(MessageImportance.High, - string.Format("## QtRunWork queueing\r\n## {0}", - string.Join("\r\n## ", readyDependents))); - } - - foreach (var dependent in readyDependents) { - postponedItems.Remove(dependent); - workQueue.Enqueue(dependent); - } - } - } else { - // Process is still running; feed it back into the running queue - running.Enqueue(itemProc); - } - } - } - - // If there are items still haven't been queued, that means a circular dependency exists - if (ok && postponedItems.Any()) { - ok = false; - Log.LogError("[QtRunWork] Error: circular dependency"); - if (QtDebug) { - Log.LogMessage(MessageImportance.High, - string.Format("## QtRunWork circularity\r\n## {0}", - string.Join("\r\n## ", postponedItems - .Select(x => string.Format("{0} <- {1}", x, - string.Join(", ", workItems[x].DependsOn)))))); - } - } - - if (ok && QtDebug) { - Log.LogMessage(MessageImportance.High, - "## QtRunWork all work queued"); - if (running.Any()) { - Log.LogMessage(MessageImportance.High, - string.Format("## QtRunWork waiting {0}", - string.Join(", ", running - .Select(x => string.Format("{0} [{1}]", x.Key, x.Value.Id))))); - } - } - - // Wait for all running processes to terminate - while (running.Any()) { - var itemProc = running.Dequeue(); - var workItem = workItems[itemProc.Key]; - var proc = itemProc.Value; - if (proc.WaitForExit(100)) { - if (QtDebug) { - Log.LogMessage(MessageImportance.High, - string.Format("## QtRunWork exit {0} [{1}] = {2} ({3:0.00} msecs)", - workItem.Key, proc.Id, proc.ExitCode, - (proc.ExitTime - proc.StartTime).TotalMilliseconds)); - } - // Process terminated; check exit code and close - result[workItem.Key].SetMetadata("ExitCode", proc.ExitCode.ToString()); - ok &= (proc.ExitCode == 0); - proc.Close(); - } else { - // Process is still running; feed it back into the running queue - running.Enqueue(itemProc); - } - } - - if (QtDebug) { - Log.LogMessage(MessageImportance.High, - string.Format("## QtRunWork result {0}", (ok ? "ok" : "FAILED!"))); - } - - Result = result.Values.ToArray(); - if (!ok) - return false; - ]]> - </Code> - </Task> - </UsingTask> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TASK ParseVarDefs - ///////////////////////////////////////////////////////////////////////////////////////////////// - // - // --> - <UsingTask TaskName="ParseVarDefs" - TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll"> - <ParameterGroup> - <QtVars Required="true" - ParameterType="System.String"/> - <OutVarDefs Output="true" - ParameterType="Microsoft.Build.Framework.ITaskItem[]"/> - </ParameterGroup> - <Task> - <Using Namespace="System"/> - <Using Namespace="System.Text"/> - <Using Namespace="System.Text.RegularExpressions"/> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - OutVarDefs = Regex.Matches(QtVars, - @"\s*(\w+)\s*(?:;|=\s*(\w*)\s*(?:\/((?:\\.|[^;\/])*)\/((?:\\.|[^;\/])*)\/)?)?") - .Cast<Match>() - .Where((Match x) => x.Groups.Count > 4 && !string.IsNullOrEmpty(x.Groups[1].Value)) - .Select((Match x) => x.Groups - .Cast<Group>() - .Select((Group y) => !string.IsNullOrEmpty(y.Value) ? y.Value : null) - .ToArray()) - .Select((string[] x) => new TaskItem(x[1], - new Dictionary<string,string> - { - { "Name" , x[2] ?? x[1] }, - { "Pattern" , x[3] ?? ".*" }, - { "Value" , x[4] ?? "$0" }, - })) - .ToArray(); - ]]> - </Code> - </Task> - </UsingTask> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TASK GetVarsFromMakefile - ///////////////////////////////////////////////////////////////////////////////////////////////// - // - // --> - <UsingTask TaskName="GetVarsFromMakefile" - TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll"> - <ParameterGroup> - <Makefile Required="true" - ParameterType="System.String"/> - <VarDefs Required="false" - ParameterType="Microsoft.Build.Framework.ITaskItem[]"/> - <ExcludeValues Required="true" - ParameterType="System.String[]"/> - <OutVars Output="true" - ParameterType="Microsoft.Build.Framework.ITaskItem[]"/> - </ParameterGroup> - <Task> - <Using Namespace="System"/> - <Using Namespace="System.Text"/> - <Using Namespace="System.Text.RegularExpressions"/> - <Using Namespace="System.IO"/> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - var makefileVars = Regex.Matches( - File.ReadAllText(Makefile), - @"^(\w+)[^\=\r\n\S]*\=[^\r\n\S]*([^\r\n]+)[\r\n]", - RegexOptions.Multiline).Cast<Match>() - .Where(x => x.Groups.Count > 2 && x.Groups[1].Success && x.Groups[2].Success - && !string.IsNullOrEmpty(x.Groups[1].Value)) - .GroupBy(x => x.Groups[1].Value) - .ToDictionary(g => g.Key, g => g.Last().Groups[2].Value); - OutVars = VarDefs - .Where(x => makefileVars.ContainsKey(x.GetMetadata("Name"))) - .Select(x => new TaskItem(x.ItemSpec, new Dictionary<string,string> - { { - "Value", - string.Join(";", Regex - .Matches(makefileVars[x.GetMetadata("Name")], x.GetMetadata("Pattern")) - .Cast<Match>() - .Select(y => Regex - .Replace(y.Value, x.GetMetadata("Pattern"), x.GetMetadata("Value"))) - .Where(y => !string.IsNullOrEmpty(y) - && !ExcludeValues.Contains(y, - StringComparer.InvariantCultureIgnoreCase)) - .ToHashSet()) - } })) - .Where(x => !string.IsNullOrEmpty(x.GetMetadata("Value"))) - .ToArray(); - ]]> - </Code> - </Task> - </UsingTask> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TASK Flatten - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Destructure items into a "flat" list of metadata. The output is a list of (Name, Value) pairs, - // each corresponding to one item metadata. Semi-colon-separated lists will also expand to many - // items in the output list, with the metadata name shared among them. - // Example: - // INPUT: - // <QtMoc> - // <InputFile>foo.h</InputFile> - // <IncludePath>C:\FOO;D:\BAR</IncludePath> - // </QtMoc> - // OUTPUT: - // <Result> - // <Name>InputFile</Name> - // <Value>foo.h</Value> - // </Result> - // <Result> - // <Name>IncludePath</Name> - // <Value>C:\FOO</Value> - // </Result> - // <Result> - // <Name>IncludePath</Name> - // <Value>D:\BAR</Value> - // </Result> - // Parameters: - // in ITaskItem[] Items: list of items to flatten - // in string[] Metadata: names of metadata to look for; omit to include all metadata - // out ITaskItem[] Result: list of metadata from all items - // --> - <UsingTask TaskName="Flatten" - TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll"> - <ParameterGroup> - <Items ParameterType="Microsoft.Build.Framework.ITaskItem[]" Required="true" /> - <Metadata ParameterType="System.String[]" Required="false" /> - <Result ParameterType="Microsoft.Build.Framework.ITaskItem[]" Output="true" /> - </ParameterGroup> - <Task> - <Using Namespace="System"/> - <Using Namespace="System.IO"/> - <Using Namespace="System.Diagnostics"/> - <Using Namespace="System.Collections.Generic"/> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - Result = new ITaskItem[] { }; - var reserved = new HashSet<string> - { - "AccessedTime", "CreatedTime", "DefiningProjectDirectory", - "DefiningProjectExtension", "DefiningProjectFullPath", "DefiningProjectName", - "Directory", "Extension", "Filename", "FullPath", "Identity", "ModifiedTime", - "RecursiveDir", "RelativeDir", "RootDir", - }; - if (Metadata == null) - Metadata = new string[0]; - var requestedNames = new HashSet<string>(Metadata.Where(x => !string.IsNullOrEmpty(x))); - var newItems = new List<ITaskItem>(); - foreach (var item in Items) { - var itemName = item.ItemSpec; - var names = item.MetadataNames.Cast<string>().Where(x => !reserved.Contains(x) - && (!requestedNames.Any() || requestedNames.Contains(x))); - foreach (string name in names) { - var values = item.GetMetadata(name).Split(';'); - foreach (string value in values.Where(v => !string.IsNullOrEmpty(v))) { - newItems.Add(new TaskItem(string.Format("{0}={1}", name, value), - new Dictionary<string, string> - { - { "Item", itemName }, - { "Name", name }, - { "Value", value }, - })); - } - } - } - Result = newItems.ToArray(); - ]]> - </Code> - </Task> - </UsingTask> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TASK HostTranslatePaths - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Translate local (Windows) paths to build host paths. This could be a Linux host for cross - // compilation, or a simple copy (i.e. "no-op") when building in Windows. - // Input and output items are in the form: - // <...> - // <Item>...</Item> - // <Name>...</Name> - // <Value>...</Value> - // </...> - // where <Item> is the local path, <Name> is a filter criteria identifier matched with the Names - // parameter, and <Value> is set to the host path in output items (for input items <Value> must - // be equal to <Item>). - // Parameters: - // in ITaskItem[] Items: input items with local paths - // in string[] Names: filter criteria; unmatched items will simply be copied (i.e. no-op) - // out ITaskItem[] Result: output items with translated host paths - // --> - <!--// Linux build over WSL --> - <UsingTask TaskName="HostTranslatePaths" TaskFactory="CodeTaskFactory" - Condition="'$(ApplicationType)' == 'Linux' AND '$(PlatformToolset)' == 'WSL_1_0'" - AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.Core.dll"> - <ParameterGroup> - <Items ParameterType="Microsoft.Build.Framework.ITaskItem[]" Required="true" /> - <Names ParameterType="System.String[]" Required="false" /> - <Result ParameterType="Microsoft.Build.Framework.ITaskItem[]" Output="true" /> - </ParameterGroup> - <Task> - <Reference Include="$(VCTargetsPath)\Application Type\Linux\1.0\liblinux.dll"/> - <Using Namespace="System.IO"/> - <Using Namespace="liblinux"/> - <Using Namespace="liblinux.IO"/> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - Result = new ITaskItem[] { }; - var newItems = new List<ITaskItem>(); - foreach (var item in Items) { - string itemName = item.GetMetadata("Name"); - string itemValue = item.GetMetadata("Value"); - if (Names.Contains(itemName)) { - if (Path.IsPathRooted(itemValue) && !itemValue.StartsWith("/")) - itemValue = PathUtils.TranslateWindowsPathToWSLPath(itemValue); - else - itemValue = itemValue.Replace(@"\", "/"); - } - newItems.Add(new TaskItem(item.ItemSpec, - new Dictionary<string, string> - { - { "Item", item.GetMetadata("Item") }, - { "Name", itemName }, - { "Value", itemValue }, - })); - } - Result = newItems.ToArray(); - ]]> - </Code> - </Task> - </UsingTask> - <!--// Linux build over SSH --> - <UsingTask TaskName="HostTranslatePaths" TaskFactory="CodeTaskFactory" - Condition="'$(ApplicationType)' == 'Linux' AND '$(PlatformToolset)' != 'WSL_1_0'" - AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.Core.dll"> - <ParameterGroup> - <Items ParameterType="Microsoft.Build.Framework.ITaskItem[]" Required="true" /> - <Names ParameterType="System.String[]" Required="false" /> - <Result ParameterType="Microsoft.Build.Framework.ITaskItem[]" Output="true" /> - </ParameterGroup> - <Task> - <Reference - Include="$(VCTargetsPath)\Application Type\Linux\1.0\Microsoft.Build.Linux.Tasks.dll"/> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - Result = new ITaskItem[] { }; - var newItems = new List<ITaskItem>(); - foreach (var item in Items) { - string itemName = item.GetMetadata("Name"); - string itemValue = item.GetMetadata("Value"); - if (Names.Contains(itemName)) { - if (Path.IsPathRooted(itemValue) && !itemValue.StartsWith("/")) { - var projectdir = new Uri(@"$(ProjectDir)"); - var itemFileName = Path.GetFileName(itemValue); - var itemDirName = Path.GetFullPath(Path.GetDirectoryName(itemValue)); - if (!itemDirName.EndsWith(@"\")) - itemDirName += @"\"; - var itemDir = new Uri(itemDirName); - if (projectdir.IsBaseOf(itemDir)) { - itemValue = projectdir.MakeRelativeUri(itemDir).OriginalString - + itemFileName; - } else { - Log.LogWarning("Unable to translate path: {0}", itemValue); - } - } else { - itemValue = itemValue.Replace(@"\", "/"); - } - } - newItems.Add(new TaskItem(item.ItemSpec, - new Dictionary<string, string> - { - { "Item", item.GetMetadata("Item") }, - { "Name", itemName }, - { "Value", itemValue }, - })); - } - Result = newItems.ToArray(); - ]]> - </Code> - </Task> - </UsingTask> - <!--// Local (Windows) build --> - <UsingTask TaskName="HostTranslatePaths" TaskFactory="CodeTaskFactory" - Condition="'$(ApplicationType)' != 'Linux'" - AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.Core.dll"> - <ParameterGroup> - <Items ParameterType="Microsoft.Build.Framework.ITaskItem[]" Required="true" /> - <Names ParameterType="System.String[]" Required="false" /> - <Result ParameterType="Microsoft.Build.Framework.ITaskItem[]" Output="true" /> - </ParameterGroup> - <Task> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - Result = Items.ToArray(); - ]]> - </Code> - </Task> - </UsingTask> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TASK HostExec - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Run command in build host. - // Parameters: - // in string Command: Command to run on the build host - // in string RedirectStdOut: Path to file to receive redirected output messages - // * can be NUL to discard messages - // in string RedirectStdErr: Path to file to receive redirected error messages - // * can be NUL to discard messages - // * can be STDOUT to apply the same redirection as output messages - // in string WorkingDirectory: Path to directory where command will be run - // in ITaskItem[] Inputs: List of local -> host path mappings for command inputs - // * item format: cf. HostTranslatePaths task - // in ITaskItem[] Outputs: List of host -> local path mappings for command outputs - // * item format: cf. HostTranslatePaths task - // in string RemoteTarget: Set by ResolveRemoteDir in SSH mode; null otherwise - // in string RemoteProjectDir: Set by ResolveRemoteDir in SSH mode; null otherwise - // in bool IgnoreExitCode: Set flag to disable build error if command failed - // out int ExitCode: status code at command exit - // --> - <!--// Linux build over WSL --> - <UsingTask TaskName="HostExec" TaskFactory="CodeTaskFactory" - Condition="'$(ApplicationType)' == 'Linux' AND '$(PlatformToolset)' == 'WSL_1_0'" - AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.Core.dll"> - <ParameterGroup> - <!--IN--> - <Message ParameterType="System.String" Required="false" /> - <Command ParameterType="System.String" Required="true" /> - <RedirectStdOut ParameterType="System.String" Required="false" /> - <RedirectStdErr ParameterType="System.String" Required="false" /> - <WorkingDirectory ParameterType="System.String" Required="false" /> - <Inputs ParameterType="Microsoft.Build.Framework.ITaskItem[]" Required="false" /> - <Outputs ParameterType="Microsoft.Build.Framework.ITaskItem[]" Required="false" /> - <RemoteTarget ParameterType="System.String" Required="false" /> - <RemoteProjectDir ParameterType="System.String" Required="false" /> - <IgnoreExitCode ParameterType="System.Boolean" Required="false" /> - <!--OUT--> - <ExitCode ParameterType="System.Int32" Output="true" /> - </ParameterGroup> - <Task> - <Reference - Include="$(VCTargetsPath)\Application Type\Linux\1.0\Microsoft.Build.Linux.Tasks.dll"/> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - if (!string.IsNullOrEmpty(Message)) - Log.LogMessage(MessageImportance.High, Message); - Command = "(" + Command + ")"; - if (RedirectStdOut == "NUL" || RedirectStdOut == "/dev/null") - Command += " 1> /dev/null"; - else if (!string.IsNullOrEmpty(RedirectStdOut)) - Command += " 1> " + RedirectStdOut; - if (RedirectStdErr == "NUL" || RedirectStdErr == "/dev/null") - Command += " 2> /dev/null"; - else if (RedirectStdErr == "STDOUT") - Command += " 2>&1"; - else if (!string.IsNullOrEmpty(RedirectStdErr)) - Command += " 2> " + RedirectStdErr; - - var createDirs = new List<string>(); - if (Inputs != null) { - createDirs.AddRange(Inputs - .Select(x => string.Format("\x24(dirname {0})", x.GetMetadata("Value")))); - } - if (Outputs != null) { - createDirs.AddRange(Outputs - .Select(x => string.Format("\x24(dirname {0})", x.GetMetadata("Value")))); - } - if (!string.IsNullOrEmpty(WorkingDirectory)) { - createDirs.Add(WorkingDirectory); - Command = string.Format("cd {0}; {1}", WorkingDirectory, Command); - } - if (createDirs.Any()) { - Command = string.Format("{0}; {1}", - string.Join("; ", createDirs.Select(x => string.Format("mkdir -p {0}", x))), - Command); - } - - var taskExec = new Microsoft.Build.Linux.WSL.Tasks.ExecuteCommand() - { - BuildEngine = BuildEngine, - HostObject = HostObject, - ProjectDir = @"$(ProjectDir)", - IntermediateDir = @"$(IntDir)", - WSLPath = @"$(WSLPath)", - Command = Command, - }; - Log.LogMessage("\r\n==== HostExec: Microsoft.Build.Linux.WSL.Tasks.ExecuteCommand"); - Log.LogMessage("ProjectDir: {0}", taskExec.ProjectDir); - Log.LogMessage("IntermediateDir: {0}", taskExec.IntermediateDir); - Log.LogMessage("WSLPath: {0}", taskExec.WSLPath); - Log.LogMessage("Command: {0}", taskExec.Command); - - bool ok = taskExec.Execute(); - Log.LogMessage("== {0} ExitCode: {1}\r\n", ok ? "OK" : "FAIL", taskExec.ExitCode); - - ExitCode = taskExec.ExitCode; - if (!ok && !IgnoreExitCode) { - Log.LogError("Host command failed."); - return false; - } - ]]> - </Code> - </Task> - </UsingTask> - <!--// Linux build over SSH --> - <UsingTask TaskName="HostExec" TaskFactory="CodeTaskFactory" - Condition="'$(ApplicationType)' == 'Linux' AND '$(PlatformToolset)' != 'WSL_1_0'" - AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.Core.dll"> - <ParameterGroup> - <!--IN--> - <Message ParameterType="System.String" Required="false" /> - <Command ParameterType="System.String" Required="true" /> - <RedirectStdOut ParameterType="System.String" Required="false" /> - <RedirectStdErr ParameterType="System.String" Required="false" /> - <WorkingDirectory ParameterType="System.String" Required="false" /> - <Inputs ParameterType="Microsoft.Build.Framework.ITaskItem[]" Required="false" /> - <Outputs ParameterType="Microsoft.Build.Framework.ITaskItem[]" Required="false" /> - <RemoteTarget ParameterType="System.String" Required="false" /> - <RemoteProjectDir ParameterType="System.String" Required="false" /> - <IgnoreExitCode ParameterType="System.Boolean" Required="false" /> - <!--OUT--> - <ExitCode ParameterType="System.Int32" Output="true" /> - </ParameterGroup> - <Task> - <Reference - Include="$(VCTargetsPath)\Application Type\Linux\1.0\Microsoft.Build.Linux.Tasks.dll"/> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - if (!string.IsNullOrEmpty(Message)) - Log.LogMessage(MessageImportance.High, Message); - var createDirs = new List<string> - { - string.Format("{0}/{1}", RemoteProjectDir, WorkingDirectory) - }; - - var localFilesToCopyRemotelyMapping = new string[0]; - if (Inputs != null) { - localFilesToCopyRemotelyMapping = Inputs - .Select(x => string.Format(@"{0}:={1}/{2}", - x.GetMetadata("Item"), - RemoteProjectDir, - x.GetMetadata("Value"))) - .ToArray(); - createDirs.AddRange(Inputs - .Select(x => string.Format("\x24(dirname {0})", x.GetMetadata("Value")))); - } - - var remoteFilesToCopyLocallyMapping = new string[0]; - if (Outputs != null) { - remoteFilesToCopyLocallyMapping = Outputs - .Select(x => string.Format(@"{0}/{1}:={2}", - RemoteProjectDir, - x.GetMetadata("Value"), - x.GetMetadata("Item"))) - .ToArray(); - createDirs.AddRange(Outputs - .Select(x => string.Format("\x24(dirname {0})", x.GetMetadata("Value")))); - } - - Command = "(" + Command + ")"; - if (RedirectStdOut == "NUL" || RedirectStdOut == "/dev/null") - Command += " 1> /dev/null"; - else if (!string.IsNullOrEmpty(RedirectStdOut)) - Command += " 1> " + RedirectStdOut; - if (RedirectStdErr == "NUL" || RedirectStdErr == "/dev/null") - Command += " 2> /dev/null"; - else if (RedirectStdErr == "STDOUT") - Command += " 2>&1"; - else if (!string.IsNullOrEmpty(RedirectStdErr)) - Command += " 2> " + RedirectStdErr; - Command = string.Format("cd {0}/{1}; {2}", RemoteProjectDir, WorkingDirectory, Command); - - var taskCopyFiles = new Microsoft.Build.Linux.Tasks.Execute() - { - BuildEngine = BuildEngine, - HostObject = HostObject, - ProjectDir = @"$(ProjectDir)", - IntermediateDir = @"$(IntDir)", - RemoteTarget = RemoteTarget, - RemoteProjectDir = RemoteProjectDir, - Command = string.Join("; ", createDirs.Select(x => string.Format("mkdir -p {0}", x))), - LocalFilesToCopyRemotelyMapping = localFilesToCopyRemotelyMapping, - }; - var taskExec = new Microsoft.Build.Linux.Tasks.Execute() - { - BuildEngine = BuildEngine, - HostObject = HostObject, - ProjectDir = @"$(ProjectDir)", - IntermediateDir = @"$(IntDir)", - RemoteTarget = RemoteTarget, - RemoteProjectDir = RemoteProjectDir, - Command = Command, - RemoteFilesToCopyLocallyMapping = remoteFilesToCopyLocallyMapping, - }; - - Log.LogMessage("\r\n==== HostExec: Microsoft.Build.Linux.Tasks.Execute"); - Log.LogMessage("ProjectDir: {0}", taskExec.ProjectDir); - Log.LogMessage("IntermediateDir: {0}", taskExec.IntermediateDir); - Log.LogMessage("RemoteTarget: {0}", taskExec.RemoteTarget); - Log.LogMessage("RemoteProjectDir: {0}", taskExec.RemoteProjectDir); - if (taskExec.LocalFilesToCopyRemotelyMapping.Any()) - Log.LogMessage("LocalFilesToCopyRemotelyMapping: {0}", - taskExec.LocalFilesToCopyRemotelyMapping); - if (taskExec.RemoteFilesToCopyLocallyMapping.Any()) - Log.LogMessage("RemoteFilesToCopyLocallyMapping: {0}", - taskExec.RemoteFilesToCopyLocallyMapping); - Log.LogMessage("CreateDirs: {0}", taskCopyFiles.Command); - Log.LogMessage("Command: {0}", taskExec.Command); - - if (!taskCopyFiles.ExecuteTool()) - return false; - bool ok = taskExec.ExecuteTool(); - Log.LogMessage("== {0} ExitCode: {1}\r\n", ok ? "OK" : "FAIL", taskExec.ExitCode); - - ExitCode = taskExec.ExitCode; - if (!ok && !IgnoreExitCode) { - Log.LogError("Host command failed."); - return false; - } - ]]> - </Code> - </Task> - </UsingTask> - <!--// Local (Windows) build --> - <UsingTask TaskName="HostExec" TaskFactory="CodeTaskFactory" - Condition="'$(ApplicationType)' != 'Linux'" - AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.Core.dll"> - <ParameterGroup> - <!--IN--> - <Message ParameterType="System.String" Required="false" /> - <Command ParameterType="System.String" Required="true" /> - <RedirectStdOut ParameterType="System.String" Required="false" /> - <RedirectStdErr ParameterType="System.String" Required="false" /> - <WorkingDirectory ParameterType="System.String" Required="false" /> - <Inputs ParameterType="Microsoft.Build.Framework.ITaskItem[]" Required="false" /> - <Outputs ParameterType="Microsoft.Build.Framework.ITaskItem[]" Required="false" /> - <RemoteTarget ParameterType="System.String" Required="false" /> - <RemoteProjectDir ParameterType="System.String" Required="false" /> - <IgnoreExitCode ParameterType="System.Boolean" Required="false" /> - <!--OUT--> - <ExitCode ParameterType="System.Int32" Output="true" /> - </ParameterGroup> - <Task> - <Reference Include="$(MSBuildToolsPath)\Microsoft.Build.Tasks.Core.dll"/> - <Reference Include="$(MSBuildToolsPath)\Microsoft.Build.Utilities.Core.dll"/> - <Code Type="Fragment" Language="cs"> - <![CDATA[ - if (!string.IsNullOrEmpty(Message)) - Log.LogMessage(MessageImportance.High, Message); - Command = "(" + Command + ")"; - if (RedirectStdOut == "NUL" || RedirectStdOut == "/dev/null") - Command += " 1> NUL"; - else if (!string.IsNullOrEmpty(RedirectStdOut)) - Command += " 1> " + RedirectStdOut; - if (RedirectStdErr == "NUL" || RedirectStdErr == "/dev/null") - Command += " 2> NUL"; - else if (RedirectStdErr == "STDOUT") - Command += " 2>&1"; - else if (!string.IsNullOrEmpty(RedirectStdErr)) - Command += " 2> " + RedirectStdErr; - - var taskExec = new Microsoft.Build.Tasks.Exec() - { - BuildEngine = BuildEngine, - HostObject = HostObject, - WorkingDirectory = WorkingDirectory, - Command = Command, - IgnoreExitCode = IgnoreExitCode, - }; - - Log.LogMessage("\r\n==== HostExec: Microsoft.Build.Tasks.Exec"); - Log.LogMessage("WorkingDirectory: {0}", taskExec.WorkingDirectory); - Log.LogMessage("Command: {0}", taskExec.Command); - - bool ok = taskExec.Execute(); - Log.LogMessage("== {0} ExitCode: {1}\r\n", ok ? "OK" : "FAIL", taskExec.ExitCode); - - ExitCode = taskExec.ExitCode; - if (!ok) - return false; - ]]> - </Code> - </Task> - </UsingTask> -</Project> diff --git a/Source/VSProps/qtmoc.targets b/Source/VSProps/qtmoc.targets deleted file mode 100644 index d4db08f43a..0000000000 --- a/Source/VSProps/qtmoc.targets +++ /dev/null @@ -1,510 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- -/**************************************************************************** -** -** Copyright (C) 2018 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the Qt VS Tools. -** -** $QT_BEGIN_LICENSE:GPL-EXCEPT$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ ---> - -<!-- -/////////////////////////////////////////////////////////////////////////////////////////////////// -// Definitions specific to moc -/////////////////////////////////////////////////////////////////////////////////////////////////// -// --> -<Project> - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Import pre-requisites - // --> - <Import - Condition="'$(QtMsBuildTargets_BeforeMoc)' != ''" - Project="$(QtMsBuildTargets_BeforeMoc)"/> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Qt/MSBuild global properties - // --> - <PropertyGroup> - <QtBuildTargets>QtMoc;$(QtBuildTargets)</QtBuildTargets> - </PropertyGroup> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Setup item type and property page - // --> - <Choose> - <When Condition="'$(QtVsProjectSettings)' == 'true' AND '$(QtVsProjectClProperties)' == 'true'"> - <ItemGroup> - <PropertyPageSchema - Include="$(MSBuildThisFileDirectory)qtmoc_v3.xml" /> - </ItemGroup> - </When> - <Otherwise> - <ItemGroup Condition="'$(QtVsProjectSettings)' == 'false'"> - <PropertyPageSchema - Include="$(MSBuildThisFileDirectory)qtmoc.xml" /> - </ItemGroup> - </Otherwise> - </Choose> - <ItemGroup> - <AvailableItemName Include="QtMoc"> - <Targets>Qt;_ClCompile</Targets> - </AvailableItemName> - </ItemGroup> - <PropertyGroup> - <QtMocRuleName>QtRule30_Moc</QtMocRuleName> - </PropertyGroup> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtMocInit - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Initialize default metadata - // --> - <Target Name="QtMocInit"> - <!--// Initialize %(OutputFile) --> - <ItemGroup Condition="'$(QtVsProjectSettings)' == 'true' AND '@(QtMoc)' != ''"> - <QtMocAux Include="@(QtMoc)"> - <OutputFile - >$([System.IO.Path]::Combine('%(QtMoc.QtMocDir)','%(QtMoc.QtMocFileName)'))</OutputFile> - </QtMocAux> - <QtMoc Remove="@(QtMoc)"/> - <QtMoc Include="@(QtMocAux)"/> - <QtMocAux Remove="@(QtMocAux)"/> - </ItemGroup> - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Add moc output dir to C++ include path - // --> - <ItemGroup Condition="'@(QtMoc)' != ''"> - <QtIncludePath Include="$([System.IO.Path]::GetDirectoryName('%(QtMoc.OutputFile)'))"/> - </ItemGroup> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtMocPrepare - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Prepare to process sources - // --> - <Target Name="QtMocPrepare" DependsOnTargets="_SelectedFiles;QtMocInit" - Inputs="%(QtMoc.Identity)" Outputs="@(QtMoc->'####### Don't skip this target #######')"> - - <Message Importance="High" Condition="'$(QtDebug)' == 'true'" - Text="## QtMocPrepare @(QtMoc)"/> - - <PropertyGroup> - <selected_files>[@(SelectedFiles->'%(Identity)','][')]</selected_files> - <file>[@(QtMoc->'%(Identity)')]</file> - <output_file>@(QtMoc->'%(OutputFile)')</output_file> - <is_selected Condition="$(selected_files.Contains('$(file)'))">true</is_selected> - <is_selected Condition="!$(selected_files.Contains('$(file)'))">false</is_selected> - </PropertyGroup> - - <!--// Delete output file to force build of source if it was manually selected to build - // (e.g. by the 'Compile' option in the context menu for the file) --> - <Delete Files="$(output_file)" - Condition="'$(SelectedFiles)' != '' AND '$(is_selected)' == 'true'" /> - - <!--// If a source was manually selected to build, remove all other sources --> - <ItemGroup Condition="'@(SelectedFiles)' != ''"> - <QtMoc Remove="@(QtMoc)" - Condition="'$(SelectedFiles)' != '' AND '$(is_selected)' != 'true'" /> - </ItemGroup> - - <!--// Remove sources excluded from build --> - <ItemGroup> - <QtMoc Remove="@(QtMoc)" - Condition="'$(SelectedFiles)' == '' AND '%(QtMoc.ExcludedFromBuild)' == 'true'"/> - </ItemGroup> - - <PropertyGroup> - <selected_files/> - <file/> - <output_file/> - <is_selected/> - </PropertyGroup> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtMocSetModified - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Set InputChanged flag if source file or dependencies have been modified - // --> - <Target Name="QtMocSetModified" DependsOnTargets="QtMocPrepare" - Condition="'@(QtMoc)' != ''" - Inputs="%(QtMoc.FullPath);%(QtMoc.AdditionalDependencies)" Outputs="@(QtMoc->'%(OutputFile)')"> - - <Message Importance="High" Condition="'$(QtDebug)' == 'true'" - Text="## QtMocSetModified @(QtMoc)" /> - - <CreateProperty Value="true"> - <Output TaskParameter="ValueSetByTask" PropertyName="input_changed" /> - </CreateProperty> - <ItemGroup> - <QtMoc> - <InputChanged>$(input_changed)</InputChanged> - </QtMoc> - </ItemGroup> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtMocOverrideCpp - ///////////////////////////////////////////////////////////////////////////////////////////////// - // - // --> - <Import Project="qtmoc_cl.targets"/> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtMoc - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Process each source file and produce the corresponding QtWork items - // --> - <PropertyGroup> - <QtMocDependsOn> - QtPrepare; - QtMocPrepare; - QtMocSetModified; - QtMocOverrideCpp; - $(QtMocDependsOn) - </QtMocDependsOn> - </PropertyGroup> - <Target Name="QtMoc" - DependsOnTargets="$(QtMocDependsOn)" - BeforeTargets="$(QtMocBeforeTargets)" AfterTargets="$(QtMocAfterTargets)" - Condition="'@(QtMoc)' != ''" - Inputs="%(QtMoc.FullPath);%(QtMoc.AdditionalDependencies);$(MSBuildProjectFile)" - Outputs="@(QtMoc->'%(OutputFile)')"> - - <Message Importance="High" Condition="'$(QtDebug)' == 'true'" Text="## QtMoc @(QtMoc)" /> - - <CreateProperty Value="true"> - <Output TaskParameter="ValueSetByTask" PropertyName="dependencies_changed" /> - </CreateProperty> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Convert string lists in source item properties to lists of items - // --> - <Flatten Items="@(QtMoc)" - Metadata="InputFile; - OutputFile; - IncludePath; - MacFramework; - PreprocessOnly; - Define; - Undefine; - Metadata; - CompilerFlavor; - NoInclude; - PathPrefix; - ForceInclude; - PrependInclude; - Include; - NoNotesWarnings; - NoNotes; - NoWarnings; - IgnoreConflicts; - OptionsFile"> - <Output - TaskParameter="Result" ItemName="options" /> - </Flatten> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Translate local paths to build host paths - // --> - <HostTranslatePaths - Items="@(options)" - Names="InputFile; - OutputFile; - IncludePath; - MacFramework; - PathPrefix; - ForceInclude; - PrependInclude; - Include; - OptionsFile"> - <Output - TaskParameter="Result" ItemName="HostPath" /> - </HostTranslatePaths> - <ItemGroup> - <options Condition="'%(Identity)' != ''"> - <Value>@(HostPath->'%(Value)')</Value> - </options> - </ItemGroup> - - <ItemGroup> - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////// - // Escape double-quotes in macro definitions - // --> - <options> - <Value Condition="('%(Name)' == 'Define' OR '%(Name)' == 'Undefine') - AND ($([System.String]::Copy('%(Value)').Contains(' ')) - OR $([System.String]::Copy('%(Value)').Contains('"')))" - > "$([System.String]::Copy('%(Value)').Replace('"', '\"'))"</Value> - </options> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////// - // Remove quotes from all paths - // Escape trailing back-slash in paths - // Add quotes to paths containing spaces - // --> - <options> - <Value Condition="'%(Name)' == 'InputFile' OR '%(Name)' == 'OutputFile' - OR '%(Name)' == 'IncludePath' OR '%(Name)' == 'MacFramework' OR '%(Name)' == 'PathPrefix' - OR '%(Name)' == 'ForceInclude' OR '%(Name)' == 'PrependInclude' OR '%(Name)' == 'Include' - OR '%(Name)' == 'OptionsFile'" - >$([System.String]::Copy('%(Value)').Replace('"', ''))</Value> - </options> - - <options> - <Value Condition="('%(Name)' == 'InputFile' OR '%(Name)' == 'OutputFile' - OR '%(Name)' == 'IncludePath' OR '%(Name)' == 'MacFramework' OR '%(Name)' == 'PathPrefix' - OR '%(Name)' == 'ForceInclude' OR '%(Name)' == 'PrependInclude' OR '%(Name)' == 'Include' - OR '%(Name)' == 'OptionsFile') - AND $([System.String]::Copy('%(Value)').Contains(' ')) - AND $([System.String]::Copy('%(Value)').EndsWith('\'))" - >%(Value)\</Value> - </options> - - <options> - <Value Condition="('%(Name)' == 'InputFile' OR '%(Name)' == 'OutputFile' - OR '%(Name)' == 'IncludePath' OR '%(Name)' == 'MacFramework' OR '%(Name)' == 'PathPrefix' - OR '%(Name)' == 'ForceInclude' OR '%(Name)' == 'PrependInclude' OR '%(Name)' == 'Include' - OR '%(Name)' == 'OptionsFile') - AND $([System.String]::Copy('%(Value)').Contains(' '))" - >"%(Value)"</Value> - </options> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Generate tool command line arguments - // --> - <!--// [header-file] Header file to read from --> - <options> - <Value Condition="'%(Name)' == 'InputFile'">%(Value)</Value> - </options> - - <!--// -o <file> Write output to file --> - <options> - <Value Condition="'%(Name)' == 'OutputFile'">-o %(Value)</Value> - </options> - - <!--// -I <dir> Add dir to the include path for header files --> - <options> - <Value Condition="'%(Name)' == 'IncludePath'">-I%(Value)</Value> - </options> - - <!--// -F <framework> Add macOS framework to the include path for headers --> - <options> - <Value Condition="'%(Name)' == 'MacFramework'">-F %(Value)</Value> - </options> - - <!--// -E Preprocess only; do not generate meta object code --> - <options> - <Value Condition="'%(Name)' == 'PreprocessOnly' AND '%(Value)' != 'true'"></Value> - </options> - <options> - <Value Condition="'%(Name)' == 'PreprocessOnly' AND '%(Value)' == 'true'">-E</Value> - </options> - - <!--// -D <macro[=def]> Define macro, with optional definition --> - <options> - <Value Condition="'%(Name)' == 'Define'">-D%(Value)</Value> - </options> - - <!--// -U <macro> Undefine macro--> - <options> - <Value Condition="'%(Name)' == 'Undefine'">-U%(Value)</Value> - </options> - - <!--// -M <key=value> Add key/value pair to plugin meta data --> - <options> - <Value Condition="'%(Name)' == 'Metadata'">-M%(Value)</Value> - </options> - - <!--// -compiler-flavor <flavor> Set the compiler flavor: either "msvc" or "unix" --> - <options> - <Value Condition="'%(Name)' == 'CompilerFlavor'">--compiler-flavor %(Value)</Value> - </options> - - <!--// -i Do not generate an #include statement --> - <options> - <Value Condition="'%(Name)' == 'NoInclude' AND '%(Value)' != 'true'"></Value> - </options> - <options> - <Value Condition="'%(Name)' == 'NoInclude' AND '%(Value)' == 'true'">-i</Value> - </options> - - <!--// -p <path> Path prefix for included file --> - <options> - <Value Condition="'%(Name)' == 'PathPrefix'">-p%(Value)</Value> - </options> - - <!--// -f <file> Force #include <file> (overwrite default) --> - <options> - <Value Condition="'%(Name)' == 'ForceInclude'">-f %(Value)</Value> - </options> - - <!--// -b <file> Prepend #include <file> (preserve default include) --> - <options> - <Value Condition="'%(Name)' == 'PrependInclude'">-b %(Value)</Value> - </options> - - <!--// -include <file> Parse <file> as an #include before the main source(s) --> - <options> - <Value Condition="'%(Name)' == 'Include'">--include %(Value)</Value> - </options> - - <!--// -n <which> Do not display notes (-nn) or warnings (-nw) --> - <options> - <Value Condition="'%(Name)' == 'NoNotesWarnings'">-n%(Value)</Value> - </options> - - <!--// -no-notes Do not display notes --> - <options> - <Value Condition="'%(Name)' == 'NoNotes' AND '%(Value)' != 'true'"></Value> - </options> - <options> - <Value Condition="'%(Name)' == 'NoNotes' AND '%(Value)' == 'true'">--no-notes</Value> - </options> - - <!--// -no-warnings Do not display warnings (implies -no-notes) --> - <options> - <Value Condition="'%(Name)' == 'NoWarnings' AND '%(Value)' != 'true'"></Value> - </options> - <options> - <Value Condition="'%(Name)' == 'NoWarnings' AND '%(Value)' == 'true'">--no-warnings</Value> - </options> - - <!--// -ignore-option-clashes Ignore all options that conflict with compilers --> - <options> - <Value Condition="'%(Name)' == 'IgnoreConflicts' AND '%(Value)' != 'true'"></Value> - </options> - <options> - <Value Condition="'%(Name)' == 'IgnoreConflicts' AND '%(Value)' == 'true'" - >--ignore-option-clashes</Value> - </options> - - <!--// [@option-file] Read additional options from option-file--> - <options> - <Value Condition="'%(Name)' == 'OptionsFile'">@%(Value)</Value> - </options> - </ItemGroup> - <PropertyGroup> - <options>@(options->'%(Value)', ' ')</options> - </PropertyGroup> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Aux properties - // --> - <PropertyGroup> - <!--// Force modified flag if source was manually selected to build --> - <input_changed Condition="'$(SelectedFiles)' != ''" - >true</input_changed> - <input_changed Condition="'$(SelectedFiles)' == ''" - >%(QtMoc.InputChanged)</input_changed> - - <!--// Run work in parallel processes --> - <run_parallel Condition="'@(QtMoc)' != '' - AND '%(QtMoc.ParallelProcess)' == 'true' - AND '$(SelectedFiles)' == ''" - >true</run_parallel> - - <!--// Run work in single process --> - <run_single Condition="'@(QtMoc)' != '' - AND ('%(QtMoc.ParallelProcess)' != 'true' - OR '$(SelectedFiles)' != '')" - >true</run_single> - - <!--// Get relative path to output --> - <output_relative ->$([MSBuild]::MakeRelative($(ProjectDir), %(QtMoc.OutputFile)).TrimStart('\'))</output_relative> - - <!--// Get relative path to input --> - <input_relative ->$([MSBuild]::MakeRelative($(ProjectDir), %(QtMoc.InputFile)).TrimStart('\'))</input_relative> - </PropertyGroup> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Create work item - // --> - <ItemGroup Condition="'$(run_parallel)' == 'true' OR '$(run_single)' == 'true'"> - <QtWork Include="@(QtMoc)"> - <WorkType>moc</WorkType> - <ToolPath Condition="'$(QtVsProjectSettings)' == 'true'" - >$(QtToolsPath)/moc</ToolPath> - <ToolPath Condition="'$(QtVsProjectSettings)' != 'true'" - >%(QtMoc.QTDIR)\bin\moc.exe</ToolPath> - <Options>$(options)</Options> - <Message>%(QtMoc.ExecutionDescription)</Message> - <DependenciesChanged>$(dependencies_changed)</DependenciesChanged> - <InputChanged>$(input_changed)</InputChanged> - <ParallelBuild Condition="'$(run_parallel)' == 'true'">true</ParallelBuild> - <ParallelBuild Condition="'$(run_single)' == 'true'">false</ParallelBuild> - <!-- - /////////////////////////////////////////////////////////////////////////////////////////// - // C++ dynamic source --> - <ClCompile Condition="'%(QtMoc.DynamicSource)' == 'output'">$(output_relative)</ClCompile> - <ClCompile Condition="'%(QtMoc.DynamicSource)' == 'input'">$(input_relative)</ClCompile> - </QtWork> - </ItemGroup> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Clean-up - // --> - <PropertyGroup> - <options/> - <dependencies_changed/> - <input_changed/> - <run_parallel/> - <run_single/> - <output_relative/> - <input_relative/> - </PropertyGroup> - <ItemGroup> - <options Remove="@(options)"/> - </ItemGroup> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Import dependants - // --> - <Import - Condition="'$(QtMsBuildTargets_AfterMoc)' != ''" - Project="$(QtMsBuildTargets_AfterMoc)"/> - -</Project> diff --git a/Source/VSProps/qtmoc.xml b/Source/VSProps/qtmoc.xml deleted file mode 100644 index 200771e114..0000000000 --- a/Source/VSProps/qtmoc.xml +++ /dev/null @@ -1,5 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<ProjectSchemaDefinitions xmlns="http://schemas.microsoft.com/build/2009/properties"> - <ItemType Name="QtMoc" DisplayName="Qt Meta Object File" /> - <ContentType Name="QtMoc" DisplayName="Qt Meta Object Compiler" /> -</ProjectSchemaDefinitions>
\ No newline at end of file diff --git a/Source/VSProps/qtmoc_cl.targets b/Source/VSProps/qtmoc_cl.targets deleted file mode 100644 index e77bcf4197..0000000000 --- a/Source/VSProps/qtmoc_cl.targets +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - ***************************************************************************** - ** - ** Copyright (C) 2019 The Qt Company Ltd. - ** Contact: https://www.qt.io/licensing/ - ** - ** This file is part of the Qt VS Tools. - ** - ** $QT_BEGIN_LICENSE:GPL-EXCEPT$ - ** Commercial License Usage - ** Licensees holding valid commercial Qt licenses may use this file in - ** accordance with the commercial license agreement provided with the - ** Software or, alternatively, in accordance with the terms contained in - ** a written agreement between you and The Qt Company. For licensing terms - ** and conditions see https://www.qt.io/terms-conditions. For further - ** information use the contact form at https://www.qt.io/contact-us. - ** - ** GNU General Public License Usage - ** Alternatively, this file may be used under the terms of the GNU - ** General Public License version 3 as published by the Free Software - ** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT - ** included in the packaging of this file. Please review the following - ** information to ensure the GNU General Public License requirements will - ** be met: https://www.gnu.org/licenses/gpl-3.0.html. - ** - ** $QT_END_LICENSE$ - ** - ***************************************************************************** ---> -<Project> - <Target Name="QtMocOverrideCpp" DependsOnTargets="QtMocPrepare;QtGetDefaultClCompile" - Inputs="%(QtMoc.Identity)" Outputs="@(QtMoc->'####### Don't skip this target #######')"> - - <Message Importance="High" Condition="'$(QtDebug)' == 'true'" - Text="## QtMocOverrideCpp @(QtMoc)" /> - <!-- - NOTE: This implementation was a template, which has been manually edited - for dolphin-emu specific behavior (carries over defines but not includes) - --> - <ItemGroup> - <QtMoc> - <IncludePath></IncludePath> - <Define>%(ClCompile.PreprocessorDefinitions)</Define> - <Undefine></Undefine> - </QtMoc> - </ItemGroup> - </Target> -</Project> diff --git a/Source/VSProps/qtrcc.targets b/Source/VSProps/qtrcc.targets deleted file mode 100644 index 3b60e5848c..0000000000 --- a/Source/VSProps/qtrcc.targets +++ /dev/null @@ -1,580 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- -/*************************************************************************************************** - Copyright (C) 2023 The Qt Company Ltd. - SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only -***************************************************************************************************/ ---> - -<!-- -/////////////////////////////////////////////////////////////////////////////////////////////////// -/// Definitions specific to rcc -/////////////////////////////////////////////////////////////////////////////////////////////////// -// --> -<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Import pre-requisites - // --> - <Import - Condition="'$(QtMsBuildTargets_BeforeRcc)' != ''" - Project="$(QtMsBuildTargets_BeforeRcc)"/> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Qt/MSBuild global properties - // --> - <PropertyGroup> - <QtBuildTargets>QtRcc;$(QtBuildTargets)</QtBuildTargets> - </PropertyGroup> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Setup item type and property page - // --> - <Choose> - <When Condition="'$(QtVsProjectSettings)' == 'true' AND '$(QtVsProjectClProperties)' == 'true'"> - <ItemGroup> - <PropertyPageSchema - Include="$(MSBuildThisFileDirectory)qtrcc_v3.xml" /> - </ItemGroup> - </When> - <Otherwise> - <ItemGroup> - <PropertyPageSchema - Include="$(MSBuildThisFileDirectory)qtrcc.xml" /> - </ItemGroup> - </Otherwise> - </Choose> - <ItemGroup> - <AvailableItemName Include="QtRcc"> - <Targets>Qt;_ClCompile</Targets> - </AvailableItemName> - </ItemGroup> - <PropertyGroup> - <QtRccRuleName>QtRule40_Rcc</QtRccRuleName> - </PropertyGroup> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtRccInit - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Initialize default metadata - // --> - <Target Name="QtRccInit"> - <!--// Initialize %(OutputFile) --> - <ItemGroup Condition="'$(QtVsProjectSettings)' == 'true' AND '@(QtRcc)' != ''"> - <QtRccAux Include="@(QtRcc)"> - <OutputFile - >$([System.IO.Path]::Combine('%(QtRcc.QtRccDir)','%(QtRcc.QtRccFileName)'))</OutputFile> - </QtRccAux> - <QtRcc Remove="@(QtRcc)"/> - <QtRcc Include="@(QtRccAux)"/> - <QtRccAux Remove="@(QtRccAux)"/> - </ItemGroup> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtRccSetDependencies - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Add resource files as dependencies of the QRC file - // --> - <Target Name="QtRccSetDependencies" DependsOnTargets="QtRccInit" - Inputs="%(QtRcc.Identity)" Outputs="@(QtRcc->'####### Don't skip this target #######')"> - <ItemGroup> - <selected_files Include="$(SelectedFiles)"/> - </ItemGroup> - - <!--// Parse QRC --> - <ListQrc QrcFilePath="%(QtRcc.FullPath)"> - <Output TaskParameter="Result" ItemName="res_file"/> - </ListQrc> - - <!--// Add dependencies --> - <ItemGroup Condition="'@(QtRcc)' != '' AND '@(res_file)' != ''"> - <QtRcc> - <ResourceFiles>@(res_file)</ResourceFiles> - <AdditionalDependencies - >%(QtRcc.AdditionalDependencies);@(res_file->'%(FullPath)')</AdditionalDependencies> - </QtRcc> - </ItemGroup> - - <!--// Clean-up --> - <PropertyGroup> - <QtRccExeQuoted/> - <QtRccQuoted/> - <RccListQuoted/> - </PropertyGroup> - <ItemGroup> - <res_file Remove="@(res_file)"/> - </ItemGroup> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtRccPrepare - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Prepare items for processing - // --> - <Target Name="QtRccPrepare" DependsOnTargets="QtRccSetDependencies" - Inputs="%(QtRcc.Identity)" Outputs="@(QtRcc->'####### Don't skip this target #######')"> - - <Message Importance="High" Condition="'$(QtDebug)' == 'true'" - Text="## QtRccPrepare @(QtRcc)"/> - - <PropertyGroup> - <selected_files>[@(selected_files->'%(Identity)','][')]</selected_files> - <file>[@(QtRcc->'%(Identity)')]</file> - <output_file>@(QtRcc->'%(OutputFile)')</output_file> - <is_selected Condition="$(selected_files.Contains('$(file)'))">true</is_selected> - <is_selected Condition="!$(selected_files.Contains('$(file)'))">false</is_selected> - </PropertyGroup> - - <!--// Delete output file to force build of source if it was manually selected to build - // (e.g. by the 'Compile' option in the context menu for the file) --> - <Delete Files="$(output_file)" - Condition="'$(SelectedFiles)' != '' AND '$(is_selected)' == 'true'" /> - - <!--// If a source was manually selected to build, remove all other sources --> - <ItemGroup Condition="'@(selected_files)' != ''"> - <QtRcc Remove="@(QtRcc)" - Condition="'$(SelectedFiles)' != '' AND '$(is_selected)' != 'true'" /> - </ItemGroup> - - <!--// Remove sources excluded from build --> - <ItemGroup> - <QtRcc Remove="@(QtRcc)" - Condition="'$(SelectedFiles)' == '' AND '%(QtRcc.ExcludedFromBuild)' == 'true'"/> - </ItemGroup> - - <!--// Clean-up --> - <PropertyGroup> - <selected_files/> - <file/> - <output_file/> - <is_selected/> - </PropertyGroup> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtRccSetModified - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Set InputModified flag for modified files (i.e. Inputs newer than Outputs) - // --> - <Target Name="QtRccSetModified" DependsOnTargets="QtRccPrepare" - Condition="'@(QtRcc)' != ''" - Inputs="%(QtRcc.FullPath);%(QtRcc.AdditionalDependencies)" Outputs="@(QtRcc->'%(OutputFile)')"> - - <Message Importance="High" Condition="'$(QtDebug)' == 'true'" - Text="## QtRccSetModified @(QtRcc)" /> - - <CreateProperty Value="true"> - <!-- // Using ValueSetByTask ensures $(input_changed) is only set to 'true' when the target - // is actually executed and not when MSBuild is figuring out which targets to run --> - <Output TaskParameter="ValueSetByTask" PropertyName="input_changed" /> - </CreateProperty> - <ItemGroup> - <QtRcc> - <InputChanged>$(input_changed)</InputChanged> - </QtRcc> - </ItemGroup> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtRccOverrideCpp - ///////////////////////////////////////////////////////////////////////////////////////////////// - // - // --> - <!--<Import Project="qtrcc_cl.targets"/>--> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtRcc - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Process each QRC file and produce the corresponding QtWork items - // --> - <PropertyGroup> - <QtRccDependsOn> - QtPrepare; - QtRccPrepare; - QtRccSetModified; - $(QtRccDependsOn) - </QtRccDependsOn> - </PropertyGroup> - <Target Name="QtRcc" - DependsOnTargets="$(QtRccDependsOn)" - BeforeTargets="$(QtRccBeforeTargets)" AfterTargets="$(QtRccAfterTargets)" - Condition="'@(QtRcc)' != ''" - Inputs="%(QtRcc.FullPath);%(QtRcc.AdditionalDependencies);$(MSBuildProjectFile)" - Outputs="@(QtRcc->'%(OutputFile)')"> - - <Message Importance="High" Condition="'$(QtDebug)' == 'true'" Text="## QtRcc @(QtRcc)" /> - - <CreateProperty Value="true"> - <Output TaskParameter="ValueSetByTask" PropertyName="dependencies_changed" /> - </CreateProperty> - - <PropertyGroup> - <two_pass Condition="'%(QtRcc.TwoPass)' == 'true'">true</two_pass> - </PropertyGroup> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Convert string lists in source item properties to lists of items - // --> - <Flatten Items="@(QtRcc)" - Metadata="InputFile; - OutputFile; - TempFile; - InitFuncName; - Root; - Compression; - NoCompression; - CompressThreshold; - BinaryOutput; - NoZstd; - PassNumber; - NoNamespace; - Verbose; - List; - Project; - FormatVersion"> - <Output - TaskParameter="Result" ItemName="LocalOptions" /> - </Flatten> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Translate local paths to build host paths - // --> - <HostTranslatePaths - Items="@(LocalOptions)" - Names="InputFile; - OutputFile; - TempFile; - Root"> - <Output - TaskParameter="Result" ItemName="options" /> - </HostTranslatePaths> - - <ItemGroup> - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////// - // Remove quotes from all paths - // Escape trailing back-slash in paths - // Add quotes to paths containing spaces - // --> - <options> - <Value Condition="'%(Name)' == 'InputFile' OR '%(Name)' == 'OutputFile' - OR '%(Name)' == 'TempFile' OR '%(Name)' == 'Root'" - >$([System.String]::Copy('%(Value)').Replace('"', ''))</Value> - </options> - <options> - <Value Condition="('%(Name)' == 'InputFile' OR '%(Name)' == 'OutputFile' - OR '%(Name)' == 'TempFile' OR '%(Name)' == 'Root') - AND $([System.String]::Copy('%(Value)').Contains(' ')) - AND $([System.String]::Copy('%(Value)').EndsWith('\'))" - >%(Value)\</Value> - </options> - <options> - <Value Condition="('%(Name)' == 'InputFile' OR '%(Name)' == 'OutputFile' - OR '%(Name)' == 'TempFile' OR '%(Name)' == 'Root') - AND $([System.String]::Copy('%(Value)').Contains(' '))" - >"%(Value)"</Value> - </options> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Generate tool command line arguments - // --> - <!--// inputs Input files (*.qrc) --> - <options> - <Value Condition="'%(Name)' == 'InputFile'">%(Value)</Value> - </options> - - <!--// -o, -output <file> Write output to <file> --> - <options> - <Value Condition="'%(Name)' == 'OutputFile' AND '$(two_pass)' != 'true'">-o %(Value)</Value> - </options> - <options> - <Value Condition="'%(Name)' == 'OutputFile' AND '$(two_pass)' == 'true'"></Value> - </options> - - <!--// -t, -temp <file> Use temporary <file> for big resources --> - <options> - <Value Condition="'%(Name)' == 'TempFile'">--temp %(Value)</Value> - </options> - - <!--// -name <name> Create an external initialization function with <name> --> - <options> - <Value Condition="'%(Name)' == 'InitFuncName'">--name %(Value)</Value> - </options> - - <!--// -root <path> Prefix resource access path with root path --> - <options> - <Value Condition="'%(Name)' == 'Root'">--root %(Value)</Value> - </options> - - <!--// -compress <level> Compress input files by <level> --> - <options> - <Value - Condition="'%(Name)' == 'Compression' AND '%(Value)' == 'level1'">--compress 1</Value> - </options> - <options> - <Value - Condition="'%(Name)' == 'Compression' AND '%(Value)' == 'level2'">--compress 2</Value> - </options> - <options> - <Value - Condition="'%(Name)' == 'Compression' AND '%(Value)' == 'level3'">--compress 3</Value> - </options> - <options> - <Value - Condition="'%(Name)' == 'Compression' AND '%(Value)' == 'level4'">--compress 4</Value> - </options> - <options> - <Value - Condition="'%(Name)' == 'Compression' AND '%(Value)' == 'level5'">--compress 5</Value> - </options> - <options> - <Value - Condition="'%(Name)' == 'Compression' AND '%(Value)' == 'level6'">--compress 6</Value> - </options> - <options> - <Value - Condition="'%(Name)' == 'Compression' AND '%(Value)' == 'level7'">--compress 7</Value> - </options> - <options> - <Value - Condition="'%(Name)' == 'Compression' AND '%(Value)' == 'level8'">--compress 8</Value> - </options> - <options> - <Value - Condition="'%(Name)' == 'Compression' AND '%(Value)' == 'level9'">--compress 9</Value> - </options> - <options> - <Value - Condition="'%(Name)' == 'Compression' - AND !$([System.String]::Copy('%(Value)').StartsWith('--compress'))"></Value> - </options> - - <!--// -no-compress Disable all compression --> - <options> - <Value - Condition="'%(Name)' == 'NoCompression' AND '%(Value)' != 'true'"></Value> - </options> - <options> - <Value - Condition="'%(Name)' == 'NoCompression' AND '%(Value)' == 'true'">--no-compress</Value> - </options> - - <!--// -threshold <level> Threshold to consider compressing files --> - <options> - <Value Condition="'%(Name)' == 'CompressThreshold'">--threshold %(Value)</Value> - </options> - - <!--// -binary Output a binary file for use as a dynamic source --> - <options> - <Value Condition="'%(Name)' == 'BinaryOutput' AND '%(Value)' != 'true'"></Value> - </options> - <options> - <Value Condition="'%(Name)' == 'BinaryOutput' AND '%(Value)' == 'true'">--binary</Value> - </options> - - <!--// -no-zstd Disable usage of zstd compression --> - <options> - <Value Condition="'%(Name)' == 'NoZstd' AND '%(Value)' != 'true'"></Value> - </options> - <options> - <Value Condition="'%(Name)' == 'NoZstd' AND '%(Value)' == 'true'">--no-zstd</Value> - </options> - - <!--// -pass <number> Pass number for big resources --> - <options> - <Value Condition="'%(Name)' == 'PassNumber'">--pass %(Value)</Value> - </options> - - <!--// -namespace Turn off namespace macros --> - <options> - <Value Condition="'%(Name)' == 'NoNamespace' AND '%(Value)' != 'true'"></Value> - </options> - <options> - <Value Condition="'%(Name)' == 'NoNamespace' AND '%(Value)' == 'true'">--namespace</Value> - </options> - - <!--// -verbose Enable verbose mode --> - <options> - <Value Condition="'%(Name)' == 'Verbose' AND '%(Value)' != 'true'"></Value> - </options> - <options> - <Value Condition="'%(Name)' == 'Verbose' AND '%(Value)' == 'true'">--verbose</Value> - </options> - - <!--// -list Only list .qrc file entries, do not generate code --> - <options> - <Value Condition="'%(Name)' == 'List' AND '%(Value)' != 'true'"></Value> - </options> - <options> - <Value Condition="'%(Name)' == 'List' AND '%(Value)' == 'true'">--list</Value> - </options> - - <!--// -project Output a resource file containing all files from the - // current directory --> - <options> - <Value Condition="'%(Name)' == 'Project' AND '%(Value)' != 'true'"></Value> - </options> - <options> - <Value Condition="'%(Name)' == 'Project' AND '%(Value)' == 'true'">--project</Value> - </options> - - <!--// -format-version <number> The RCC format version to write --> - <options> - <Value Condition="'%(Name)' == 'FormatVersion'">--format-version %(Value)</Value> - </options> - </ItemGroup> - <PropertyGroup> - <options>@(options->'%(Value)', ' ')</options> - </PropertyGroup> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Aux properties - // --> - <PropertyGroup> - <!--// Force modified flag if source was manually selected to build --> - <input_changed Condition="'$(SelectedFiles)' == ''" - >%(QtRcc.InputChanged)</input_changed> - <input_changed Condition="'$(SelectedFiles)' != ''" - >true</input_changed> - - <!--// Run work in parallel processes --> - <run_parallel Condition="'@(QtRcc)' != '' - AND '%(QtRcc.ParallelProcess)' == 'true' - AND '$(SelectedFiles)' == ''" - >true</run_parallel> - - <!--// Run work in single process --> - <run_single Condition="'@(QtRcc)' != '' - AND ('%(QtRcc.ParallelProcess)' != 'true' - OR '$(SelectedFiles)' != '')" - >true</run_single> - - <!--// Get relative path to output --> - <output_relative ->$([MSBuild]::MakeRelative($(ProjectDir), %(QtRcc.OutputFile)).TrimStart('\'))</output_relative> - </PropertyGroup> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Create work item - // --> - <ItemGroup Condition="'$(run_parallel)' == 'true' OR '$(run_single)' == 'true'"> - <QtWork Include="@(QtRcc)"> - <WorkType>rcc</WorkType> - <ToolPath Condition="'$(QtVsProjectSettings)' == 'true'">$(QtToolsPath)/rcc</ToolPath> - <ToolPath Condition="'$(QtVsProjectSettings)' != 'true'">%(QtRcc.QTDIR)\bin\rcc.exe</ToolPath> - <Options>$(options)</Options> - <Message>%(QtRcc.ExecutionDescription)</Message> - <DependenciesChanged>$(dependencies_changed)</DependenciesChanged> - <InputChanged>$(input_changed)</InputChanged> - <ParallelBuild Condition="'$(run_parallel)' == 'true'">true</ParallelBuild> - <ParallelBuild Condition="'$(run_single)' == 'true'">false</ParallelBuild> - <!-- - /////////////////////////////////////////////////////////////////////////////////////////// - // Two-pass ("resources_big"): pass 1 --> - <Message Condition="'%(QtRcc.TwoPass)' == 'true'">%(QtRcc.ExecutionDescription) [pass 1]</Message> - <RccPass Condition="'%(QtRcc.TwoPass)' == 'true'">1</RccPass> - <RccOptions Condition="'%(QtRcc.TwoPass)' == 'true'">$(options)</RccOptions> - <Options Condition="'%(QtRcc.TwoPass)' == 'true'" - >$(options) -pass 1 -o "%(OutputFile)"</Options> - <Optimization Condition="'%(QtRcc.TwoPass)' == 'true'">Disabled</Optimization> - <!-- - /////////////////////////////////////////////////////////////////////////////////////////// - // C++ dynamic source --> - <ClCompile Condition="'%(QtRcc.DynamicSource)' == 'output'">$(output_relative)</ClCompile> - </QtWork> - </ItemGroup> - - <!-- - /////////////////////////////////////////////////////////////////////////////////////////////// - // Clean-up - // --> - <PropertyGroup> - <options/> - <dependencies_changed/> - <input_changed/> - <run_parallel/> - <run_single/> - <output_relative/> - <two_pass/> - </PropertyGroup> - <ItemGroup> - <LocalOptions Remove="@(LocalOptions)"/> - <options Remove="@(options)"/> - <selected_files Remove="@(selected_files)"/> - </ItemGroup> - </Target> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - /// TARGET QtRccPass2 - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Two-pass ("resources_big"): pass 2 - // --> - <Target Name="QtRccPass2" - DependsOnTargets="QtRccPass2_GetObjs;QtRccPass2_Exec"/> - - <Target Name="QtRccPass2_GetObjs" - DependsOnTargets="ComputeCLOutputs"> - <ItemGroup> - <QtRccObj Include="@(Obj->WithMetadataValue('RccPass', '1'))"> - <RccPass>2</RccPass> - </QtRccObj> - </ItemGroup> - </Target> - - <Target Name="QtRccPass2_Exec" - DependsOnTargets="QtRccPass2_GetObjs" - Condition="'@(QtRccObj)' != ''"> - <Move - SourceFiles="%(QtRccObj.Identity)" - DestinationFiles="%(QtRccObj.Identity)_TMP"/> - <Exec - Command="@(QtRccObj->'ECHO %(ExecutionDescription) [pass 2] & %(ToolPath) %(RccOptions) -pass 2 -temp "%(Identity)_TMP" -o "%(Identity)"')" - IgnoreExitCode="true"/> - <ItemGroup> - <Obj Remove="@(QtRccObj->'%(Identity)')"/> - <Obj Include="@(QtRccObj)"/> - <QtRccObj Remove="@(QtRccObj)"/> - </ItemGroup> - </Target> - - <Target Name="QtRccPass2_Link" - DependsOnTargets="QtRccPass2"/> - - <Target Name="QtRccPass2_Lib" - DependsOnTargets="QtRccPass2"/> - - <PropertyGroup> - <ComputeLinkInputsTargets> - $(ComputeLinkInputsTargets); - ;QtRccPass2_Link; - </ComputeLinkInputsTargets> - <ComputeLibInputsTargets> - $(ComputeLibInputsTargets); - ;QtRccPass2_Lib; - </ComputeLibInputsTargets> - </PropertyGroup> - - <!-- - ///////////////////////////////////////////////////////////////////////////////////////////////// - // Import dependants - // --> - <Import - Condition="'$(QtMsBuildTargets_AfterRcc)' != ''" - Project="$(QtMsBuildTargets_AfterRcc)"/> - -</Project> diff --git a/Source/VSProps/qtrcc.xml b/Source/VSProps/qtrcc.xml deleted file mode 100644 index d373d8b49e..0000000000 --- a/Source/VSProps/qtrcc.xml +++ /dev/null @@ -1,5 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<ProjectSchemaDefinitions xmlns="http://schemas.microsoft.com/build/2009/properties"> - <ItemType Name="QtRcc" DisplayName="Qt Resource File" /> - <ContentType Name="QtRcc" DisplayName="Qt Resource Compiler" /> -</ProjectSchemaDefinitions>
\ No newline at end of file diff --git a/Source/dolphin-emu.sln b/Source/dolphin-emu.sln deleted file mode 100644 index 64650e330f..0000000000 --- a/Source/dolphin-emu.sln +++ /dev/null @@ -1,495 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 17 -VisualStudioVersion = 17.0.31903.59 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Dolphin", "Core\DolphinQt\DolphinQt.vcxproj", "{FA3FA62B-6F58-4B86-9453-4D149940A066}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DolphinNoGUI", "Core\DolphinNoGUI\DolphinNoGUI.vcxproj", "{974E563D-23F8-4E8F-9083-F62876B04E08}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DolphinTool", "Core\DolphinTool\DolphinTool.vcxproj", "{8F91523C-5C5E-4B22-A1F1-67560B6DC714}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DSPTool", "DSPTool\DSPTool.vcxproj", "{1970D175-3DE8-4738-942A-4D98D1CDBF64}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "UnitTests", "UnitTests\UnitTests.vcxproj", "{474661E7-C73A-43A6-AFEE-EE1EC433D49E}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DolphinLib", "Core\DolphinLib.vcxproj", "{D79392F7-06D6-4B4B-A39F-4D587C215D3A}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WinUpdater", "Core\WinUpdater\WinUpdater.vcxproj", "{E4BECBAB-9C6E-41AB-BB56-F9D70AB6BE03}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Externals", "Externals", "{87ADDFF9-5768-4DA2-A33B-2477593D6677}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Bochs_disasm", "..\Externals\Bochs_disasm\Bochs_disasm.vcxproj", "{8ADA04D7-6DB1-4DA4-AB55-64FB12A0997B}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Languages", "..\Languages\Languages.vcxproj", "{0E033BE3-2E08-428E-9AE9-BC673EFA12B5}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "LZO", "..\Externals\LZO\LZO.vcxproj", "{AB993F38-C31D-4897-B139-A620C42BC565}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lz4", "..\Externals\LZ4\LZ4.vcxproj", "{9092C5CC-3E71-41B3-BF68-4A7BDD8A5476}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "miniupnpc", "..\Externals\miniupnpc\miniupnpc.vcxproj", "{31643FDB-1BB8-4965-9DE7-000FC88D35AE}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xxhash", "..\Externals\xxhash\xxhash.vcxproj", "{677EA016-1182-440C-9345-DC88D1E98C0C}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zlib-ng", "..\Externals\zlib-ng\zlib-ng.vcxproj", "{F6EA7144-8D64-4EBB-A13E-76DFBD911EAE}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mbedTLS", "..\Externals\mbedtls\mbedTLS.vcxproj", "{BDB6578B-0691-4E80-A46C-DF21639FD3B8}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SCMRevGen", "Core\Common\SCMRevGen.vcxproj", "{41279555-F94F-4EBC-99DE-AF863C10C5C4}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SFML", "..\Externals\SFML\SFML.vcxproj", "{93D73454-2512-424E-9CDA-4BB357FE13DD}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libusb-1.0", "..\Externals\libusb\libusb-1.0.vcxproj", "{349EE8F9-7D25-4909-AAF5-FF3FADE72187}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pch", "PCH\pch.vcxproj", "{76563A7F-1011-4EAD-B667-7BB18D09568E}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "enet", "..\Externals\enet\enet.vcxproj", "{CBC76802-C128-4B17-BF6C-23B08C313E5E}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "..\Externals\curl\curl.vcxproj", "{BB00605C-125F-4A21-B33B-7BF418322DCB}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "glslang", "..\Externals\glslang\glslang.vcxproj", "{D178061B-84D3-44F9-BEED-EFD18D9033F0}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cpp-ipc", "..\Externals\cpp-ipc\cpp-ipc.vcxproj", "{7299DDD3-BBEC-4027-AF30-8DACC5415F96}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cpp-optparse", "..\Externals\cpp-optparse\cpp-optparse.vcxproj", "{C636D9D1-82FE-42B5-9987-63B7D4836341}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cubeb", "..\Externals\cubeb\msvc\cubeb.vcxproj", "{8EA11166-6512-44FC-B7A5-A4D1ECC81170}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pugixml", "..\Externals\pugixml\pugixml.vcxproj", "{38FEE76F-F347-484B-949C-B4649381CFFB}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "picojson", "..\Externals\picojson\picojson.vcxproj", "{2C0D058E-DE35-4471-AD99-E68A2CAF9E18}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ed25519", "..\Externals\ed25519\ed25519.vcxproj", "{5BDF4B91-1491-4FB0-BC27-78E9A8E97DC3}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FreeSurround", "..\Externals\FreeSurround\FreeSurround.vcxproj", "{8498F2FA-5CA6-4169-9971-DE5B1FE6132C}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "discord-rpc", "..\Externals\discord-rpc\src\discord-rpc.vcxproj", "{4482FD2A-EC43-3FFB-AC20-2E5C54B05EAD}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "minizip-ng", "..\Externals\minizip-ng\minizip-ng.vcxproj", "{23114507-079A-4418-9707-CFA81A03CA99}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "imgui", "..\Externals\imgui\imgui.vcxproj", "{4C3B2264-EA73-4A7B-9CFE-65B0FD635EBB}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "implot", "..\Externals\implot\implot.vcxproj", "{A608225E-AE0A-4D1A-9B55-97F57C862391}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "bzip2", "..\Externals\bzip2\bzip2.vcxproj", "{1D8C51D2-FFA4-418E-B183-9F42B6A6717E}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "liblzma", "..\Externals\liblzma\liblzma.vcxproj", "{055A775F-B4F5-4970-9240-F6CF7661F37B}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "zstd", "..\Externals\zstd\zstd.vcxproj", "{1BEA10F3-80CE-4BC4-9331-5769372CDF99}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mgba", "..\Externals\mGBA\mgba.vcxproj", "{864C4C8E-296D-3DBC-AD83-F1D5CB6E8EC6}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "fmt", "..\Externals\fmt\fmt.vcxproj", "{4BC5A148-0AB3-440F-A980-A29B4B999190}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spirv_cross", "..\Externals\spirv_cross\spirv_cross.vcxproj", "{3D780617-EC8C-4721-B9FD-DFC9BB658C7C}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL3", "..\Externals\SDL\SDL3.vcxproj", "{8DC244EE-A0BD-4038-BAF7-CFAFA5EB2BAA}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FatFs", "..\Externals\FatFs\FatFs.vcxproj", "{3F17D282-A77D-4931-B844-903AD0809A5E}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "spng", "..\Externals\libspng\spng.vcxproj", "{447B7B1E-1D74-4AEF-B2B9-6EB41C5D5313}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rcheevos", "..\Externals\rcheevos\rcheevos.vcxproj", "{CC99A910-3752-4465-95AA-7DC240D92A99}" -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tinygltf", "..\Externals\tinygltf\tinygltf.vcxproj", "{8BDA3693-4999-4D11-9E52-8D08C30B643A}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|ARM64 = Debug|ARM64 - Debug|x64 = Debug|x64 - Release|ARM64 = Release|ARM64 - Release|x64 = Release|x64 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {FA3FA62B-6F58-4B86-9453-4D149940A066}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {FA3FA62B-6F58-4B86-9453-4D149940A066}.Debug|ARM64.Build.0 = Debug|ARM64 - {FA3FA62B-6F58-4B86-9453-4D149940A066}.Debug|x64.ActiveCfg = Debug|x64 - {FA3FA62B-6F58-4B86-9453-4D149940A066}.Debug|x64.Build.0 = Debug|x64 - {FA3FA62B-6F58-4B86-9453-4D149940A066}.Release|ARM64.ActiveCfg = Release|ARM64 - {FA3FA62B-6F58-4B86-9453-4D149940A066}.Release|ARM64.Build.0 = Release|ARM64 - {FA3FA62B-6F58-4B86-9453-4D149940A066}.Release|x64.ActiveCfg = Release|x64 - {FA3FA62B-6F58-4B86-9453-4D149940A066}.Release|x64.Build.0 = Release|x64 - {974E563D-23F8-4E8F-9083-F62876B04E08}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {974E563D-23F8-4E8F-9083-F62876B04E08}.Debug|x64.ActiveCfg = Debug|x64 - {974E563D-23F8-4E8F-9083-F62876B04E08}.Release|ARM64.ActiveCfg = Release|ARM64 - {974E563D-23F8-4E8F-9083-F62876B04E08}.Release|x64.ActiveCfg = Release|x64 - {8F91523C-5C5E-4B22-A1F1-67560B6DC714}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {8F91523C-5C5E-4B22-A1F1-67560B6DC714}.Debug|ARM64.Build.0 = Debug|ARM64 - {8F91523C-5C5E-4B22-A1F1-67560B6DC714}.Debug|x64.ActiveCfg = Debug|x64 - {8F91523C-5C5E-4B22-A1F1-67560B6DC714}.Debug|x64.Build.0 = Debug|x64 - {8F91523C-5C5E-4B22-A1F1-67560B6DC714}.Release|ARM64.ActiveCfg = Release|ARM64 - {8F91523C-5C5E-4B22-A1F1-67560B6DC714}.Release|ARM64.Build.0 = Release|ARM64 - {8F91523C-5C5E-4B22-A1F1-67560B6DC714}.Release|x64.ActiveCfg = Release|x64 - {8F91523C-5C5E-4B22-A1F1-67560B6DC714}.Release|x64.Build.0 = Release|x64 - {1970D175-3DE8-4738-942A-4D98D1CDBF64}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {1970D175-3DE8-4738-942A-4D98D1CDBF64}.Debug|ARM64.Build.0 = Debug|ARM64 - {1970D175-3DE8-4738-942A-4D98D1CDBF64}.Debug|x64.ActiveCfg = Debug|x64 - {1970D175-3DE8-4738-942A-4D98D1CDBF64}.Debug|x64.Build.0 = Debug|x64 - {1970D175-3DE8-4738-942A-4D98D1CDBF64}.Release|ARM64.ActiveCfg = Release|ARM64 - {1970D175-3DE8-4738-942A-4D98D1CDBF64}.Release|ARM64.Build.0 = Release|ARM64 - {1970D175-3DE8-4738-942A-4D98D1CDBF64}.Release|x64.ActiveCfg = Release|x64 - {1970D175-3DE8-4738-942A-4D98D1CDBF64}.Release|x64.Build.0 = Release|x64 - {474661E7-C73A-43A6-AFEE-EE1EC433D49E}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {474661E7-C73A-43A6-AFEE-EE1EC433D49E}.Debug|ARM64.Build.0 = Debug|ARM64 - {474661E7-C73A-43A6-AFEE-EE1EC433D49E}.Debug|x64.ActiveCfg = Debug|x64 - {474661E7-C73A-43A6-AFEE-EE1EC433D49E}.Debug|x64.Build.0 = Debug|x64 - {474661E7-C73A-43A6-AFEE-EE1EC433D49E}.Release|ARM64.ActiveCfg = Release|ARM64 - {474661E7-C73A-43A6-AFEE-EE1EC433D49E}.Release|ARM64.Build.0 = Release|ARM64 - {474661E7-C73A-43A6-AFEE-EE1EC433D49E}.Release|x64.ActiveCfg = Release|x64 - {474661E7-C73A-43A6-AFEE-EE1EC433D49E}.Release|x64.Build.0 = Release|x64 - {D79392F7-06D6-4B4B-A39F-4D587C215D3A}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {D79392F7-06D6-4B4B-A39F-4D587C215D3A}.Debug|ARM64.Build.0 = Debug|ARM64 - {D79392F7-06D6-4B4B-A39F-4D587C215D3A}.Debug|x64.ActiveCfg = Debug|x64 - {D79392F7-06D6-4B4B-A39F-4D587C215D3A}.Debug|x64.Build.0 = Debug|x64 - {D79392F7-06D6-4B4B-A39F-4D587C215D3A}.Release|ARM64.ActiveCfg = Release|ARM64 - {D79392F7-06D6-4B4B-A39F-4D587C215D3A}.Release|ARM64.Build.0 = Release|ARM64 - {D79392F7-06D6-4B4B-A39F-4D587C215D3A}.Release|x64.ActiveCfg = Release|x64 - {D79392F7-06D6-4B4B-A39F-4D587C215D3A}.Release|x64.Build.0 = Release|x64 - {E4BECBAB-9C6E-41AB-BB56-F9D70AB6BE03}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {E4BECBAB-9C6E-41AB-BB56-F9D70AB6BE03}.Debug|ARM64.Build.0 = Debug|ARM64 - {E4BECBAB-9C6E-41AB-BB56-F9D70AB6BE03}.Debug|x64.ActiveCfg = Debug|x64 - {E4BECBAB-9C6E-41AB-BB56-F9D70AB6BE03}.Debug|x64.Build.0 = Debug|x64 - {E4BECBAB-9C6E-41AB-BB56-F9D70AB6BE03}.Release|ARM64.ActiveCfg = Release|ARM64 - {E4BECBAB-9C6E-41AB-BB56-F9D70AB6BE03}.Release|ARM64.Build.0 = Release|ARM64 - {E4BECBAB-9C6E-41AB-BB56-F9D70AB6BE03}.Release|x64.ActiveCfg = Release|x64 - {E4BECBAB-9C6E-41AB-BB56-F9D70AB6BE03}.Release|x64.Build.0 = Release|x64 - {8ADA04D7-6DB1-4DA4-AB55-64FB12A0997B}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {8ADA04D7-6DB1-4DA4-AB55-64FB12A0997B}.Debug|ARM64.Build.0 = Debug|ARM64 - {8ADA04D7-6DB1-4DA4-AB55-64FB12A0997B}.Debug|x64.ActiveCfg = Debug|x64 - {8ADA04D7-6DB1-4DA4-AB55-64FB12A0997B}.Debug|x64.Build.0 = Debug|x64 - {8ADA04D7-6DB1-4DA4-AB55-64FB12A0997B}.Release|ARM64.ActiveCfg = Release|ARM64 - {8ADA04D7-6DB1-4DA4-AB55-64FB12A0997B}.Release|ARM64.Build.0 = Release|ARM64 - {8ADA04D7-6DB1-4DA4-AB55-64FB12A0997B}.Release|x64.ActiveCfg = Release|x64 - {8ADA04D7-6DB1-4DA4-AB55-64FB12A0997B}.Release|x64.Build.0 = Release|x64 - {0E033BE3-2E08-428E-9AE9-BC673EFA12B5}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {0E033BE3-2E08-428E-9AE9-BC673EFA12B5}.Debug|ARM64.Build.0 = Debug|ARM64 - {0E033BE3-2E08-428E-9AE9-BC673EFA12B5}.Debug|x64.ActiveCfg = Debug|x64 - {0E033BE3-2E08-428E-9AE9-BC673EFA12B5}.Debug|x64.Build.0 = Debug|x64 - {0E033BE3-2E08-428E-9AE9-BC673EFA12B5}.Release|ARM64.ActiveCfg = Release|ARM64 - {0E033BE3-2E08-428E-9AE9-BC673EFA12B5}.Release|ARM64.Build.0 = Release|ARM64 - {0E033BE3-2E08-428E-9AE9-BC673EFA12B5}.Release|x64.ActiveCfg = Release|x64 - {0E033BE3-2E08-428E-9AE9-BC673EFA12B5}.Release|x64.Build.0 = Release|x64 - {AB993F38-C31D-4897-B139-A620C42BC565}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {AB993F38-C31D-4897-B139-A620C42BC565}.Debug|ARM64.Build.0 = Debug|ARM64 - {AB993F38-C31D-4897-B139-A620C42BC565}.Debug|x64.ActiveCfg = Debug|x64 - {AB993F38-C31D-4897-B139-A620C42BC565}.Debug|x64.Build.0 = Debug|x64 - {AB993F38-C31D-4897-B139-A620C42BC565}.Release|ARM64.ActiveCfg = Release|ARM64 - {AB993F38-C31D-4897-B139-A620C42BC565}.Release|ARM64.Build.0 = Release|ARM64 - {AB993F38-C31D-4897-B139-A620C42BC565}.Release|x64.ActiveCfg = Release|x64 - {AB993F38-C31D-4897-B139-A620C42BC565}.Release|x64.Build.0 = Release|x64 - {9092C5CC-3E71-41B3-BF68-4A7BDD8A5476}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {9092C5CC-3E71-41B3-BF68-4A7BDD8A5476}.Debug|ARM64.Build.0 = Debug|ARM64 - {9092C5CC-3E71-41B3-BF68-4A7BDD8A5476}.Debug|x64.ActiveCfg = Debug|x64 - {9092C5CC-3E71-41B3-BF68-4A7BDD8A5476}.Debug|x64.Build.0 = Debug|x64 - {9092C5CC-3E71-41B3-BF68-4A7BDD8A5476}.Release|ARM64.ActiveCfg = Release|ARM64 - {9092C5CC-3E71-41B3-BF68-4A7BDD8A5476}.Release|ARM64.Build.0 = Release|ARM64 - {9092C5CC-3E71-41B3-BF68-4A7BDD8A5476}.Release|x64.ActiveCfg = Release|x64 - {9092C5CC-3E71-41B3-BF68-4A7BDD8A5476}.Release|x64.Build.0 = Release|x64 - {31643FDB-1BB8-4965-9DE7-000FC88D35AE}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {31643FDB-1BB8-4965-9DE7-000FC88D35AE}.Debug|ARM64.Build.0 = Debug|ARM64 - {31643FDB-1BB8-4965-9DE7-000FC88D35AE}.Debug|x64.ActiveCfg = Debug|x64 - {31643FDB-1BB8-4965-9DE7-000FC88D35AE}.Debug|x64.Build.0 = Debug|x64 - {31643FDB-1BB8-4965-9DE7-000FC88D35AE}.Release|ARM64.ActiveCfg = Release|ARM64 - {31643FDB-1BB8-4965-9DE7-000FC88D35AE}.Release|ARM64.Build.0 = Release|ARM64 - {31643FDB-1BB8-4965-9DE7-000FC88D35AE}.Release|x64.ActiveCfg = Release|x64 - {31643FDB-1BB8-4965-9DE7-000FC88D35AE}.Release|x64.Build.0 = Release|x64 - {677EA016-1182-440C-9345-DC88D1E98C0C}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {677EA016-1182-440C-9345-DC88D1E98C0C}.Debug|ARM64.Build.0 = Debug|ARM64 - {677EA016-1182-440C-9345-DC88D1E98C0C}.Debug|x64.ActiveCfg = Debug|x64 - {677EA016-1182-440C-9345-DC88D1E98C0C}.Debug|x64.Build.0 = Debug|x64 - {677EA016-1182-440C-9345-DC88D1E98C0C}.Release|ARM64.ActiveCfg = Release|ARM64 - {677EA016-1182-440C-9345-DC88D1E98C0C}.Release|ARM64.Build.0 = Release|ARM64 - {677EA016-1182-440C-9345-DC88D1E98C0C}.Release|x64.ActiveCfg = Release|x64 - {677EA016-1182-440C-9345-DC88D1E98C0C}.Release|x64.Build.0 = Release|x64 - {F6EA7144-8D64-4EBB-A13E-76DFBD911EAE}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {F6EA7144-8D64-4EBB-A13E-76DFBD911EAE}.Debug|ARM64.Build.0 = Debug|ARM64 - {F6EA7144-8D64-4EBB-A13E-76DFBD911EAE}.Debug|x64.ActiveCfg = Debug|x64 - {F6EA7144-8D64-4EBB-A13E-76DFBD911EAE}.Debug|x64.Build.0 = Debug|x64 - {F6EA7144-8D64-4EBB-A13E-76DFBD911EAE}.Release|ARM64.ActiveCfg = Release|ARM64 - {F6EA7144-8D64-4EBB-A13E-76DFBD911EAE}.Release|ARM64.Build.0 = Release|ARM64 - {F6EA7144-8D64-4EBB-A13E-76DFBD911EAE}.Release|x64.ActiveCfg = Release|x64 - {F6EA7144-8D64-4EBB-A13E-76DFBD911EAE}.Release|x64.Build.0 = Release|x64 - {BDB6578B-0691-4E80-A46C-DF21639FD3B8}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {BDB6578B-0691-4E80-A46C-DF21639FD3B8}.Debug|ARM64.Build.0 = Debug|ARM64 - {BDB6578B-0691-4E80-A46C-DF21639FD3B8}.Debug|x64.ActiveCfg = Debug|x64 - {BDB6578B-0691-4E80-A46C-DF21639FD3B8}.Debug|x64.Build.0 = Debug|x64 - {BDB6578B-0691-4E80-A46C-DF21639FD3B8}.Release|ARM64.ActiveCfg = Release|ARM64 - {BDB6578B-0691-4E80-A46C-DF21639FD3B8}.Release|ARM64.Build.0 = Release|ARM64 - {BDB6578B-0691-4E80-A46C-DF21639FD3B8}.Release|x64.ActiveCfg = Release|x64 - {BDB6578B-0691-4E80-A46C-DF21639FD3B8}.Release|x64.Build.0 = Release|x64 - {41279555-F94F-4EBC-99DE-AF863C10C5C4}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {41279555-F94F-4EBC-99DE-AF863C10C5C4}.Debug|ARM64.Build.0 = Debug|ARM64 - {41279555-F94F-4EBC-99DE-AF863C10C5C4}.Debug|x64.ActiveCfg = Debug|x64 - {41279555-F94F-4EBC-99DE-AF863C10C5C4}.Debug|x64.Build.0 = Debug|x64 - {41279555-F94F-4EBC-99DE-AF863C10C5C4}.Release|ARM64.ActiveCfg = Release|ARM64 - {41279555-F94F-4EBC-99DE-AF863C10C5C4}.Release|ARM64.Build.0 = Release|ARM64 - {41279555-F94F-4EBC-99DE-AF863C10C5C4}.Release|x64.ActiveCfg = Release|x64 - {41279555-F94F-4EBC-99DE-AF863C10C5C4}.Release|x64.Build.0 = Release|x64 - {93D73454-2512-424E-9CDA-4BB357FE13DD}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {93D73454-2512-424E-9CDA-4BB357FE13DD}.Debug|ARM64.Build.0 = Debug|ARM64 - {93D73454-2512-424E-9CDA-4BB357FE13DD}.Debug|x64.ActiveCfg = Debug|x64 - {93D73454-2512-424E-9CDA-4BB357FE13DD}.Debug|x64.Build.0 = Debug|x64 - {93D73454-2512-424E-9CDA-4BB357FE13DD}.Release|ARM64.ActiveCfg = Release|ARM64 - {93D73454-2512-424E-9CDA-4BB357FE13DD}.Release|ARM64.Build.0 = Release|ARM64 - {93D73454-2512-424E-9CDA-4BB357FE13DD}.Release|x64.ActiveCfg = Release|x64 - {93D73454-2512-424E-9CDA-4BB357FE13DD}.Release|x64.Build.0 = Release|x64 - {349EE8F9-7D25-4909-AAF5-FF3FADE72187}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {349EE8F9-7D25-4909-AAF5-FF3FADE72187}.Debug|ARM64.Build.0 = Debug|ARM64 - {349EE8F9-7D25-4909-AAF5-FF3FADE72187}.Debug|x64.ActiveCfg = Debug|x64 - {349EE8F9-7D25-4909-AAF5-FF3FADE72187}.Debug|x64.Build.0 = Debug|x64 - {349EE8F9-7D25-4909-AAF5-FF3FADE72187}.Release|ARM64.ActiveCfg = Release|ARM64 - {349EE8F9-7D25-4909-AAF5-FF3FADE72187}.Release|ARM64.Build.0 = Release|ARM64 - {349EE8F9-7D25-4909-AAF5-FF3FADE72187}.Release|x64.ActiveCfg = Release|x64 - {349EE8F9-7D25-4909-AAF5-FF3FADE72187}.Release|x64.Build.0 = Release|x64 - {76563A7F-1011-4EAD-B667-7BB18D09568E}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {76563A7F-1011-4EAD-B667-7BB18D09568E}.Debug|ARM64.Build.0 = Debug|ARM64 - {76563A7F-1011-4EAD-B667-7BB18D09568E}.Debug|x64.ActiveCfg = Debug|x64 - {76563A7F-1011-4EAD-B667-7BB18D09568E}.Debug|x64.Build.0 = Debug|x64 - {76563A7F-1011-4EAD-B667-7BB18D09568E}.Release|ARM64.ActiveCfg = Release|ARM64 - {76563A7F-1011-4EAD-B667-7BB18D09568E}.Release|ARM64.Build.0 = Release|ARM64 - {76563A7F-1011-4EAD-B667-7BB18D09568E}.Release|x64.ActiveCfg = Release|x64 - {76563A7F-1011-4EAD-B667-7BB18D09568E}.Release|x64.Build.0 = Release|x64 - {CBC76802-C128-4B17-BF6C-23B08C313E5E}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {CBC76802-C128-4B17-BF6C-23B08C313E5E}.Debug|ARM64.Build.0 = Debug|ARM64 - {CBC76802-C128-4B17-BF6C-23B08C313E5E}.Debug|x64.ActiveCfg = Debug|x64 - {CBC76802-C128-4B17-BF6C-23B08C313E5E}.Debug|x64.Build.0 = Debug|x64 - {CBC76802-C128-4B17-BF6C-23B08C313E5E}.Release|ARM64.ActiveCfg = Release|ARM64 - {CBC76802-C128-4B17-BF6C-23B08C313E5E}.Release|ARM64.Build.0 = Release|ARM64 - {CBC76802-C128-4B17-BF6C-23B08C313E5E}.Release|x64.ActiveCfg = Release|x64 - {CBC76802-C128-4B17-BF6C-23B08C313E5E}.Release|x64.Build.0 = Release|x64 - {BB00605C-125F-4A21-B33B-7BF418322DCB}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {BB00605C-125F-4A21-B33B-7BF418322DCB}.Debug|ARM64.Build.0 = Debug|ARM64 - {BB00605C-125F-4A21-B33B-7BF418322DCB}.Debug|x64.ActiveCfg = Debug|x64 - {BB00605C-125F-4A21-B33B-7BF418322DCB}.Debug|x64.Build.0 = Debug|x64 - {BB00605C-125F-4A21-B33B-7BF418322DCB}.Release|ARM64.ActiveCfg = Release|ARM64 - {BB00605C-125F-4A21-B33B-7BF418322DCB}.Release|ARM64.Build.0 = Release|ARM64 - {BB00605C-125F-4A21-B33B-7BF418322DCB}.Release|x64.ActiveCfg = Release|x64 - {BB00605C-125F-4A21-B33B-7BF418322DCB}.Release|x64.Build.0 = Release|x64 - {D178061B-84D3-44F9-BEED-EFD18D9033F0}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {D178061B-84D3-44F9-BEED-EFD18D9033F0}.Debug|ARM64.Build.0 = Debug|ARM64 - {D178061B-84D3-44F9-BEED-EFD18D9033F0}.Debug|x64.ActiveCfg = Debug|x64 - {D178061B-84D3-44F9-BEED-EFD18D9033F0}.Debug|x64.Build.0 = Debug|x64 - {D178061B-84D3-44F9-BEED-EFD18D9033F0}.Release|ARM64.ActiveCfg = Release|ARM64 - {D178061B-84D3-44F9-BEED-EFD18D9033F0}.Release|ARM64.Build.0 = Release|ARM64 - {D178061B-84D3-44F9-BEED-EFD18D9033F0}.Release|x64.ActiveCfg = Release|x64 - {D178061B-84D3-44F9-BEED-EFD18D9033F0}.Release|x64.Build.0 = Release|x64 - {7299DDD3-BBEC-4027-AF30-8DACC5415F96}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {7299DDD3-BBEC-4027-AF30-8DACC5415F96}.Debug|ARM64.Build.0 = Debug|ARM64 - {7299DDD3-BBEC-4027-AF30-8DACC5415F96}.Debug|x64.ActiveCfg = Debug|x64 - {7299DDD3-BBEC-4027-AF30-8DACC5415F96}.Debug|x64.Build.0 = Debug|x64 - {7299DDD3-BBEC-4027-AF30-8DACC5415F96}.Release|ARM64.ActiveCfg = Release|ARM64 - {7299DDD3-BBEC-4027-AF30-8DACC5415F96}.Release|ARM64.Build.0 = Release|ARM64 - {7299DDD3-BBEC-4027-AF30-8DACC5415F96}.Release|x64.ActiveCfg = Release|x64 - {7299DDD3-BBEC-4027-AF30-8DACC5415F96}.Release|x64.Build.0 = Release|x64 - {C636D9D1-82FE-42B5-9987-63B7D4836341}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {C636D9D1-82FE-42B5-9987-63B7D4836341}.Debug|ARM64.Build.0 = Debug|ARM64 - {C636D9D1-82FE-42B5-9987-63B7D4836341}.Debug|x64.ActiveCfg = Debug|x64 - {C636D9D1-82FE-42B5-9987-63B7D4836341}.Debug|x64.Build.0 = Debug|x64 - {C636D9D1-82FE-42B5-9987-63B7D4836341}.Release|ARM64.ActiveCfg = Release|ARM64 - {C636D9D1-82FE-42B5-9987-63B7D4836341}.Release|ARM64.Build.0 = Release|ARM64 - {C636D9D1-82FE-42B5-9987-63B7D4836341}.Release|x64.ActiveCfg = Release|x64 - {C636D9D1-82FE-42B5-9987-63B7D4836341}.Release|x64.Build.0 = Release|x64 - {8EA11166-6512-44FC-B7A5-A4D1ECC81170}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {8EA11166-6512-44FC-B7A5-A4D1ECC81170}.Debug|ARM64.Build.0 = Debug|ARM64 - {8EA11166-6512-44FC-B7A5-A4D1ECC81170}.Debug|x64.ActiveCfg = Debug|x64 - {8EA11166-6512-44FC-B7A5-A4D1ECC81170}.Debug|x64.Build.0 = Debug|x64 - {8EA11166-6512-44FC-B7A5-A4D1ECC81170}.Release|ARM64.ActiveCfg = Release|ARM64 - {8EA11166-6512-44FC-B7A5-A4D1ECC81170}.Release|ARM64.Build.0 = Release|ARM64 - {8EA11166-6512-44FC-B7A5-A4D1ECC81170}.Release|x64.ActiveCfg = Release|x64 - {8EA11166-6512-44FC-B7A5-A4D1ECC81170}.Release|x64.Build.0 = Release|x64 - {38FEE76F-F347-484B-949C-B4649381CFFB}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {38FEE76F-F347-484B-949C-B4649381CFFB}.Debug|ARM64.Build.0 = Debug|ARM64 - {38FEE76F-F347-484B-949C-B4649381CFFB}.Debug|x64.ActiveCfg = Debug|x64 - {38FEE76F-F347-484B-949C-B4649381CFFB}.Debug|x64.Build.0 = Debug|x64 - {38FEE76F-F347-484B-949C-B4649381CFFB}.Release|ARM64.ActiveCfg = Release|ARM64 - {38FEE76F-F347-484B-949C-B4649381CFFB}.Release|ARM64.Build.0 = Release|ARM64 - {38FEE76F-F347-484B-949C-B4649381CFFB}.Release|x64.ActiveCfg = Release|x64 - {38FEE76F-F347-484B-949C-B4649381CFFB}.Release|x64.Build.0 = Release|x64 - {2C0D058E-DE35-4471-AD99-E68A2CAF9E18}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {2C0D058E-DE35-4471-AD99-E68A2CAF9E18}.Debug|ARM64.Build.0 = Debug|ARM64 - {2C0D058E-DE35-4471-AD99-E68A2CAF9E18}.Debug|x64.ActiveCfg = Debug|x64 - {2C0D058E-DE35-4471-AD99-E68A2CAF9E18}.Debug|x64.Build.0 = Debug|x64 - {2C0D058E-DE35-4471-AD99-E68A2CAF9E18}.Release|ARM64.ActiveCfg = Release|ARM64 - {2C0D058E-DE35-4471-AD99-E68A2CAF9E18}.Release|ARM64.Build.0 = Release|ARM64 - {2C0D058E-DE35-4471-AD99-E68A2CAF9E18}.Release|x64.ActiveCfg = Release|x64 - {2C0D058E-DE35-4471-AD99-E68A2CAF9E18}.Release|x64.Build.0 = Release|x64 - {5BDF4B91-1491-4FB0-BC27-78E9A8E97DC3}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {5BDF4B91-1491-4FB0-BC27-78E9A8E97DC3}.Debug|ARM64.Build.0 = Debug|ARM64 - {5BDF4B91-1491-4FB0-BC27-78E9A8E97DC3}.Debug|x64.ActiveCfg = Debug|x64 - {5BDF4B91-1491-4FB0-BC27-78E9A8E97DC3}.Debug|x64.Build.0 = Debug|x64 - {5BDF4B91-1491-4FB0-BC27-78E9A8E97DC3}.Release|ARM64.ActiveCfg = Release|ARM64 - {5BDF4B91-1491-4FB0-BC27-78E9A8E97DC3}.Release|ARM64.Build.0 = Release|ARM64 - {5BDF4B91-1491-4FB0-BC27-78E9A8E97DC3}.Release|x64.ActiveCfg = Release|x64 - {5BDF4B91-1491-4FB0-BC27-78E9A8E97DC3}.Release|x64.Build.0 = Release|x64 - {8498F2FA-5CA6-4169-9971-DE5B1FE6132C}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {8498F2FA-5CA6-4169-9971-DE5B1FE6132C}.Debug|ARM64.Build.0 = Debug|ARM64 - {8498F2FA-5CA6-4169-9971-DE5B1FE6132C}.Debug|x64.ActiveCfg = Debug|x64 - {8498F2FA-5CA6-4169-9971-DE5B1FE6132C}.Debug|x64.Build.0 = Debug|x64 - {8498F2FA-5CA6-4169-9971-DE5B1FE6132C}.Release|ARM64.ActiveCfg = Release|ARM64 - {8498F2FA-5CA6-4169-9971-DE5B1FE6132C}.Release|ARM64.Build.0 = Release|ARM64 - {8498F2FA-5CA6-4169-9971-DE5B1FE6132C}.Release|x64.ActiveCfg = Release|x64 - {8498F2FA-5CA6-4169-9971-DE5B1FE6132C}.Release|x64.Build.0 = Release|x64 - {4482FD2A-EC43-3FFB-AC20-2E5C54B05EAD}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {4482FD2A-EC43-3FFB-AC20-2E5C54B05EAD}.Debug|ARM64.Build.0 = Debug|ARM64 - {4482FD2A-EC43-3FFB-AC20-2E5C54B05EAD}.Debug|x64.ActiveCfg = Debug|x64 - {4482FD2A-EC43-3FFB-AC20-2E5C54B05EAD}.Debug|x64.Build.0 = Debug|x64 - {4482FD2A-EC43-3FFB-AC20-2E5C54B05EAD}.Release|ARM64.ActiveCfg = Release|ARM64 - {4482FD2A-EC43-3FFB-AC20-2E5C54B05EAD}.Release|ARM64.Build.0 = Release|ARM64 - {4482FD2A-EC43-3FFB-AC20-2E5C54B05EAD}.Release|x64.ActiveCfg = Release|x64 - {4482FD2A-EC43-3FFB-AC20-2E5C54B05EAD}.Release|x64.Build.0 = Release|x64 - {23114507-079A-4418-9707-CFA81A03CA99}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {23114507-079A-4418-9707-CFA81A03CA99}.Debug|ARM64.Build.0 = Debug|ARM64 - {23114507-079A-4418-9707-CFA81A03CA99}.Debug|x64.ActiveCfg = Debug|x64 - {23114507-079A-4418-9707-CFA81A03CA99}.Debug|x64.Build.0 = Debug|x64 - {23114507-079A-4418-9707-CFA81A03CA99}.Release|ARM64.ActiveCfg = Release|ARM64 - {23114507-079A-4418-9707-CFA81A03CA99}.Release|ARM64.Build.0 = Release|ARM64 - {23114507-079A-4418-9707-CFA81A03CA99}.Release|x64.ActiveCfg = Release|x64 - {23114507-079A-4418-9707-CFA81A03CA99}.Release|x64.Build.0 = Release|x64 - {4C3B2264-EA73-4A7B-9CFE-65B0FD635EBB}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {4C3B2264-EA73-4A7B-9CFE-65B0FD635EBB}.Debug|ARM64.Build.0 = Debug|ARM64 - {4C3B2264-EA73-4A7B-9CFE-65B0FD635EBB}.Debug|x64.ActiveCfg = Debug|x64 - {4C3B2264-EA73-4A7B-9CFE-65B0FD635EBB}.Debug|x64.Build.0 = Debug|x64 - {4C3B2264-EA73-4A7B-9CFE-65B0FD635EBB}.Release|ARM64.ActiveCfg = Release|ARM64 - {4C3B2264-EA73-4A7B-9CFE-65B0FD635EBB}.Release|ARM64.Build.0 = Release|ARM64 - {4C3B2264-EA73-4A7B-9CFE-65B0FD635EBB}.Release|x64.ActiveCfg = Release|x64 - {4C3B2264-EA73-4A7B-9CFE-65B0FD635EBB}.Release|x64.Build.0 = Release|x64 - {A608225E-AE0A-4D1A-9B55-97F57C862391}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {A608225E-AE0A-4D1A-9B55-97F57C862391}.Debug|ARM64.Build.0 = Debug|ARM64 - {A608225E-AE0A-4D1A-9B55-97F57C862391}.Debug|x64.ActiveCfg = Debug|x64 - {A608225E-AE0A-4D1A-9B55-97F57C862391}.Debug|x64.Build.0 = Debug|x64 - {A608225E-AE0A-4D1A-9B55-97F57C862391}.Release|ARM64.ActiveCfg = Release|ARM64 - {A608225E-AE0A-4D1A-9B55-97F57C862391}.Release|ARM64.Build.0 = Release|ARM64 - {A608225E-AE0A-4D1A-9B55-97F57C862391}.Release|x64.ActiveCfg = Release|x64 - {A608225E-AE0A-4D1A-9B55-97F57C862391}.Release|x64.Build.0 = Release|x64 - {1D8C51D2-FFA4-418E-B183-9F42B6A6717E}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {1D8C51D2-FFA4-418E-B183-9F42B6A6717E}.Debug|ARM64.Build.0 = Debug|ARM64 - {1D8C51D2-FFA4-418E-B183-9F42B6A6717E}.Debug|x64.ActiveCfg = Debug|x64 - {1D8C51D2-FFA4-418E-B183-9F42B6A6717E}.Debug|x64.Build.0 = Debug|x64 - {1D8C51D2-FFA4-418E-B183-9F42B6A6717E}.Release|ARM64.ActiveCfg = Release|ARM64 - {1D8C51D2-FFA4-418E-B183-9F42B6A6717E}.Release|ARM64.Build.0 = Release|ARM64 - {1D8C51D2-FFA4-418E-B183-9F42B6A6717E}.Release|x64.ActiveCfg = Release|x64 - {1D8C51D2-FFA4-418E-B183-9F42B6A6717E}.Release|x64.Build.0 = Release|x64 - {055A775F-B4F5-4970-9240-F6CF7661F37B}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {055A775F-B4F5-4970-9240-F6CF7661F37B}.Debug|ARM64.Build.0 = Debug|ARM64 - {055A775F-B4F5-4970-9240-F6CF7661F37B}.Debug|x64.ActiveCfg = Debug|x64 - {055A775F-B4F5-4970-9240-F6CF7661F37B}.Debug|x64.Build.0 = Debug|x64 - {055A775F-B4F5-4970-9240-F6CF7661F37B}.Release|ARM64.ActiveCfg = Release|ARM64 - {055A775F-B4F5-4970-9240-F6CF7661F37B}.Release|ARM64.Build.0 = Release|ARM64 - {055A775F-B4F5-4970-9240-F6CF7661F37B}.Release|x64.ActiveCfg = Release|x64 - {055A775F-B4F5-4970-9240-F6CF7661F37B}.Release|x64.Build.0 = Release|x64 - {1BEA10F3-80CE-4BC4-9331-5769372CDF99}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {1BEA10F3-80CE-4BC4-9331-5769372CDF99}.Debug|ARM64.Build.0 = Debug|ARM64 - {1BEA10F3-80CE-4BC4-9331-5769372CDF99}.Debug|x64.ActiveCfg = Debug|x64 - {1BEA10F3-80CE-4BC4-9331-5769372CDF99}.Debug|x64.Build.0 = Debug|x64 - {1BEA10F3-80CE-4BC4-9331-5769372CDF99}.Release|ARM64.ActiveCfg = Release|ARM64 - {1BEA10F3-80CE-4BC4-9331-5769372CDF99}.Release|ARM64.Build.0 = Release|ARM64 - {1BEA10F3-80CE-4BC4-9331-5769372CDF99}.Release|x64.ActiveCfg = Release|x64 - {1BEA10F3-80CE-4BC4-9331-5769372CDF99}.Release|x64.Build.0 = Release|x64 - {864C4C8E-296D-3DBC-AD83-F1D5CB6E8EC6}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {864C4C8E-296D-3DBC-AD83-F1D5CB6E8EC6}.Debug|ARM64.Build.0 = Debug|ARM64 - {864C4C8E-296D-3DBC-AD83-F1D5CB6E8EC6}.Debug|x64.ActiveCfg = Debug|x64 - {864C4C8E-296D-3DBC-AD83-F1D5CB6E8EC6}.Debug|x64.Build.0 = Debug|x64 - {864C4C8E-296D-3DBC-AD83-F1D5CB6E8EC6}.Release|ARM64.ActiveCfg = Release|ARM64 - {864C4C8E-296D-3DBC-AD83-F1D5CB6E8EC6}.Release|ARM64.Build.0 = Release|ARM64 - {864C4C8E-296D-3DBC-AD83-F1D5CB6E8EC6}.Release|x64.ActiveCfg = Release|x64 - {864C4C8E-296D-3DBC-AD83-F1D5CB6E8EC6}.Release|x64.Build.0 = Release|x64 - {4BC5A148-0AB3-440F-A980-A29B4B999190}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {4BC5A148-0AB3-440F-A980-A29B4B999190}.Debug|ARM64.Build.0 = Debug|ARM64 - {4BC5A148-0AB3-440F-A980-A29B4B999190}.Debug|x64.ActiveCfg = Debug|x64 - {4BC5A148-0AB3-440F-A980-A29B4B999190}.Debug|x64.Build.0 = Debug|x64 - {4BC5A148-0AB3-440F-A980-A29B4B999190}.Release|ARM64.ActiveCfg = Release|ARM64 - {4BC5A148-0AB3-440F-A980-A29B4B999190}.Release|ARM64.Build.0 = Release|ARM64 - {4BC5A148-0AB3-440F-A980-A29B4B999190}.Release|x64.ActiveCfg = Release|x64 - {4BC5A148-0AB3-440F-A980-A29B4B999190}.Release|x64.Build.0 = Release|x64 - {3D780617-EC8C-4721-B9FD-DFC9BB658C7C}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {3D780617-EC8C-4721-B9FD-DFC9BB658C7C}.Debug|ARM64.Build.0 = Debug|ARM64 - {3D780617-EC8C-4721-B9FD-DFC9BB658C7C}.Debug|x64.ActiveCfg = Debug|x64 - {3D780617-EC8C-4721-B9FD-DFC9BB658C7C}.Debug|x64.Build.0 = Debug|x64 - {3D780617-EC8C-4721-B9FD-DFC9BB658C7C}.Release|ARM64.ActiveCfg = Release|ARM64 - {3D780617-EC8C-4721-B9FD-DFC9BB658C7C}.Release|ARM64.Build.0 = Release|ARM64 - {3D780617-EC8C-4721-B9FD-DFC9BB658C7C}.Release|x64.ActiveCfg = Release|x64 - {3D780617-EC8C-4721-B9FD-DFC9BB658C7C}.Release|x64.Build.0 = Release|x64 - {8DC244EE-A0BD-4038-BAF7-CFAFA5EB2BAA}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {8DC244EE-A0BD-4038-BAF7-CFAFA5EB2BAA}.Debug|ARM64.Build.0 = Debug|ARM64 - {8DC244EE-A0BD-4038-BAF7-CFAFA5EB2BAA}.Debug|x64.ActiveCfg = Debug|x64 - {8DC244EE-A0BD-4038-BAF7-CFAFA5EB2BAA}.Debug|x64.Build.0 = Debug|x64 - {8DC244EE-A0BD-4038-BAF7-CFAFA5EB2BAA}.Release|ARM64.ActiveCfg = Release|ARM64 - {8DC244EE-A0BD-4038-BAF7-CFAFA5EB2BAA}.Release|ARM64.Build.0 = Release|ARM64 - {8DC244EE-A0BD-4038-BAF7-CFAFA5EB2BAA}.Release|x64.ActiveCfg = Release|x64 - {8DC244EE-A0BD-4038-BAF7-CFAFA5EB2BAA}.Release|x64.Build.0 = Release|x64 - {3F17D282-A77D-4931-B844-903AD0809A5E}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {3F17D282-A77D-4931-B844-903AD0809A5E}.Debug|ARM64.Build.0 = Debug|ARM64 - {3F17D282-A77D-4931-B844-903AD0809A5E}.Debug|x64.ActiveCfg = Debug|x64 - {3F17D282-A77D-4931-B844-903AD0809A5E}.Debug|x64.Build.0 = Debug|x64 - {3F17D282-A77D-4931-B844-903AD0809A5E}.Release|ARM64.ActiveCfg = Release|ARM64 - {3F17D282-A77D-4931-B844-903AD0809A5E}.Release|ARM64.Build.0 = Release|ARM64 - {3F17D282-A77D-4931-B844-903AD0809A5E}.Release|x64.ActiveCfg = Release|x64 - {3F17D282-A77D-4931-B844-903AD0809A5E}.Release|x64.Build.0 = Release|x64 - {447B7B1E-1D74-4AEF-B2B9-6EB41C5D5313}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {447B7B1E-1D74-4AEF-B2B9-6EB41C5D5313}.Debug|ARM64.Build.0 = Debug|ARM64 - {447B7B1E-1D74-4AEF-B2B9-6EB41C5D5313}.Debug|x64.ActiveCfg = Debug|x64 - {447B7B1E-1D74-4AEF-B2B9-6EB41C5D5313}.Debug|x64.Build.0 = Debug|x64 - {447B7B1E-1D74-4AEF-B2B9-6EB41C5D5313}.Release|ARM64.ActiveCfg = Release|ARM64 - {447B7B1E-1D74-4AEF-B2B9-6EB41C5D5313}.Release|ARM64.Build.0 = Release|ARM64 - {447B7B1E-1D74-4AEF-B2B9-6EB41C5D5313}.Release|x64.ActiveCfg = Release|x64 - {447B7B1E-1D74-4AEF-B2B9-6EB41C5D5313}.Release|x64.Build.0 = Release|x64 - {CC99A910-3752-4465-95AA-7DC240D92A99}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {CC99A910-3752-4465-95AA-7DC240D92A99}.Debug|ARM64.Build.0 = Debug|ARM64 - {CC99A910-3752-4465-95AA-7DC240D92A99}.Debug|x64.ActiveCfg = Debug|x64 - {CC99A910-3752-4465-95AA-7DC240D92A99}.Debug|x64.Build.0 = Debug|x64 - {CC99A910-3752-4465-95AA-7DC240D92A99}.Release|ARM64.ActiveCfg = Release|ARM64 - {CC99A910-3752-4465-95AA-7DC240D92A99}.Release|ARM64.Build.0 = Release|ARM64 - {CC99A910-3752-4465-95AA-7DC240D92A99}.Release|x64.ActiveCfg = Release|x64 - {CC99A910-3752-4465-95AA-7DC240D92A99}.Release|x64.Build.0 = Release|x64 - {8BDA3693-4999-4D11-9E52-8D08C30B643A}.Debug|ARM64.ActiveCfg = Debug|ARM64 - {8BDA3693-4999-4D11-9E52-8D08C30B643A}.Debug|ARM64.Build.0 = Debug|ARM64 - {8BDA3693-4999-4D11-9E52-8D08C30B643A}.Debug|x64.ActiveCfg = Debug|x64 - {8BDA3693-4999-4D11-9E52-8D08C30B643A}.Debug|x64.Build.0 = Debug|x64 - {8BDA3693-4999-4D11-9E52-8D08C30B643A}.Release|ARM64.ActiveCfg = Release|ARM64 - {8BDA3693-4999-4D11-9E52-8D08C30B643A}.Release|ARM64.Build.0 = Release|ARM64 - {8BDA3693-4999-4D11-9E52-8D08C30B643A}.Release|x64.ActiveCfg = Release|x64 - {8BDA3693-4999-4D11-9E52-8D08C30B643A}.Release|x64.Build.0 = Release|x64 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(NestedProjects) = preSolution - {8ADA04D7-6DB1-4DA4-AB55-64FB12A0997B} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {AB993F38-C31D-4897-B139-A620C42BC565} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {9092C5CC-3E71-41B3-BF68-4A7BDD8A5476} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {31643FDB-1BB8-4965-9DE7-000FC88D35AE} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {677EA016-1182-440C-9345-DC88D1E98C0C} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {F6EA7144-8D64-4EBB-A13E-76DFBD911EAE} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {BDB6578B-0691-4E80-A46C-DF21639FD3B8} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {93D73454-2512-424E-9CDA-4BB357FE13DD} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {349EE8F9-7D25-4909-AAF5-FF3FADE72187} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {CBC76802-C128-4B17-BF6C-23B08C313E5E} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {BB00605C-125F-4A21-B33B-7BF418322DCB} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {D178061B-84D3-44F9-BEED-EFD18D9033F0} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {7299DDD3-BBEC-4027-AF30-8DACC5415F96} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {C636D9D1-82FE-42B5-9987-63B7D4836341} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {8EA11166-6512-44FC-B7A5-A4D1ECC81170} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {38FEE76F-F347-484B-949C-B4649381CFFB} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {2C0D058E-DE35-4471-AD99-E68A2CAF9E18} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {5BDF4B91-1491-4FB0-BC27-78E9A8E97DC3} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {8498F2FA-5CA6-4169-9971-DE5B1FE6132C} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {4482FD2A-EC43-3FFB-AC20-2E5C54B05EAD} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {23114507-079A-4418-9707-CFA81A03CA99} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {4C3B2264-EA73-4A7B-9CFE-65B0FD635EBB} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {A608225E-AE0A-4D1A-9B55-97F57C862391} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {1D8C51D2-FFA4-418E-B183-9F42B6A6717E} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {055A775F-B4F5-4970-9240-F6CF7661F37B} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {1BEA10F3-80CE-4BC4-9331-5769372CDF99} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {864C4C8E-296D-3DBC-AD83-F1D5CB6E8EC6} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {4BC5A148-0AB3-440F-A980-A29B4B999190} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {3D780617-EC8C-4721-B9FD-DFC9BB658C7C} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {8DC244EE-A0BD-4038-BAF7-CFAFA5EB2BAA} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {3F17D282-A77D-4931-B844-903AD0809A5E} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {447B7B1E-1D74-4AEF-B2B9-6EB41C5D5313} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {CC99A910-3752-4465-95AA-7DC240D92A99} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - {8BDA3693-4999-4D11-9E52-8D08C30B643A} = {87ADDFF9-5768-4DA2-A33B-2477593D6677} - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {64B0A343-3B94-4522-9C24-6937FE5EFB22} - EndGlobalSection -EndGlobal |
