python: missing libxcrypt dep (#33847)
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
This commit is contained in:
parent
2948248d7a
commit
d36c7b20d2
@ -370,6 +370,9 @@ class Python(Package):
|
||||
variant("tkinter", default=False, description="Build tkinter module")
|
||||
variant("uuid", default=True, description="Build uuid module")
|
||||
variant("tix", default=False, description="Build Tix module")
|
||||
variant("crypt", default=True, description="Build crypt module", when="@:3.12 platform=linux")
|
||||
variant("crypt", default=True, description="Build crypt module", when="@:3.12 platform=darwin")
|
||||
variant("crypt", default=True, description="Build crypt module", when="@:3.12 platform=cray")
|
||||
|
||||
if not is_windows:
|
||||
depends_on("pkgconfig@0.9.0:", type="build")
|
||||
@ -405,6 +408,7 @@ class Python(Package):
|
||||
depends_on("tcl", when="+tkinter")
|
||||
depends_on("uuid", when="+uuid")
|
||||
depends_on("tix", when="+tix")
|
||||
depends_on("libxcrypt", when="+crypt")
|
||||
|
||||
# Python needs to be patched to build extensions w/ mixed C/C++ code:
|
||||
# https://github.com/NixOS/nixpkgs/pull/19585/files
|
||||
@ -560,6 +564,14 @@ def determine_variants(cls, exes, version_str):
|
||||
except ProcessError:
|
||||
variants += "~tix"
|
||||
|
||||
# Some modules are platform-dependent
|
||||
if not self.spec.satisfies("platform=windows"):
|
||||
try:
|
||||
python("-c", "import crypt", error=os.devnull)
|
||||
variants += "+crypt"
|
||||
except ProcessError:
|
||||
variants += "~crypt"
|
||||
|
||||
return variants
|
||||
|
||||
def url_for_version(self, version):
|
||||
@ -1017,6 +1029,10 @@ def import_tests(self):
|
||||
else:
|
||||
self.command("-c", "import Tix")
|
||||
|
||||
# Ensure that crypt module works
|
||||
if "+crypt" in spec:
|
||||
self.command("-c", "import crypt")
|
||||
|
||||
# ========================================================================
|
||||
# Set up environment to make install easy for python extensions.
|
||||
# ========================================================================
|
||||
|
Loading…
Reference in New Issue
Block a user