Add Visual Studio 2022 Project Files for wolfSSL, Test, & Benchmark #8090
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This is a no-code PR that adds Visual Studio 2022 Project Files to the wolfCrypt
test
andbenchmark
apps, as well as a root-levelwolfssl
as a reference library project.I've used Visual Studio for quite a long time, and even I struggled with the existing VS2010 files that attempt to convert when opening in VS2022, but in the end require some non-intuitive changes to actually compile and run.
This PR allows the
test
andbenchmark
apps to work out of the box for VS2022 users. Open the project file, run. The only thing that might need attention is the specific toolchain version, but VS2022 should handle this gracefully.Note that although usually excluded in
.gitignore
, the respective[app]-VS2022.vcxproj.user
file is needed for this line:This is needed as the Linux command-line app usually runs from the root, and (for instance) the default certs location is currently hard-coded as
./certs
, which is not found from thewolfssl\wolfcrypt\benchmark
andwolfssl\wolfcrypt\test
project directories. The code of course could be gated or changed, but including the the user settings file for VS2022 users is vastly simpler.Background:
Opening the existing
wolfssl.vcxproj
results in an as-expected dialog box, warning of the old version:The other examples mentioned in the above dialog box have not been addressed in this PR, but could be considered in a future PR.
The warning alone is perhaps just cosmetically undesired, but there are more serious problems, too.
Changing to DLL Release gives this warning:
However, even after compiling there, when opening the respective
benchmark
app and attempting to compile, this error is observed:Yes, there are a variety of manual settings that can address these issues, but having the VS2022 files provides a much nicer first experience when first using wolfSSL.
A key, non-unintuitive edit needs to be made to the
Working Directory
when using the existing project files (not those in this PR):Additionally, the enclosed project files includes both the root level wolfSSL project and the local project in the solution file:
For completeness: the
wolfssl-gojimmgpi-pr
portion of the solution file shown in my screen snip above, is not native to Visual Studio. For that I am using the File Explorer Extension for Visual Studio.Fixes zd# n/a
Testing
Tested on Windows 11, Visual Studio 2022 v17.11.5
Checklist