summaryrefslogtreecommitdiff
path: root/debian/patches/sysconfig-debian-schemes.diff
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/sysconfig-debian-schemes.diff')
-rw-r--r--debian/patches/sysconfig-debian-schemes.diff67
1 files changed, 67 insertions, 0 deletions
diff --git a/debian/patches/sysconfig-debian-schemes.diff b/debian/patches/sysconfig-debian-schemes.diff
new file mode 100644
index 0000000..d26ee20
--- /dev/null
+++ b/debian/patches/sysconfig-debian-schemes.diff
@@ -0,0 +1,67 @@
+# DP: Add schemes 'deb_system' and 'posix_local', make the latter the default
+
+--- a/Lib/sysconfig.py
++++ b/Lib/sysconfig.py
+@@ -32,6 +32,30 @@
+ 'scripts': '{base}/bin',
+ 'data': '{base}',
+ },
++ 'deb_system': {
++ 'stdlib': '{installed_base}/lib/python{py_version_short}',
++ 'platstdlib': '{platbase}/lib/python{py_version_short}',
++ 'purelib': '{base}/lib/python3/dist-packages',
++ 'platlib': '{platbase}/lib/python3/dist-packages',
++ 'include':
++ '{installed_base}/include/python{py_version_short}{abiflags}',
++ 'platinclude':
++ '{installed_platbase}/include/python{py_version_short}{abiflags}',
++ 'scripts': '{base}/bin',
++ 'data': '{base}',
++ },
++ 'posix_local': {
++ 'stdlib': '{installed_base}/lib/python{py_version_short}',
++ 'platstdlib': '{platbase}/lib/python{py_version_short}',
++ 'purelib': '{base}/local/lib/python{py_version_short}/dist-packages',
++ 'platlib': '{platbase}/local/lib/python{py_version_short}/dist-packages',
++ 'include':
++ '{installed_base}/local/include/python{py_version_short}{abiflags}',
++ 'platinclude':
++ '{installed_platbase}/local/include/python{py_version_short}{abiflags}',
++ 'scripts': '{base}/local/bin',
++ 'data': '{base}',
++ },
+ 'posix_home': {
+ 'stdlib': '{installed_base}/lib/python',
+ 'platstdlib': '{base}/lib/python',
+@@ -162,7 +186,7 @@
+ _PYTHON_BUILD = is_python_build(True)
+
+ if _PYTHON_BUILD:
+- for scheme in ('posix_prefix', 'posix_home'):
++ for scheme in ('posix_prefix', 'posix_home', 'posix_local', 'deb_system'):
+ _INSTALL_SCHEMES[scheme]['include'] = '{srcdir}/Include'
+ _INSTALL_SCHEMES[scheme]['platinclude'] = '{projectbase}/.'
+
+@@ -200,7 +224,12 @@
+ def _get_default_scheme():
+ if os.name == 'posix':
+ # the default scheme for posix is posix_prefix
+- return 'posix_prefix'
++ if 'real_prefix' in sys.__dict__ or 'VIRTUAL_ENV' in os.environ:
++ # virtual environments
++ return 'posix_prefix'
++ else:
++ # Debian default
++ return 'posix_local'
+ return os.name
+
+
+@@ -485,7 +514,7 @@
+ else:
+ inc_dir = _sys_home or _PROJECT_BASE
+ else:
+- inc_dir = get_path('platinclude')
++ inc_dir = get_path('platinclude', 'posix_prefix')
+ return os.path.join(inc_dir, 'pyconfig.h')
+
+