Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problem: VS projects are drifting and require sodium. #2457

Merged
merged 4 commits into from
Mar 24, 2017

Conversation

evoskuil
Copy link
Contributor

@evoskuil evoskuil commented Mar 24, 2017

The Visual Studio projects, excluding 2008: (2010, 2012, 2013, 2015, 2017), are very nearly identical. At some point, in order to reduce the file count, all of the projects became linked to one of them (2015). Then as 2017 was added, it was directed at 2015. Eventually changes in isolation were applied, including one that hard-coded a drive letter into a dependency path (E:...).

Maintaining the set of projects is actually straightforward as long as they remain nearly identical. The linkage to 2015, intended to reduce maintenance, actually made it a lot worse. The libsodium repository uses the same build configuration and has been able to add VS2015 and VS2017 solutions with no problems, since all that is required is copying the directory and changing the compiler designation. So I've reverted to the original design, which hopefully will stick.

I have previously recommended we drop the VS2008 solution since it is an entirely different system as the others, and as far as I can tell it's unmaintained. I also do not know why there is a vs2015_xp directory. I recommended this be deleted (or at least documented).

The original builds were set to link libsodium by default. This requires the (very similar) corresponding Visual Studio build from that repository be built first. This is unnecessary and a poor default behavior, especially since tweetnacl is integrated. So this PR also enables tweet and disables sodium linkage by default, making first use much simpler.

I added a NuGet package update to this PR. The NuGet package is versioned 4.2.20.0 (vs. 4.2.2.0) because of a versioning error on the previous package. The vs2013 package is published. There is also a new libsodium vs2013 package published.

@bluca bluca merged commit 3f80657 into zeromq:master Mar 24, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants