summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python/python3-setuptools
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/python/python3-setuptools')
-rw-r--r--meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch58
-rw-r--r--meta/recipes-devtools/python/python3-setuptools/0001-change-shebang-to-python3.patch25
-rw-r--r--meta/recipes-devtools/python/python3-setuptools/0001-conditionally-do-not-fetch-code-by-easy_install.patch31
3 files changed, 89 insertions, 25 deletions
diff --git a/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch b/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch
new file mode 100644
index 0000000000..0f6c9d250d
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch
@@ -0,0 +1,58 @@
1From d393759315b189a738e4b6a2ce31dc18dbbfae29 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex@linutronix.de>
3Date: Wed, 11 May 2022 21:41:14 +0200
4Subject: [PATCH] _distutils/sysconfig.py: make it possible to substite the
5 prefix to target sysroot
6
7This is done by probing STAGING_INCDIR/STAGING_LIBDIRenv vars:
8not the most elegant solution, but distutils/sysconfig has been
9tweaked to do this for many, many year, and so it's easiest
10to replicate here as well, the original is
11meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch
12
13I'm not sure exactly why setuptools now needs a copy, and what
14would happen to this module in light of distutils deprecation.
15
16Upstream-Status: Inappropriate [oe-core specific]
17Signed-off-by: Alexander Kanavin <alex@linutronix.de>
18---
19 setuptools/_distutils/sysconfig.py | 12 ++++++++++--
20 1 file changed, 10 insertions(+), 2 deletions(-)
21
22diff --git a/setuptools/_distutils/sysconfig.py b/setuptools/_distutils/sysconfig.py
23index a40a723..14f35e7 100644
24--- a/setuptools/_distutils/sysconfig.py
25+++ b/setuptools/_distutils/sysconfig.py
26@@ -119,6 +119,8 @@ def get_python_inc(plat_specific=0, prefix=None):
27 sys.base_exec_prefix -- i.e., ignore 'plat_specific'.
28 """
29 default_prefix = BASE_EXEC_PREFIX if plat_specific else BASE_PREFIX
30+ if os.environ.get('STAGING_INCDIR', ""):
31+ default_prefix = os.environ['STAGING_INCDIR'].rstrip('include')
32 resolved_prefix = prefix if prefix is not None else default_prefix
33 try:
34 getter = globals()[f'_get_python_inc_{os.name}']
35@@ -238,7 +240,13 @@ def get_python_lib(plat_specific=0, standard_lib=0, prefix=None):
36
37 early_prefix = prefix
38
39- if prefix is None:
40+ if os.environ.get('STAGING_LIBDIR', ""):
41+ lib_basename = os.environ['STAGING_LIBDIR'].split('/')[-1]
42+ else:
43+ lib_basename = "lib"
44+ if prefix is None and os.environ.get('STAGING_LIBDIR', ""):
45+ prefix = os.environ['STAGING_LIBDIR'].rstrip(lib_basename)
46+ elif prefix is None:
47 if standard_lib:
48 prefix = plat_specific and BASE_EXEC_PREFIX or BASE_PREFIX
49 else:
50@@ -253,7 +261,7 @@ def get_python_lib(plat_specific=0, standard_lib=0, prefix=None):
51 # Pure Python
52 libdir = "lib"
53 implementation = 'pypy' if IS_PYPY else 'python'
54- libpython = os.path.join(prefix, libdir, implementation + get_python_version())
55+ libpython = os.path.join(prefix, lib_basename, implementation + get_python_version())
56 return _posix_lib(standard_lib, libpython, early_prefix, prefix)
57 elif os.name == "nt":
58 if standard_lib:
diff --git a/meta/recipes-devtools/python/python3-setuptools/0001-change-shebang-to-python3.patch b/meta/recipes-devtools/python/python3-setuptools/0001-change-shebang-to-python3.patch
deleted file mode 100644
index 6dcf52771b..0000000000
--- a/meta/recipes-devtools/python/python3-setuptools/0001-change-shebang-to-python3.patch
+++ /dev/null
@@ -1,25 +0,0 @@
1From c39d0896930e25c224cc897660fc8511ccae30c8 Mon Sep 17 00:00:00 2001
2From: Changqing Li <changqing.li@windriver.com>
3Date: Thu, 23 Apr 2020 10:01:12 +0000
4Subject: [PATCH] change shebang to python3
5
6Upstream-Status: Pending
7
8Signed-off-by: Changqing Li <changqing.li@windriver.com>
9---
10 pkg_resources/_vendor/appdirs.py | 2 +-
11 1 files changed, 1 insertions(+), 1 deletions(-)
12
13diff --git a/pkg_resources/_vendor/appdirs.py b/pkg_resources/_vendor/appdirs.py
14index ae67001..933e398 100644
15--- a/pkg_resources/_vendor/appdirs.py
16+++ b/pkg_resources/_vendor/appdirs.py
17@@ -1,4 +1,4 @@
18-#!/usr/bin/env python
19+#!/usr/bin/env python3
20 # -*- coding: utf-8 -*-
21 # Copyright (c) 2005-2010 ActiveState Software Inc.
22 # Copyright (c) 2013 Eddy Petrișor
23--
242.24.1
25
diff --git a/meta/recipes-devtools/python/python3-setuptools/0001-conditionally-do-not-fetch-code-by-easy_install.patch b/meta/recipes-devtools/python/python3-setuptools/0001-conditionally-do-not-fetch-code-by-easy_install.patch
new file mode 100644
index 0000000000..e227c2889c
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-setuptools/0001-conditionally-do-not-fetch-code-by-easy_install.patch
@@ -0,0 +1,31 @@
1From 80fe63816eb3bfd1f5b6d354e1f2442805cff4e0 Mon Sep 17 00:00:00 2001
2From: Hongxu Jia <hongxu.jia@windriver.com>
3Date: Tue, 17 Jul 2018 10:13:38 +0800
4Subject: [PATCH] conditionally do not fetch code by easy_install
5
6If var-NO_FETCH_BUILD is set, do not allow to fetch code from
7internet by easy_install.
8
9Upstream-Status: Inappropriate [oe specific]
10
11Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
12---
13 setuptools/command/easy_install.py | 5 +++++
14 1 file changed, 5 insertions(+)
15
16diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py
17index 858fb20..62bd853 100644
18--- a/setuptools/command/easy_install.py
19+++ b/setuptools/command/easy_install.py
20@@ -672,6 +672,11 @@ class easy_install(Command):
21 os.path.exists(tmpdir) and _rmtree(tmpdir)
22
23 def easy_install(self, spec, deps=False):
24+ if os.environ.get('NO_FETCH_BUILD', None):
25+ log.error("ERROR: Do not try to fetch `%s' for building. "
26+ "Please add its native recipe to DEPENDS." % spec)
27+ return None
28+
29 with self._tmpdir() as tmpdir:
30 if not isinstance(spec, Requirement):
31 if URL_SCHEME(spec):