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

Add config for VS2022 #46

Merged
merged 20 commits into from Oct 24, 2022
Merged

Add config for VS2022 #46

merged 20 commits into from Oct 24, 2022

Conversation

mariusvniekerk
Copy link
Member

Checklist

  • Used a personal fork of the feedstock to propose changes
  • Bumped the build number (if the version is unchanged)
  • Reset the build number to 0 (if the version changed)
  • Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
  • Ensured the license file is being packaged.

@conda-forge-linter
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipe:

  • It looks like the 'vc' output doesn't have any tests.

@mariusvniekerk
Copy link
Member Author

mariusvniekerk commented Jun 15, 2022

@conda-forge-admin please rerender.

conda-forge-webservices[bot] and others added 2 commits June 15, 2022 13:29
@wolfv
Copy link
Member

wolfv commented Jun 16, 2022

Thanks for working on this! We just realized that we would also like VS2022 for some STL features that we need for a micromamba patch in order to use the std::filesystem and not a custom implementation.

@mariusvniekerk
Copy link
Member Author

@wolfv @isuruf is this mergeable?

@isuruf
Copy link
Member

isuruf commented Jun 16, 2022

@isuruf
Copy link
Member

isuruf commented Jun 16, 2022

No, that's when you have have the visual studio version and the vc version matching. What I'm talking about is when they don't, but you can still target the vc version requested by the user even with a newer visual studio version.

@mariusvniekerk
Copy link
Member Author

Okay, lemme know if that activate is correct, or just push what is needed to this branch

@mariusvniekerk
Copy link
Member Author

@isuruf does this look okay now?

@@ -91,8 +91,13 @@ IF @{year} GEQ 2019 (
echo "NEWER_VS_WITH_OLDER_VC=%NEWER_VS_WITH_OLDER_VC%"

IF "%NEWER_VS_WITH_OLDER_VC%" == "1" (
set "CMAKE_GEN=Visual Studio 16 2019"
set "USE_NEW_CMAKE_GEN_SYNTAX=1"
IF @{year} GEQ 2022 (
Copy link
Member

Choose a reason for hiding this comment

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

This is not correct. year has to be deduced from VSINSTALLDIR which can have 2022 for @{year}=2019 or @{year}=2017

@conda-forge-linter
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I was trying to look for recipes to lint for you, but it appears we have a merge conflict.
Please try to merge or rebase with the base branch to resolve this conflict.

Please ping the 'conda-forge/core' team (using the @ notation in a comment) if you believe this is a bug.

@conda-forge-linter
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipe:

  • It looks like the 'vc' output doesn't have any tests.

@isuruf
Copy link
Member

isuruf commented Sep 1, 2022

@conda-forge-admin, rerender

conda-forge-webservices[bot] and others added 3 commits September 1, 2022 20:35
conda-forge-webservices[bot] and others added 3 commits October 24, 2022 05:03
@h-vetinari
Copy link
Member

Might want to add extra tests for the additional binaries? Like for 2019:

        {% if vsyear == "2019" %}
        - if not exist %LIBRARY_BIN%\vcruntime140_1.dll exit 1
        - if not exist %LIBRARY_BIN%\msvcp140_atomic_wait.dll exit 1
        - if not exist %LIBRARY_BIN%\msvcp140_codecvt_ids.dll exit 1
        {% endif %}

@isuruf
Copy link
Member

isuruf commented Oct 24, 2022

? which additional binaries are you talking about?

@h-vetinari
Copy link
Member

? which additional binaries are you talking about?

MS doesn't touch vcruntime140.dll for forwards-compatibility reason of old code, that's why VS2019 had some pure additions, e.g. vcruntime140_1.dll / msvcp140_atomic_wait.dll / msvcp140_codecvt_ids.dll.

I thought it was quite likely that VS2022 would have some more additional DLLs for the same reason, but if I read the logs right, no new DLLs were added after all, i.e.

Found DLL: concrt140.dll
Found DLL: msvcp140.dll
Found DLL: msvcp140_1.dll
Found DLL: msvcp140_2.dll
Found DLL: msvcp140_atomic_wait.dll
Found DLL: msvcp140_codecvt_ids.dll
Found DLL: vcamp140.dll
Found DLL: vccorlib140.dll
Found DLL: vcomp140.dll
Found DLL: vcruntime140.dll
Found DLL: vcruntime140_1.dll

should all be covered by the current tests.

@isuruf isuruf merged commit 8a739ca into conda-forge:main Oct 24, 2022
@h-vetinari h-vetinari mentioned this pull request Jan 9, 2023
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.

None yet

5 participants