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

build-openssl.bat: Refer to VS2017 as VC14.1 instead of VC15 #2189

Closed
wants to merge 1 commit into from

Conversation

jay
Copy link
Member

@jay jay commented Dec 22, 2017

.. and do the same for build-wolfssl.bat.

  • Refer to VS2017 as VC14.1 instead of VC15.

  • Support Enterprise and Professional variants.

Closes #xxxx


Another WIP. @captain-caveman2k as far as I can tell VS2017 is referred to as VC14.1 not VC15. I had some related confusion about this last year and I asked on the MS forums whether it's 14.10 or 14.1 and they said 14.1.

Regarding Enterprise/Professional I haven't tested them yet but I assume they are the same. Basically I added an autodetect so the build script could find the version in order of preference Enterprise -> Professional -> Community

Also there is a Microsoft tool vswhere for more precise Visual Studio location for 2010+.

@jay jay added the build label Dec 22, 2017
Copy link
Member

@MarcelRaad MarcelRaad left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, it's VS 15, but VC 14.1 or 14.10/11/12. And CL 19.10/11/12. But they promised to get rid of that version mess for the next major version :-)

@bagder
Copy link
Member

bagder commented Feb 5, 2018

Made obsolete with be03364?

@jay jay changed the title build-openssl.bat: Enhance VS2017 support build-openssl.bat: Refer to VS2017 as VC14.1 instead of VC15 Feb 5, 2018
.. and do the same for build-wolfssl.bat.

Because MS calls it VC14.1.

Closes curl#2189
@jay jay force-pushed the build-openssl_enhance_VS2017 branch from 02413fc to 26d0c9c Compare February 5, 2018 22:29
@jay
Copy link
Member Author

jay commented Feb 5, 2018

Made obsolete with be03364?

hm. Alright I rebased on master. The remaining issue is calling it VC14.1 instead of VC15.

@captain-caveman2k
Copy link
Contributor

The remaining issue is calling it VC14.1 instead of VC15

I believe 14.1 is the version of the compiler and also the toolchain.

The VC in VC15 is kind of short for Visual C++ from the days before Visual Studio. Visual Studio 2017 itself is version 15.

If memory serves me correctly it was known as Dev15 during development and VS "15" during beta - the latest non-preview release is 15.5.6 which I'm running.

@jay
Copy link
Member Author

jay commented Feb 10, 2018

Yeah but what I'm saying is it's Visual C++ 14.1 not Visual C++ 15. This is the first time the VS number is different from the VC number (VS15 uses VC14.1)

@bagder
Copy link
Member

bagder commented Feb 15, 2018

Lots of sources online say "14.1" for VS 2017. Anyone against?

@rodwiddowson
Copy link
Contributor

Splitting hairs:

C:\Users\Rod Widdowson>cl /?
Microsoft (R) C/C++ Optimizing Compiler Version 19.12.25835 for x86
Copyright (C) Microsoft Corporation.  All rights reserved.

So the compiler is version 19.12

The "Platform Toolset" is "Visual Studio 2017 (v141)" (no dots) but that is selectable (in the vcxproj file for msbuild systems, not sure for nmake) going all the way back to at least VC10 with and without XP support.

The Platform is "Visual Studio 15" (mine is 15.5.6, 'cos that has the Spectre switches).

I don't know where that leaves you,

@MarcelRaad
Copy link
Member

I'd agree with 14.1 because:

  • only the compiler executable itself is version 19.1x, the linker and other build tools' version and even the folder it resides in is 14.1x
  • the C/C++ toolset is not as tightly coupled to the IDE anymore as it used to be. You can install the 14.0 toolset with VS2017 without having VS2015 installed, use the 14.1 toolset from VS2015 via a NuGet package, or just install the build tools without any Visual Studio IDE.
  • other libraries, notably Boost, also had that discussion and finally agreed on 14.1

@rodwiddowson
Copy link
Contributor

I’d +1 @MarcelRaad said. Fwiw

@Jan-E
Copy link
Contributor

Jan-E commented Mar 14, 2018

In the PHP world they are retaining VC15, apparently because the CRT is VC15(0):
http://news.php.net/php.internals.win/1174
http://news.php.net/php.internals.win
https://windows.php.net/download/

Also, in the Apache for Windows world VC15 is the norm:
https://www.apachelounge.com/download/

So, I am -1

@bagder bagder closed this in 222de37 Apr 6, 2018
@Jan-E Jan-E mentioned this pull request Apr 6, 2018
@lock lock bot locked as resolved and limited conversation to collaborators Jul 5, 2018
@jay jay deleted the build-openssl_enhance_VS2017 branch November 27, 2022 20:40
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Development

Successfully merging this pull request may close these issues.

None yet

6 participants