rt-tests: Makefile: Use sysconfig instead of distutils for PYLIB

Use sysconfig instead of distutils for PYLIB
Version 2 takes into consideration that different versions of python
produce different results.

Signed-off-by: John Kacur <jkacur@redhat.com>
This commit is contained in:
John Kacur 2023-02-15 17:10:37 -05:00
parent 96e7809383
commit eb18c75481
2 changed files with 17 additions and 1 deletions

View File

@ -34,7 +34,7 @@ CFLAGS ?= -Wall -Wno-nonnull -Wextra
CPPFLAGS += -D_GNU_SOURCE -Isrc/include
LDFLAGS ?=
PYLIB ?= $(shell python3 -c 'import distutils.sysconfig; print (distutils.sysconfig.get_python_lib())')
PYLIB ?= $(shell python3 -m get_pylib)
# Check for errors, such as python3 not available
ifeq (${PYLIB},)

16
get_pylib.py Executable file
View File

@ -0,0 +1,16 @@
#!/usr/bin/python3
# This file is used during the make process
import sysconfig
# Older versions of python don't have this scheme
# but produce the answer we expect with 'posix_prefix'
# Newer versions of python insert 'local' in the path unless we use rpm_prefix
SCHEME = 'rpm_prefix'
if not SCHEME in sysconfig.get_scheme_names():
SCHEME = 'posix_prefix'
PYLIB = sysconfig.get_path('purelib', SCHEME)
print(PYLIB)