python312Packages.pypamtest: 1.1.3 -> 1.1.5

fix python 3.12 compatibility

Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
This commit is contained in:
2024-07-07 08:53:27 +02:00
parent f929333374
commit ef56399d39
2 changed files with 57 additions and 8 deletions

View File

@@ -1,23 +1,34 @@
{ lib, stdenv
, fetchgit
, cmake
, linux-pam
, enablePython ? false
, python ? null
{
lib,
stdenv,
fetchgit,
cmake,
linux-pam,
substituteAll,
enablePython ? false,
python ? null,
}:
assert enablePython -> python != null;
stdenv.mkDerivation rec {
pname = "libpam-wrapper";
version = "1.1.3";
version = "1.1.5";
src = fetchgit {
url = "git://git.samba.org/pam_wrapper.git";
rev = "pam_wrapper-${version}";
sha256 = "00mqhsashx7njrvxz085d0b88nizhdy7m3x17ip5yhvwsl63km6p";
hash = "sha256-AtfkiCUvCxUfll6lOlbMyy5AhS5R2BGF1+ecC1VuwzM=";
};
patches = [
(substituteAll {
src = ./python.patch;
siteDir = "${python.sitePackages}";
includeDir = "include/${lib.versions.major python.version}.${lib.versions.minor python.version}";
})
];
nativeBuildInputs = [ cmake ] ++ lib.optionals enablePython [ python ];
# We must use linux-pam, using openpam will result in broken fprintd.

View File

@@ -0,0 +1,38 @@
diff --git a/cmake/Modules/FindPythonSiteLibs.cmake b/cmake/Modules/FindPythonSiteLibs.cmake
index ab2931e..08e2c98 100644
--- a/cmake/Modules/FindPythonSiteLibs.cmake
+++ b/cmake/Modules/FindPythonSiteLibs.cmake
@@ -27,30 +27,9 @@
if (PYTHON_EXECUTABLE)
### PYTHON_SITELIB
- execute_process(
- COMMAND
- ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(plat_specific=True, prefix=''))"
- OUTPUT_VARIABLE
- PYTHON_SITELIB_OUTPUT_VARIABLE
- RESULT_VARIABLE
- PYTHON_SITELIB_RESULT_VARIABLE
- OUTPUT_STRIP_TRAILING_WHITESPACE
- )
- if (NOT PYTHON_SITELIB_RESULT_VARIABLE)
- file(TO_CMAKE_PATH "${PYTHON_SITELIB_OUTPUT_VARIABLE}" PYTHON_SITELIB)
- endif ()
+ file(TO_CMAKE_PATH "@siteDir@" PYTHON_SITELIB)
+
### PYTHON_SITEINC
- execute_process(
- COMMAND
- ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import get_python_inc; print(get_python_inc(plat_specific=True, prefix=''))"
- OUTPUT_VARIABLE
- PYTHON_SITEINC_OUTPUT_VARIABLE
- RESULT_VARIABLE
- PYTHON_SITEINC_RESULT_VARIABLE
- OUTPUT_STRIP_TRAILING_WHITESPACE
- )
- if (NOT PYTHON_SITEINC_RESULT_VARIABLE)
- file(TO_CMAKE_PATH "${PYTHON_SITEINC_OUTPUT_VARIABLE}" PYTHON_SITEINC)
- endif ()
+ file(TO_CMAKE_PATH "@includeDir@" PYTHON_SITEINC)
endif (PYTHON_EXECUTABLE)