[OE-core] [PATCH] python: Upgrade both python and python-native to 2.7.14

Derek Straka derek at asterius.io
Mon Jan 29 20:32:02 UTC 2018


Nope.  I'm using Ubuntu 16.04.

On Mon, Jan 29, 2018 at 3:17 PM, Tim Orling <ticotimo at gmail.com> wrote:

>
> On Mon, Jan 29, 2018 at 12:02 PM Derek Straka <derek at asterius.io> wrote:
>
>> It looks like the .so files (specifically gdbm and bsddb) are getting
>> dropped from the manifest when I run the create manifest task.  I'll have
>> to take a look at why those aren't getting pulled into the dependency list.
>>
>
> Are you on Fedora-27 by any chance? It broke for me. Worked on Fedora-26.
>
>>
>> On Mon, Jan 29, 2018 at 2:49 PM, Derek Straka <derek at asterius.io> wrote:
>>
>>> Oh no, I did not.  I will send a v2 with an updated manifest.  Thanks
>>> for catching that.
>>>
>>> -Derek
>>>
>>> On Mon, Jan 29, 2018 at 2:23 PM, Alejandro Enedino Hernandez Samaniego <
>>> alejandro.enedino.hernandez-samaniego at xilinx.com> wrote:
>>>
>>>> Hey Derek,
>>>>
>>>>
>>>> Just a quick question, did you run the create manifest task along with
>>>> the upgrade?
>>>>
>>>>
>>>> Cheers,
>>>>
>>>>
>>>> Alejandro
>>>>
>>>>
>>>>
>>>> On 01/26/2018 11:25 AM, Derek Straka wrote:
>>>>
>>>>> Rebased:
>>>>>    - python/01-use-proper-tools-for-cross-build.patch
>>>>>    - python/fix-makefile-for-ptest.patch
>>>>>    - python/parallel-makeinst-create-bindir.patch
>>>>>
>>>>> Removed Upstreamed Patch:
>>>>>    - python/Don-t-use-getentropy-on-Linux.patch
>>>>>
>>>>> Updated license checksum for changes in the copyright date.  The
>>>>> license
>>>>> terms remain unchanged
>>>>>
>>>>> Added an extra do_compile item to create the native pgen that no longer
>>>>> gets compiled by default
>>>>>
>>>>> Signed-off-by: Derek Straka <derek at asterius.io>
>>>>> ---
>>>>>   ...on-native_2.7.13.bb => python-native_2.7.14.bb} |  6 ++++
>>>>>   meta/recipes-devtools/python/python.inc            |  6 ++--
>>>>>   .../01-use-proper-tools-for-cross-build.patch      | 17 +++++----
>>>>>   .../python/Don-t-use-getentropy-on-Linux.patch     | 41
>>>>> ----------------------
>>>>>   .../python/python/fix-makefile-for-ptest.patch     |  6 ++--
>>>>>   .../python/parallel-makeinst-create-bindir.patch   | 12 +++----
>>>>>   .../python/{python_2.7.13.bb => python_2.7.14.bb}  |  1 -
>>>>>   7 files changed, 28 insertions(+), 61 deletions(-)
>>>>>   rename meta/recipes-devtools/python/{python-native_2.7.13.bb =>
>>>>> python-native_2.7.14.bb} (94%)
>>>>>   delete mode 100644 meta/recipes-devtools/python/
>>>>> python/Don-t-use-getentropy-on-Linux.patch
>>>>>   rename meta/recipes-devtools/python/{python_2.7.13.bb =>
>>>>> python_2.7.14.bb} (99%)
>>>>>
>>>>> diff --git a/meta/recipes-devtools/python/python-native_2.7.13.bb
>>>>> b/meta/recipes-devtools/python/python-native_2.7.14.bb
>>>>> similarity index 94%
>>>>> rename from meta/recipes-devtools/python/python-native_2.7.13.bb
>>>>> rename to meta/recipes-devtools/python/python-native_2.7.14.bb
>>>>> index 2b74003..622cb38 100644
>>>>> --- a/meta/recipes-devtools/python/python-native_2.7.13.bb
>>>>> +++ b/meta/recipes-devtools/python/python-native_2.7.14.bb
>>>>> @@ -36,6 +36,12 @@ do_configure_append() {
>>>>>         autoreconf --verbose --install --force --exclude=autopoint
>>>>> ../Python-${PV}/Modules/_ctypes/libffi
>>>>>   }
>>>>>   +# Regenerate all of the generated files
>>>>> +# This ensures that pgen and friends get created during the compile
>>>>> phase
>>>>> +do_compile_prepend() {
>>>>> +    oe_runmake regen-all
>>>>> +}
>>>>> +
>>>>>   do_install() {
>>>>>         oe_runmake 'DESTDIR=${D}' install
>>>>>         install -d ${D}${bindir}/${PN}
>>>>> diff --git a/meta/recipes-devtools/python/python.inc
>>>>> b/meta/recipes-devtools/python/python.inc
>>>>> index b40f551..979b601 100644
>>>>> --- a/meta/recipes-devtools/python/python.inc
>>>>> +++ b/meta/recipes-devtools/python/python.inc
>>>>> @@ -5,12 +5,12 @@ SECTION = "devel/python"
>>>>>   # bump this on every change in contrib/python/generate-
>>>>> manifest-2.7.py
>>>>>   INC_PR = "r1"
>>>>>   -LIC_FILES_CHKSUM = "file://LICENSE;md5=
>>>>> 6b60258130e4ed10d3101517eb5b9385"
>>>>> +LIC_FILES_CHKSUM = "file://LICENSE;md5=f741e51de91d4eeea5930b9c3c7fa6
>>>>> 9d"
>>>>>     SRC_URI = "http://www.python.org/ftp/
>>>>> python/${PV}/Python-${PV}.tar.xz"
>>>>>   -SRC_URI[md5sum] = "53b43534153bb2a0363f08bae8b9d990"
>>>>> -SRC_URI[sha256sum] = "35d543986882f78261f97787fd3e06
>>>>> 274bfa6df29fac9b4a94f73930ff98f731"
>>>>> +SRC_URI[md5sum] = "1f6db41ad91d9eb0a6f0c769b8613c5b"
>>>>> +SRC_URI[sha256sum] = "71ffb26e09e78650e424929b2b457b
>>>>> 9c912ac216576e6bd9e7d204ed03296a66"
>>>>>     # python recipe is actually python 2.x
>>>>>   # also, exclude pre-releases for both python 2.x and 3.x
>>>>> diff --git a/meta/recipes-devtools/python/python/01-use-proper-tools-for-cross-build.patch
>>>>> b/meta/recipes-devtools/python/python/01-use-proper-
>>>>> tools-for-cross-build.patch
>>>>> index 366ce3e..e795a74 100644
>>>>> --- a/meta/recipes-devtools/python/python/01-use-proper-
>>>>> tools-for-cross-build.patch
>>>>> +++ b/meta/recipes-devtools/python/python/01-use-proper-
>>>>> tools-for-cross-build.patch
>>>>> @@ -9,6 +9,9 @@ Signed-off-by: Paul Eggleton <
>>>>> paul.eggleton at linux.intel.com>
>>>>>   Rebased for python-2.7.9
>>>>>   Signed-off-by: Alejandro Hernandez <alejandro.hernandez at linux.
>>>>> intel.com>
>>>>>   +Rebased for python-2.7.14
>>>>> +Signed-off-by: Derek Straka <derek at asterius.io>
>>>>> +
>>>>>   Index: Python-2.7.13/Makefile.pre.in
>>>>>   ===================================================================
>>>>>   --- Python-2.7.13.orig/Makefile.pre.in
>>>>> @@ -30,14 +33,14 @@ Index: Python-2.7.13/Makefile.pre.in
>>>>>       # Create build directory and generate the sysconfig build-time
>>>>> data there.
>>>>>    # pybuilddir.txt contains the name of the build dir and is used for
>>>>> -@@ -681,7 +682,7 @@ Modules/pwdmodule.o: $(srcdir)/Modules/p
>>>>> -
>>>>> - $(GRAMMAR_H): @GENERATED_COMMENT@ $(GRAMMAR_INPUT) $(PGEN)
>>>>> +@@ -663,7 +663,7 @@
>>>>> +       # Regenerate Include/graminit.h and Python/graminit.c
>>>>> +       # from Grammar/Grammar using pgen
>>>>>         @$(MKDIR_P) Include
>>>>> --      $(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C)
>>>>> -+      $(HOSTPGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C)
>>>>> - $(GRAMMAR_C): @GENERATED_COMMENT@ $(GRAMMAR_H)
>>>>> -       touch $(GRAMMAR_C)
>>>>> +-      $(PGEN) $(srcdir)/Grammar/Grammar \
>>>>> ++      $(HOSTPGEN) $(srcdir)/Grammar/Grammar \
>>>>> +               $(srcdir)/Include/graminit.h \
>>>>> +               $(srcdir)/Python/graminit.c
>>>>>      @@ -1121,27 +1122,27 @@ libinstall:        build_all
>>>>> $(srcdir)/Lib/$(PL
>>>>>                         $(DESTDIR)$(LIBDEST)/distutils/tests ; \
>>>>> diff --git a/meta/recipes-devtools/python/python/Don-t-use-getentropy-on-Linux.patch
>>>>> b/meta/recipes-devtools/python/python/Don-t-use-
>>>>> getentropy-on-Linux.patch
>>>>> deleted file mode 100644
>>>>> index 38e5377..0000000
>>>>> --- a/meta/recipes-devtools/python/python/Don-t-use-
>>>>> getentropy-on-Linux.patch
>>>>> +++ /dev/null
>>>>> @@ -1,41 +0,0 @@
>>>>> -Upstream-Status: Backport
>>>>> -
>>>>> -Signed-off-by: Andreas Oberritter <obi at opendreambox.org>
>>>>> -
>>>>> -From 905d1b30ac7cb0e31c57cec0533825c8f170b942 Mon Sep 17 00:00:00
>>>>> 2001
>>>>> -From: Victor Stinner <victor.stinner at gmail.com>
>>>>> -Date: Mon, 9 Jan 2017 11:10:41 +0100
>>>>> -Subject: [PATCH] Don't use getentropy() on Linux
>>>>> -
>>>>> -Issue #29188: Support glibc 2.24 on Linux: don't use getentropy()
>>>>> function but
>>>>> -read from /dev/urandom to get random bytes, for example in
>>>>> os.urandom().  On
>>>>> -Linux, getentropy() is implemented which getrandom() is blocking
>>>>> mode, whereas
>>>>> -os.urandom() should not block.
>>>>> -
>>>>> -(cherry picked from commit 2687486756721e39164fa9f597e468c35d495227)
>>>>> ----
>>>>> - Python/random.c | 11 +++++++++--
>>>>> - 1 file changed, 9 insertions(+), 2 deletions(-)
>>>>> -
>>>>> -diff --git a/Python/random.c b/Python/random.c
>>>>> -index b4bc1f3..f3f5d14 100644
>>>>> ---- a/Python/random.c
>>>>> -+++ b/Python/random.c
>>>>> -@@ -94,8 +94,15 @@ win32_urandom(unsigned char *buffer, Py_ssize_t
>>>>> size, int raise)
>>>>> - }
>>>>> -
>>>>> - /* Issue #25003: Don't use getentropy() on Solaris (available since
>>>>> -- * Solaris 11.3), it is blocking whereas os.urandom() should not
>>>>> block. */
>>>>> --#elif defined(HAVE_GETENTROPY) && !defined(sun)
>>>>> -+   Solaris 11.3), it is blocking whereas os.urandom() should not
>>>>> block.
>>>>> -+
>>>>> -+   Issue #29188: Don't use getentropy() on Linux since the glibc 2.24
>>>>> -+   implements it with the getrandom() syscall which can fail with
>>>>> ENOSYS,
>>>>> -+   and this error is not supported in py_getentropy() and
>>>>> getrandom() is called
>>>>> -+   with flags=0 which blocks until system urandom is initialized,
>>>>> which is not
>>>>> -+   the desired behaviour to seed the Python hash secret nor for
>>>>> os.urandom():
>>>>> -+   see the PEP 524 which was only implemented in Python 3.6. */
>>>>> -+#elif defined(HAVE_GETENTROPY) && !defined(sun) && !defined(linux)
>>>>> - #define PY_GETENTROPY 1
>>>>> -
>>>>> - /* Fill buffer with size pseudo-random bytes generated by
>>>>> getentropy().
>>>>> diff --git a/meta/recipes-devtools/python/python/fix-makefile-for-ptest.patch
>>>>> b/meta/recipes-devtools/python/python/fix-makefile-for-ptest.patch
>>>>> index 669112d..90dcd57 100644
>>>>> --- a/meta/recipes-devtools/python/python/fix-makefile-for-ptest.patch
>>>>> +++ b/meta/recipes-devtools/python/python/fix-makefile-for-ptest.patch
>>>>> @@ -15,7 +15,7 @@ diff -ruN a/Makefile.pre.in b/Makefile.pre.in
>>>>>   +TESTOPTS=    -l -v $(EXTRATESTOPTS)
>>>>>    TESTPROG=    $(srcdir)/Lib/test/regrtest.py
>>>>>   -TESTPYTHON=  $(RUNSHARED) ./$(BUILDPYTHON) -Wd -3 -E -tt
>>>>> $(TESTPYTHONOPTS)
>>>>> --test:         all platform
>>>>> +-test:         @DEF_MAKE_RULE@ platform
>>>>>   -             -find $(srcdir)/Lib -name '*.py[co]' -print | xargs rm
>>>>> -f
>>>>>   +TESTPYTHON=  $(RUNSHARED) $(BUILDPYTHON) -Wd -3 -E -tt
>>>>> $(TESTPYTHONOPTS)
>>>>>   +test:                build-test
>>>>> @@ -26,8 +26,8 @@ diff -ruN a/Makefile.pre.in b/Makefile.pre.in
>>>>>                 -$(TESTPYTHON) $(TESTPROG) $(TESTOPTS)
>>>>>                 $(TESTPYTHON) $(TESTPROG) $(TESTOPTS)
>>>>>    -+build-test:        all platform
>>>>> ++build-test:   @DEF_MAKE_RULE@ platform
>>>>>   +
>>>>> - testall:      all platform
>>>>> + testall:      @DEF_MAKE_RULE@ platform
>>>>>                 -find $(srcdir)/Lib -name '*.py[co]' -print | xargs rm
>>>>> -f
>>>>>                 $(TESTPYTHON) $(srcdir)/Lib/compileall.py
>>>>> diff --git a/meta/recipes-devtools/python/python/parallel-makeinst-create-bindir.patch
>>>>> b/meta/recipes-devtools/python/python/parallel-
>>>>> makeinst-create-bindir.patch
>>>>> index 951cb46..abab41e 100644
>>>>> --- a/meta/recipes-devtools/python/python/parallel-
>>>>> makeinst-create-bindir.patch
>>>>> +++ b/meta/recipes-devtools/python/python/parallel-
>>>>> makeinst-create-bindir.patch
>>>>> @@ -8,12 +8,12 @@ Upstream-Status: Pending
>>>>>     --- Python-2.7.3.orig/Makefile.pre.in
>>>>>   +++ Python-2.7.3/Makefile.pre.in
>>>>> -@@ -1008,7 +1008,7 @@ LIBPL=           $(LIBP)/config
>>>>> +@@ -1187,7 +1187,7 @@
>>>>>    LIBPC=               $(LIBDIR)/pkgconfig
>>>>> -
>>>>> - libainstall:  all python-config
>>>>> +
>>>>> + libainstall:  @DEF_MAKE_RULE@ python-config
>>>>>   -     @for i in $(LIBDIR) $(LIBP) $(LIBPL) $(LIBPC); \
>>>>>   +     @for i in $(LIBDIR) $(LIBP) $(LIBPL) $(LIBPC) $(BINDIR); \
>>>>> -       do \
>>>>> -               if test ! -d $(DESTDIR)$$i; then \
>>>>> -                       echo "Creating directory $$i"; \
>>>>> +       do \
>>>>> +               if test ! -d $(DESTDIR)$$i; then \
>>>>> +                       echo "Creating directory $$i"; \
>>>>> diff --git a/meta/recipes-devtools/python/python_2.7.13.bb
>>>>> b/meta/recipes-devtools/python/python_2.7.14.bb
>>>>> similarity index 99%
>>>>> rename from meta/recipes-devtools/python/python_2.7.13.bb
>>>>> rename to meta/recipes-devtools/python/python_2.7.14.bb
>>>>> index dbafb95..13455ff 100644
>>>>> --- a/meta/recipes-devtools/python/python_2.7.13.bb
>>>>> +++ b/meta/recipes-devtools/python/python_2.7.14.bb
>>>>> @@ -28,7 +28,6 @@ SRC_URI += "\
>>>>>     file://parallel-makeinst-create-bindir.patch \
>>>>>     file://use_sysroot_ncurses_instead_of_host.patch \
>>>>>     file://add-CROSSPYTHONPATH-for-PYTHON_FOR_BUILD.patch \
>>>>> -  file://Don-t-use-getentropy-on-Linux.patch \
>>>>>     file://pass-missing-libraries-to-Extension-for-mul.patch \
>>>>>     file://support_SOURCE_DATE_EPOCH_in_py_compile_2.7.patch \
>>>>>   "
>>>>>
>>>>
>>>
>> --
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core at lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20180129/0717302e/attachment-0002.html>


More information about the Openembedded-core mailing list