fontforge: fix build with Python 3.12

Replaces distutils usage with direct calls to the native sysconfig
module.
This commit is contained in:
Martin Weinelt
2024-06-24 12:18:22 +02:00
parent 0b94b05e64
commit 498afdfa16
2 changed files with 16 additions and 0 deletions
+3
View File
@@ -29,6 +29,9 @@ stdenv.mkDerivation rec {
url = "https://github.com/fontforge/fontforge/commit/216eb14b558df344b206bf82e2bdaf03a1f2f429.patch";
hash = "sha256-aRnir09FSQMT50keoB7z6AyhWAVBxjSQsTRvBzeBuHU=";
})
# https://github.com/fontforge/fontforge/pull/5423
./replace-distutils.patch
];
# use $SOURCE_DATE_EPOCH instead of non-deterministic timestamps
@@ -0,0 +1,13 @@
diff --git a/pyhook/CMakeLists.txt b/pyhook/CMakeLists.txt
index dd48054aa..710728f26 100644
--- a/pyhook/CMakeLists.txt
+++ b/pyhook/CMakeLists.txt
@@ -21,7 +21,7 @@ target_link_libraries(psMat_pyhook PRIVATE Python3::Module)
# So do it ourselves, getting the prefix-relative path instead
if(NOT DEFINED PYHOOK_INSTALL_DIR)
execute_process(
- COMMAND "${Python3_EXECUTABLE}" -c "import distutils.sysconfig as sc; print(sc.get_python_lib(prefix='', plat_specific=True,standard_lib=False))"
+ COMMAND "${Python3_EXECUTABLE}" -c "import sysconfig; print(sysconfig.get_path('platlib', sysconfig.get_preferred_scheme('user'), vars={'userbase': '.'}))"
RESULT_VARIABLE _pyhook_install_dir_result
OUTPUT_VARIABLE PYHOOK_INSTALL_DIR
OUTPUT_STRIP_TRAILING_WHITESPACE)