[Buildroot] [PATCH 1/1] package/pkg-python: fix python 3.8.0 package builds

Peter Korsgaard peter at korsgaard.com
Sat Oct 19 19:06:48 UTC 2019


>>>>> "Arnout" == Arnout Vandecappelle <arnout at mind.be> writes:

 > On 19/10/2019 18:50, James Hilliard wrote:
 >> On Sat, Oct 19, 2019 at 2:45 PM Peter Korsgaard <peter at korsgaard.com> wrote:
 >>> 
 >>>>>>>> "James" == James Hilliard <james.hilliard1 at gmail.com> writes:
 >>> 
 >>> > We need to update the sysconfigdata path for python 3.8.0 per upstream
 >>> > commit 7efc526e5cfb929a79c192ac2dcf7eb78d3a4401 which indicates the "m"
 >>> > flag has been removed from sys.abiflags.
 >>> 
 >>> > Fixes this build error when building target packages:
 >>> > ValueError: Empty module name
 >>> 
 >>> > Signed-off-by: James Hilliard <james.hilliard1 at gmail.com>
 >>> > ---
 >>> >  package/pkg-python.mk | 2 +-
 >>> >  1 file changed, 1 insertion(+), 1 deletion(-)
 >>> 
 >>> > diff --git a/package/pkg-python.mk b/package/pkg-python.mk
 >>> > index e906920417..be1ce071df 100644
 >>> > --- a/package/pkg-python.mk
 >>> > +++ b/package/pkg-python.mk
 >>> > @@ -21,7 +21,7 @@
 >>> >  ################################################################################
 >>> 
 >>> >  define PKG_PYTHON_SYSCONFIGDATA_NAME
 >>> > -$(basename $(notdir $(wildcard
 >>> > $(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/_sysconfigdata_m_linux_*.py)))
 >>> > +$(basename $(notdir $(wildcard
 >>> > $(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/_sysconfigdata__linux_*.py)))
 >>> 
 >>> Ehh, this presumably then breaks it for python 2.7?
 >> I assume not since the path has $(PYTHON3_VERSION_MAJOR) in it which I
 >> don't think does anything for python2 builds.

 >  To be entirely complete: in Python 2.7, it's called _sysconfigdata.py (without
 > arch specification). However, since the thing is in a $(wildcard), nothing
 > matches (even if we would use PYTHON_VERSION_MAJOR), so
 > _PYTHON_SYSCONFIGDATA_NAME is set to empty.

Ahh yes. So why is it not needed on 2.7? Because it is installed in a
location mentioned in PYTHONPATH?

 >  In [1] I set _PYTHON_SYSCONFIGDATA_NAME to _sysconfigdata.py for Python2.7 (but
 > only in meson-package, I'm not sure why...), but Adam says that this breaks
 > libglib2...

 >  Anyway, this patch is definitely correct.

Correct. Applied, thanks.

-- 
Bye, Peter Korsgaard



More information about the buildroot mailing list