v141 toolchain support (VS2017) and examples of building a single dll #59
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.
So, this change probably contains more than needed, but I wanted to demonstrate the spirit of my work.
The most obvious one is suppressing additional warnings, ideally I'd figure out why they are happing in the first place.
Secondly, I've added two batch files and two example triplet files to build a single .dll (vs. the 7 that get generated by default).
Thirdly, I made some refactoring so that you can compile/link against the library without the cpprestsdk dependency. Right now if the library is built with USE_CPPRESTSDK but the application doesn't define that macro, you'll get nasty stack memory overwrites when using the signalr_client_config structure. I moved out the cpprestsdk specific configuration options to its own class which is optional for the application. If you do define the macro, you have to distribute/include the cpprestsdk headers and a fair amount of other dependencies (like boost 😫).