From 6b66f07eee2a2b0be22488ad04dde1ff732e35b8 Mon Sep 17 00:00:00 2001 From: CK Date: Sat, 19 Aug 2023 09:53:22 -0700 Subject: [PATCH] Adjust project to C++2020, use NuGet for jsoncpp-vc140-static-64 With these changes, solution builds on a fresh VS 2022 install without further user intervention/setup for dependencies. --- README.md | 1 + rerelease/game.vcxproj | 18 ++++++++++++++---- rerelease/game.vcxproj.filters | 3 +++ rerelease/packages.config | 4 ++++ 4 files changed, 22 insertions(+), 4 deletions(-) create mode 100644 rerelease/packages.config diff --git a/README.md b/README.md index 97f7e26..3dc77a2 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,7 @@ The code can compile under both C++17 and C++20. Using C++20 allows you to skip * [jsoncpp](https://github.com/open-source-parsers/jsoncpp): Must be placed inside `json` subdirectory. Both of these can also be installed via vcpkg: `vcpkg install jsoncpp:x64-windows fmt:x64-windows` +They can also be installed via NuGet packages: `jsoncpp-vc140-static-64` `fmt` ### Windows (Visual Studio 2019 / 2022): * We recommend placing the source in a subfolder within a mod directory. For example, alongside `baseq2`, make a folder called `mymod`, enter that folder, make a folder called `src`, and copying the contents of the `rerelease` directory into the newly-created `src` subfolder. diff --git a/rerelease/game.vcxproj b/rerelease/game.vcxproj index 704f3da..4bcf79c 100644 --- a/rerelease/game.vcxproj +++ b/rerelease/game.vcxproj @@ -64,9 +64,9 @@ Level3 true - KEX_Q2_GAME;KEX_Q2GAME_EXPORTS;NO_FMT_SOURCE;KEX_Q2GAME_DYNAMIC;_CRT_SECURE_NO_WARNINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + KEX_Q2_GAME;KEX_Q2GAME_EXPORTS;NO_FMT_SOURCE;USE_CPP20_FORMAT;KEX_Q2GAME_DYNAMIC;_CRT_SECURE_NO_WARNINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) true - stdcpp17 + stdcpp20 4267;4244 true MultiThreadedDebug @@ -82,9 +82,9 @@ true true true - KEX_Q2_GAME;KEX_Q2GAME_EXPORTS;NO_FMT_SOURCE;KEX_Q2GAME_DYNAMIC;_CRT_SECURE_NO_WARNINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + KEX_Q2_GAME;KEX_Q2GAME_EXPORTS;NO_FMT_SOURCE;USE_CPP20_FORMAT;KEX_Q2GAME_DYNAMIC;_CRT_SECURE_NO_WARNINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true - stdcpp17 + stdcpp20 4267;4244 true MultiThreaded @@ -240,7 +240,17 @@ + + + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + \ No newline at end of file diff --git a/rerelease/game.vcxproj.filters b/rerelease/game.vcxproj.filters index 20132db..c291b0f 100644 --- a/rerelease/game.vcxproj.filters +++ b/rerelease/game.vcxproj.filters @@ -262,4 +262,7 @@ {6565427e-a805-4dc7-ba57-3ce0b62e4336} + + + \ No newline at end of file diff --git a/rerelease/packages.config b/rerelease/packages.config new file mode 100644 index 0000000..f1d40e6 --- /dev/null +++ b/rerelease/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file