diff --git a/External/SDK/Clang/Windows/Clang.bff b/External/SDK/Clang/Windows/Clang.bff index bc5ca41..39aaa4f 100644 --- a/External/SDK/Clang/Windows/Clang.bff +++ b/External/SDK/Clang/Windows/Clang.bff @@ -102,8 +102,8 @@ Compiler( 'Compiler-Clang19-NonCL' ) // Librarian .Librarian = '$Clang19_BasePath$\bin\llvm-ar.exe' - .LibrarianOptions = '/c echo %1 > %2' // 'rc "%2" "%1"' // NOTE: output must come first - + .LibrarianOptions = 'rc "%2" "%1"' // NOTE: output must come first + // = '/c echo %1 > %2' // Debug options // Linker .Linker = '$Clang19_BasePath$\bin\lld-link.exe' .LinkerOptions = '/NODEFAULTLIB /WX /NOLOGO /INCREMENTAL:NO /OUT:"%2" "%1" /DEBUG' diff --git a/External/SDK/VisualStudio/VS2022.bff b/External/SDK/VisualStudio/VS2022.bff index ee13134..dad3d15 100644 --- a/External/SDK/VisualStudio/VS2022.bff +++ b/External/SDK/VisualStudio/VS2022.bff @@ -72,20 +72,20 @@ Compiler( 'Compiler-VS2022-x64' ) { .Root = '$VS2022_ToolchainPath$/bin/Hostx64/x64' .Executable = '$Root$/cl.exe' - .ExtraFiles = { '$Root$/c1.dll' + .ExtraFiles = { '$Root$/c1.dll', '$Root$/c1xx.dll', '$Root$/c2.dll', - '$Root$/msobj140.dll' - '$Root$/mspdb140.dll' - '$Root$/mspdbcore.dll' - '$Root$/mspdbsrv.exe' - '$Root$/mspft140.dll' - '$Root$/msvcp140.dll' - '$Root$/msvcp140_atomic_wait.dll' // Required circa 16.8.3 (14.28.29333) - '$Root$/tbbmalloc.dll' // Required as of 16.2 (14.22.27905) - '$Root$/vcruntime140.dll' - '$Root$/vcruntime140_1.dll' // Required as of 16.5.1 (14.25.28610) - '$Root$/1033/clui.dll' + '$Root$/msobj140.dll', + '$Root$/mspdb140.dll', + '$Root$/mspdbcore.dll', + '$Root$/mspdbsrv.exe', + '$Root$/mspft140.dll', + '$Root$/msvcp140.dll', + '$Root$/msvcp140_atomic_wait.dll', // Required circa 16.8.3 (14.28.29333) + '$Root$/tbbmalloc.dll', // Required as of 16.2 (14.22.27905) + '$Root$/vcruntime140.dll', + '$Root$/vcruntime140_1.dll', // Required as of 16.5.1 (14.25.28610) + '$Root$/1033/clui.dll', '$Root$/1033/mspft140ui.dll' // Localized messages for static analysis } #if MSVC_DYNAMIC_DEOPT_AVAILABLE @@ -103,20 +103,20 @@ Compiler( 'Compiler-VS2022-ARM64' ) { .Root = '$VS2022_ToolchainPath$/bin/Hostx64/arm64' .Executable = '$Root$/cl.exe' - .ExtraFiles = { '$Root$/c1.dll' + .ExtraFiles = { '$Root$/c1.dll', '$Root$/c1xx.dll', '$Root$/c2.dll', - '$Root$/msobj140.dll' - '$Root$/mspdb140.dll' - '$Root$/mspdbcore.dll' - '$Root$/mspdbsrv.exe' - '$Root$/mspft140.dll' - '$Root$/msvcp140.dll' - '$Root$/msvcp140_atomic_wait.dll' // Required circa 16.8.3 (14.28.29333) - '$Root$/tbbmalloc.dll' // Required as of 16.2 (14.22.27905) - '$Root$/vcruntime140.dll' - '$Root$/vcruntime140_1.dll' // Required as of 16.5.1 (14.25.28610) - '$Root$/1033/clui.dll' + '$Root$/msobj140.dll', + '$Root$/mspdb140.dll', + '$Root$/mspdbcore.dll', + '$Root$/mspdbsrv.exe', + '$Root$/mspft140.dll', + '$Root$/msvcp140.dll', + '$Root$/msvcp140_atomic_wait.dll', // Required circa 16.8.3 (14.28.29333) + '$Root$/tbbmalloc.dll', // Required as of 16.2 (14.22.27905) + '$Root$/vcruntime140.dll', + '$Root$/vcruntime140_1.dll', // Required as of 16.5.1 (14.25.28610) + '$Root$/1033/clui.dll', '$Root$/1033/mspft140ui.dll' // Localized messages for static analysis } diff --git a/External/SDK/Windows/Windows10SDK.bff b/External/SDK/Windows/Windows10SDK.bff index 02f3b76..a733f1f 100644 --- a/External/SDK/Windows/Windows10SDK.bff +++ b/External/SDK/Windows/Windows10SDK.bff @@ -57,7 +57,7 @@ + ' "-I$Windows10_SDKBasePath$/Include/$Windows10_SDKVersion$/um"' + ' "-I$Windows10_SDKBasePath$/Include/$Windows10_SDKVersion$/shared"' - .WindowsDK_WinRTAssemblyPath = '$Windows10_SDKBasePath$/UnionMetadata/$Windows10_SDKVersion$/' + .WindowsSDK_WinRTAssemblyPath = '$Windows10_SDKBasePath$/UnionMetadata/$Windows10_SDKVersion$/' .CommonCompilerOptions = .WindowsSDK_IncludePaths + .WindowsSDK_Defines @@ -93,7 +93,7 @@ + ' /imsvc "$Windows10_SDKBasePath$/Include/$Windows10_SDKVersion$/um"' + ' /imsvc "$Windows10_SDKBasePath$/Include/$Windows10_SDKVersion$/shared"' - .WindowsDK_WinRTAssemblyPath = '$Windows10_SDKBasePath$/UnionMetadata/$Windows10_SDKVersion$/' + .WindowsSDK_WinRTAssemblyPath = '$Windows10_SDKBasePath$/UnionMetadata/$Windows10_SDKVersion$/' .CommonCompilerOptions = .WindowsSDK_IncludePaths + .WindowsSDK_Defines diff --git a/Game/Game.bff b/Game/Game.bff index cb441ad..177d84e 100644 --- a/Game/Game.bff +++ b/Game/Game.bff @@ -1,13 +1,19 @@ -// Juliet - Lib +// Game - Lib/Dll //------------------------------------------------------------------------------ { .ProjectName = 'Game' .ProjectPath = 'Game' - .JulietIncludePath = ' "-IJuliet/include"' + + .GAME_DLL_NAME = '$ProjectName$' + #if exists( GAME_BUILD_ID ) + { + #import GAME_BUILD_ID + ^GAME_DLL_NAME + '-$GAME_BUILD_ID$' + } + #endif // Library //-------------------------------------------------------------------------- - .ProjectConfigs = {} ForEach( .BuildConfig in .BuildConfigs ) { Using( .BuildConfig ) @@ -24,22 +30,46 @@ // Library //-------------------------------------------------------------------------- - ObjectList( '$ProjectName$-Lib-$Platform$-$BuildConfigName$' ) + ObjectList( '$ProjectName$-Objs-$Platform$-$BuildConfigName$' ) { // Input (Unity) .CompilerInputUnity = '$ProjectName$-Unity-$Platform$-$BuildConfigName$' // Extra Compiler Options - .CompilerOptions + .JulietIncludePath + .CompilerOptions + ' "-IJuliet/include"' + ' "-IGame"' + // + ' -DGAME_EXPORT' // I'm just always exporting anyway but just in case #if __WINDOWS__ - .CompilerOptions + ' -DJULIET_WIN32' + .CompilerOptions + ' -DJULIET_WIN32' #endif - - // Output .CompilerOutputPath = '$OutputBase$/$ProjectPath$/' } + + DLL( '$ProjectName$-Lib-$Platform$-$BuildConfigName$' ) + { + .Libraries = { '$ProjectName$-Objs-$Platform$-$BuildConfigName$', + 'Juliet-Lib-$Platform$-$BuildConfigName$' } // Link Juliet (Lib or Import Lib) + + #if exists( GAME_DLL_NAME ) + .LinkerOutput = '$BinPath$/$Platform$-$BuildConfigName$/$GAME_DLL_NAME$.dll' + #else + .LinkerOutput = '$BinPath$/$Platform$-$BuildConfigName$/$ProjectName$.dll' + #endif + + #if __WINDOWS__ + .LinkerOptions + ' /DLL' + .LinkerOptions + .CommonWinLibs + + .CRTLibs = .CRTLibs_Dynamic + If ( .BuildConfigName == 'Debug' ) + { + ^CRTLibs = .CRTLibs_DynamicDebug + } + .LinkerOptions + .CRTLibs + #endif + } + Alias( '$ProjectName$-$Platform$-$BuildConfigName$' ) { .Targets = '$ProjectName$-Lib-$Platform$-$BuildConfigName$' } ^'Targets_$Platform$_$BuildConfigName$' + { '$ProjectName$-$Platform$-$BuildConfigName$' } @@ -48,4 +78,12 @@ ^ProjectConfigs + .ProjectConfig #endif } + + VCXProject( '$ProjectName$' ) + { + .ProjectOutput = '$ProjectPath$/$ProjectName$.vcxproj' + .ProjectBasePath = '$ProjectPath$/' + .ProjectInputPaths = .ProjectBasePath + .ProjectConfigs = .ProjectConfigs + } } \ No newline at end of file diff --git a/Game/Game.vcxproj b/Game/Game.vcxproj index ce519ae..4887c02 100644 --- a/Game/Game.vcxproj +++ b/Game/Game.vcxproj @@ -1,112 +1,364 @@ - - - - Debug - x64 - - - Release - x64 - - - - 15.0 - {B7B12DCC-1A69-4371-A9FE-D6E7671497B0} - Win32Proj - Game - 10.0.26100.0 - - - - x64 - - - DynamicLibrary - true - ClangCL - Unicode - - - DynamicLibrary - false - ClangCL - true - Unicode - - - - - - - - - - - - - - - true - $(SolutionDir)\bin\$(Platform)\$(Configuration)\ - $(SolutionDir)Intermediate\$(ProjectName)\$(Platform)\$(Configuration)\ - $(ProjectName) - - - false - - - - NotUsing - Level3 - Disabled - true - _DEBUG;CPPDYNAMICLIBRARYTEMPLATE_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) - true - pch.h - stdcpp20 - $(SolutionDir)Juliet\include\;$(SolutionDir)Game; - - - Windows - true - Juliet.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) - $(OutDir)$(TargetName)$(TargetExt) - $(SolutionDir)\lib\$(Platform)\$(Configuration)\ - $(OutDir)$(TargetName)_$(Random).pdb - - - - - NotUsing - Level3 - MaxSpeed - true - true - true - NDEBUG;CPPDYNAMICLIBRARYTEMPLATE_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) - true - pch.h - $(SolutionDir)Juliet\include\;$(SolutionDir)Game; - - - Windows - true - true - true - $(SolutionDir)\lib\$(Platform)\$(Configuration)\ - Juliet.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) - - - - - - - - - - - - - + + + + x64-Debug + x64 + + + x64-Profile + x64 + + + x64-Release + x64 + + + x64Clang-Debug + x64 + + + x64Clang-Profile + x64 + + + x64Clang-Release + x64 + + + x64-Debug + x64 + + + x64-Profile + x64 + + + x64-Release + x64 + + + x64Clang-Debug + x64 + + + x64Clang-Profile + x64 + + + x64Clang-Release + x64 + + + + + + + + + + + + + {b1d040d0-6c94-4f93-bc2a-7f5284b7d434} + MakeFileProj + + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;DEBUG;PROFILING_ENABLED;JULIET_EXPORT;JULIET_WIN32; + ..\;..\Juliet\include;..\Juliet\src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;PROFILING_ENABLED;JULIET_EXPORT;JULIET_WIN32; + ..\;..\Juliet\include;..\Juliet\src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;JULIET_EXPORT;JULIET_WIN32; + ..\;..\Juliet\include;..\Juliet\src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;DEBUG;PROFILING_ENABLED;JULIET_EXPORT;JULIET_WIN32; + ..\;..\Juliet\include;..\Juliet\src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;PROFILING_ENABLED;JULIET_EXPORT;JULIET_WIN32; + ..\;..\Juliet\include;..\Juliet\src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;JULIET_EXPORT;JULIET_WIN32; + ..\;..\Juliet\include;..\Juliet\src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;DEBUG;PROFILING_ENABLED;JULIET_WIN32; + ..\;..\Juliet\include;..\Game;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;PROFILING_ENABLED;JULIET_WIN32; + ..\;..\Juliet\include;..\Game;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;JULIET_WIN32; + ..\;..\Juliet\include;..\Game;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;DEBUG;PROFILING_ENABLED;JULIET_WIN32; + ..\;..\Juliet\include;..\Game;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;PROFILING_ENABLED;JULIET_WIN32; + ..\;..\Juliet\include;..\Game;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;JULIET_WIN32; + ..\;..\Juliet\include;..\Game;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + + + \ No newline at end of file diff --git a/Game/Game.vcxproj.filters b/Game/Game.vcxproj.filters index 255b476..a36c033 100644 --- a/Game/Game.vcxproj.filters +++ b/Game/Game.vcxproj.filters @@ -1,22 +1,23 @@ - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hh;hpp;hxx;hm;inl;inc;ipp;xsd - - - {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} - rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms - + + Entity + + + Entity + + + Entity + + + + + - - Source Files - + + {6051ee0a-6c94-4f93-bc2a-7f5284b7d434} + \ No newline at end of file diff --git a/Juliet.sln b/Juliet.sln index b5756bb..1a3508c 100644 --- a/Juliet.sln +++ b/Juliet.sln @@ -1,47 +1,107 @@ - Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 17 -VisualStudioVersion = 17.12.35506.116 +# Visual Studio 14 +VisualStudioVersion = 14.0.22823.1 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Juliet", "Juliet\Juliet.vcxproj", "{1BBC0B92-E4D8-4838-974B-439C5C501E82}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Game", "Game\Game.vcxproj", "{B1D040D0-6C94-4F93-BC2A-7F5284B7D434}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "JulietApp", "JulietApp\JulietApp.vcxproj", "{4B2A0F9C-5F78-4BC9-BEE9-1E58BB85FA79}" - ProjectSection(ProjectDependencies) = postProject - {1BBC0B92-E4D8-4838-974B-439C5C501E82} = {1BBC0B92-E4D8-4838-974B-439C5C501E82} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "JulietApp", "JulietApp\JulietApp.vcxproj", "{1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Game", "Game\Game.vcxproj", "{B7B12DCC-1A69-4371-A9FE-D6E7671497B0}" - ProjectSection(ProjectDependencies) = postProject - {1BBC0B92-E4D8-4838-974B-439C5C501E82} = {1BBC0B92-E4D8-4838-974B-439C5C501E82} - EndProjectSection -EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "JulietShaderCompiler", "JulietShaderCompiler\JulietShaderCompiler.vcxproj", "{26880364-45F4-4817-BFD3-0ACC0958757D}" - ProjectSection(ProjectDependencies) = postProject - {1BBC0B92-E4D8-4838-974B-439C5C501E82} = {1BBC0B92-E4D8-4838-974B-439C5C501E82} - EndProjectSection +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Juliet", "Juliet\Juliet.vcxproj", "{AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|x64 = Debug|x64 + Debug|x64 = Debug|x64 + Debug|x64 = Debug|x64 + Profile|x64 = Profile|x64 + Profile|x64 = Profile|x64 + Profile|x64 = Profile|x64 Release|x64 = Release|x64 + Release|x64 = Release|x64 + Release|x64 = Release|x64 + Debug|x64Clang = Debug|x64Clang + Debug|x64Clang = Debug|x64Clang + Debug|x64Clang = Debug|x64Clang + Profile|x64Clang = Profile|x64Clang + Profile|x64Clang = Profile|x64Clang + Profile|x64Clang = Profile|x64Clang + Release|x64Clang = Release|x64Clang + Release|x64Clang = Release|x64Clang + Release|x64Clang = Release|x64Clang EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {1BBC0B92-E4D8-4838-974B-439C5C501E82}.Debug|x64.ActiveCfg = Debug|x64 - {1BBC0B92-E4D8-4838-974B-439C5C501E82}.Debug|x64.Build.0 = Debug|x64 - {1BBC0B92-E4D8-4838-974B-439C5C501E82}.Release|x64.ActiveCfg = Release|x64 - {1BBC0B92-E4D8-4838-974B-439C5C501E82}.Release|x64.Build.0 = Release|x64 - {4B2A0F9C-5F78-4BC9-BEE9-1E58BB85FA79}.Debug|x64.ActiveCfg = Debug|x64 - {4B2A0F9C-5F78-4BC9-BEE9-1E58BB85FA79}.Debug|x64.Build.0 = Debug|x64 - {4B2A0F9C-5F78-4BC9-BEE9-1E58BB85FA79}.Release|x64.ActiveCfg = Release|x64 - {4B2A0F9C-5F78-4BC9-BEE9-1E58BB85FA79}.Release|x64.Build.0 = Release|x64 - {B7B12DCC-1A69-4371-A9FE-D6E7671497B0}.Debug|x64.ActiveCfg = Debug|x64 - {B7B12DCC-1A69-4371-A9FE-D6E7671497B0}.Debug|x64.Build.0 = Debug|x64 - {B7B12DCC-1A69-4371-A9FE-D6E7671497B0}.Release|x64.ActiveCfg = Release|x64 - {B7B12DCC-1A69-4371-A9FE-D6E7671497B0}.Release|x64.Build.0 = Release|x64 - {26880364-45F4-4817-BFD3-0ACC0958757D}.Debug|x64.ActiveCfg = Debug|x64 - {26880364-45F4-4817-BFD3-0ACC0958757D}.Debug|x64.Build.0 = Debug|x64 - {26880364-45F4-4817-BFD3-0ACC0958757D}.Release|x64.ActiveCfg = Release|x64 - {26880364-45F4-4817-BFD3-0ACC0958757D}.Release|x64.Build.0 = Release|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.ActiveCfg = x64-Debug|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.ActiveCfg = x64-Debug|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.ActiveCfg = x64-Debug|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.ActiveCfg = x64-Profile|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.ActiveCfg = x64-Profile|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.ActiveCfg = x64-Profile|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.ActiveCfg = x64-Release|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.ActiveCfg = x64-Release|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.ActiveCfg = x64-Release|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.ActiveCfg = x64Clang-Debug|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.ActiveCfg = x64Clang-Debug|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.ActiveCfg = x64Clang-Debug|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.ActiveCfg = x64Clang-Profile|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.ActiveCfg = x64Clang-Profile|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.ActiveCfg = x64Clang-Profile|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.ActiveCfg = x64Clang-Release|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.ActiveCfg = x64Clang-Release|x64 + {B1D040D0-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.ActiveCfg = x64Clang-Release|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.ActiveCfg = x64-Debug|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.Build.0 = x64-Debug|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.ActiveCfg = x64-Debug|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.Build.0 = x64-Debug|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.ActiveCfg = x64-Debug|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.Build.0 = x64-Debug|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.ActiveCfg = x64-Profile|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.Build.0 = x64-Profile|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.ActiveCfg = x64-Profile|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.Build.0 = x64-Profile|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.ActiveCfg = x64-Profile|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.Build.0 = x64-Profile|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.ActiveCfg = x64-Release|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.Build.0 = x64-Release|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.ActiveCfg = x64-Release|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.Build.0 = x64-Release|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.ActiveCfg = x64-Release|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.Build.0 = x64-Release|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.ActiveCfg = x64Clang-Debug|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.Build.0 = x64Clang-Debug|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.ActiveCfg = x64Clang-Debug|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.Build.0 = x64Clang-Debug|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.ActiveCfg = x64Clang-Debug|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.Build.0 = x64Clang-Debug|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.ActiveCfg = x64Clang-Profile|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.Build.0 = x64Clang-Profile|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.ActiveCfg = x64Clang-Profile|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.Build.0 = x64Clang-Profile|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.ActiveCfg = x64Clang-Profile|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.Build.0 = x64Clang-Profile|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.ActiveCfg = x64Clang-Release|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.Build.0 = x64Clang-Release|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.ActiveCfg = x64Clang-Release|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.Build.0 = x64Clang-Release|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.ActiveCfg = x64Clang-Release|x64 + {1DEE51CA-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.Build.0 = x64Clang-Release|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.ActiveCfg = x64-Debug|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.ActiveCfg = x64-Debug|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64.ActiveCfg = x64-Debug|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.ActiveCfg = x64-Profile|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.ActiveCfg = x64-Profile|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64.ActiveCfg = x64-Profile|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.ActiveCfg = x64-Release|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.ActiveCfg = x64-Release|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Release|x64.ActiveCfg = x64-Release|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.ActiveCfg = x64Clang-Debug|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.ActiveCfg = x64Clang-Debug|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Debug|x64Clang.ActiveCfg = x64Clang-Debug|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.ActiveCfg = x64Clang-Profile|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.ActiveCfg = x64Clang-Profile|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Profile|x64Clang.ActiveCfg = x64Clang-Profile|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.ActiveCfg = x64Clang-Release|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.ActiveCfg = x64Clang-Release|x64 + {AB9C7E88-6C94-4F93-BC2A-7F5284B7D434}.Release|x64Clang.ActiveCfg = x64Clang-Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/Juliet/Juliet.bff b/Juliet/Juliet.bff index 3b2eb90..9dfb4e4 100644 --- a/Juliet/Juliet.bff +++ b/Juliet/Juliet.bff @@ -1,4 +1,4 @@ -// Juliet - Lib +// Juliet - Lib/Dll //------------------------------------------------------------------------------ { .ProjectName = 'Juliet' @@ -8,7 +8,6 @@ // Library //-------------------------------------------------------------------------- - .ProjectConfigs = {} ForEach( .BuildConfig in .BuildConfigs ) { Using( .BuildConfig ) @@ -25,22 +24,42 @@ // Library //-------------------------------------------------------------------------- - ObjectList( '$ProjectName$-Lib-$Platform$-$BuildConfigName$' ) + ObjectList( '$ProjectName$-Objs-$Platform$-$BuildConfigName$' ) { // Input (Unity) .CompilerInputUnity = '$ProjectName$-Unity-$Platform$-$BuildConfigName$' // Extra Compiler Options .CompilerOptions + .JulietIncludePath - + ' -DJULIET_EXPORT' - + .CompilerOptions + ' -DJULIET_EXPORT' + #if __WINDOWS__ - .CompilerOptions + ' -DJULIET_WIN32' + .CompilerOptions + ' -DJULIET_WIN32' #endif // Output .CompilerOutputPath = '$OutputBase$/$ProjectPath$/' } + + // --- DLL BUILD --- + DLL( '$ProjectName$-Lib-$Platform$-$BuildConfigName$' ) + { + .Libraries = { '$ProjectName$-Objs-$Platform$-$BuildConfigName$' } + .LinkerOutput = '$BinPath$/$Platform$-$BuildConfigName$/$ProjectName$.dll' // Output .dll to Bin + + #if __WINDOWS__ + .LinkerOptions + ' /DLL' + .LinkerOptions + .CommonWinLibs + + .CRTLibs = .CRTLibs_Dynamic + If ( .BuildConfigName == 'Debug' ) + { + ^CRTLibs = .CRTLibs_DynamicDebug + } + .LinkerOptions + .CRTLibs + #endif + } + Alias( '$ProjectName$-$Platform$-$BuildConfigName$' ) { .Targets = '$ProjectName$-Lib-$Platform$-$BuildConfigName$' } ^'Targets_$Platform$_$BuildConfigName$' + { '$ProjectName$-$Platform$-$BuildConfigName$' } @@ -49,4 +68,12 @@ ^ProjectConfigs + .ProjectConfig #endif } + + VCXProject( '$ProjectName$' ) + { + .ProjectOutput = '$ProjectPath$/$ProjectName$.vcxproj' + .ProjectBasePath = '$ProjectPath$/' + .ProjectInputPaths = .ProjectBasePath + .ProjectConfigs = .ProjectConfigs + } } \ No newline at end of file diff --git a/Juliet/Juliet.vcxproj b/Juliet/Juliet.vcxproj index 55f667f..54e837b 100644 --- a/Juliet/Juliet.vcxproj +++ b/Juliet/Juliet.vcxproj @@ -1,262 +1,332 @@ - - - - Debug - x64 - - - Release - x64 - - - - 17.0 - Win32Proj - {1bbc0b92-e4d8-4838-974b-439c5c501e82} - Juliet - 10.0.26100.0 - - - - DynamicLibrary - true - ClangCL - Unicode - - - DynamicLibrary - false - ClangCL - true - Unicode - - - - - - - - - - - - - - - $(SolutionDir)\bin\$(Platform)\$(Configuration)\ - $(SolutionDir)Intermediate\$(ProjectName)\$(Platform)\$(Configuration)\ - $(SolutionDir)Juliet\include\;$(SolutionDir)Juliet\src\;$(SolutionDir)Juliet\src\Graphics\D3D12\;$(IncludePath) - - - $(SolutionDir)\bin\$(Platform)\$(Configuration)\ - $(SolutionDir)Intermediate\$(ProjectName)\$(Platform)\$(Configuration)\ - $(SolutionDir)Juliet\include\;$(SolutionDir)Juliet\src\;$(SolutionDir)Juliet\src\Graphics\D3D12\;$(IncludePath) - - - - Level3 - true - DEBUG;JULIET_EXPORT;JULIET_WIN32;%(PreprocessorDefinitions) - true - NotUsing - stdcpp20 - Fast - false - false - - - - - true - ws2_32.lib;dxgi.lib;dxguid.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) - $(SolutionDir)\lib\$(Platform)\$(Configuration)\$(TargetName).lib - - - - - - - - - Level3 - true - true - true - NDEBUG;JULIET_EXPORT;JULIET_WIN32;%(PreprocessorDefinitions) - true - Use - pch.h - stdcpp20 - Fast - false - false - - - - - true - true - true - ws2_32.lib;d3d12.lib;dxgi.lib;dxguid.lib;$(CoreLibraryDependencies);%(AdditionalDependencies) - $(SolutionDir)\lib\$(Platform)\$(Configuration)\$(TargetName).lib - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + x64-Debug + x64 + + + x64-Profile + x64 + + + x64-Release + x64 + + + x64Clang-Debug + x64 + + + x64Clang-Profile + x64 + + + x64Clang-Release + x64 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {ab9c7e88-6c94-4f93-bc2a-7f5284b7d434} + MakeFileProj + + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + + + + + + + + + + + + + + + + + + + + + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;DEBUG;PROFILING_ENABLED;JULIET_EXPORT;JULIET_WIN32; + ..\;include;src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;PROFILING_ENABLED;JULIET_EXPORT;JULIET_WIN32; + ..\;include;src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;JULIET_EXPORT;JULIET_WIN32; + ..\;include;src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;DEBUG;PROFILING_ENABLED;JULIET_EXPORT;JULIET_WIN32; + ..\;include;src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;PROFILING_ENABLED;JULIET_EXPORT;JULIET_WIN32; + ..\;include;src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;JULIET_EXPORT;JULIET_WIN32; + ..\;include;src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + + + \ No newline at end of file diff --git a/Juliet/Juliet.vcxproj.filters b/Juliet/Juliet.vcxproj.filters index 403d914..313a49f 100644 --- a/Juliet/Juliet.vcxproj.filters +++ b/Juliet/Juliet.vcxproj.filters @@ -1,378 +1,662 @@ - + - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd - - - {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} - rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms - - - {04f78748-69ab-4ed6-9a09-6c5803b9349d} - - - {31dfc257-b706-4ff0-9e42-6eaed85e98fd} - - - {4b8741bf-1fb9-4a70-9306-580c83cc0a6f} - - - {aa0d4fbd-e094-4319-a06a-cc2c01dc20b5} - - - {a210c51b-2a2a-4230-b78f-2aa7ed60963c} - - - {7a443547-1774-4b54-b7f5-33569cb78ac9} - - - {866a221e-ead3-4274-9ea6-16fc33bbfa97} - - - {fb5b80c0-3192-4fa8-927e-754264313c6f} - - - {e0c8b73d-66bc-446a-906f-e0e69fc74e25} - - - {caf51413-0c34-4b09-81db-9194fe3b244c} + + include\Core\Application + + + include\Core\Application + + + include\Core\Common + + + include\Core\Common + + + include\Core\Common + + + include\Core\Common + + + include\Core\Common + + + include\Core\Common + + + include\Core\Common + + + include\Core\Common + + + include\Core\Common + + + include\Core\Container + + + include\Core\HAL\Display + + + include\Core\HAL\DynLib + + + include\Core\HAL\Event + + + include\Core\HAL\Filesystem + + + include\Core\HAL\IO + + + include\Core\HAL\Keyboard + + + include\Core\HAL\Keyboard + + + include\Core\HAL\Keyboard + + + include\Core\HAL\Mouse + + + include\Core\HotReload + + + include\Core + + + include\Core\Logging + + + include\Core\Logging + + + include\Core\Math + + + include\Core\Math + + + include\Core\Memory + + + include\Core\Memory + + + include\Core\Networking + + + include\Core\Networking + + + include\Core\Networking + + + include\Core\Networking + + + include\Core\Networking + + + include\Core\Networking + + + include\Core\Thread + + + include\Core\Thread + + + include\Engine + + + include\Engine + + + include\Graphics + + + include\Graphics + + + include\Graphics + + + include\Graphics + + + include\Graphics + + + include\Graphics + + + include\Graphics + + + include\Graphics + + + include + + + + + src\Core\Application + + + src\Core\Common + + + src\Core\Common + + + src\Core\HAL\Display + + + src\Core\HAL\Display + + + src\Core\HAL\Display + + + src\Core\HAL\Display\Win32 + + + src\Core\HAL\Display\Win32 + + + src\Core\HAL\Display\Win32 + + + src\Core\HAL\Display\Win32 + + + src\Core\HAL\Display\Win32 + + + src\Core\HAL\Display + + + src\Core\HAL\DynLib\Win32 + + + src\Core\HAL\Event + + + src\Core\HAL\Event + + + src\Core\HAL\Event + + + src\Core\HAL\Event + + + src\Core\HAL\Event + + + src\Core\HAL\Event + + + src\Core\HAL\Event + + + src\Core\HAL\Event + + + src\Core\HAL\Event + + + src\Core\HAL\Event + + + src\Core\HAL\Filesystem + + + src\Core\HAL\Filesystem + + + src\Core\HAL\Filesystem + + + src\Core\HAL\Filesystem\Win32 + + + src\Core\HAL\IO + + + src\Core\HAL\IO + + + src\Core\HAL\IO\Win32 + + + src\Core\HAL + + + src\Core\HotReload + + + src\Core\HotReload\Win32 + + + src\Core + + + src\Core\Logging + + + src\Core\Math + + + src\Core\Math + + + src\Core\Memory + + + src\Core\Networking + + + src\Core\Networking + + + src\Core\Networking + + + src\Core\Networking + + + src\Core\Networking + + + src\Core\Networking\Win32 + + + src\Engine + + + src\Graphics\D3D12\AgilitySDK + + + src\Graphics\D3D12\AgilitySDK + + + src\Graphics\D3D12\AgilitySDK + + + src\Graphics\D3D12\AgilitySDK + + + src\Graphics\D3D12\AgilitySDK + + + src\Graphics\D3D12\AgilitySDK + + + src\Graphics\D3D12\AgilitySDK + + + src\Graphics\D3D12\AgilitySDK\d3dx12 + + + src\Graphics\D3D12\AgilitySDK\d3dx12 + + + src\Graphics\D3D12\AgilitySDK\d3dx12 + + + src\Graphics\D3D12\AgilitySDK\d3dx12 + + + src\Graphics\D3D12\AgilitySDK\d3dx12 + + + src\Graphics\D3D12\AgilitySDK\d3dx12 + + + src\Graphics\D3D12\AgilitySDK\d3dx12 + + + src\Graphics\D3D12\AgilitySDK\d3dx12 + + + src\Graphics\D3D12\AgilitySDK\d3dx12 + + + src\Graphics\D3D12\AgilitySDK\d3dx12 + + + src\Graphics\D3D12\AgilitySDK\d3dx12 + + + src\Graphics\D3D12\AgilitySDK\d3dx12 + + + src\Graphics\D3D12\AgilitySDK + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics\D3D12 + + + src\Graphics + + + src\Graphics + + + + + {5c7eaaef-6c94-4f93-bc2a-7f5284b7d434} - - Header Files\Core\Application - - - Header Files\Core\Application - - - Header Files\Engine - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - - - Header Files - + + {6039c8dd-6c94-4f93-bc2a-7f5284b7d434} + - - Source Files\Core\Application - - - Source Files\Engine - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - - - Source Files - + + {59f67477-6c94-4f93-bc2a-7f5284b7d434} + + + + + {ac29c266-6c94-4f93-bc2a-7f5284b7d434} + + + + + {ed394e4e-6c94-4f93-bc2a-7f5284b7d434} + + + + + {1cb0928e-6c94-4f93-bc2a-7f5284b7d434} + + + + + {bcf269d1-6c94-4f93-bc2a-7f5284b7d434} + + + + + {fefb3f3a-6c94-4f93-bc2a-7f5284b7d434} + + + + + {54f5d918-6c94-4f93-bc2a-7f5284b7d434} + + + + + {06b1338d-6c94-4f93-bc2a-7f5284b7d434} + + + + + {d111532d-6c94-4f93-bc2a-7f5284b7d434} + + + + + {481eb40e-6c94-4f93-bc2a-7f5284b7d434} + + + + + {4c7d6b5f-6c94-4f93-bc2a-7f5284b7d434} + + + + + {fe4e9898-6c94-4f93-bc2a-7f5284b7d434} + + + + + {02138187-6c94-4f93-bc2a-7f5284b7d434} + + + + + {87b853be-6c94-4f93-bc2a-7f5284b7d434} + + + + + {d243d76b-6c94-4f93-bc2a-7f5284b7d434} + + + + + {1f1cb326-6c94-4f93-bc2a-7f5284b7d434} + + + + + {24f2aeeb-6c94-4f93-bc2a-7f5284b7d434} + + + + + {d881a52c-6c94-4f93-bc2a-7f5284b7d434} + + + + + {20496e7b-6c94-4f93-bc2a-7f5284b7d434} + + + + + {ab7ca14b-6c94-4f93-bc2a-7f5284b7d434} + + + + + {7d76d9f1-6c94-4f93-bc2a-7f5284b7d434} + + + + + {58a44f9c-6c94-4f93-bc2a-7f5284b7d434} + + + + + {f763d340-6c94-4f93-bc2a-7f5284b7d434} + + + + + {82da0982-6c94-4f93-bc2a-7f5284b7d434} + + + + + {42e45efa-6c94-4f93-bc2a-7f5284b7d434} + + + + + {3a37a82c-6c94-4f93-bc2a-7f5284b7d434} + + + + + {966b00ac-6c94-4f93-bc2a-7f5284b7d434} + + + + + {2a308679-6c94-4f93-bc2a-7f5284b7d434} + + + + + {16e07e61-6c94-4f93-bc2a-7f5284b7d434} + + + + + {8dc5a7e5-6c94-4f93-bc2a-7f5284b7d434} + + + + + {37313215-6c94-4f93-bc2a-7f5284b7d434} + + + + + {254581d9-6c94-4f93-bc2a-7f5284b7d434} + + + + + {37523cd5-6c94-4f93-bc2a-7f5284b7d434} + + + + + {35231af8-6c94-4f93-bc2a-7f5284b7d434} + + + + + {849dd795-6c94-4f93-bc2a-7f5284b7d434} + + + + + {574d127d-6c94-4f93-bc2a-7f5284b7d434} + + + + + {d5fc938e-6c94-4f93-bc2a-7f5284b7d434} + + + + + {8a7fc92e-6c94-4f93-bc2a-7f5284b7d434} + + + + + {80be9352-6c94-4f93-bc2a-7f5284b7d434} + + + + + {43aa9349-6c94-4f93-bc2a-7f5284b7d434} + + + + + {602a4b6b-6c94-4f93-bc2a-7f5284b7d434} + + + + + {8d3eff4b-6c94-4f93-bc2a-7f5284b7d434} + + + + + {41bbd51f-6c94-4f93-bc2a-7f5284b7d434} + + + + + {d1949745-6c94-4f93-bc2a-7f5284b7d434} + + + + + {0fd13bb0-6c94-4f93-bc2a-7f5284b7d434} + \ No newline at end of file diff --git a/Juliet/include/pch.h b/Juliet/include/pch.h deleted file mode 100644 index ef6a37c..0000000 --- a/Juliet/include/pch.h +++ /dev/null @@ -1,16 +0,0 @@ -// pch.h: This is a precompiled header file. -// Files listed below are compiled only once, improving build performance for future builds. -// This also affects IntelliSense performance, including code completion and many code browsing features. -// However, files listed here are ALL re-compiled if any one of them is updated between builds. -// Do not add files here that you will be updating frequently as this negates the performance advantage. - -#ifndef PCH_H -#define PCH_H - -#include -#include -#include -#include -#include - -#endif // PCH_H diff --git a/JulietApp/JulietApp.bff b/JulietApp/JulietApp.bff index 5c32a51..42876f7 100644 --- a/JulietApp/JulietApp.bff +++ b/JulietApp/JulietApp.bff @@ -8,7 +8,6 @@ // Library //-------------------------------------------------------------------------- - .ProjectConfigs = {} ForEach( .BuildConfig in .BuildConfigs ) { Using( .BuildConfig ) @@ -33,6 +32,7 @@ // Extra Compiler Options .CompilerOptions + .JulietIncludePath + #if __WINDOWS__ .CompilerOptions + ' -DJULIET_WIN32' #endif @@ -59,22 +59,13 @@ 'Game-Lib-$Platform$-$BuildConfigName$' } - .LinkerOutput = '$OutputBase$/$ProjectPath$/JulietApp$ExeExtension$' + .LinkerOutput = '$BinPath$/$Platform$-$BuildConfigName$/$ProjectName$$ExeExtension$' // TODO : Only use when using DLL and not static link //.LinkerOptions + ' /DEF:"$ProjectDefPath$"' #if __WINDOWS__ - .LinkerOptions + ' /SUBSYSTEM:CONSOLE' - + ' kernel32.lib' - + ' user32.lib' - - + ' gdi32.lib' - - + ' dxguid.lib' - + ' Ws2_32.lib' - + ' dxgi.lib' - //+ .CRTLibs_Static + .LinkerOptions + .CommonWinLibs // Chose appropriate CRT .CRTLibs = .CRTLibs_Dynamic @@ -99,4 +90,12 @@ ^ProjectConfigs + .ProjectConfig #endif } + + VCXProject( '$ProjectName$' ) + { + .ProjectOutput = '$ProjectPath$/$ProjectName$.vcxproj' + .ProjectBasePath = '$ProjectPath$/' + .ProjectInputPaths = .ProjectBasePath + .ProjectConfigs = .ProjectConfigs + } } \ No newline at end of file diff --git a/JulietApp/JulietApp.vcxproj b/JulietApp/JulietApp.vcxproj index 3393361..e0d8ed9 100644 --- a/JulietApp/JulietApp.vcxproj +++ b/JulietApp/JulietApp.vcxproj @@ -1,180 +1,530 @@ - - - - Debug - x64 - - - Release - x64 - - - - - {b7b12dcc-1a69-4371-a9fe-d6e7671497b0} - Game - - - {1bbc0b92-e4d8-4838-974b-439c5c501e82} - Juliet - - - - - - - - MultiThreadedDebugDll - Disabled - true - NoListing - W:\Classified\Juliet\Intermediate\JulietApp\x64\Debug\ - false - W:\Classified\Juliet\Intermediate\JulietApp\x64\Debug\ - Default - Default - Column - false - false - false - NotSet - Fast - Default - false - stdcpp20 - Default - W:\Classified\Juliet\Intermediate\JulietApp\x64\Debug\ - false - Neither - W:\Classified\Juliet\Intermediate\JulietApp\x64\Debug\ - Cdecl - NotUsing - stdafx.h - W:\Classified\Juliet\Intermediate\JulietApp\x64\Debug\JulietApp.pch - false - false - false - false - false - W:\Classified\Juliet\Intermediate\JulietApp\x64\Debug\ - true - true - false - Default - W:\Classified\Juliet\Intermediate\JulietApp\x64\Debug\JulietApp.tlog\ - true - false - Level3 - W:\Classified\Juliet\Intermediate\JulietApp\x64\Debug\ - ProgramDatabase - false - false - true - _DEBUG;JULIET_WIN32;_UNICODE;UNICODE; - false - true - true - Default - --target=amd64-pc-windows-msvc - - - - - - - 17.0 - Win32Proj - {4b2a0f9c-5f78-4bc9-bee9-1e58bb85fa79} - JulietApp - 10.0 - - - - Application - true - ClangCL - Unicode - - - Application - false - ClangCL - true - Unicode - - - - - - - - - - - - - - - $(SolutionDir)Intermediate\$(ProjectName)\$(Platform)\$(Configuration)\ - $(SolutionDir)\bin\$(Platform)\$(Configuration)\ - - - $(SolutionDir)\bin\$(Platform)\$(Configuration)\ - $(SolutionDir)Intermediate\$(ProjectName)\$(Platform)\$(Configuration)\ - - - - Level3 - true - _DEBUG;JULIET_WIN32;%(PreprocessorDefinitions) - true - stdcpp20 - false - Fast - false - $(SolutionDir)Juliet\include\;$(SolutionDir)JulietApp;$(IncludePath) - - - Console - true - Juliet.lib;%(AdditionalDependencies) - $(SolutionDir)\lib\$(Platform)\$(Configuration)\ - JulietApp.def - - - - - - xcopy /y "$(SolutionDir)\Juliet\src\Graphics\D3D12\AgilitySDK\bin\*.*" "$(SolutionDir)\bin\$(Platform)\$(Configuration)\D3D12\*.*" - Copy DX12 Agility SDK Binaries - - - - - Level3 - true - true - true - NDEBUG;JULIET_WIN32;%(PreprocessorDefinitions) - true - stdcpp20 - false - Fast - false - $(SolutionDir)Juliet\include\;$(SolutionDir)JulietApp;$(IncludePath) - - - Console - true - true - true - Juliet.lib;%(AdditionalDependencies) - $(SolutionDir)\lib\$(Platform)\$(Configuration)\ - JulietApp.def - - - - - + + + + x64-Debug + x64 + + + x64-Profile + x64 + + + x64-Release + x64 + + + x64Clang-Debug + x64 + + + x64Clang-Profile + x64 + + + x64Clang-Release + x64 + + + x64-Debug + x64 + + + x64-Profile + x64 + + + x64-Release + x64 + + + x64Clang-Debug + x64 + + + x64Clang-Profile + x64 + + + x64Clang-Release + x64 + + + x64-Debug + x64 + + + x64-Profile + x64 + + + x64-Release + x64 + + + x64Clang-Debug + x64 + + + x64Clang-Profile + x64 + + + x64Clang-Release + x64 + + + + + + + + + + + {1dee51ca-6c94-4f93-bc2a-7f5284b7d434} + MakeFileProj + + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + Makefile + false + v143 + $(SolutionDir)\bin\$(Configuration)\$(ProjectName).exe + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;DEBUG;PROFILING_ENABLED;JULIET_EXPORT;JULIET_WIN32; + ..\;..\Juliet\include;..\Juliet\src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;PROFILING_ENABLED;JULIET_EXPORT;JULIET_WIN32; + ..\;..\Juliet\include;..\Juliet\src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;JULIET_EXPORT;JULIET_WIN32; + ..\;..\Juliet\include;..\Juliet\src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;DEBUG;PROFILING_ENABLED;JULIET_EXPORT;JULIET_WIN32; + ..\;..\Juliet\include;..\Juliet\src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;PROFILING_ENABLED;JULIET_EXPORT;JULIET_WIN32; + ..\;..\Juliet\include;..\Juliet\src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;JULIET_EXPORT;JULIET_WIN32; + ..\;..\Juliet\include;..\Juliet\src;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;DEBUG;PROFILING_ENABLED;JULIET_WIN32; + ..\;..\Juliet\include;..\Game;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;PROFILING_ENABLED;JULIET_WIN32; + ..\;..\Juliet\include;..\Game;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;JULIET_WIN32; + ..\;..\Juliet\include;..\Game;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;DEBUG;PROFILING_ENABLED;JULIET_WIN32; + ..\;..\Juliet\include;..\Game;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;PROFILING_ENABLED;JULIET_WIN32; + ..\;..\Juliet\include;..\Game;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;JULIET_WIN32; + ..\;..\Juliet\include;..\Game;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;DEBUG;PROFILING_ENABLED;JULIET_WIN32; + ..\;..\Juliet\include;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;PROFILING_ENABLED;JULIET_WIN32; + ..\;..\Juliet\include;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;JULIET_WIN32; + ..\;..\Juliet\include;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;DEBUG;PROFILING_ENABLED;JULIET_WIN32; + ..\;..\Juliet\include;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;PROFILING_ENABLED;JULIET_WIN32; + ..\;..\Juliet\include;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + cd $(SolutionDir) & misc\fbuild -vs -dist -monitor -cache $(ProjectName)-$(Configuration) + cd $(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean $(ProjectName)-$(Configuration) + WIN32_LEAN_AND_MEAN;WIN32;_WIN32;__WINDOWS__;_HAS_EXCEPTIONS=0;WIN64;RELEASE;JULIET_WIN32; + ..\;..\Juliet\include;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.26100.0\shared; + /std:c++20 /wd5267 /wd4061 /wd4505 /wd4514 /wd4577 /wd4625 /wd4710 /wd4711 /wd4746 /wd4820 /wd5045 /wd5220 /wd5245 + $(SolutionDir)\bin\$(Configuration)\ + $(SolutionDir)\Intermediate + $(SolutionDir)\bin + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + $(SolutionDir)\Intermediate\$(ProjectName)-$(Configuration).log + + + + + + + \ No newline at end of file diff --git a/JulietApp/JulietApp.vcxproj.filters b/JulietApp/JulietApp.vcxproj.filters index cf171ba..c97636f 100644 --- a/JulietApp/JulietApp.vcxproj.filters +++ b/JulietApp/JulietApp.vcxproj.filters @@ -1,33 +1,11 @@ - + - - {4FC737F1-C7A5-4376-A066-2A32D752A2FF} - cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx - - - {93995380-89BD-4b04-88EB-625FBE52EBFB} - h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd - - - {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} - rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms - - - {0a1df9b0-b5eb-4de6-b550-9c5fea30aa17} - - - {33a4c0d7-76fa-40dc-bae3-cdc6da2dea0d} - - - - - Source Files\Editor - - - - - Header Files\Editor - + + + + + + \ No newline at end of file diff --git a/JulietApp/main.cpp b/JulietApp/main.cpp index 2045816..8a45a89 100644 --- a/JulietApp/main.cpp +++ b/JulietApp/main.cpp @@ -70,11 +70,11 @@ void JulietApplication::Init() shaderCI.EntryPoint = entryPoint; // TODO: Assets management that handles path to assets or something. - String shaderPath = WrapString("../../../Assets/compiled/Triangle.vert.dxil"); + String shaderPath = WrapString("../../Assets/compiled/Triangle.vert.dxil"); shaderCI.Stage = ShaderStage::Vertex; Shader* vertexShader = CreateShader(GraphicsDevice, shaderPath, shaderCI); - shaderPath = WrapString("../../../Assets/compiled/SolidColor.frag.dxil"); + shaderPath = WrapString("../../Assets/compiled/SolidColor.frag.dxil"); shaderCI.Stage = ShaderStage::Fragment; Shader* fragmentShader = CreateShader(GraphicsDevice, shaderPath, shaderCI); @@ -207,11 +207,11 @@ void JulietApplication::Update() String entryPoint = WrapString("main"); ShaderCreateInfo shaderCI = {}; shaderCI.EntryPoint = entryPoint; - String shaderPath = WrapString("../../../Assets/compiled/Triangle.vert.dxil"); + String shaderPath = WrapString("../../Assets/compiled/Triangle.vert.dxil"); shaderCI.Stage = ShaderStage::Vertex; Shader* vertexShader = CreateShader(GraphicsDevice, shaderPath, shaderCI); - shaderPath = WrapString("../../../Assets/compiled/SolidColor.frag.dxil"); + shaderPath = WrapString("../../Assets/compiled/SolidColor.frag.dxil"); shaderCI.Stage = ShaderStage::Fragment; Shader* fragmentShader = CreateShader(GraphicsDevice, shaderPath, shaderCI); diff --git a/fbuild.bff b/fbuild.bff index e3dafd4..8ab03a1 100644 --- a/fbuild.bff +++ b/fbuild.bff @@ -7,6 +7,7 @@ //------------------------------------------------------------------------------ Settings { + .CachePath = 'C:\FASTBuild_Cache\' // Use a local SSD or network path #if __WINDOWS__ #import TMP .Environment = { "PATH=$VS_PATH$;$WINDOWS_SDK_2019_PATH$", @@ -15,6 +16,14 @@ Settings #endif } +//------------------------------------------------------------------------------ +// Global Output Paths +//------------------------------------------------------------------------------ +.BinPath = 'bin' +.OutputBase = 'Intermediate' +.CommonWinLibs = ' kernel32.lib user32.lib gdi32.lib dxguid.lib Ws2_32.lib dxgi.lib' +.ProjectConfigs = {} + //------------------------------------------------------------------------------ // Config Defines //------------------------------------------------------------------------------ @@ -22,26 +31,12 @@ Settings [ .CompilerOptions = ' -DDEBUG -DPROFILING_ENABLED' .CompilerOptionsC = .CompilerOptions - .BuildConfigName = 'Debug' - - #if !BUILDING_FROM_TESTS - // Build writable files (Perforce "Open for edit") outside of Unity - // to improve iteration times. - // - Only in Debug as this impacts performance (inlining) - // - Only when not building from tests (FASTBuild building itself) - .UnityInputIsolateWritableFiles = true - // Also not when building on CI (which builds from git). - #if CI_BUILD - .UnityInputIsolateWritableFiles = false - #endif - #endif ] .Profile_Config = [ .CompilerOptions = ' -DRELEASE -DPROFILING_ENABLED' .CompilerOptionsC = .CompilerOptions - .BuildConfigName = 'Profile' ] .Release_Config = @@ -49,7 +44,6 @@ Settings .CompilerOptions = ' -DRELEASE' .CompilerOptionsC = .CompilerOptions .CompilerOptionsDeoptimized = .CompilerOptions - .BuildConfigName = 'Release' ] @@ -140,24 +134,21 @@ Settings #endif -//------------------------------------------------------------------------------ -// -//------------------------------------------------------------------------------ -.OutputBase = 'Intermediate' - //------------------------------------------------------------------------------ // VisualStudio Project Generation //------------------------------------------------------------------------------ #if __WINDOWS__ .ProjectCommon = [ - .ProjectBuildCommand = 'cd ^$(SolutionDir)\..\..\Code\ & fbuild -vs -dist -monitor -cache ^$(ProjectName)-^$(Configuration)' - .ProjectRebuildCommand = 'cd ^$(SolutionDir)\..\..\Code\ & fbuild -vs -dist -monitor -cache -clean ^$(ProjectName)-^$(Configuration)' - .OutputDirectory = '^$(SolutionDir)\Intermediate' - .IntermediateDirectory = '^$(SolutionDir)\Intermediate' - .BuildLogFile = '^$(SolutionDir)\Intermediate\^$(ProjectName)-^$(Configuration).log' - .Platform = 'x64' - .PlatformToolset = '$VS_PlatformToolset$' + .ProjectBuildCommand = 'cd ^$(SolutionDir) & misc\fbuild -vs -dist -monitor -cache ^$(ProjectName)-^$(Configuration)' + .ProjectRebuildCommand = 'cd ^$(SolutionDir) & mics\fbuild -vs -dist -monitor -cache -clean ^$(ProjectName)-^$(Configuration)' + .OutputDirectory = '^$(SolutionDir)\bin' + .IntermediateDirectory = '^$(SolutionDir)\Intermediate' + .BuildLogFile = '^$(SolutionDir)\Intermediate\^$(ProjectName)-^$(Configuration).log' + .Platform = 'x64' + .PlatformToolset = '$VS_PlatformToolset$' + .LocalDebuggerCommand = '^$(SolutionDir)\bin\^$(Configuration)\^$(ProjectName).exe' + .LocalDebuggerWorkingDirectory = '^$(SolutionDir)\bin\^$(Configuration)\' ] .Project_x64_Debug = [ Using( .ProjectCommon ) .SolutionPlatform = 'x64' .SolutionConfig = 'Debug' .Config = '$SolutionPlatform$-$SolutionConfig$' ] @@ -192,7 +183,6 @@ Settings ForEach( .BuildConfig in .BuildConfigs ) { Using( .BuildConfig ) - Alias( 'All-$Platform$-$BuildConfigName$' ) { .Targets = .'Targets_$Platform$_$BuildConfigName$' } } @@ -205,11 +195,7 @@ Alias( 'Exes' ) // Aliases : All-$Platform$ //------------------------------------------------------------------------------ -.Platforms = -{ - 'x64', - 'x64Clang', -} +.Platforms = { 'x64', 'x64Clang' } .PlatformConfigs_x64 = { 'Debug', 'Profile', 'Release' } .PlatformConfigs_x64Clang = { 'Debug', 'Profile', 'Release' } @@ -220,20 +206,7 @@ ForEach( .Platform in .Platforms ) .Targets = {} ForEach( .Config in .'PlatformConfigs_$Platform$' ) { - // TODO:B Exclude windows configs that don't work yet - // x64Clang Analyze config - not working yet - // x64Clang ASan config - not working yet - // x64Clang TSan config - not working yet (not supported by Clang on Windows) - // x64 ASan config - not working yet - // x64 TSan config - not working yet (not supported by MSVC on Windows) - If( !( ( .Platform == 'x64Clang' ) && ( .Config == 'Analyze' ) ) && - !( ( .Platform == 'x64Clang' ) && ( .Config == 'ASan' ) ) && - !( ( .Platform == 'x64Clang' ) && ( .Config == 'TSan' ) ) && - !( ( .Platform == 'x64' ) && ( .Config == 'ASan' ) ) && - !( ( .Platform == 'x64' ) && ( .Config == 'TSan' ) ) ) - { ^Targets + { 'All-$Platform$-$Config$' } - } } } } @@ -249,3 +222,38 @@ ForEach( .Platform in .Platforms ) } #endif +//------------------------------------------------------------------------------ +// Intuitive Aliases (msvc / clang) +//------------------------------------------------------------------------------ + +// 1. Map 'msvc' and 'clang' to the full platform builds +Alias( 'msvc' ) { .Targets = 'All-x64' } +Alias( 'clang' ) { .Targets = 'All-x64Clang' } + +// 2. Map specific compiler + config combinations +.Configs = { 'Debug', 'Profile', 'Release' } +ForEach( .Config in .Configs ) +{ + // Allows: fbuild msvc-debug, fbuild msvc-release, etc. + Alias( 'msvc-$Config$' ) { .Targets = 'All-x64-$Config$' } + + // Allows: fbuild clang-debug, fbuild clang-release, etc. + Alias( 'clang-$Config$' ) { .Targets = 'All-x64Clang-$Config$' } +} + +// 3. Map config-only aliases across both compilers +// Allows: fbuild debug, fbuild release +ForEach( .Config in .Configs ) +{ + Alias( '$Config$' ) { .Targets = { 'msvc-$Config$', 'clang-$Config$' } } +} + +// Generate solution +VSSolution( 'GenerateSolution' ) +{ + .SolutionOutput = 'Juliet.sln' + .SolutionProjects = { 'Juliet', 'Game', 'JulietApp' } + .SolutionConfigs = .ProjectConfigs + .SolutionBuildProject = 'JulietApp' +} +Alias( 'gen' ) { .Targets = 'GenerateSolution' } \ No newline at end of file diff --git a/misc/build_game.bat b/misc/build_game.bat index 521ca27..e2910e0 100644 --- a/misc/build_game.bat +++ b/misc/build_game.bat @@ -1,16 +1,46 @@ @echo off +setlocal -del /s ..\Game*.pdb > NUL 2> NUL +:: --- 1. Handle Compiler Choice --- +:: Default to Clang, but allow override via "build_game.bat msvc" +set "COMPILER_TYPE=%~1" +if "%COMPILER_TYPE%"=="" set "COMPILER_TYPE=clang" -pushd %~dp0\..\bin\x64\Debug -echo WAITING FOR PDB > lock.tmp +if /I "%COMPILER_TYPE%"=="clang" ( + set "PLATFORM=x64Clang" +) else ( + set "PLATFORM=x64" +) + +:: --- 2. Generate Random ID & Setup Paths --- +set "CONFIG=Debug" +set "GAME_BUILD_ID=%RANDOM%" +set "TARGET=Game-%PLATFORM%-%CONFIG%" +set "OUT_DIR=%~dp0..\bin\%PLATFORM%-%CONFIG%" + +echo --- Building %TARGET% (ID: %GAME_BUILD_ID%) --- + +:: --- 3. Manage Lock File --- +if not exist "%OUT_DIR%" mkdir "%OUT_DIR%" +pushd "%OUT_DIR%" +:: Clean up old DLLs/PDBs in this folder to prevent clutter +del Game-*.dll Game-*.pdb > NUL 2> NUL +echo %GAME_BUILD_ID% > lock.tmp popd -pushd %~dp0 -msbuild -p:Random=%random% /p:SolutionDir=..\ ..\Game\Game.vcxproj -popd +:: --- 4. Run FASTBuild --- +:: We pass the ID via an Environment Variable so the .bff can read it +set "GAME_BUILD_ID=%GAME_BUILD_ID%" +fbuild %TARGET% -cache -pushd %~dp0\..\bin\x64\Debug -del lock.tmp -popd +if %ERRORLEVEL% NEQ 0 ( + echo. + echo BUILD FAILED! + goto :cleanup +) +echo. +echo SUCCESS: Generated %OUT_DIR%\Game-%GAME_BUILD_ID%.dll + +:cleanup +if exist "%OUT_DIR%\lock.tmp" del "%OUT_DIR%\lock.tmp" \ No newline at end of file