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

python3: libcrypt doesn't need to be a dependency of libpython #28887

Merged
merged 1 commit into from Jan 18, 2023

Conversation

rcoup
Copy link
Contributor

@rcoup rcoup commented Jan 12, 2023

  • What does your PR fix?

vcpkg's Python3 libpython3.10.so currently depends on libcrypt (as a system dependency), but it doesn't need to - it uses no symbols from the library. libcrypt is different on Linux between RH-based and Debian-based distros too, which makes it annoying.

This is fixed upstream in Python3.11. Backport the upstream change here.

  • Which triplets are supported/not supported? Have you updated the CI baseline?

all (x64-linux-dynamic)

Yes

  • If you have added/updated a port: Have you run ./vcpkg x-add-version --all and committed the result?

Yes

@rcoup
Copy link
Contributor Author

rcoup commented Jan 12, 2023

@microsoft-github-policy-service agree company="Koordinates Limited"

github-actions[bot]
github-actions bot previously approved these changes Jan 12, 2023
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

You have modified or added at least one portfile where deprecated functions are used.

If you feel able to do so, please consider migrating them to the new functions:
vcpkg_install_cmake -> vcpkg_cmake_install (from port vcpkg-cmake)
vcpkg_build_cmake -> vcpkg_cmake_build (from port vcpkg-cmake)
vcpkg_configure_cmake -> vcpkg_cmake_configure (Please remove the option PREFER_NINJA) (from port vcpkg-cmake)
vcpkg_fixup_cmake_targets -> vcpkg_cmake_config_fixup (from port vcpkg-cmake-config)
vcpkg_extract_source_archive_ex -> vcpkg_extract_source_archive
vcpkg_build_msbuild -> vcpkg_install_msbuild
vcpkg_copy_tool_dependencies -> vcpkg_copy_tools
vcpkg_apply_patches should be replaced by the PATCHES arguments to the "extract" helpers (e.g. vcpkg_from_github())

In the ports that use the new function, you have to add the corresponding dependencies:

{
  "name": "vcpkg-cmake",
  "host": true
},
{
  "name": "vcpkg-cmake-config",
  "host": true
}

The following files are affected:

  • ports/python3/portfile.cmake

@FrankXie05 FrankXie05 added the category:port-bug The issue is with a library, which is something the port should already support label Jan 12, 2023
ports/python3/0012-configure-no-libcrypt.patch Outdated Show resolved Hide resolved
ports/python3/portfile.cmake Outdated Show resolved Hide resolved
Fixed upstream in Python3.11 via python/cpython#89596

Backport here to Python3.10 so libpython doesn't have a needless system
dependency on libcrypt (which is different on Linux between RH-based and
Debian-based distros too).
rcoup added a commit to rcoup/kart that referenced this pull request Jan 12, 2023
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

You have modified or added at least one portfile where deprecated functions are used.

If you feel able to do so, please consider migrating them to the new functions:
vcpkg_install_cmake -> vcpkg_cmake_install (from port vcpkg-cmake)
vcpkg_build_cmake -> vcpkg_cmake_build (from port vcpkg-cmake)
vcpkg_configure_cmake -> vcpkg_cmake_configure (Please remove the option PREFER_NINJA) (from port vcpkg-cmake)
vcpkg_fixup_cmake_targets -> vcpkg_cmake_config_fixup (from port vcpkg-cmake-config)
vcpkg_extract_source_archive_ex -> vcpkg_extract_source_archive
vcpkg_build_msbuild -> vcpkg_install_msbuild
vcpkg_copy_tool_dependencies -> vcpkg_copy_tools
vcpkg_apply_patches should be replaced by the PATCHES arguments to the "extract" helpers (e.g. vcpkg_from_github())

In the ports that use the new function, you have to add the corresponding dependencies:

{
  "name": "vcpkg-cmake",
  "host": true
},
{
  "name": "vcpkg-cmake-config",
  "host": true
}

The following files are affected:

  • ports/python3/portfile.cmake

@rcoup
Copy link
Contributor Author

rcoup commented Jan 15, 2023

@FrankXie05 anything else I need to do here?

@rcoup rcoup mentioned this pull request Jan 15, 2023
3 tasks
@FrankXie05
Copy link
Contributor

@rcoup We need fix the CI baseline issue. :)

D:\buildtrees\aom\src\2edfc9ae71-336de0ab24.clean\aom_dsp\simd\v64_intrinsics_c.h(775) : fatal error C1002: compiler is out of heap space in pass 2
D:\buildtrees\aom\src\2edfc9ae71-336de0ab24.clean\aom_dsp\simd\v128_intrinsics_c.h(50) : fatal error C1002: compiler is out of heap space in pass 2

https://dev.azure.com/vcpkg/public/_build/results?buildId=83558&view=artifacts&pathAsName=false&type=publishedArtifacts

@rcoup
Copy link
Contributor Author

rcoup commented Jan 16, 2023

Clicking on the artifacts in that list does nothing — is there some permission needed to see the logs?

  1. vtk on macos installs fine for me, but it also doesn't depend on Python3 in CI...
  2. aom doesn't depend on Python3...

Is there a way to re-run CI?

@FrankXie05
Copy link
Contributor

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@FrankXie05 FrankXie05 added info:reviewed Pull Request changes follow basic guidelines and removed requires:author-response labels Jan 18, 2023
@BillyONeal BillyONeal merged commit d2b8d93 into microsoft:master Jan 18, 2023
@BillyONeal
Copy link
Member

Thanks for the backport!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
category:port-bug The issue is with a library, which is something the port should already support info:reviewed Pull Request changes follow basic guidelines
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants