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

projects: add support for Visual Studio 17 (2022) #8438

Closed
wants to merge 1 commit into from
Closed

Conversation

snir
Copy link
Contributor

@snir snir commented Feb 11, 2022

No description provided.

@MarcelRaad
Copy link
Member

@MarcelRaad MarcelRaad commented Feb 12, 2022

Thanks! Looks good to me in general. It only looks a little strange that there's 2017 and 2022 now, but no 2019.

Is there any specific reason you went with the project files?

We currently have 3 build systems for Visual Studio, CMake and nmake in addition to the project files, and could maybe clean that up. The fact that no one has complained about missing Visual Studio 2019 projects so far gave me the impression that it might not be used much anymore.

projects/Windows/VC17/lib/libcurl.tmpl Outdated Show resolved Hide resolved
projects/Windows/VC17/lib/libcurl.vcxproj.filters Outdated Show resolved Hide resolved
projects/build-openssl.bat Show resolved Hide resolved
@jay
Copy link
Member

@jay jay commented Feb 12, 2022

The fact that no one has complained about missing Visual Studio 2019 projects so far gave me the impression that it might not be used much anymore.

I still use the pregenerated files, but I don't use those versions of Visual Studio. I don't understand the directory scheme because vc15 directory actually should be vc14.1 if I understand correctly, and this vc17 should actually be vc14.3 right?

https://en.wikipedia.org/wiki/Microsoft_Visual_C%2B%2B

Also I think the commit area should be changed from winbuild (which is a different build system) to projects.

@MarcelRaad
Copy link
Member

@MarcelRaad MarcelRaad commented Feb 12, 2022

@jay

I don't understand the directory scheme because vc15 directory actually should be vc14.1 if I understand correctly, and this vc17 should actually be vc14.3 right?

The numbers in the directories reflect the Visual Studio version. So it should probably be VS17 instead of VC17. Or yes, VC14.3 for the MSVC toolset version.

@snir
Copy link
Contributor Author

@snir snir commented Feb 12, 2022

@MarcelRaad

Is there any specific reason you went with the project files?

We currently have 3 build systems for Visual Studio, CMake and nmake in addition to the project files, and could maybe clean that up. The fact that no one has complained about missing Visual Studio 2019 projects so far gave me the impression that it might not be used much anymore.

I found the projects files to be the easiest way to get into curl dev on Windows with VS.
Not sure why no one implemented 2019 so far. I guess the base of Windows devs which didn't have 2017 installed is pretty small, as it's probably the most supported VS version for C/C++ projects.

@jay

I don't understand the directory scheme because vc15 directory actually should be vc14.1 if I understand correctly, and this vc17 should actually be vc14.3 right?

The numbers in the directories reflect the Visual Studio version. So it should probably be VS17 instead of VC17. Or yes, VC14.3 for the MSVC toolset version.

You're right, it should be VS17, just kept the current convention. It can be addressed in a different PR.

Also I think the commit area should be changed from winbuild (which is a different build system) to projects.

Yes, should I create a new PR with the commit message fix or force push?

@MarcelRaad
Copy link
Member

@MarcelRaad MarcelRaad commented Feb 12, 2022

Yes, should I create a new PR with the commit message fix or force push?

Force-push please :-)

@snir snir requested a review from jay Feb 12, 2022
@snir snir changed the title winbuild: add support for Visual Studio 17 (2022) projects: add support for Visual Studio 17 (2022) Feb 12, 2022
projects/build-openssl.bat Show resolved Hide resolved
@jay
Copy link
Member

@jay jay commented Feb 13, 2022

Thanks

jay added a commit that referenced this issue Feb 13, 2022
Follow-up to f13d4d0 which added VS 2022 project support.

Ref: #8438
jay added a commit to jay/curl that referenced this issue Feb 13, 2022
Follow-up to f13d4d0 which added VS 2022 project support.

Ref: curl#8438
jay added a commit to jay/curl that referenced this issue Feb 13, 2022
- Rename VC15 -> VC14.1, VC17 -> VC14.3.

The projects directory that holds the pre-generated Visual Studio
project files uses VC<ver> to indicate the MSVC version. At some point
support for Visual Studio 2017 (Visual Studio version 15 which uses MSVC
14.1) was added as VC15. Visual Studio 2022 (Visual Studio version 17
which uses MSVC 14.3) project files were recently added and followed
that same format using VC17.

There is no such MSVC version (yet) as VC15 or VC17.

For VS 2017 for example, the name we use is correct as either VS17,
VS2017, VC14.1. I opted for the latter since we use VC for earlier
versions (eg VC10, VC12, etc).

Ref: curl#8438 (comment)

Closes #xxxx
jay added a commit to jay/curl that referenced this issue Mar 14, 2022
- Rename VC15 -> VC14.1, VC17 -> VC14.30.

The projects directory that holds the pre-generated Visual Studio
project files uses VC<ver> to indicate the MSVC version. At some point
support for Visual Studio 2017 (Visual Studio version 15 which uses MSVC
14.1) was added as VC15. Visual Studio 2022 (Visual Studio version 17
which uses MSVC 14.30) project files were recently added and followed
that same format using VC17.

There is no such MSVC version (yet) as VC15 or VC17.

For VS 2017 for example, the name we use is correct as either VS17,
VS2017, VC14.1. I opted for the latter since we use VC for earlier
versions (eg VC10, VC12, etc).

Ref: curl#8438 (comment)

Closes #xxxx
jay added a commit to jay/curl that referenced this issue Mar 14, 2022
- Rename VC15 -> VC14.1, VC17 -> VC14.30.

The projects directory that holds the pre-generated Visual Studio
project files uses VC<ver> to indicate the MSVC version. At some point
support for Visual Studio 2017 (Visual Studio version 15 which uses MSVC
14.1) was added as VC15. Visual Studio 2022 (Visual Studio version 17
which uses MSVC 14.30) project files were recently added and followed
that same format using VC17.

There is no such MSVC version (yet) as VC15 or VC17.

For VS 2017 for example, the name we use is correct as either VS17,
VS2017, VC14.1. I opted for the latter since we use VC for earlier
versions (eg VC10, VC12, etc).

Ref: curl#8438 (comment)

Closes #xxxx
jay added a commit to jay/curl that referenced this issue Mar 15, 2022
- Rename VC15 -> VC14.1, VC17 -> VC14.30.

The projects directory that holds the pre-generated Visual Studio
project files uses VC<ver> to indicate the MSVC version. At some point
support for Visual Studio 2017 (Visual Studio version 15 which uses MSVC
14.1) was added as VC15. Visual Studio 2022 (Visual Studio version 17
which uses MSVC 14.30) project files were recently added and followed
that same format using VC17.

There is no such MSVC version (yet) as VC15 or VC17.

For VS 2017 for example, the name we use is correct as either VS17,
VS2017, VC14.1. I opted for the latter since we use VC for earlier
versions (eg VC10, VC12, etc).

Ref: curl#8438 (comment)

Closes #xxxx
jay added a commit to jay/curl that referenced this issue Mar 15, 2022
- Rename VC15 -> VC14.10, VC17 -> VC14.30.

The projects directory that holds the pre-generated Visual Studio
project files uses VC<ver> to indicate the MSVC version. At some point
support for Visual Studio 2017 (Visual Studio version 15 which uses MSVC
14.10) was added as VC15. Visual Studio 2022 (Visual Studio version 17
which uses MSVC 14.30) project files were recently added and followed
that same format using VC17.

There is no such MSVC version (yet) as VC15 or VC17.

For VS 2017 for example, the name we use is correct as either VS17,
VS2017, VC14.10. I opted for the latter since we use VC for earlier
versions (eg VC10, VC12, etc).

Ref: curl#8438 (comment)

Closes #xxxx
jay added a commit that referenced this issue Mar 29, 2022
- Rename VC15 -> VC14.10, VC17 -> VC14.30.

The projects directory that holds the pre-generated Visual Studio
project files uses VC<ver> to indicate the MSVC version. At some point
support for Visual Studio 2017 (Visual Studio version 15 which uses MSVC
14.10) was added as VC15. Visual Studio 2022 (Visual Studio version 17
which uses MSVC 14.30) project files were recently added and followed
that same format using VC17.

There is no such MSVC version (yet) as VC15 or VC17.

For VS 2017 for example, the name we use is correct as either VS17,
VS2017, VC14.10. I opted for the latter since we use VC for earlier
versions (eg VC10, VC12, etc).

Ref: #8438 (comment)

Closes #8447
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Windows
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants