Skip to contentSkip to conversation

Move recipes to use Python 3 whenever possible

PATCH In review Alexander Kanavin 6 participants 63 messages May 24, 2016 – May 31, 2016

lore
Share & tools
lore
#0 lore raw

cover Move recipes to use Python 3 whenever possible

This patchset updates recipes to use Python 3 whenever possible. A few items cannot be moved at the moment for various reasons, here they are:

1) Smartpm package manager has not been ported to Python 3 and it is unlikely to happen:
https://github.com/smartpm/smart/issues/4
We need to look into alternatives such as yum or dnf (the 'next generation' fork of yum).

Consequently, rpm's python bindings (required by smartpm) stay at python 2 as well for now, even tough python 3 seems to be supported.

2) Scons build system is python 2 only, due to lack of resources.

3) createrepo recipe is using an upstream version from 2007, before createrepo was rewritten on top of yum's python modules.

We need to look into adding yum recipe which will allow updating createrepo to latest upstream. Also, libxml2 is currently a createrepo dependency, and so stays at Python 2 for now.

4) varous recipes that haven't been ported: kconfig-frontends, mklibs, opkg-utils, ltp, mc, parted, libepoxy, mesa, perf, rt-tests, webkitgtk.

5) LSB spec is implicitly requiring Python 2 (via requirement for '/usr/bin/python').

6) gobject introspection has been ported to Python 3 in release 1.48. I'll send this update separately, as a part of normal version update patches.

7) piglit has been ported to Python 3 as well in the latest upstream releases, Jussi Kukkonen should take care of it. I've added piglit's python dependencies in their Python 3 versions - python3-mako and python3-numpy, so that the task should be a little easier.

The following changes since commit c7e614c438706fb3ed7520b4990ebb3973366942:

useradd: Fix infinite build loop (2016-05-23 10:33:45 +0100)

are available in the git repository at:

git://git.yoctoproject.org/poky-contrib akanavin/deprecate-python2
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=akanavin/deprecate-python2

Alexander Kanavin (45):
python-native, python3-native: remove the use of exported HOST_SYS and
BUILD_SYS variables
distutils-native-base.bbclass, distutils3-native-base.bbclass: remove python3-dir.bbclass: add a separate class for Python 3 default-versions.inc: drop python-related defaults sip.bbclass: remove
avahi-ui: remove support for building a python module
bind: switch Python dependency to Python 3.x
python-dbus: update to 1.2.4, port to python 3
python3: manipulate all of the config*/Makefile files, not just
config/Makefile
python3: drop 110-enable-zlib.patch
glib: move to Python 3
dbus-test: remove unneeded pygobject dependency
python-pygobject: port to Python 3
neard: do not package python test scripts
bluez5: switch to Python 3
connman: do not install Python test scripts
ofono: drop the custom-made revert to Python 2 from Python 3 packagegroup-core-full-cmdline: drop python-dbus from the list of
services
nfs-utils: switch to Python 3
systemd: drop python dependency for ptests
util-linux: move to Python 3
python-pycairo: move to Python 3
bootchart2: move to Python 3
gdb: move to Python 3
git: remove Python package (to which nothing was packaged)
qemu: remove runtime python dependency
subversion: remove unnecessary python dependency
swig: move to Python 3
python-pyrex: remove unused recipe
python-imaging: remove unused recipe
python-docutils: move to Python 3
cracklib: disable building the python module
libuser: move to Python 3
libnewt-python: move to Python 3
gnome-doc-utils: remove recipe
lttng-tools: move to Python 3
lttng-ust: move to Python 3
systemtap: move to Python 3
libcap-ng: move to Python 3
hwlatdetect: move to Python 3
python3-mako: add a Python 3 recipe
python3-nose: add a recipe
python3: add = to -L linking option only when the path is absolute
python-numpy: move recipe to own directory
python3-numpy: add a recipe

 meta/classes/distutils-common-base.bbclass         |    2 -
 meta/classes/distutils-native-base.bbclass         |    3 -
 meta/classes/distutils-tools.bbclass               |    4 -
 meta/classes/distutils.bbclass                     |    4 -
 meta/classes/distutils3-base.bbclass               |    3 -
 meta/classes/distutils3-native-base.bbclass        |    4 -
 meta/classes/distutils3.bbclass                    |   24 -
 meta/classes/gobject-introspection.bbclass         |    2 -
 meta/classes/python-dir.bbclass                    |    6 +-
 meta/classes/python3-dir.bbclass                   |    5 +
 meta/classes/python3native.bbclass                 |    4 +-
 meta/classes/sip.bbclass                           |   61 -
 meta/conf/distro/include/default-versions.inc      |    5 -
 meta/conf/distro/include/distro_alias.inc          |    2 -
 meta/conf/distro/include/security_flags.inc        |    1 -
 meta/recipes-connectivity/avahi/avahi-ui_0.6.32.bb |   11 +-
 meta/recipes-connectivity/bind/bind_9.10.3-P3.bb   |    4 +-
 meta/recipes-connectivity/bluez5/bluez5.inc        |    6 +-
 meta/recipes-connectivity/connman/connman.inc      |    6 +-
 meta/recipes-connectivity/neard/neard_0.15.bb      |   13 +-
 .../nfs-utils/nfs-utils_1.3.3.bb                   |    6 +-
 meta/recipes-connectivity/ofono/ofono.inc          |    6 +-
 .../ofono/Revert-test-Convert-to-Python-3.patch    | 1270 --------------------
 meta/recipes-connectivity/ofono/ofono_1.17.bb      |    1 -
 meta/recipes-core/dbus/dbus-test_1.10.6.bb         |    2 +-
 meta/recipes-core/glib-2.0/glib.inc                |   11 +-
 meta/recipes-core/libxml/libxml2_2.9.3.bb          |    2 -
 meta/recipes-core/systemd/systemd_229.bb           |    2 +-
 meta/recipes-core/util-linux/util-linux.inc        |   11 +-
 .../bootchart2/bootchart2_0.14.8.bb                |   16 +-
 meta/recipes-devtools/gdb/gdb-common.inc           |    2 +-
 meta/recipes-devtools/gdb/gdb-cross-canadian.inc   |   12 +-
 meta/recipes-devtools/gdb/gdb-cross.inc            |    6 +-
 meta/recipes-devtools/gdb/gdb_7.11.bb              |    6 +-
 meta/recipes-devtools/git/git.inc                  |    7 +-
 ...h-usr-and-so-on-for-libraries-by-default-.patch |    0
 .../files}/aarch64/_numpyconfig.h                  |    0
 .../files/aarch64}/config.h                        |    0
 .../files}/add-glibc-check.patch                   |    0
 .../mipsel => python-numpy/files/arm}/config.h     |    0
 .../files/arm}/numpyconfig.h                       |    0
 .../files}/armeb/config.h                          |    0
 .../files}/armeb/numpyconfig.h                     |    0
 .../files}/mips/_numpyconfig.h                     |    0
 .../files}/mips/config.h                           |    0
 .../files/mips64}/_numpyconfig.h                   |    0
 .../files/mips64}/config.h                         |    0
 .../files}/mips64n32/_numpyconfig.h                |    0
 .../files/mips64n32}/config.h                      |    0
 .../arm => python-numpy/files/mipsel}/config.h     |    0
 .../files/mipsel}/numpyconfig.h                    |    0
 .../files}/powerpc/_numpyconfig.h                  |    0
 .../files}/powerpc/config.h                        |    0
 .../files/powerpc64}/_numpyconfig.h                |    0
 .../files/powerpc64}/config.h                      |    0
 .../files}/remove-build-path-in-comments.patch     |    0
 .../files}/x86-64/_numpyconfig.h                   |    0
 .../files}/x86-64/config.h                         |    0
 .../files}/x86/config.h                            |    0
 .../files}/x86/numpyconfig.h                       |    0
 .../python-numpy_1.10.4.bb                         |    1 -
 .../python-numpy/python3-numpy_1.10.4.bb           |  101 ++
 ...ing-setup.py-force-paths-for-zlib-freetyp.patch |   55 -
 .../allow.to.disable.some.features.patch           |   65 -
 .../python-imaging/fix-freetype-includes.patch     |   30 -
 .../python/python-imaging_1.1.7.bb                 |   45 -
 meta/recipes-devtools/python/python-mako_1.0.3.bb  |    6 +
 ...2-distutils-prefix-is-inside-staging-area.patch |   65 -
 .../python/python-native_2.7.11.bb                 |    4 +-
 .../python/python-pycairo_1.10.0.bb                |   41 -
 .../python/python-pyrex-native_0.9.9.bb            |    5 -
 .../python-pyrex/pyrex-fix-optimized-mode.patch    |   15 -
 meta/recipes-devtools/python/python-pyrex_0.9.9.bb |   22 -
 ...et-the-prefix-to-be-inside-staging-direct.patch |   51 +
 ...{python-dbus_1.2.0.bb => python3-dbus_1.2.4.bb} |   22 +-
 ...n-docutils_0.12.bb => python3-docutils_0.12.bb} |    4 +-
 meta/recipes-devtools/python/python3-mako_1.0.3.bb |   24 +
 .../python/python3-native_3.5.1.bb                 |    3 -
 meta/recipes-devtools/python/python3-nose_1.3.7.bb |   24 +
 .../python/python3-pycairo_1.10.0.bb               |   40 +
 ...c-add-sysroot-path-to-GI_DATADIR-don-t-se.patch |    0
 ...bject_3.18.2.bb => python3-pygobject_3.18.2.bb} |    8 +-
 .../python/python3/110-enable-zlib.patch           |   21 -
 ...2-distutils-prefix-is-inside-staging-area.patch |   49 +-
 .../python/python3/unixccompiler.patch             |    6 +-
 meta/recipes-devtools/python/python3_3.5.1.bb      |    8 +-
 meta/recipes-devtools/python/python_2.7.11.bb      |    3 -
 meta/recipes-devtools/qemu/qemu.inc                |    2 +-
 meta/recipes-devtools/rpm/rpm_5.4+cvs.bb           |    2 +-
 meta/recipes-devtools/rpm/rpm_5.4.16.bb            |    2 +-
 .../subversion/subversion_1.9.3.bb                 |    2 +-
 meta/recipes-devtools/swig/swig.inc                |    7 +-
 meta/recipes-extended/cracklib/cracklib_2.9.5.bb   |   25 +-
 meta/recipes-extended/libuser/libuser_0.62.bb      |    8 +-
 .../newt/libnewt-python_0.52.18.bb                 |    6 +-
 meta/recipes-extended/newt/libnewt_0.52.18.bb      |    3 -
 .../packagegroup-core-full-cmdline.bb              |    1 -
 meta/recipes-gnome/epiphany/epiphany_3.18.4.bb     |    1 -
 .../gnome-desktop/gnome-desktop3_3.18.2.bb         |    2 +-
 meta/recipes-gnome/gnome/gnome-doc-utils.inc       |   29 -
 .../gnome-doc-utils/sysrooted-pkg-config.patch     |   35 -
 .../use-usr-bin-env-for-python-in-xml2po.patch     |   30 -
 .../gnome/gnome-doc-utils/xsltproc_nonet.patch     |   95 --
 .../recipes-gnome/gnome/gnome-doc-utils_0.20.10.bb |   12 -
 .../gobject-introspection_1.46.0.bb                |    2 -
 ...d-look-for-python-3.0-when-building-pytho.patch |   30 -
 meta/recipes-kernel/lttng/lttng-tools_git.bb       |    7 +-
 meta/recipes-kernel/lttng/lttng-ust_git.bb         |    9 +-
 meta/recipes-kernel/perf/perf.bb                   |    2 -
 meta/recipes-kernel/systemtap/systemtap_git.bb     |    5 +-
 meta/recipes-rt/rt-tests/hwlatdetect_0.96.bb       |    5 +-
 meta/recipes-support/libcap-ng/libcap-ng_0.7.7.bb  |   12 +-
 112 files changed, 384 insertions(+), 2198 deletions(-)
 delete mode 100644 meta/classes/distutils-native-base.bbclass
 delete mode 100644 meta/classes/distutils3-native-base.bbclass
 create mode 100644 meta/classes/python3-dir.bbclass
 delete mode 100644 meta/classes/sip.bbclass
 delete mode 100644 meta/recipes-connectivity/ofono/ofono/Revert-test-Convert-to-Python-3.patch
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/aarch64/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/powerpc64 => python-numpy/files/aarch64}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/add-glibc-check.patch (100%)
 rename meta/recipes-devtools/{python/python-numpy/mipsel => python-numpy/files/arm}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/mipsel => python-numpy/files/arm}/numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/armeb/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/armeb/numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/mips/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/mips/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/powerpc64 => python-numpy/files/mips64}/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/mips64n32 => python-numpy/files/mips64}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/mips64n32/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/mips64 => python-numpy/files/mips64n32}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/arm => python-numpy/files/mipsel}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/arm => python-numpy/files/mipsel}/numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/powerpc/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/powerpc/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/mips64 => python-numpy/files/powerpc64}/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/aarch64 => python-numpy/files/powerpc64}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/remove-build-path-in-comments.patch (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/x86-64/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/x86-64/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/x86/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/x86/numpyconfig.h (100%)
 rename meta/recipes-devtools/{python => python-numpy}/python-numpy_1.10.4.bb (98%)
 create mode 100644 meta/recipes-devtools/python-numpy/python3-numpy_1.10.4.bb
 delete mode 100644 meta/recipes-devtools/python/python-imaging/0001-python-imaging-setup.py-force-paths-for-zlib-freetyp.patch
 delete mode 100644 meta/recipes-devtools/python/python-imaging/allow.to.disable.some.features.patch
 delete mode 100644 meta/recipes-devtools/python/python-imaging/fix-freetype-includes.patch
 delete mode 100644 meta/recipes-devtools/python/python-imaging_1.1.7.bb
 delete mode 100644 meta/recipes-devtools/python/python-native/12-distutils-prefix-is-inside-staging-area.patch
 delete mode 100644 meta/recipes-devtools/python/python-pycairo_1.10.0.bb
 delete mode 100644 meta/recipes-devtools/python/python-pyrex-native_0.9.9.bb
 delete mode 100644 meta/recipes-devtools/python/python-pyrex/pyrex-fix-optimized-mode.patch
 delete mode 100644 meta/recipes-devtools/python/python-pyrex_0.9.9.bb
 create mode 100644 meta/recipes-devtools/python/python/0001-distutils-set-the-prefix-to-be-inside-staging-direct.patch
 rename meta/recipes-devtools/python/{python-dbus_1.2.0.bb => python3-dbus_1.2.4.bb} (53%)
 rename meta/recipes-devtools/python/{python-docutils_0.12.bb => python3-docutils_0.12.bb} (92%)
 create mode 100644 meta/recipes-devtools/python/python3-mako_1.0.3.bb
 create mode 100644 meta/recipes-devtools/python/python3-nose_1.3.7.bb
 create mode 100644 meta/recipes-devtools/python/python3-pycairo_1.10.0.bb
 rename meta/recipes-devtools/python/{python-pygobject => python3-pygobject}/0001-configure.ac-add-sysroot-path-to-GI_DATADIR-don-t-se.patch (100%)
 rename meta/recipes-devtools/python/{python-pygobject_3.18.2.bb => python3-pygobject_3.18.2.bb} (72%)
 delete mode 100644 meta/recipes-devtools/python/python3/110-enable-zlib.patch
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils.inc
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils/sysrooted-pkg-config.patch
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils/use-usr-bin-env-for-python-in-xml2po.patch
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils/xsltproc_nonet.patch
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils_0.20.10.bb
 delete mode 100644 meta/recipes-kernel/lttng/lttng-tools/Revert-Build-look-for-python-3.0-when-building-pytho.patch
Signature · 1 line
2.8.1
#1 lore raw

PATCH 1/45 python-native, python3-native: remove the use of exported HOST_SYS and BUILD_SYS variables

The code that utilized them was superseded by the code (in the same patch!) that is utilizing STAGING_LIBDIR/STAGING_INCDIR, and wasn't correct in the first place as HOST_SYS is not necessarily the same as the sysroot directory name.

---
 meta/classes/distutils-tools.bbclass               |  4 --
 meta/classes/distutils.bbclass                     |  4 --
 meta/classes/distutils3.bbclass                    | 24 --------
 meta/classes/gobject-introspection.bbclass         |  2 -
 meta/recipes-core/libxml/libxml2_2.9.3.bb          |  2 -
 meta/recipes-devtools/gdb/gdb-cross.inc            |  2 -
 meta/recipes-devtools/python/python-dbus_1.2.0.bb  |  3 -
 ...2-distutils-prefix-is-inside-staging-area.patch | 65 ----------------------
 .../python/python-native_2.7.11.bb                 |  4 +-
 .../recipes-devtools/python/python-numpy_1.10.4.bb |  1 -
 .../python/python-pycairo_1.10.0.bb                |  2 +-
 ...et-the-prefix-to-be-inside-staging-direct.patch | 51 +++++++++++++++++
 .../python/python3-native_3.5.1.bb                 |  2 -
 ...2-distutils-prefix-is-inside-staging-area.patch | 49 +++-------------
 meta/recipes-devtools/python/python3_3.5.1.bb      |  4 --
 meta/recipes-devtools/python/python_2.7.11.bb      |  3 -
 meta/recipes-extended/newt/libnewt_0.52.18.bb      |  3 -
 .../gobject-introspection_1.46.0.bb                |  2 -
 meta/recipes-kernel/perf/perf.bb                   |  2 -
 19 files changed, 62 insertions(+), 167 deletions(-)
 delete mode 100644 meta/recipes-devtools/python/python-native/12-distutils-prefix-is-inside-staging-area.patch
 create mode 100644 meta/recipes-devtools/python/python/0001-distutils-set-the-prefix-to-be-inside-staging-direct.patch
meta/classes/distutils-tools.bbclass +0 -4
index 8d9b3f7..3ef9cc5 100644
@@ -8,14 +8,12 @@ DISTUTILS_INSTALL_ARGS ?= "--prefix=${D}/${prefix} \
 distutils_do_compile() {
          STAGING_INCDIR=${STAGING_INCDIR} \
          STAGING_LIBDIR=${STAGING_LIBDIR} \
-         BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
          ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py build ${DISTUTILS_BUILD_ARGS} || \
          bbfatal_log "${PYTHON_PN} setup.py build_ext execution failed."
 }
 
 distutils_stage_headers() {
         install -d ${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR}
-        BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
         ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install_headers ${DISTUTILS_STAGE_HEADERS_ARGS} || \
         bbfatal_log "${PYTHON_PN} setup.py install_headers execution failed."
 }
@@ -25,7 +23,6 @@ distutils_stage_all() {
         STAGING_LIBDIR=${STAGING_LIBDIR} \
         install -d ${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR}
         PYTHONPATH=${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR} \
-        BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
         ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install ${DISTUTILS_STAGE_ALL_ARGS} || \
         bbfatal_log "${PYTHON_PN} setup.py install (stage) execution failed."
 }
@@ -37,7 +34,6 @@ distutils_do_install() {
         STAGING_INCDIR=${STAGING_INCDIR} \
         STAGING_LIBDIR=${STAGING_LIBDIR} \
         PYTHONPATH=${D}/${PYTHON_SITEPACKAGES_DIR} \
-        BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
         ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install --install-lib=${D}/${PYTHON_SITEPACKAGES_DIR} ${DISTUTILS_INSTALL_ARGS} || \
         bbfatal_log "${PYTHON_PN} setup.py install execution failed."
 
meta/classes/distutils.bbclass +0 -4
index da48a2e..857572d 100644
@@ -10,14 +10,12 @@ DISTUTILS_INSTALL_ARGS ?= "--prefix=${D}/${prefix} \
 distutils_do_compile() {
          STAGING_INCDIR=${STAGING_INCDIR} \
          STAGING_LIBDIR=${STAGING_LIBDIR} \
-         BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
          ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py build ${DISTUTILS_BUILD_ARGS} || \
          bbfatal_log "${PYTHON_PN} setup.py build execution failed."
 }
 
 distutils_stage_headers() {
         install -d ${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR}
-        BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
         ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install_headers ${DISTUTILS_STAGE_HEADERS_ARGS} || \
         bbfatal_log "${PYTHON_PN} setup.py install_headers execution failed."
 }
@@ -27,7 +25,6 @@ distutils_stage_all() {
         STAGING_LIBDIR=${STAGING_LIBDIR} \
         install -d ${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR}
         PYTHONPATH=${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR} \
-        BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
         ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install ${DISTUTILS_STAGE_ALL_ARGS} || \
         bbfatal_log "${PYTHON_PN} setup.py install (stage) execution failed."
 }
@@ -37,7 +34,6 @@ distutils_do_install() {
         STAGING_INCDIR=${STAGING_INCDIR} \
         STAGING_LIBDIR=${STAGING_LIBDIR} \
         PYTHONPATH=${D}${PYTHON_SITEPACKAGES_DIR} \
-        BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
         ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install --install-lib=${D}/${PYTHON_SITEPACKAGES_DIR} ${DISTUTILS_INSTALL_ARGS} || \
         bbfatal_log "${PYTHON_PN} setup.py install execution failed."
 
meta/classes/distutils3.bbclass +0 -24
index 4f6ca44..a6720c5 100644
@@ -9,14 +9,8 @@ DISTUTILS_INSTALL_ARGS ?= "--prefix=${D}/${prefix} \
     --install-data=${D}/${datadir}"
 
 distutils3_do_compile() {
-        if [ ${BUILD_SYS} != ${HOST_SYS} ]; then
-                SYS=${MACHINE}
-        else
-                SYS=${HOST_SYS}
-        fi
         STAGING_INCDIR=${STAGING_INCDIR} \
         STAGING_LIBDIR=${STAGING_LIBDIR} \
-        BUILD_SYS=${BUILD_SYS} HOST_SYS=${SYS} \
         ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py \
         build ${DISTUTILS_BUILD_ARGS} || \
         bbfatal_log "${PYTHON_PN} setup.py build_ext execution failed."
@@ -25,28 +19,16 @@ distutils3_do_compile[vardepsexclude] = "MACHINE"
 
 distutils3_stage_headers() {
         install -d ${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR}
-        if [ ${BUILD_SYS} != ${HOST_SYS} ]; then
-                SYS=${MACHINE}
-        else
-                SYS=${HOST_SYS}
-        fi
-        BUILD_SYS=${BUILD_SYS} HOST_SYS=${SYS} \
         ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install_headers ${DISTUTILS_STAGE_HEADERS_ARGS} || \
         bbfatal_log "${PYTHON_PN} setup.py install_headers execution failed."
 }
 distutils3_stage_headers[vardepsexclude] = "MACHINE"
 
 distutils3_stage_all() {
-        if [ ${BUILD_SYS} != ${HOST_SYS} ]; then
-                SYS=${MACHINE}
-        else
-                SYS=${HOST_SYS}
-        fi
         STAGING_INCDIR=${STAGING_INCDIR} \
         STAGING_LIBDIR=${STAGING_LIBDIR} \
         install -d ${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR}
         PYTHONPATH=${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR} \
-        BUILD_SYS=${BUILD_SYS} HOST_SYS=${SYS} \
         ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install ${DISTUTILS_STAGE_ALL_ARGS} || \
         bbfatal_log "${PYTHON_PN} setup.py install (stage) execution failed."
 }
@@ -54,15 +36,9 @@ distutils3_stage_all[vardepsexclude] = "MACHINE"
 
 distutils3_do_install() {
         install -d ${D}${PYTHON_SITEPACKAGES_DIR}
-        if [ ${BUILD_SYS} != ${HOST_SYS} ]; then
-                SYS=${MACHINE}
-        else
-                SYS=${HOST_SYS}
-        fi
         STAGING_INCDIR=${STAGING_INCDIR} \
         STAGING_LIBDIR=${STAGING_LIBDIR} \
         PYTHONPATH=${D}${PYTHON_SITEPACKAGES_DIR} \
-        BUILD_SYS=${BUILD_SYS} HOST_SYS=${SYS} \
         ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install --install-lib=${D}/${PYTHON_SITEPACKAGES_DIR} ${DISTUTILS_INSTALL_ARGS} || \
         bbfatal_log "${PYTHON_PN} setup.py install execution failed."
 
meta/classes/gobject-introspection.bbclass +0 -2
index 2d73e40..364c9d3 100644
@@ -13,8 +13,6 @@ DEPENDS_append = " gobject-introspection gobject-introspection-native qemu-nativ
 
 # This is necessary for python scripts to succeed - distutils fails if these
 # are not set
-export BUILD_SYS
-export HOST_SYS
 export STAGING_INCDIR
 export STAGING_LIBDIR
 
meta/recipes-core/libxml/libxml2_2.9.3.bb +0 -2
index 481346c..ae65159 100644
@@ -49,8 +49,6 @@ EXTRA_OECONF_class-nativesdk = "--without-legacy --without-docbook --with-c14n -
 EXTRA_OECONF_linuxstdbase = "--with-debug --with-legacy --with-docbook --with-c14n --without-lzma --with-zlib"
 
 # required for python binding
-export HOST_SYS
-export BUILD_SYS
 export STAGING_LIBDIR
 export STAGING_INCDIR
 
meta/recipes-devtools/gdb/gdb-cross.inc +0 -2
index 2468d23..c62715f 100644
@@ -10,8 +10,6 @@ PACKAGECONFIG[python] = "--with-python=${STAGING_BINDIR_NATIVE}/python-native/py
 PACKAGECONFIG[readline] = "--with-system-readline,--without-system-readline,readline-native"
 
 do_compile_prepend() {
-    export BUILD_SYS="${BUILD_SYS}"
-    export HOST_SYS="${HOST_SYS}"
     export STAGING_LIBDIR="${STAGING_LIBDIR_NATIVE}"
     export STAGING_INCDIR="${STAGING_INCDIR_NATIVE}"
 }
meta/recipes-devtools/python/python-dbus_1.2.0.bb +0 -3
index b314dce..ccdb9ae 100644
@@ -18,9 +18,6 @@ PACKAGECONFIG ?= ""
 PACKAGECONFIG[docs] = "--enable-html-docs,--disable-html-docs,python-docutils-native"
 PACKAGECONFIG[api-docs] = "--enable-api-docs,--disable-api-docs,python-docutils-native python-epydoc-native"
 
-export BUILD_SYS
-export HOST_SYS
-
 export STAGING_LIBDIR
 export STAGING_INCDIR
 
meta/recipes-devtools/python/python-native/12-distutils-prefix-is-inside-staging-area.patch deleted +0 -65

65 lines not on this page · raw message

meta/recipes-devtools/python/python-native_2.7.11.bb +1 -3
index abb69fc..31192ca 100644
@@ -8,7 +8,7 @@ SRC_URI += "\
             file://05-enable-ctypes-cross-build.patch \
             file://10-distutils-fix-swig-parameter.patch \
             file://11-distutils-never-modify-shebang-line.patch \
-            file://12-distutils-prefix-is-inside-staging-area.patch \
+            file://0001-distutils-set-the-prefix-to-be-inside-staging-direct.patch \
             file://debug.patch \
             file://unixccompiler.patch \
             file://nohostlibs.patch \
@@ -30,8 +30,6 @@ RPROVIDES += "python-distutils-native python-compression-native python-textutils
 EXTRA_OECONF_append = " --bindir=${bindir}/${PN} --with-system-expat=${STAGING_DIR_HOST}"
 
 EXTRA_OEMAKE = '\
-  BUILD_SYS="" \
-  HOST_SYS="" \
   LIBC="" \
   STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE} \
   STAGING_INCDIR=${STAGING_INCDIR_NATIVE} \
meta/recipes-devtools/python/python-numpy_1.10.4.bb +0 -1
index 8a562dc..ca6a7ab 100644
@@ -63,7 +63,6 @@ inherit distutils
 # Make the build fail and replace *config.h with proper one
 # This is a ugly, ugly hack - Koen
 do_compile_prepend_class-target() {
-    BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
     ${STAGING_BINDIR_NATIVE}/python-native/python setup.py build ${DISTUTILS_BUILD_ARGS} || \
     true
     cp ${WORKDIR}/*config.h ${S}/build/$(ls ${S}/build | grep src)/numpy/core/include/numpy/
meta/recipes-devtools/python/python-pycairo_1.10.0.bb +1 -1
index 70fe25c..78e8a4e 100644
@@ -23,7 +23,7 @@ inherit distutils pkgconfig
 BBCLASSEXTEND = "native"
 
 do_configure() {
-	BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} ./waf configure --prefix=${D}${prefix} --libdir=${D}${libdir}
+	./waf configure --prefix=${D}${prefix} --libdir=${D}${libdir}
 }
 
 do_compile() {
meta/recipes-devtools/python/python/0001-distutils-set-the-prefix-to-be-inside-staging-direct.patch new file +51 -0

51 lines not on this page · raw message

meta/recipes-devtools/python/python3-native_3.5.1.bb +0 -2
index 7bad11a..e8d0f9b 100644
@@ -47,8 +47,6 @@ RPROVIDES += "python3-distutils-native python3-compression-native python3-textut
 EXTRA_OECONF_append = " --bindir=${bindir}/${PN} --without-ensurepip"
 
 EXTRA_OEMAKE = '\
-  BUILD_SYS="" \
-  HOST_SYS="" \
   LIBC="" \
   STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE} \
   STAGING_INCDIR=${STAGING_INCDIR_NATIVE} \
meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch +9 -40

78 lines not on this page · raw message

meta/recipes-devtools/python/python3_3.5.1.bb +0 -4
index 2fbb3cb..26d05c7 100644
@@ -118,7 +118,6 @@ do_compile() {
 		STAGING_LIBDIR=${STAGING_LIBDIR} \
 		STAGING_BASELIBDIR=${STAGING_BASELIBDIR} \
 		STAGING_INCDIR=${STAGING_INCDIR} \
-		BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
 		LIB=${baselib} \
 		ARCH=${TARGET_ARCH} \
 		OPT="${CFLAGS}" libpython3.so
@@ -128,7 +127,6 @@ do_compile() {
 		STAGING_LIBDIR=${STAGING_LIBDIR} \
 		STAGING_INCDIR=${STAGING_INCDIR} \
 		STAGING_BASELIBDIR=${STAGING_BASELIBDIR} \
-		BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
 		LIB=${baselib} \
 		ARCH=${TARGET_ARCH} \
 		OPT="${CFLAGS}"
@@ -149,7 +147,6 @@ do_install() {
 		STAGING_LIBDIR=${STAGING_LIBDIR} \
 		STAGING_INCDIR=${STAGING_INCDIR} \
 		STAGING_BASELIBDIR=${STAGING_BASELIBDIR} \
-		BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
 		LIB=${baselib} \
 		ARCH=${TARGET_ARCH} \
 		DESTDIR=${D} LIBDIR=${libdir}
@@ -159,7 +156,6 @@ do_install() {
 		STAGING_LIBDIR=${STAGING_LIBDIR} \
 		STAGING_INCDIR=${STAGING_INCDIR} \
 		STAGING_BASELIBDIR=${STAGING_BASELIBDIR} \
-		BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
 		LIB=${baselib} \
 		ARCH=${TARGET_ARCH} \
 		DESTDIR=${D} LIBDIR=${libdir} install
meta/recipes-devtools/python/python_2.7.11.bb +0 -3
index 606f153..7eced2d 100644
@@ -80,7 +80,6 @@ do_compile() {
 		STAGING_LIBDIR=${STAGING_LIBDIR} \
 		STAGING_INCDIR=${STAGING_INCDIR} \
 		STAGING_BASELIBDIR=${STAGING_BASELIBDIR} \
-		BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
 		OPT="${CFLAGS}"
 }
 
@@ -100,7 +99,6 @@ do_install() {
 		STAGING_LIBDIR=${STAGING_LIBDIR} \
 		STAGING_INCDIR=${STAGING_INCDIR} \
 		STAGING_BASELIBDIR=${STAGING_BASELIBDIR} \
-		BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
 		DESTDIR=${D} LIBDIR=${libdir}
 	
 	oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/python-native/pgen \
@@ -109,7 +107,6 @@ do_install() {
 		STAGING_LIBDIR=${STAGING_LIBDIR} \
 		STAGING_INCDIR=${STAGING_INCDIR} \
 		STAGING_BASELIBDIR=${STAGING_BASELIBDIR} \
-		BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
 		DESTDIR=${D} LIBDIR=${libdir} install
 
 	install -m 0644 Makefile.sysroot ${D}/${libdir}/python${PYTHON_MAJMIN}/config/Makefile
meta/recipes-extended/newt/libnewt_0.52.18.bb +0 -3
index 9a2964b..b6a9cd4 100644
@@ -40,9 +40,6 @@ export STAGING_INCDIR
 export STAGING_LIBDIR
 export CPPFLAGS
 
-export BUILD_SYS
-export HOST_SYS
-
 PACKAGES_prepend = "whiptail "
 
 do_configure_prepend() {
meta/recipes-gnome/gobject-introspection/gobject-introspection_1.46.0.bb +0 -2
index 861af5f..b544f8c 100644
@@ -20,8 +20,6 @@ inherit autotools pkgconfig gtk-doc pythonnative qemu gobject-introspection-data
 BBCLASSEXTEND = "native"
 
 # necessary to let the call for python-config from configure.ac succeed
-export BUILD_SYS
-export HOST_SYS
 export STAGING_INCDIR
 export STAGING_LIBDIR
 
meta/recipes-kernel/perf/perf.bb +0 -2
index 3d6ffb3..d668300 100644
@@ -42,8 +42,6 @@ inherit linux-kernel-base kernel-arch pythonnative
 inherit python-dir
 export STAGING_INCDIR
 export STAGING_LIBDIR
-export BUILD_SYS
-export HOST_SYS
 export PYTHON_SITEPACKAGES_DIR
 
 #kernel 3.1+ supports WERROR to disable warnings as errors
Signature · 1 line
2.8.1
#2 lore raw

PATCH 2/45 distutils-native-base.bbclass, distutils3-native-base.bbclass: remove

In reply to Alexander Kanavin

These classes do not seem to be used by anything.

---
 meta/classes/distutils-native-base.bbclass  | 3 ---
 meta/classes/distutils3-native-base.bbclass | 4 ----
 2 files changed, 7 deletions(-)
 delete mode 100644 meta/classes/distutils-native-base.bbclass
 delete mode 100644 meta/classes/distutils3-native-base.bbclass
meta/classes/distutils-native-base.bbclass deleted +0 -3
deleted file mode 100644
index 509cb95..0000000
@@ -1,3 +0,0 @@
-inherit distutils-common-base
-
-DEPENDS  += "${@["${PYTHON_PN}-native", ""][(d.getVar('PACKAGES', True) == '')]}"
meta/classes/distutils3-native-base.bbclass deleted +0 -4
deleted file mode 100644
index db9a1a7..0000000
@@ -1,4 +0,0 @@
-PYTHON_BASEVERSION = "3.5"
-PYTHON_ABI = "m"
-
-inherit distutils-native-base
Signature · 1 line
2.8.1
#3 lore raw

PATCH 3/45 python3-dir.bbclass: add a separate class for Python 3

In reply to Alexander Kanavin

This is much cleaner than sharing python-dir.bbclass between python 2 and 3 classes, and doing confusing overrides in them.

---
 meta/classes/distutils-common-base.bbclass | 2 --
 meta/classes/distutils3-base.bbclass       | 3 ---
 meta/classes/python-dir.bbclass            | 6 +++---
 meta/classes/python3-dir.bbclass           | 5 +++++
 meta/classes/python3native.bbclass         | 4 +---
 5 files changed, 9 insertions(+), 11 deletions(-)
 create mode 100644 meta/classes/python3-dir.bbclass
meta/classes/distutils-common-base.bbclass +0 -2
index 08511f5..dee06b4 100644
@@ -1,5 +1,3 @@
-inherit python-dir
-
 EXTRA_OEMAKE = ""
 
 export STAGING_INCDIR
meta/classes/distutils3-base.bbclass +0 -3
index 2a093d3a..82ab6a3 100644
@@ -1,8 +1,5 @@
 DEPENDS  += "${@["${PYTHON_PN}-native ${PYTHON_PN}", ""][(d.getVar('PACKAGES', True) == '')]}"
 RDEPENDS_${PN} += "${@['', '${PYTHON_PN}-core']['${CLASSOVERRIDE}' == 'class-target']}"
 
-PYTHON_BASEVERSION = "3.5"
-PYTHON_ABI = "m"
-
 inherit distutils-common-base python3native
 
meta/classes/python-dir.bbclass +3 -3
index ebfa4b3..a11dc35 100644
@@ -1,5 +1,5 @@
-PYTHON_BASEVERSION ?= "2.7"
-PYTHON_ABI ?= ""
+PYTHON_BASEVERSION = "2.7"
+PYTHON_ABI = ""
 PYTHON_DIR = "python${PYTHON_BASEVERSION}"
-PYTHON_PN = "python${@'' if '${PYTHON_BASEVERSION}'.startswith('2') else '3'}"
+PYTHON_PN = "python"
 PYTHON_SITEPACKAGES_DIR = "${libdir}/${PYTHON_DIR}/site-packages"
meta/classes/python3-dir.bbclass new file +5 -0
new file mode 100644
index 0000000..06bb046
@@ -0,0 +1,5 @@
+PYTHON_BASEVERSION = "3.5"
+PYTHON_ABI = "m"
+PYTHON_DIR = "python${PYTHON_BASEVERSION}"
+PYTHON_PN = "python3"
+PYTHON_SITEPACKAGES_DIR = "${libdir}/${PYTHON_DIR}/site-packages"
meta/classes/python3native.bbclass +1 -3
index 8ec6b76..1899863 100644
@@ -1,6 +1,4 @@
-PYTHON_BASEVERSION = "3.5"
-
-inherit python-dir
+inherit python3-dir
 
 PYTHON="${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN}"
 EXTRANATIVEPATH += "${PYTHON_PN}-native"
Signature · 1 line
2.8.1
#4 lore raw

PATCH 4/45 default-versions.inc: drop python-related defaults

In reply to Alexander Kanavin

There is only one version of python 2.x provided, so no need to set a preferred version.
PYTHON_BASEVERSION is now set explicitly in python-dir.bbclass and python3-dir.bbclass, so fix up a few recipes that relied on it being set in default-versions.inc without inheriting python-dir.

---
 meta/conf/distro/include/default-versions.inc | 5 -----
 meta/recipes-devtools/rpm/rpm_5.4+cvs.bb      | 2 +-
 meta/recipes-devtools/rpm/rpm_5.4.16.bb       | 2 +-
 meta/recipes-kernel/lttng/lttng-tools_git.bb  | 2 +-
 meta/recipes-rt/rt-tests/hwlatdetect_0.96.bb  | 1 +
 5 files changed, 4 insertions(+), 8 deletions(-)
meta/conf/distro/include/default-versions.inc +0 -5
index a04ea71..cc8c533 100644
@@ -2,11 +2,6 @@
 # Default preferred versions
 #
 
-# Force the python versions in one place
-PYTHON_BASEVERSION ?= "2.7"
-PREFERRED_VERSION_python ?= "2.7.11"
-PREFERRED_VERSION_python-native ?= "2.7.11"
-
 # Force the older version of liberation-fonts until we fix the fontforge issue
 PREFERRED_VERSION_liberation-fonts ?= "1.04"
 
meta/recipes-devtools/rpm/rpm_5.4+cvs.bb +1 -1
index 0991f6d..625d75e 100644
@@ -156,7 +156,7 @@ SRC_URI_append_libc-musl = "\
 # to process certain package feeds.
 #SRC_URI += "file://rpm-debug-platform.patch"
 
-inherit autotools gettext
+inherit autotools gettext python-dir
 
 acpaths = "-I ${S}/db/dist/aclocal -I ${S}/db/dist/aclocal_java"
 
meta/recipes-devtools/rpm/rpm_5.4.16.bb +1 -1
index 7ebd5e9..3adb29c 100644
@@ -165,7 +165,7 @@ SRC_URI_append_libc-musl = "\
 
 UPSTREAM_CHECK_REGEX = "rpm-(?P<pver>(\d+[\.\-_]*)+)-.*$"
 
-inherit autotools gettext
+inherit autotools gettext python-dir
 
 acpaths = "-I ${S}/db/dist/aclocal -I ${S}/db/dist/aclocal_java"
 
meta/recipes-kernel/lttng/lttng-tools_git.bb +1 -1
index 3ce4a9e..8ef267c 100644
@@ -35,7 +35,7 @@ SRC_URI = "git://git.lttng.org/lttng-tools.git;branch=stable-2.7 \
 
 S = "${WORKDIR}/git"
 
-inherit autotools-brokensep ptest pkgconfig useradd
+inherit autotools-brokensep ptest pkgconfig useradd python-dir
 
 USERADD_PACKAGES = "${PN}"
 GROUPADD_PARAM_${PN} = "tracing"
meta/recipes-rt/rt-tests/hwlatdetect_0.96.bb +1 -0
index 962069e..025eb63 100644
@@ -6,6 +6,7 @@ LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
 
 require rt-tests.inc
+inherit python-dir
 
 EXTRA_OEMAKE += "PYLIB=${libdir}/python${PYTHON_BASEVERSION}/dist-packages"
 
Signature · 1 line
2.8.1
#5 lore raw

PATCH 5/45 sip.bbclass: remove

In reply to Alexander Kanavin

Nothing is requiring it in oe-core or meta-oe.

---
 meta/classes/sip.bbclass | 61 ------------------------------------------------
 1 file changed, 61 deletions(-)
 delete mode 100644 meta/classes/sip.bbclass
meta/classes/sip.bbclass deleted +0 -61
deleted file mode 100644
index 6ed2a13..0000000
@@ -1,61 +0,0 @@
-# Build Class for Sip based Python Bindings
-# (C) Michael 'Mickey' Lauer <[email protected]>
-#
-STAGING_SIPDIR ?= "${STAGING_DATADIR_NATIVE}/sip"
-
-DEPENDS  =+ "sip-native"
-RDEPENDS_${PN} += "python-sip"
-
-# default stuff, do not uncomment
-# EXTRA_SIPTAGS = "-tWS_X11 -tQt_4_3_0"
-
-# do_generate is before do_configure so ensure that sip_native is populated in sysroot before executing it
-do_generate[depends] += "sip-native:do_populate_sysroot"
-
-sip_do_generate() {
-	if [ -z "${SIP_MODULES}" ]; then 
-		MODULES="`ls sip/*mod.sip`"
-	else
-		MODULES="${SIP_MODULES}"
-	fi
-
-	if [ -z "$MODULES" ]; then
-		die "SIP_MODULES not set and no modules found in $PWD"
-        else
-		bbnote "using modules '${SIP_MODULES}' and tags '${EXTRA_SIPTAGS}'"
-	fi
-
-	if [ -z "${EXTRA_SIPTAGS}" ]; then
-		die "EXTRA_SIPTAGS needs to be set!"
-	else
-		SIPTAGS="${EXTRA_SIPTAGS}"
-	fi
-
-	if [ ! -z "${SIP_FEATURES}" ]; then
-		FEATURES="-z ${SIP_FEATURES}"
-		bbnote "sip feature file: ${SIP_FEATURES}"
-	fi
-
-	for module in $MODULES
-	do
-		install -d ${module}/
-		echo "calling 'sip4 -I sip -I ${STAGING_SIPDIR} ${SIPTAGS} ${FEATURES} -c ${module} -b ${module}/${module}.pro.in sip/${module}/${module}mod.sip'"
-		sip4 -I ${STAGING_SIPDIR} -I sip ${SIPTAGS} ${FEATURES} -c ${module} -b ${module}/${module}.sbf \
-			sip/${module}/${module}mod.sip || die "Error calling sip on ${module}"
-		sed -e 's,target,TARGET,' -e 's,sources,SOURCES,' -e 's,headers,HEADERS,' \
-			${module}/${module}.sbf | sed s,"moc_HEADERS =","HEADERS +=", \
-			>${module}/${module}.pro
-		echo "TEMPLATE=lib" >>${module}/${module}.pro
-		[ "${module}" = "qt" ] 		&& echo "" 		>>${module}/${module}.pro
-		[ "${module}" = "qtcanvas" ] 	&& echo ""		>>${module}/${module}.pro
-		[ "${module}" = "qttable" ] 	&& echo ""		>>${module}/${module}.pro
-		[ "${module}" = "qwt" ] 	&& echo ""		>>${module}/${module}.pro
-		[ "${module}" = "qtpe" ]        && echo ""		>>${module}/${module}.pro
-		[ "${module}" = "qtpe" ]        && echo "LIBS+=-lqpe"	>>${module}/${module}.pro
-		true
-	done
-}
-
-EXPORT_FUNCTIONS do_generate
-
-addtask generate after do_unpack do_patch before do_configure
Signature · 1 line
2.8.1
#6 lore raw

Re: [PATCH 05/45] sip.bbclass: remove

The pyqt recipe in meta-qt4 uses sip.

Philip

Quoted 76 lines · Alexander Kanavin

Nothing is requiring it in oe-core or meta-oe.

---
 meta/classes/sip.bbclass | 61 ------------------------------------------------
 1 file changed, 61 deletions(-)
 delete mode 100644 meta/classes/sip.bbclass
meta/classes/sip.bbclass deleted +0 -61
deleted file mode 100644
index 6ed2a13..0000000
@@ -1,61 +0,0 @@
-# Build Class for Sip based Python Bindings
-# (C) Michael 'Mickey' Lauer <[email protected]>
-#
-STAGING_SIPDIR ?= "${STAGING_DATADIR_NATIVE}/sip"
-
-DEPENDS  =+ "sip-native"
-RDEPENDS_${PN} += "python-sip"
-
-# default stuff, do not uncomment
-# EXTRA_SIPTAGS = "-tWS_X11 -tQt_4_3_0"
-
-# do_generate is before do_configure so ensure that sip_native is populated in sysroot before executing it
-do_generate[depends] += "sip-native:do_populate_sysroot"
-
-sip_do_generate() {
-	if [ -z "${SIP_MODULES}" ]; then 
-		MODULES="`ls sip/*mod.sip`"
-	else
-		MODULES="${SIP_MODULES}"
-	fi
-
-	if [ -z "$MODULES" ]; then
-		die "SIP_MODULES not set and no modules found in $PWD"
-        else
-		bbnote "using modules '${SIP_MODULES}' and tags '${EXTRA_SIPTAGS}'"
-	fi
-
-	if [ -z "${EXTRA_SIPTAGS}" ]; then
-		die "EXTRA_SIPTAGS needs to be set!"
-	else
-		SIPTAGS="${EXTRA_SIPTAGS}"
-	fi
-
-	if [ ! -z "${SIP_FEATURES}" ]; then
-		FEATURES="-z ${SIP_FEATURES}"
-		bbnote "sip feature file: ${SIP_FEATURES}"
-	fi
-
-	for module in $MODULES
-	do
-		install -d ${module}/
-		echo "calling 'sip4 -I sip -I ${STAGING_SIPDIR} ${SIPTAGS} ${FEATURES} -c ${module} -b ${module}/${module}.pro.in sip/${module}/${module}mod.sip'"
-		sip4 -I ${STAGING_SIPDIR} -I sip ${SIPTAGS} ${FEATURES} -c ${module} -b ${module}/${module}.sbf \
-			sip/${module}/${module}mod.sip || die "Error calling sip on ${module}"
-		sed -e 's,target,TARGET,' -e 's,sources,SOURCES,' -e 's,headers,HEADERS,' \
-			${module}/${module}.sbf | sed s,"moc_HEADERS =","HEADERS +=", \
-			>${module}/${module}.pro
-		echo "TEMPLATE=lib" >>${module}/${module}.pro
-		[ "${module}" = "qt" ] 		&& echo "" 		>>${module}/${module}.pro
-		[ "${module}" = "qtcanvas" ] 	&& echo ""		>>${module}/${module}.pro
-		[ "${module}" = "qttable" ] 	&& echo ""		>>${module}/${module}.pro
-		[ "${module}" = "qwt" ] 	&& echo ""		>>${module}/${module}.pro
-		[ "${module}" = "qtpe" ]        && echo ""		>>${module}/${module}.pro
-		[ "${module}" = "qtpe" ]        && echo "LIBS+=-lqpe"	>>${module}/${module}.pro
-		true
-	done
-}
-
-EXPORT_FUNCTIONS do_generate
-
-addtask generate after do_unpack do_patch before do_configure
#7 lore raw

Re: [PATCH 05/45] sip.bbclass: remove

Quoted 1 line

The pyqt recipe in meta-qt4 uses sip.

It's using the sip recipe, but not the sip class. I don't see anything in meta-qt4 that is using the class, do you?

Alex

#8 lore raw

PATCH 6/45 avahi-ui: remove support for building a python module

In reply to Alexander Kanavin

It's not used by anything and hasn't been ported to Python 3.

---
 meta/recipes-connectivity/avahi/avahi-ui_0.6.32.bb | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)
meta/recipes-connectivity/avahi/avahi-ui_0.6.32.bb +2 -9
index 3966b4c..1b3e918 100644
@@ -6,12 +6,9 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \
 
 require avahi.inc
 
-inherit python-dir pythonnative distro_features_check
+inherit distro_features_check
 ANY_OF_DISTRO_FEATURES = "${GTK2DISTROFEATURES}"
 
-PACKAGECONFIG ??= "dbus python"
-PACKAGECONFIG[python] = "--enable-python,--disable-python,python-native python"
-
 SRC_URI[md5sum] = "22b5e705d3eabb31d26f2e1e7b074013"
 SRC_URI[sha256sum] = "d54991185d514a0aba54ebeb408d7575b60f5818a772e28fa0e18b98bc1db454"
 
@@ -21,7 +18,7 @@ AVAHI_GTK = "--enable-gtk --disable-gtk3 --disable-pygtk"
 
 S = "${WORKDIR}/avahi-${PV}"
 
-PACKAGES = "${PN} ${PN}-utils ${PN}-dbg ${PN}-dev ${PN}-staticdev ${PN}-doc python-avahi avahi-discover"
+PACKAGES = "${PN} ${PN}-utils ${PN}-dbg ${PN}-dev ${PN}-staticdev ${PN}-doc avahi-discover"
 
 FILES_${PN} = "${libdir}/libavahi-ui*.so.*"
 FILES_${PN}-dev += "${libdir}/libavahi-ui${SOLIBSDEV}"
@@ -29,15 +26,11 @@ FILES_${PN}-staticdev += "${libdir}/libavahi-ui.a"
 
 FILES_${PN}-utils = "${bindir}/b* ${datadir}/applications/b*"
 
-FILES_python-avahi = "${PYTHON_SITEPACKAGES_DIR}/avahi ${PYTHON_SITEPACKAGES_DIR}/avahi_discover"
 FILES_avahi-discover = "${datadir}/applications/avahi-discover.desktop \
                         ${datadir}/avahi/interfaces/avahi-discover* \
                         ${bindir}/avahi-discover-standalone \
                         ${datadir}/avahi/interfaces/avahi-discover.glade"
 
-RDEPENDS_python-avahi = "python-core python-dbus"
-
-
 do_install_append () {
 	rm ${D}${sysconfdir} -rf
 	rm ${D}${base_libdir} -rf
Signature · 1 line
2.8.1
#9 lore raw

PATCH 7/45 bind: switch Python dependency to Python 3.x

In reply to Alexander Kanavin
---
 meta/recipes-connectivity/bind/bind_9.10.3-P3.bb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
meta/recipes-connectivity/bind/bind_9.10.3-P3.bb +2 -2
index 1e3a20f..a99f0dd 100644
@@ -56,7 +56,7 @@ SYSTEMD_SERVICE_${PN} = "named.service"
 
 PARALLEL_MAKE = ""
 
-RDEPENDS_${PN} = "python-core"
+RDEPENDS_${PN} = "python3-core"
 RDEPENDS_${PN}-dev = ""
 
 PACKAGE_BEFORE_PN += "${PN}-utils"
@@ -81,7 +81,7 @@ do_install_append() {
 	install -d "${D}${sysconfdir}/init.d"
 	install -m 644 ${S}/conf/* "${D}${sysconfdir}/bind/"
 	install -m 755 "${S}/init.d" "${D}${sysconfdir}/init.d/bind"
-	sed -i -e '1s,#!.*python,#! /usr/bin/env python,' ${D}${sbindir}/dnssec-coverage ${D}${sbindir}/dnssec-checkds
+	sed -i -e '1s,#!.*python,#! /usr/bin/python3,' ${D}${sbindir}/dnssec-coverage ${D}${sbindir}/dnssec-checkds
 
 	# Install systemd related files
 	install -d ${D}${sbindir}
Signature · 1 line
2.8.1
#10 lore raw

PATCH 8/45 python-dbus: update to 1.2.4, port to python 3

In reply to Alexander Kanavin
---
 .../{python-dbus_1.2.0.bb => python3-dbus_1.2.4.bb}       | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)
 rename meta/recipes-devtools/python/{python-dbus_1.2.0.bb => python3-dbus_1.2.4.bb} (62%)
meta/recipes-devtools/python/python3-dbus_1.2.4.bb renamed from meta/recipes-devtools/python/python-dbus_1.2.0.bb +8 -7
similarity index 62%
rename from meta/recipes-devtools/python/python-dbus_1.2.0.bb
rename to meta/recipes-devtools/python/python3-dbus_1.2.4.bb
index ccdb9ae..c058caf 100644
@@ -3,24 +3,25 @@ SECTION = "devel/python"
 HOMEPAGE = "http://www.freedesktop.org/Software/dbus"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://COPYING;md5=0b83047ce9e948b67c0facc5f233476a"
-DEPENDS = "expat dbus dbus-glib virtual/libintl python-pyrex-native"
+DEPENDS = "expat dbus dbus-glib virtual/libintl"
 
 SRC_URI = "http://dbus.freedesktop.org/releases/dbus-python/dbus-python-${PV}.tar.gz \
 "
 
-SRC_URI[md5sum] = "b09cd2d1a057cc432ce944de3fc06bf7"
-SRC_URI[sha256sum] = "e12c6c8b2bf3a9302f75166952cbe41d6b38c3441bbc6767dbd498942316c6df"
+SRC_URI[md5sum] = "7372a588c83a7232b4e08159bfd48fe5"
+SRC_URI[sha256sum] = "e2f1d6871f74fba23652e51d10873e54f71adab0525833c19bad9e99b1b2f9cc"
 S = "${WORKDIR}/dbus-python-${PV}"
 
-inherit distutils-base autotools pkgconfig
+inherit distutils3-base autotools pkgconfig
 
 PACKAGECONFIG ?= ""
 PACKAGECONFIG[docs] = "--enable-html-docs,--disable-html-docs,python-docutils-native"
 PACKAGECONFIG[api-docs] = "--enable-api-docs,--disable-api-docs,python-docutils-native python-epydoc-native"
 
-export STAGING_LIBDIR
-export STAGING_INCDIR
+do_configure_prepend() {
+    export PYTHON=${PYTHON}
+}
 
-RDEPENDS_${PN} = "python-io python-logging python-stringold python-threading python-xml"
+RDEPENDS_${PN} = "python3-io python3-logging python3-stringold python3-threading python3-xml"
 
 FILES_${PN}-dev += "${libdir}/pkgconfig"
Signature · 1 line
2.8.1
#11 lore raw

PATCH 9/45 python3: manipulate all of the config*/Makefile files, not just config/Makefile

In reply to Alexander Kanavin
---
 meta/recipes-devtools/python/python3_3.5.1.bb | 3 +++
 1 file changed, 3 insertions(+)
meta/recipes-devtools/python/python3_3.5.1.bb +3 -0
index 26d05c7..1c8fe2f 100644
@@ -164,6 +164,7 @@ do_install() {
 	rm -f ${D}/${bindir}/2to3
 
 	install -m 0644 Makefile.sysroot ${D}/${libdir}/python${PYTHON_MAJMIN}/config/Makefile
+	install -m 0644 Makefile.sysroot ${D}/${libdir}/python${PYTHON_MAJMIN}/config-${PYTHON_MAJMIN}m/Makefile
 
 	if [ -e ${WORKDIR}/sitecustomize.py ]; then
 		install -m 0644 ${WORKDIR}/sitecustomize.py ${D}/${libdir}/python${PYTHON_MAJMIN}
@@ -182,9 +183,11 @@ PACKAGE_PREPROCESS_FUNCS += "py_package_preprocess"
 py_package_preprocess () {
 	# copy back the old Makefile to fix target package
 	install -m 0644 ${B}/Makefile.orig ${PKGD}/${libdir}/python${PYTHON_MAJMIN}/config/Makefile
+	install -m 0644 ${B}/Makefile.orig ${PKGD}/${libdir}/python${PYTHON_MAJMIN}/config-${PYTHON_MAJMIN}m/Makefile
 	# Remove references to buildmachine paths in target Makefile and _sysconfigdata
 	sed -i -e 's:--sysroot=${STAGING_DIR_TARGET}::g' -e s:'--with-libtool-sysroot=${STAGING_DIR_TARGET}'::g \
 		${PKGD}/${libdir}/python${PYTHON_MAJMIN}/config/Makefile \
+		${PKGD}/${libdir}/python${PYTHON_MAJMIN}/config-${PYTHON_MAJMIN}m/Makefile \
 		${PKGD}/${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata.py
 }
 
Signature · 1 line
2.8.1
#12 lore raw

Re: [PATCH 09/45] python3: manipulate all of the config*/Makefile files, not just config/Makefile

Quoted 10 lines · Alexander Kanavin
---
 meta/recipes-devtools/python/python3_3.5.1.bb | 3 +++
 1 file changed, 3 insertions(+)
meta/recipes-devtools/python/python3_3.5.1.bb +0 -0
index 26d05c7..1c8fe2f 100644

meta/recipes-devtools/python/python3_3.5.1.bb do_install() { · line 167

Quoted 4 lines
meta/recipes-devtools/python/python3_3.5.1.bb +1 -0
@@ -164,6 +164,7 @@ do_install() {
 	rm -f ${D}/${bindir}/2to3
 
 	install -m 0644 Makefile.sysroot ${D}/${libdir}/python${PYTHON_MAJMIN}/config/Makefile
+	install -m 0644 Makefile.sysroot ${D}/${libdir}/python${PYTHON_MAJMIN}/config-${PYTHON_MAJMIN}m/Makefile

Shouldn't it use "PYTHON_ABI" variable instead of "m"?

meta/recipes-devtools/python/python3_3.5.1.bb PACKAGE_PREPROCESS_FUNCS += "py_package_preprocess" · line 185

Quoted 6 lines
meta/recipes-devtools/python/python3_3.5.1.bb +0 -0
 	if [ -e ${WORKDIR}/sitecustomize.py ]; then
 		install -m 0644 ${WORKDIR}/sitecustomize.py ${D}/${libdir}/python${PYTHON_MAJMIN}
@@ -182,9 +183,11 @@ PACKAGE_PREPROCESS_FUNCS += "py_package_preprocess"
 py_package_preprocess () {
 	# copy back the old Makefile to fix target package
 	install -m 0644 ${B}/Makefile.orig ${PKGD}/${libdir}/python${PYTHON_MAJMIN}/config/Makefile

Shouldn't it use "PYTHON_ABI" variable instead of "m"?

meta/recipes-devtools/python/python3_3.5.1.bb PACKAGE_PREPROCESS_FUNCS += "py_package_preprocess" · line 190

Quoted 5 lines
meta/recipes-devtools/python/python3_3.5.1.bb +2 -0
+	install -m 0644 ${B}/Makefile.orig ${PKGD}/${libdir}/python${PYTHON_MAJMIN}/config-${PYTHON_MAJMIN}m/Makefile
 	# Remove references to buildmachine paths in target Makefile and _sysconfigdata
 	sed -i -e 's:--sysroot=${STAGING_DIR_TARGET}::g' -e s:'--with-libtool-sysroot=${STAGING_DIR_TARGET}'::g \
 		${PKGD}/${libdir}/python${PYTHON_MAJMIN}/config/Makefile \
+		${PKGD}/${libdir}/python${PYTHON_MAJMIN}/config-${PYTHON_MAJMIN}m/Makefile \

Shouldn't it use "PYTHON_ABI" variable instead of "m"?

Quoted 11 lines
meta/recipes-devtools/python/python3_3.5.1.bb +0 -0
 		${PKGD}/${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata.py
 }
 
Signature · 7 lines
2.8.1

-- 
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core
Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
#13 lore raw

Re: [PATCH 09/45] python3: manipulate all of the config*/Makefile files, not just config/Makefile

Quoted 6 lines
Quoted 4 lines

install -m 0644 Makefile.sysroot
${D}/${libdir}/python${PYTHON_MAJMIN}/config/Makefile

(quoted diff) +1 -0
+	install -m 0644 Makefile.sysroot

${D}/${libdir}/python${PYTHON_MAJMIN}/config-${PYTHON_MAJMIN}m/Makefile

Shouldn't it use "PYTHON_ABI" variable instead of "m"?

Thanks, I fixed it in the repo (will push a bit later).

Alex

#14 lore raw

PATCH 10/45 python3: drop 110-enable-zlib.patch

In reply to Alexander Kanavin

With the patch, python (incorrectly) builds zlib module against external zlib. Without the patch, it's using own internal copy of zlib.

---
 .../recipes-devtools/python/python3-native_3.5.1.bb |  1 -
 .../python/python3/110-enable-zlib.patch            | 21 ---------------------
 meta/recipes-devtools/python/python3_3.5.1.bb       |  1 -
 3 files changed, 23 deletions(-)
 delete mode 100644 meta/recipes-devtools/python/python3/110-enable-zlib.patch
meta/recipes-devtools/python/python3-native_3.5.1.bb +0 -1
index e8d0f9b..126935b 100644
@@ -12,7 +12,6 @@ file://020-dont-compile-python-files.patch \
 file://030-fixup-include-dirs.patch \
 file://070-dont-clean-ipkg-install.patch \
 file://080-distutils-dont_adjust_files.patch \
-file://110-enable-zlib.patch \
 file://130-readline-setup.patch \
 file://150-fix-setupterm.patch \
 file://python-3.3-multilib.patch \
meta/recipes-devtools/python/python3/110-enable-zlib.patch deleted +0 -21
deleted file mode 100644
index fb92a19..0000000
@@ -1,21 +0,0 @@
-Enable zlib in python
-
--Khem
-
-Upstream-Status: Inappropriate [OE-Specific]
-
----
- Modules/Setup.dist |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/Modules/Setup.dist
-+++ b/Modules/Setup.dist
-@@ -354,7 +354,7 @@ _symtable symtablemodule.c
- # Andrew Kuchling's zlib module.
- # This require zlib 1.1.3 (or later).
- # See http://www.gzip.org/zlib/
--#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
-+zlib zlibmodule.c -lz
- 
- # Interface to the Expat XML parser
- #
meta/recipes-devtools/python/python3_3.5.1.bb +0 -1
index 1c8fe2f..bbb54f6 100644
@@ -13,7 +13,6 @@ file://020-dont-compile-python-files.patch \
 file://030-fixup-include-dirs.patch \
 file://070-dont-clean-ipkg-install.patch \
 file://080-distutils-dont_adjust_files.patch \
-file://110-enable-zlib.patch \
 file://130-readline-setup.patch \
 file://150-fix-setupterm.patch \
 file://0001-h2py-Fix-issue-13032-where-it-fails-with-UnicodeDeco.patch \
Signature · 1 line
2.8.1
#15 lore raw

PATCH 11/45 glib: move to Python 3

In reply to Alexander Kanavin

Drop python-pygobject and python-dbus dependencies, because nothing in ptests depends on them, and it creates a circular dependency chain.

---
 meta/recipes-core/glib-2.0/glib.inc | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)
meta/recipes-core/glib-2.0/glib.inc +6 -5
index ddf5e40..1da0bfd 100644
@@ -17,13 +17,16 @@ SECTION = "libs"
 
 BBCLASSEXTEND = "native nativesdk"
 
-DEPENDS = "virtual/libiconv libffi zlib glib-2.0-native"
+DEPENDS = "virtual/libiconv libffi zlib glib-2.0-native python3"
 DEPENDS_append = " ${@bb.utils.contains('PTEST_ENABLED', '1', ' dbus', '', d)}"
 DEPENDS_class-native = "pkgconfig-native gettext-native libffi-native zlib-native"
 DEPENDS_class-nativesdk = "nativesdk-libtool nativesdk-gettext nativesdk-libffi nativesdk-zlib glib-2.0-native"
 
 PACKAGES += "${PN}-codegen ${PN}-utils"
 
+RDEPENDS_${PN}-codegen += "python3-core"
+RDEPENDS_${PN}-utils += "python3-core"
+
 LEAD_SONAME = "libglib-2.0.*"
 
 inherit autotools gettext gtk-doc pkgconfig ptest-gnome upstream-version-is-even bash-completion gio-module-cache
@@ -44,7 +47,7 @@ EXTRA_OECONF_class-native = "${CORECONF} --disable-selinux"
 EXTRA_OECONF_append_libc-uclibc = " --with-libiconv=gnu"
 
 do_configure_prepend() {
-	sed -i -e '1s,#!.*,#!${USRBINPATH}/env python,' ${S}/gio/gdbus-2.0/codegen/gdbus-codegen.in
+	sed -i -e '1s,#!.*,#!${USRBINPATH}/python3,' ${S}/gio/gdbus-2.0/codegen/gdbus-codegen.in
 }
 
 FILES_${PN} = "${libdir}/lib*${SOLIBS} \
@@ -73,7 +76,7 @@ USE_NLS = "yes"
 
 do_install_append () {
 	if [ -f ${D}${bindir}/gtester-report ]; then
-		sed ${D}${bindir}/gtester-report -i -e '1s|^#!.*|#!/usr/bin/env python|'
+		sed ${D}${bindir}/gtester-report -i -e '1s|^#!.*|#!/usr/bin/python3|'
 	fi
 
 	# Remove some unpackaged files
@@ -109,8 +112,6 @@ RDEPENDS_${PN}-ptest += "\
             tzdata-asia \
             tzdata-europe \
             tzdata-posix \
-            python-pygobject \
-            python-dbus \
             shared-mime-info \
            "
 
Signature · 1 line
2.8.1
#16 lore raw

PATCH 12/45 dbus-test: remove unneeded pygobject dependency

In reply to Alexander Kanavin
---
 meta/recipes-core/dbus/dbus-test_1.10.6.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-core/dbus/dbus-test_1.10.6.bb +1 -1
index 3748fe6..af99976 100644
@@ -5,7 +5,7 @@ LICENSE = "AFL-2 | GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=10dded3b58148f3f1fd804b26354af3e \
                     file://dbus/dbus.h;beginline=6;endline=20;md5=7755c9d7abccd5dbd25a6a974538bb3c"
 
-DEPENDS = "python-pygobject dbus"
+DEPENDS = "dbus glib-2.0"
 
 RDEPENDS_${PN} += "make"
 RDEPENDS_${PN}-dev = ""
Signature · 1 line
2.8.1
#17 lore raw

PATCH 13/45 python-pygobject: port to Python 3

In reply to Alexander Kanavin

This reverts commit 7f7c9ab29eba0e58916629ca13dc4a494535ce19.

---
 ...001-configure.ac-add-sysroot-path-to-GI_DATADIR-don-t-se.patch | 0
 .../{python-pygobject_3.18.2.bb => python3-pygobject_3.18.2.bb}   | 8 ++++----
 2 files changed, 4 insertions(+), 4 deletions(-)
 rename meta/recipes-devtools/python/{python-pygobject => python3-pygobject}/0001-configure.ac-add-sysroot-path-to-GI_DATADIR-don-t-se.patch (100%)
 rename meta/recipes-devtools/python/{python-pygobject_3.18.2.bb => python3-pygobject_3.18.2.bb} (72%)
meta/recipes-devtools/python/python3-pygobject/0001-configure.ac-add-sysroot-path-to-GI_DATADIR-don-t-se.patch renamed from meta/recipes-devtools/python/python-pygobject/0001-configure.ac-add-sysroot-path-to-GI_DATADIR-don-t-se.patch +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-pygobject/0001-configure.ac-add-sysroot-path-to-GI_DATADIR-don-t-se.patch
rename to meta/recipes-devtools/python/python3-pygobject/0001-configure.ac-add-sysroot-path-to-GI_DATADIR-don-t-se.patch
meta/recipes-devtools/python/python3-pygobject_3.18.2.bb renamed from meta/recipes-devtools/python/python-pygobject_3.18.2.bb +4 -4
similarity index 72%
rename from meta/recipes-devtools/python/python-pygobject_3.18.2.bb
rename to meta/recipes-devtools/python/python3-pygobject_3.18.2.bb
index 00c5079..4ddae81 100644
@@ -3,9 +3,9 @@ SECTION = "devel/python"
 LICENSE = "LGPLv2.1"
 LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7"
 
-inherit autotools pkgconfig gnomebase distutils-base gobject-introspection
+inherit autotools pkgconfig gnomebase distutils3-base gobject-introspection
 
-DEPENDS += "python glib-2.0"
+DEPENDS += "python3 glib-2.0"
 
 SRCNAME="pygobject"
 SRC_URI = " \
@@ -20,6 +20,6 @@ S = "${WORKDIR}/${SRCNAME}-${PV}"
 
 BBCLASSEXTEND = "native"
 
-EXTRA_OECONF = "--disable-cairo --with-python=python2.7"
+EXTRA_OECONF = "--disable-cairo"
 
-RDEPENDS_${PN} += "python-setuptools python-importlib"
+RDEPENDS_${PN} += "python3-setuptools python3-importlib"
Signature · 1 line
2.8.1
#18 lore raw

PATCH 14/45 neard: do not package python test scripts

In reply to Alexander Kanavin

They require python-dbus and python-gobject (which are only provided for Python 3), and have not been ported to Python 3.

---
 meta/recipes-connectivity/neard/neard_0.15.bb | 13 +------------
 1 file changed, 1 insertion(+), 12 deletions(-)
meta/recipes-connectivity/neard/neard_0.15.bb +1 -12
index 93bddb3..065cbec 100644
@@ -33,18 +33,9 @@ do_install_append() {
 		  > ${D}${sysconfdir}/init.d/neard
 		chmod 0755 ${D}${sysconfdir}/init.d/neard
 	fi
-
-	# Install the tests for neard-tests
-	install -d ${D}${libdir}/neard
-	install -m 0755 ${S}/test/* ${D}${libdir}/${BPN}/
-	install -m 0755 ${B}/tools/nfctool/nfctool ${D}${libdir}/${BPN}/
 }
 
-PACKAGES =+ "${PN}-tests"
-
-FILES_${PN}-tests = "${libdir}/${BPN}/*-test"
-
-RDEPENDS_${PN} = "dbus python python-dbus python-pygobject"
+RDEPENDS_${PN} = "dbus"
 
 # Bluez & Wifi are not mandatory except for handover
 RRECOMMENDS_${PN} = "\
@@ -52,8 +43,6 @@ RRECOMMENDS_${PN} = "\
                      ${@bb.utils.contains('DISTRO_FEATURES', 'wifi','wpa-supplicant', '', d)} \
                     "
 
-RDEPENDS_${PN}-tests = "python python-dbus python-pygobject"
-
 INITSCRIPT_NAME = "neard"
 INITSCRIPT_PARAMS = "defaults 64"
 
Signature · 1 line
2.8.1
#19 lore raw

PATCH 15/45 bluez5: switch to Python 3

In reply to Alexander Kanavin
---
 meta/recipes-connectivity/bluez5/bluez5.inc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
meta/recipes-connectivity/bluez5/bluez5.inc +5 -1
index b3cd8ed..92e360a 100644
@@ -69,6 +69,10 @@ do_install_append() {
         for f in ${NOINST_TOOLS} ; do
 	    install -m 755 ${B}/$f ${D}/${bindir}
 	done
+
+        # Patch python tools to use Python 3; they should be source compatible, but
+        # still refer to Python 2 in the shebang
+        sed -i -e '1s,#!.*python.*,#!${bindir}/python3,' ${D}${libdir}/bluez/test/*
 }
 
 ALLOW_EMPTY_libasound-module-bluez = "1"
@@ -99,7 +103,7 @@ def get_noinst_tools_paths (d, bb, tools):
 
 FILES_${PN}-noinst-tools = "${@get_noinst_tools_paths(d, bb, d.getVar('NOINST_TOOLS', True))}"
 
-RDEPENDS_${PN}-testtools += "python python-dbus python-pygobject"
+RDEPENDS_${PN}-testtools += "python3 python3-dbus python3-pygobject"
 
 SYSTEMD_SERVICE_${PN} = "bluetooth.service"
 INITSCRIPT_PACKAGES = "${PN}"
Signature · 1 line
2.8.1
#20 lore raw

PATCH 16/45 connman: do not install Python test scripts

In reply to Alexander Kanavin

They are not compatible with python 3, and require python-dbus and python-gobject (which are provided only for Python 3).

---
 meta/recipes-connectivity/connman/connman.inc | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)
meta/recipes-connectivity/connman/connman.inc +1 -5
index c375251..f09a2de 100644
@@ -26,7 +26,6 @@ EXTRA_OECONF += "\
     --enable-loopback \
     --enable-ethernet \
     --enable-tools \
-    --enable-test \
     --disable-polkit \
     --enable-client \
 "
@@ -140,10 +139,7 @@ PACKAGES =+ "${PN}-tools ${PN}-tests ${PN}-client"
 FILES_${PN}-tools = "${bindir}/wispr"
 RDEPENDS_${PN}-tools ="${PN}"
 
-FILES_${PN}-tests = "${bindir}/*-test ${libdir}/${BPN}/test/*"
-RDEPENDS_${PN}-tests = "python-dbus python-pygobject python-textutils python-subprocess python-fcntl python-netclient \
-                        ${PN} \
-"
+FILES_${PN}-tests = "${bindir}/*-test"
 
 FILES_${PN}-client = "${bindir}/connmanctl"
 RDEPENDS_${PN}-client ="${PN}"
Signature · 1 line
2.8.1
#21 lore raw

PATCH 17/45 ofono: drop the custom-made revert to Python 2 from Python 3

In reply to Alexander Kanavin
---
 meta/recipes-connectivity/ofono/ofono.inc          |    6 +-
 .../ofono/Revert-test-Convert-to-Python-3.patch    | 1270 --------------------
 meta/recipes-connectivity/ofono/ofono_1.17.bb      |    1 -
 3 files changed, 5 insertions(+), 1272 deletions(-)
 delete mode 100644 meta/recipes-connectivity/ofono/ofono/Revert-test-Convert-to-Python-3.patch
meta/recipes-connectivity/ofono/ofono.inc +5 -1
index c415a39..72bbcac 100644
@@ -26,6 +26,10 @@ SYSTEMD_SERVICE_${PN} = "ofono.service"
 do_install_append() {
   install -d ${D}${sysconfdir}/init.d/
   install -m 0755 ${WORKDIR}/ofono ${D}${sysconfdir}/init.d/ofono
+
+  # Ofono still has one test tool that refers to Python 2 in the shebang
+  sed -i -e '1s,#!.*python.*,#!${bindir}/python3,' ${D}${libdir}/ofono/test/set-ddr
+
 }
 
 PACKAGES =+ "${PN}-tests"
@@ -34,4 +38,4 @@ RDEPENDS_${PN} += "dbus"
 
 FILES_${PN} += "${base_libdir}/udev ${systemd_unitdir}"
 FILES_${PN}-tests = "${libdir}/${BPN}/test"
-RDEPENDS_${PN}-tests = "python python-pygobject python-dbus"
+RDEPENDS_${PN}-tests = "python3 python3-pygobject python3-dbus"
meta/recipes-connectivity/ofono/ofono/Revert-test-Convert-to-Python-3.patch deleted +0 -1270

1,270 lines not on this page · raw message

meta/recipes-connectivity/ofono/ofono_1.17.bb +0 -1
index 947f9d7..69f395777 100644
@@ -3,7 +3,6 @@ require ofono.inc
 SRC_URI  = "\
   ${KERNELORG_MIRROR}/linux/network/${BPN}/${BP}.tar.xz \
   file://ofono \
-  file://Revert-test-Convert-to-Python-3.patch \
 "
 SRC_URI[md5sum] = "d280b1d267ba5bf391d2a898fea7c748"
 SRC_URI[sha256sum] = "cbf20f07fd15253c682b23c1786d517f505c3688f7c4ea93da777e1523b89635"
Signature · 1 line
2.8.1
#22 lore raw

PATCH 18/45 packagegroup-core-full-cmdline: drop python-dbus from the list of services

In reply to Alexander Kanavin

Any Python scripts should include this dependency explicitly.

---
 meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb | 1 -
 1 file changed, 1 deletion(-)
meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb +0 -1
index f33b43e..a60a68c 100644
@@ -143,7 +143,6 @@ RDEPENDS_packagegroup-core-full-cmdline-sys-services = "\
     cronie \
     dbus \
     dbus-glib \
-    python-dbus \
     elfutils \
     gzip \
     less \
Signature · 1 line
2.8.1
#23 lore raw

PATCH 19/45 nfs-utils: switch to Python 3

In reply to Alexander Kanavin
---
 meta/recipes-connectivity/nfs-utils/nfs-utils_1.3.3.bb | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
meta/recipes-connectivity/nfs-utils/nfs-utils_1.3.3.bb +5 -1
index a6268f3..285bd2c 100644
@@ -88,7 +88,7 @@ FILES_${PN}-client = "${base_sbindir}/*mount.nfs* ${sbindir}/*statd \
 		      ${sysconfdir}/init.d/nfscommon \
 		      ${systemd_unitdir}/system/nfs-statd.service"
 FILES_${PN}-stats = "${sbindir}/mountstats ${sbindir}/nfsiostat"
-RDEPENDS_${PN}-stats = "python"
+RDEPENDS_${PN}-stats = "python3-core"
 
 FILES_${PN} += "${systemd_unitdir}"
 
@@ -140,4 +140,8 @@ do_install_append () {
 	rm -f ${D}${sbindir}/rpcdebug
 	rm -f ${D}${sbindir}/rpcgen
 	rm -f ${D}${sbindir}/locktest
+
+        # Make python tools use python 3
+        sed -i -e '1s,#!.*python.*,#!${bindir}/python3,' ${D}${sbindir}/mountstats ${D}${sbindir}/nfsiostat
+
 }
Signature · 1 line
2.8.1
#24 lore raw

PATCH 20/45 systemd: drop python dependency for ptests

In reply to Alexander Kanavin

Python tests are not actually used, because systemd is configured using --without-python

---
 meta/recipes-core/systemd/systemd_229.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-core/systemd/systemd_229.bb +1 -1
index ae63c58..a1ca0e8 100644
@@ -336,7 +336,7 @@ FILES_${PN}-analyze = "${bindir}/systemd-analyze"
 FILES_${PN}-initramfs = "/init"
 RDEPENDS_${PN}-initramfs = "${PN}"
 
-RDEPENDS_${PN}-ptest += "gawk make perl python bash xz \
+RDEPENDS_${PN}-ptest += "gawk make perl bash xz \
                          tzdata tzdata-americas tzdata-asia \
                          tzdata-europe tzdata-africa tzdata-antarctica \
                          tzdata-arctic tzdata-atlantic tzdata-australia \
Signature · 1 line
2.8.1
#25 lore raw

PATCH 21/45 util-linux: move to Python 3

In reply to Alexander Kanavin
---
 meta/recipes-core/util-linux/util-linux.inc | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)
meta/recipes-core/util-linux/util-linux.inc +6 -5
index a1614c2..c0f2540 100644
@@ -17,7 +17,7 @@ LIC_FILES_CHKSUM = "file://README.licensing;md5=1715f5ee3e01203ca1e1e0b9ee65918c
                     file://libmount/COPYING;md5=fb93f01d4361069c5616327705373b16 \
                     file://libblkid/COPYING;md5=fb93f01d4361069c5616327705373b16"
 
-inherit autotools gettext pkgconfig systemd update-alternatives python-dir ptest bash-completion
+inherit autotools gettext pkgconfig systemd update-alternatives python3-dir ptest bash-completion
 DEPENDS = "zlib ncurses"
 DEPENDS_append_class-native = " lzo-native"
 DEPENDS_append_class-nativesdk = " lzo-native"
@@ -60,14 +60,14 @@ PACKAGECONFIG[systemd] = "--with-systemd --with-systemdsystemunitdir=${systemd_u
 PACKAGECONFIG[libcap-ng] = "--enable-setpriv,--disable-setpriv,libcap-ng,"
 
 # Build python bindings for libmount
-PACKAGECONFIG[pylibmount] = "--with-python --enable-pylibmount,--without-python --disable-pylibmount,python"
+PACKAGECONFIG[pylibmount] = "--with-python=3 --enable-pylibmount,--without-python --disable-pylibmount,python3"
 
 # Readline support
 PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
 
 FILES_${PN}-doc += "${datadir}/getopt/getopt-*.*"
 
-FILES_${PN}-dev += "${libdir}/${PYTHON_DIR}/dist-packages/libmount/pylibmount.la"
+FILES_${PN}-dev += "${PYTHON_SITEPACKAGES_DIR}/libmount/pylibmount.la"
 
 FILES_util-linux-agetty = "${base_sbindir}/agetty"
 FILES_util-linux-fdisk = "${base_sbindir}/fdisk.${BPN}"
@@ -89,8 +89,9 @@ FILES_util-linux-findfs = "${sbindir}/findfs"
 FILES_util-linux-getopt = "${base_bindir}/getopt.${BPN}"
 FILES_util-linux-runuser = "${sbindir}/runuser"
 
-FILES_util-linux-pylibmount = "${libdir}/${PYTHON_DIR}/dist-packages/libmount/pylibmount.so \
-                               ${libdir}/${PYTHON_DIR}/dist-packages/libmount/__init__.*"
+FILES_util-linux-pylibmount = "${PYTHON_SITEPACKAGES_DIR}/libmount/pylibmount.so \
+                               ${PYTHON_SITEPACKAGES_DIR}/libmount/__init__.* \
+                               ${PYTHON_SITEPACKAGES_DIR}/libmount/__pycache__/*"
 FILES_util-linux-lscpu = "${bindir}/lscpu"
 
 FILES_util-linux-fsck = "${base_sbindir}/fsck*"
Signature · 1 line
2.8.1
#26 lore raw

PATCH 22/45 python-pycairo: move to Python 3

In reply to Alexander Kanavin

The Python 3 version comes in a separate tarball, and is relicensed under LGPLv3:
http://cairographics.org/pycairo/

---
 .../python/python-pycairo_1.10.0.bb                | 41 ----------------------
 .../python/python3-pycairo_1.10.0.bb               | 40 +++++++++++++++++++++
 2 files changed, 40 insertions(+), 41 deletions(-)
 delete mode 100644 meta/recipes-devtools/python/python-pycairo_1.10.0.bb
 create mode 100644 meta/recipes-devtools/python/python3-pycairo_1.10.0.bb
meta/recipes-devtools/python/python-pycairo_1.10.0.bb deleted +0 -41
deleted file mode 100644
index 78e8a4e..0000000
@@ -1,41 +0,0 @@
-SUMMARY = "Python bindings for the Cairo canvas library"
-HOMEPAGE = "http://cairographics.org/pycairo"
-BUGTRACKER = "http://bugs.freedesktop.org"
-SECTION = "python-devel"
-LICENSE = "LGPLv2.1 & MPL-1.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=f2e071ab72978431b294a0d696327421 \
-                    file://COPYING-LGPL-2.1;md5=fad9b3332be894bab9bc501572864b29 \
-                    file://COPYING-MPL-1.1;md5=bfe1f75d606912a4111c90743d6c7325"
-
-# cairo >= 1.8.8
-DEPENDS = "cairo"
-PR = "r2"
-
-SRC_URI = "http://cairographics.org/releases/py2cairo-${PV}.tar.bz2"
-
-SRC_URI[md5sum] = "20337132c4ab06c1146ad384d55372c5"
-SRC_URI[sha256sum] = "d30439f06c2ec1a39e27464c6c828b6eface3b22ee17b2de05dc409e429a7431"
-
-S = "${WORKDIR}/py2cairo-${PV}"
-
-inherit distutils pkgconfig
-
-BBCLASSEXTEND = "native"
-
-do_configure() {
-	./waf configure --prefix=${D}${prefix} --libdir=${D}${libdir}
-}
-
-do_compile() {
-	./waf build ${PARALLEL_MAKE}
-}
-
-do_install() {
-	./waf install
-	sed \
-		-e 's:@prefix@:${prefix}:' \
-		-e 's:@VERSION@:${PV}:' \
-		-e 's:@includedir@:${includedir}:' \
-		pycairo.pc.in > pycairo.pc
-	install -m 0644 pycairo.pc ${D}${libdir}/pkgconfig/
-}
meta/recipes-devtools/python/python3-pycairo_1.10.0.bb new file +40 -0
new file mode 100644
index 0000000..f9031b3
@@ -0,0 +1,40 @@
+SUMMARY = "Python bindings for the Cairo canvas library"
+HOMEPAGE = "http://cairographics.org/pycairo"
+BUGTRACKER = "http://bugs.freedesktop.org"
+SECTION = "python-devel"
+LICENSE = "LGPLv3"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
+                    file://COPYING.LESSER;md5=e6a600fd5e1d9cbde2d983680233ad02"
+
+# cairo >= 1.8.8
+DEPENDS = "cairo"
+PR = "r2"
+
+SRC_URI = "http://cairographics.org/releases/pycairo-${PV}.tar.bz2"
+
+SRC_URI[md5sum] = "e6fd3f2f1e6a72e0db0868c4985669c5"
+SRC_URI[sha256sum] = "9aa4078e7eb5be583aeabbe8d87172797717f95e8c4338f0d4a17b683a7253be"
+
+S = "${WORKDIR}/pycairo-${PV}"
+
+inherit distutils3 pkgconfig
+
+BBCLASSEXTEND = "native"
+
+do_configure() {
+	PYTHON=${PYTHON} ./waf configure --prefix=${D}${prefix} --libdir=${D}${libdir}
+}
+
+do_compile() {
+	./waf build ${PARALLEL_MAKE}
+}
+
+do_install() {
+	./waf install
+	sed \
+		-e 's:@prefix@:${prefix}:' \
+		-e 's:@VERSION@:${PV}:' \
+		-e 's:@includedir@:${includedir}:' \
+		py3cairo.pc.in > py3cairo.pc
+	install -m 0644 py3cairo.pc ${D}${libdir}/pkgconfig/
+}
Signature · 1 line
2.8.1
#27 lore raw

PATCH 23/45 bootchart2: move to Python 3

In reply to Alexander Kanavin
---
 meta/recipes-devtools/bootchart2/bootchart2_0.14.8.bb | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)
meta/recipes-devtools/bootchart2/bootchart2_0.14.8.bb +6 -10
index 86c614a..d0555c3 100644
@@ -99,7 +99,7 @@ SRCREV = "48e0071048564c6af75ab969e842d6dec808da09"
 
 inherit systemd
 inherit update-rc.d
-inherit pythonnative
+inherit python3native
 
 # The only reason to build bootchart2-native is for a native pybootchartgui.
 BBCLASSEXTEND = "native"
@@ -110,13 +110,6 @@ UPDATERCPN = "bootchartd-stop-initscript"
 INITSCRIPT_NAME = "bootchartd_stop.sh"
 INITSCRIPT_PARAMS = "start 99 2 3 4 5 ."
 
-# We want native pybootchartgui to execute with the correct Python interpeter.
-do_compile_append_class-native () {
-    echo "#! ${PYTHON}" | cat - ${S}/pybootchartgui.py > ${WORKDIR}/temp_pybootchartgui
-    mv ${WORKDIR}/temp_pybootchartgui ${S}/pybootchartgui.py
-    chmod +x ${S}/pybootchartgui
-}
-
 do_compile_prepend () {
     export PY_LIBDIR="${libdir}/${PYTHON_DIR}"
     export BINDIR="${bindir}"
@@ -135,14 +128,17 @@ do_install () {
     install -m 0755 ${WORKDIR}/bootchartd_stop.sh ${D}${sysconfdir}/init.d
 
     echo 'EXIT_PROC="$EXIT_PROC matchbox-window-manager"' >> ${D}${sysconfdir}/bootchartd.conf
+
+   # Use python 3 instead of python 2
+   sed -i -e '1s,#!.*python.*,#!${bindir}/python3,' ${D}${bindir}/pybootchartgui
 }
 
 PACKAGES =+ "pybootchartgui"
 FILES_pybootchartgui += "${libdir}/python*/site-packages/pybootchartgui ${bindir}/pybootchartgui"
-RDEPENDS_pybootchartgui = "python-pycairo python-compression python-image python-textutils python-shell python-compression python-codecs"
+RDEPENDS_pybootchartgui = "python3-pycairo python3-compression python3-image python3-textutils python3-shell python3-compression python3-codecs"
 RDEPENDS_${PN}_class-target += "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'sysvinit-pidof', 'procps', d)}"
 RDEPENDS_${PN}_class-target += "lsb"
-DEPENDS_append_class-native = " python-pycairo-native"
+DEPENDS_append_class-native = " python3-pycairo-native"
 
 PACKAGES =+ "bootchartd-stop-initscript"
 FILES_bootchartd-stop-initscript += "${sysconfdir}/init.d ${sysconfdir}/rc*.d"
Signature · 1 line
2.8.1
#28 lore raw

PATCH 24/45 gdb: move to Python 3

In reply to Alexander Kanavin
---
 meta/recipes-devtools/gdb/gdb-common.inc         |  2 +-
 meta/recipes-devtools/gdb/gdb-cross-canadian.inc | 12 ++++++------
 meta/recipes-devtools/gdb/gdb-cross.inc          |  4 ++--
 meta/recipes-devtools/gdb/gdb_7.11.bb            |  6 +++---
 4 files changed, 12 insertions(+), 12 deletions(-)
meta/recipes-devtools/gdb/gdb-common.inc +1 -1
index 3e00a2e..a5a9adf 100644
@@ -61,7 +61,7 @@ EXTRA_OECONF = "--disable-gdbtk --disable-tui --disable-x --disable-werror \
 PACKAGECONFIG ??= "readline"
 # Use --without-system-readline to compile with readline 5.
 PACKAGECONFIG[readline] = "--with-system-readline,--without-system-readline,readline"
-PACKAGECONFIG[python] = "--with-python=${WORKDIR}/python,--without-python,python,python python-codecs"
+PACKAGECONFIG[python] = "--with-python=${WORKDIR}/python,--without-python,python3,python3 python3-codecs"
 PACKAGECONFIG[babeltrace] = "--with-babeltrace,--without-babeltrace,babeltrace"
 
 GDBPROPREFIX = "--program-prefix=''"
meta/recipes-devtools/gdb/gdb-cross-canadian.inc +6 -6
index 6e42af1..e53081d 100644
@@ -1,5 +1,5 @@
 inherit cross-canadian
-inherit python-dir
+inherit python3-dir
 
 SUMMARY = "GNU debugger (cross-canadian gdb for ${TARGET_ARCH} target)"
 PN = "gdb-cross-canadian-${TRANSLATED_TARGET_ARCH}"
@@ -12,9 +12,9 @@ GDBPROPREFIX = "--program-prefix='${TARGET_PREFIX}'"
 
 # Overrides PACKAGECONFIG variables in gdb-common.inc
 PACKAGECONFIG ??= "python readline"
-PACKAGECONFIG[python] = "--with-python=${WORKDIR}/python,--without-python,nativesdk-python, \
-                         nativesdk-python-core nativesdk-python-lang nativesdk-python-re \
-                         nativesdk-python-codecs nativesdk-python-netclient"
+PACKAGECONFIG[python] = "--with-python=${WORKDIR}/python,--without-python,nativesdk-python3, \
+                         nativesdk-python3-core nativesdk-python3-lang nativesdk-python3-re \
+                         nativesdk-python3-codecs nativesdk-python3-netclient"
 PACKAGECONFIG[readline] = "--with-system-readline,--without-system-readline,nativesdk-readline"
 
 SSTATE_DUPWHITELIST += "${STAGING_DATADIR}/gdb"
@@ -23,8 +23,8 @@ do_configure_prepend() {
 cat > ${WORKDIR}/python << EOF
 #! /bin/sh
 case "\$2" in
-        --includes) echo "-I${STAGING_INCDIR}/${PYTHON_DIR}/" ;;
-        --ldflags) echo "-Wl,-rpath-link,${STAGING_LIBDIR}/.. -Wl,-rpath,${libdir}/.. -lpthread -ldl -lutil -lm -lpython${PYTHON_BASEVERSION}" ;;
+        --includes) echo "-I${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI}/" ;;
+        --ldflags) echo "-Wl,-rpath-link,${STAGING_LIBDIR}/.. -Wl,-rpath,${libdir}/.. -lpthread -ldl -lutil -lm -lpython${PYTHON_BASEVERSION}${PYTHON_ABI}" ;;
         --exec-prefix) echo "${exec_prefix}" ;;
         *) exit 1 ;;
 esac
meta/recipes-devtools/gdb/gdb-cross.inc +2 -2
index c62715f..7579205 100644
@@ -2,11 +2,11 @@ require gdb-common.inc
 
 DEPENDS = "expat-native ncurses-native"
 
-inherit pythonnative
+inherit python3native
 
 # Overrides PACKAGECONFIG variables in gdb-common.inc
 PACKAGECONFIG ??= "python readline"
-PACKAGECONFIG[python] = "--with-python=${STAGING_BINDIR_NATIVE}/python-native/python,--without-python,python-native"
+PACKAGECONFIG[python] = "--with-python=${STAGING_BINDIR_NATIVE}/python-native/python,--without-python,python3-native"
 PACKAGECONFIG[readline] = "--with-system-readline,--without-system-readline,readline-native"
 
 do_compile_prepend() {
meta/recipes-devtools/gdb/gdb_7.11.bb +3 -3
index ccc33b8..f02e643 100644
@@ -1,15 +1,15 @@
 require gdb.inc
 require gdb-${PV}.inc
 
-inherit python-dir
+inherit python3-dir
 
 do_configure_prepend() {
 	if [ -n "${@bb.utils.contains('PACKAGECONFIG', 'python', 'python', '', d)}" ]; then
 		cat > ${WORKDIR}/python << EOF
 #!/bin/sh
 case "\$2" in
-	--includes) echo "-I${STAGING_INCDIR}/${PYTHON_DIR}/" ;;
-	--ldflags) echo "-Wl,-rpath-link,${STAGING_LIBDIR}/.. -Wl,-rpath,${libdir}/.. -lpthread -ldl -lutil -lm -lpython${PYTHON_BASEVERSION}" ;;
+	--includes) echo "-I${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI}/" ;;
+	--ldflags) echo "-Wl,-rpath-link,${STAGING_LIBDIR}/.. -Wl,-rpath,${libdir}/.. -lpthread -ldl -lutil -lm -lpython${PYTHON_BASEVERSION}${PYTHON_ABI}" ;;
 	--exec-prefix) echo "${exec_prefix}" ;;
 	*) exit 1 ;;
 esac
Signature · 1 line
2.8.1
#29 lore raw

PATCH 25/45 git: remove Python package (to which nothing was packaged)

In reply to Alexander Kanavin
---
 meta/recipes-devtools/git/git.inc | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)
meta/recipes-devtools/git/git.inc +1 -6
index 7b3bec7..753b047 100644
@@ -32,8 +32,7 @@ do_compile_prepend () {
 
 do_install () {
 	oe_runmake install DESTDIR="${D}" bindir=${bindir} \
-		template_dir=${datadir}/git-core/templates \
-		GIT_PYTHON_DIR=${D}${datadir}/git-core/python
+		template_dir=${datadir}/git-core/templates
 	install -d ${D}/${mandir}/man1
 	install -d ${D}/${mandir}/man5
 	install -d ${D}/${mandir}/man7
@@ -108,10 +107,6 @@ FILES_${PN}-perltools += " \
 "
 RDEPENDS_${PN}-perltools = "${PN} perl perl-module-file-path findutils"
 
-PACKAGES =+ "${PN}-python"
-FILES_${PN}-python = "${libdir}/python*"
-
-
 # git-tk package with gitk and git-gui
 PACKAGES =+ "${PN}-tk"
 #RDEPENDS_${PN}-tk = "${PN} tk tcl"
Signature · 1 line
2.8.1
#30 lore raw

PATCH 26/45 qemu: remove runtime python dependency

In reply to Alexander Kanavin

Nothing seems to require it.

---
 meta/recipes-devtools/qemu/qemu.inc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-devtools/qemu/qemu.inc +1 -1
index 36d600f..bf689bb 100644
@@ -2,7 +2,7 @@ SUMMARY = "Fast open source processor emulator"
 HOMEPAGE = "http://qemu.org"
 LICENSE = "GPLv2 & LGPLv2.1"
 DEPENDS = "glib-2.0 zlib pixman"
-RDEPENDS_${PN}_class-target += "bash python"
+RDEPENDS_${PN}_class-target += "bash"
 RDEPENDS_${PN}-ptest = "bash make"
 
 require qemu-targets.inc
Signature · 1 line
2.8.1
#31 lore raw

PATCH 27/45 subversion: remove unnecessary python dependency

In reply to Alexander Kanavin

It would be useful if swig was enabled, but it isn't.

---
 meta/recipes-devtools/subversion/subversion_1.9.3.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-devtools/subversion/subversion_1.9.3.bb +1 -1
index a19a675..626276d 100644
@@ -8,7 +8,7 @@ HOMEPAGE = "http://subversion.tigris.org"
 
 BBCLASSEXTEND = "native"
 
-inherit gettext pythonnative
+inherit gettext
 
 SRC_URI = "${APACHE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \
            file://disable_macos.patch \
Signature · 1 line
2.8.1
#32 lore raw

PATCH 28/45 swig: move to Python 3

In reply to Alexander Kanavin
---
 meta/recipes-devtools/swig/swig.inc | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)
meta/recipes-devtools/swig/swig.inc +3 -4
index 9da40df..704bb27 100644
@@ -7,14 +7,14 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=e7807a6282784a7dde4c846626b08fc6 \
 
 SECTION = "devel"
 
-DEPENDS = "libpcre python"
+DEPENDS = "libpcre python3"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz"
 
-inherit autotools pythonnative
+inherit autotools python3native
 
 EXTRA_OECONF = " \
-    --with-python=${PYTHON} \
+    --with-python3=${PYTHON} \
     --without-allegrocl \
     --without-android \
     --without-boost \
@@ -33,7 +33,6 @@ EXTRA_OECONF = " \
     --without-perl5 \
     --without-pike \
     --without-php \
-    --without-python3 \
     --without-r \
     --without-ruby \
     --without-tcl \
Signature · 1 line
2.8.1
#33 lore raw

Re: [PATCH 28/45] swig: move to Python 3

I'm trying to get my head around how this change will impact python2 based programs that use swig, such as gnuradio.

Does this mean all programs that use swig will need to move to python3 now?

Philip

Quoted 36 lines · Alexander Kanavin
---
 meta/recipes-devtools/swig/swig.inc | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)
meta/recipes-devtools/swig/swig.inc +3 -4
index 9da40df..704bb27 100644
@@ -7,14 +7,14 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=e7807a6282784a7dde4c846626b08fc6 \
 
 SECTION = "devel"
 
-DEPENDS = "libpcre python"
+DEPENDS = "libpcre python3"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz"
 
-inherit autotools pythonnative
+inherit autotools python3native
 
 EXTRA_OECONF = " \
-    --with-python=${PYTHON} \
+    --with-python3=${PYTHON} \
     --without-allegrocl \
     --without-android \
     --without-boost \
@@ -33,7 +33,6 @@ EXTRA_OECONF = " \
     --without-perl5 \
     --without-pike \
     --without-php \
-    --without-python3 \
     --without-r \
     --without-ruby \
     --without-tcl \
#34 lore raw

Re: [PATCH 28/45] swig: move to Python 3

Quoted 5 lines

I'm trying to get my head around how this change will impact python2 based programs that use swig, such as gnuradio.

Does this mean all programs that use swig will need to move to python3 now?

Probably. At least nothing in meta-oe or oe-core was impacted by this, as far as I see, but if GNU radio isn't building properly anymore, then copy-paste the error, and we'll work out a solution.

Alex

#35 lore raw

Re: [PATCH 28/45] swig: move to Python 3

Quoted 9 lines · On 05/25/2016 08:45 AM, [email protected] wrote:
Quoted 5 lines

I'm trying to get my head around how this change will impact python2 based programs that use swig, such as gnuradio.

Does this mean all programs that use swig will need to move to python3 now?

Probably. At least nothing in meta-oe or oe-core was impacted by this, as far as I see, but if GNU radio isn't building properly anymore, then copy-paste the error, and we'll work out a solution.

I did a quick read of the swig manual and it seems that swig built for python3 will generate code that runs with both.

It would be nice to use PACKAGECONFIG to select 2 versus 3 so we can build sdks that only have python2.

Philip

Quoted 4 lines

Alex

#36 lore raw

Re: [PATCH 28/45] swig: move to Python 3

Quoted 3 lines

It would be nice to use PACKAGECONFIG to select 2 versus 3 so we can build sdks that only have python2.

This requires a conditional class inherit (pythonnative vs. python3native), which you can't at the moment do with PACKAGECONFIG.

If you really need this, make a swig-python2 recipe.

Alex

#37 lore raw

Re: [PATCH 28/45] swig: move to Python 3

In reply to [email protected]
Quoted 9 lines · On 25-05-16 14:45, [email protected] wrote:
Quoted 5 lines

I'm trying to get my head around how this change will impact python2 based programs that use swig, such as gnuradio.

Does this mean all programs that use swig will need to move to python3 now?

Probably. At least nothing in meta-oe or oe-core was impacted by this, as far as I see, but if GNU radio isn't building properly anymore, then copy-paste the error, and we'll work out a solution.

This probably means that projects using Python 2 extensively will be forced to either "freeze" the OE version to the state before the transition or attempt to maintain a "python-2" fork.

Kind regards,

Mike Looijmans
System Expert

TOPIC Embedded Products
Eindhovenseweg 32-C, NL-5683 KH Best
Postbus 440, NL-5680 AK Best
Telefoon: +31 (0) 499 33 69 79
E-mail: [email protected]
Website: www.topicproducts.com

Please consider the environment before printing this e-mail

#38 lore raw

Re: [PATCH 28/45] swig: move to Python 3

Quoted 3 lines · Mike Looijmans

This probably means that projects using Python 2 extensively will be forced to either "freeze" the OE version to the state before the transition or attempt to maintain a "python-2" fork.

Not at all. Oe-core will continue to provide python 2 recipes, swig is now compatible with both 2 and 3, the supporting 3rd party py2 libraries that will be removed from oe-core will be added to meta-oe at the same time (python-dbus), or should be trivial to add, if anyone actually needs them (python-git). Python 2 users should be able to continue with minimal (or zero) tweaks.

That said, we want to make it clear that it's time to get serious about moving to Python 3. It's been out for many years, the only excuses left are the bad ones.

Alex

#39 lore raw

PATCH 29/45 python-pyrex: remove unused recipe

In reply to Alexander Kanavin
---
 meta/conf/distro/include/distro_alias.inc          |  1 -
 .../python/python-pyrex-native_0.9.9.bb            |  5 -----
 .../python-pyrex/pyrex-fix-optimized-mode.patch    | 15 ---------------
 meta/recipes-devtools/python/python-pyrex_0.9.9.bb | 22 ----------------------
 4 files changed, 43 deletions(-)
 delete mode 100644 meta/recipes-devtools/python/python-pyrex-native_0.9.9.bb
 delete mode 100644 meta/recipes-devtools/python/python-pyrex/pyrex-fix-optimized-mode.patch
 delete mode 100644 meta/recipes-devtools/python/python-pyrex_0.9.9.bb
meta/conf/distro/include/distro_alias.inc +0 -1
index c8f9395..5626792 100644
@@ -343,7 +343,6 @@ DISTRO_PN_ALIAS_pn-python-mako = "Fedora=python-mako Opensuse=python-Mako"
 DISTRO_PN_ALIAS_pn-python-pycairo = "Meego=pycairo Fedora=pycairo Ubuntu=pycairo Debian=pycairo"
 DISTRO_PN_ALIAS_pn-python-pycurl = "Debian=python-pycurl Ubuntu=python-pycurl"
 DISTRO_PN_ALIAS_pn-python-pygobject = "Meego=pygobject2 Fedora=pygobject2 Ubuntu=pygobject Debian=pygobject"
-DISTRO_PN_ALIAS_pn-python-pyrex = "Mandriva=python-pyrex Ubuntu=python-pyrex"
 DISTRO_PN_ALIAS_pn-python-scons = "Fedora=scons OpenSuSE=scons Ubuntu=scons Mandriva=scons Debian=scons"
 DISTRO_PN_ALIAS_pn-python-setuptools = "Mandriva=python-setup OpenSuSE=python-setup-git"
 DISTRO_PN_ALIAS_pn-python-smartpm = "Debian=smart OpenSuSE=smart"
meta/recipes-devtools/python/python-pyrex-native_0.9.9.bb deleted +0 -5
deleted file mode 100644
index e8ef1aa..0000000
@@ -1,5 +0,0 @@
-require python-pyrex_${PV}.bb
-inherit native pythonnative
-DEPENDS = "python-native"
-RDEPENDS_${PN} = ""
-PR = "r3"
meta/recipes-devtools/python/python-pyrex/pyrex-fix-optimized-mode.patch deleted +0 -15
deleted file mode 100644
index c58c328..0000000
@@ -1,15 +0,0 @@
-Upstream-Status: Pending
-
-Index: Pyrex-0.9.8.4/Pyrex/Distutils/extension.py
-===================================================================
---- Pyrex-0.9.8.4.orig/Pyrex/Distutils/extension.py
-+++ Pyrex-0.9.8.4/Pyrex/Distutils/extension.py
-@@ -15,7 +15,7 @@ except ImportError:
-     warnings = None
- 
- class Extension(_Extension.Extension):
--    _Extension.Extension.__doc__ + \
-+    _Extension.Extension.__doc__ or "" + \
-     """pyrex_include_dirs : [string]
-         list of directories to search for Pyrex header files (.pxd) (in
-         Unix form for portability)
meta/recipes-devtools/python/python-pyrex_0.9.9.bb deleted +0 -22
deleted file mode 100644
index c4dd2e6..0000000
@@ -1,22 +0,0 @@
-SUMMARY = "Language for writing Python extension modules"
-DESCRIPTION = "Pyrex is a language specially designed for writing Python extension modules. \
-It's designed to bridge the gap between the nice, high-level, easy-to-use world of Python \
-and the messy, low-level world of C."
-SECTION = "devel/python"
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=771d472f53f933033f57eeee7808e5bd"
-SRCNAME = "Pyrex"
-PR = "r4"
-
-SRC_URI = "\
-  http://www.cosc.canterbury.ac.nz/greg.ewing/python/${SRCNAME}/${SRCNAME}-${PV}.tar.gz \
-  file://pyrex-fix-optimized-mode.patch \
-"
-
-SRC_URI[md5sum] = "515dee67d15d4393841e2d60e8341947"
-SRC_URI[sha256sum] = "5f87df06831d0b3412eb4bc9d3fc2ee7bfae1b913d7da8c23ab2bf5699fb6b50"
-S = "${WORKDIR}/${SRCNAME}-${PV}"
-
-inherit distutils
-
-FILES_${PN} += "${datadir}${base_libdir}/${PYTHON_DIR}/site-packages/Pyrex/Compiler/Lexicon.pickle"
Signature · 1 line
2.8.1
#40 lore raw

PATCH 30/45 python-imaging: remove unused recipe

In reply to Alexander Kanavin
---
 meta/conf/distro/include/distro_alias.inc          |  1 -
 meta/conf/distro/include/security_flags.inc        |  1 -
 ...ing-setup.py-force-paths-for-zlib-freetyp.patch | 55 ------------------
 .../allow.to.disable.some.features.patch           | 65 ----------------------
 .../python-imaging/fix-freetype-includes.patch     | 30 ----------
 .../python/python-imaging_1.1.7.bb                 | 45 ---------------
 6 files changed, 197 deletions(-)
 delete mode 100644 meta/recipes-devtools/python/python-imaging/0001-python-imaging-setup.py-force-paths-for-zlib-freetyp.patch
 delete mode 100644 meta/recipes-devtools/python/python-imaging/allow.to.disable.some.features.patch
 delete mode 100644 meta/recipes-devtools/python/python-imaging/fix-freetype-includes.patch
 delete mode 100644 meta/recipes-devtools/python/python-imaging_1.1.7.bb
meta/conf/distro/include/distro_alias.inc +0 -1
index 5626792..f3315b4 100644
@@ -338,7 +338,6 @@ DISTRO_PN_ALIAS_pn-python3-setuptools = "OpenSuSE=python3-setuptools Debian=pyth
 DISTRO_PN_ALIAS_pn-python-dbus = "Ubuntu=python-dbus Debian=python-dbus Mandriva=python-dbus"
 DISTRO_PN_ALIAS_pn-python-distribute = "Opensuse=python-setuptools Fedora=python-setuptools"
 DISTRO_PN_ALIAS_pn-python-git = "Debian=python-git Fedora=GitPython"
-DISTRO_PN_ALIAS_pn-python-imaging = "Mandriva=python-imaging Debian=python-imaging"
 DISTRO_PN_ALIAS_pn-python-mako = "Fedora=python-mako Opensuse=python-Mako"
 DISTRO_PN_ALIAS_pn-python-pycairo = "Meego=pycairo Fedora=pycairo Ubuntu=pycairo Debian=pycairo"
 DISTRO_PN_ALIAS_pn-python-pycurl = "Debian=python-pycurl Ubuntu=python-pycurl"
meta/conf/distro/include/security_flags.inc +0 -1
index febedfa..4b4a884 100644
@@ -76,7 +76,6 @@ SECURITY_CFLAGS_pn-openssl = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-opensp = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-ppp = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-python = "${SECURITY_NO_PIE_CFLAGS}"
-SECURITY_CFLAGS_pn-python-imaging = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-python-pycurl = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-python-smartpm = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-python-numpy = "${SECURITY_NO_PIE_CFLAGS}"
meta/recipes-devtools/python/python-imaging/0001-python-imaging-setup.py-force-paths-for-zlib-freetyp.patch deleted +0 -55

55 lines not on this page · raw message

meta/recipes-devtools/python/python-imaging/allow.to.disable.some.features.patch deleted +0 -65

65 lines not on this page · raw message

meta/recipes-devtools/python/python-imaging/fix-freetype-includes.patch deleted +0 -30
deleted file mode 100644
index 9ecc63a..0000000
@@ -1,30 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <[email protected]>
-
-From c6040f618d8f2706a7b46d1cdf37d1a587f9701f Mon Sep 17 00:00:00 2001
-From: Andrew Stromnov <[email protected]>
-Date: Thu, 28 Nov 2013 16:58:43 +0400
-Subject: [PATCH] fix compiling with FreeType 2.5.1
-
----
- _imagingft.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/_imagingft.c b/_imagingft.c
-index 47d50bd..f19555b 100644
---- a/_imagingft.c
-+++ b/_imagingft.c
-@@ -59,7 +59,11 @@ struct {
-     const char* message;
- } ft_errors[] =
- 
-+#if defined(USE_FREETYPE_2_1)
-+#include FT_ERRORS_H
-+#else
- #include <freetype/fterrors.h>
-+#endif
- 
- /* -------------------------------------------------------------------- */
- /* font objects */
--- 
-1.8.5.1
meta/recipes-devtools/python/python-imaging_1.1.7.bb deleted +0 -45

45 lines not on this page · raw message

Signature · 1 line
2.8.1
#41 lore raw

PATCH 31/45 python-docutils: move to Python 3

In reply to Alexander Kanavin
---
 meta/recipes-devtools/python/python3-dbus_1.2.4.bb                    | 4 ++--
 .../python/{python-docutils_0.12.bb => python3-docutils_0.12.bb}      | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)
 rename meta/recipes-devtools/python/{python-docutils_0.12.bb => python3-docutils_0.12.bb} (92%)
meta/recipes-devtools/python/python3-dbus_1.2.4.bb +2 -2
index c058caf..759512c 100644
@@ -15,8 +15,8 @@ S = "${WORKDIR}/dbus-python-${PV}"
 inherit distutils3-base autotools pkgconfig
 
 PACKAGECONFIG ?= ""
-PACKAGECONFIG[docs] = "--enable-html-docs,--disable-html-docs,python-docutils-native"
-PACKAGECONFIG[api-docs] = "--enable-api-docs,--disable-api-docs,python-docutils-native python-epydoc-native"
+PACKAGECONFIG[docs] = "--enable-html-docs,--disable-html-docs,python3-docutils-native"
+PACKAGECONFIG[api-docs] = "--enable-api-docs,--disable-api-docs,python3-docutils-native python3-epydoc-native"
 
 do_configure_prepend() {
     export PYTHON=${PYTHON}
meta/recipes-devtools/python/python3-docutils_0.12.bb renamed from meta/recipes-devtools/python/python-docutils_0.12.bb +2 -2
similarity index 92%
rename from meta/recipes-devtools/python/python-docutils_0.12.bb
rename to meta/recipes-devtools/python/python3-docutils_0.12.bb
index 8cda88d..e78fa3b 100644
@@ -4,7 +4,7 @@ SECTION = "devel/python"
 LICENSE = "PSF & BSD-2-Clause & GPLv3"
 LIC_FILES_CHKSUM = "file://COPYING.txt;md5=a722fbdc20347db7b69223594dd54574"
 
-DEPENDS = "python"
+DEPENDS = "python3"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/docutils/docutils-${PV}.tar.gz"
 SRC_URI[md5sum] = "4622263b62c5c771c03502afa3157768"
@@ -12,7 +12,7 @@ SRC_URI[sha256sum] = "c7db717810ab6965f66c8cf0398a98c9d8df982da39b4cd7f162911eb8
 
 S = "${WORKDIR}/docutils-${PV}"
 
-inherit distutils
+inherit distutils3
 
 BBCLASSEXTEND = "native"
 
Signature · 1 line
2.8.1
#42 lore raw

PATCH 32/45 cracklib: disable building the python module

In reply to Alexander Kanavin

It's tricky to convert to Python 3 and isn't required by anything in oe-core or meta-oe.

---
 meta/recipes-extended/cracklib/cracklib_2.9.5.bb | 25 +++---------------------
 1 file changed, 3 insertions(+), 22 deletions(-)
meta/recipes-extended/cracklib/cracklib_2.9.5.bb +3 -22
index 3bd3f93..c185d23 100644
@@ -4,12 +4,9 @@ HOMEPAGE = "http://sourceforge.net/projects/cracklib"
 LICENSE = "LGPLv2.1+"
 LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=e3eda01d9815f8d24aae2dbd89b68b06"
 
-DEPENDS = "cracklib-native zlib python"
-RDEPEND_${PN}-python += "python"
+DEPENDS = "cracklib-native zlib"
 
-PACKAGES += "${PN}-python"
-
-EXTRA_OECONF = "--with-python --libdir=${base_libdir}"
+EXTRA_OECONF = "--without-python --libdir=${base_libdir}"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/cracklib/cracklib-${PV}.tar.gz \
            file://0001-packlib.c-support-dictionary-byte-order-dependent.patch \
@@ -21,27 +18,11 @@ SRC_URI[sha256sum] = "59ab0138bc8cf90cccb8509b6969a024d5e58d2d02bcbdccbb9ba9b88b
 UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/cracklib/files/cracklib/"
 UPSTREAM_CHECK_REGEX = "/cracklib/(?P<pver>(\d+[\.\-_]*)+)/"
 
-inherit autotools gettext pythonnative python-dir
+inherit autotools gettext
 
 do_install_append_class-target() {
 	create-cracklib-dict -o ${D}${datadir}/cracklib/pw_dict ${D}${datadir}/cracklib/cracklib-small
 }
 
-do_install_append() {
-	src_dir="${D}${base_libdir}/${PYTHON_DIR}/site-packages"
-	rm -f $src_dir/test_cracklib.py*
-
-	if [ "${base_libdir}" != "${libdir}" ] ; then
-	   # Move python files from ${base_libdir} to ${libdir} since used --libdir=${base_libdir}
-	   install -d -m 0755 ${D}${PYTHON_SITEPACKAGES_DIR}/
-	   mv $src_dir/* ${D}${PYTHON_SITEPACKAGES_DIR}
-	   rm -fr ${D}${base_libdir}/${PYTHON_DIR}
-	fi
-}
-
 BBCLASSEXTEND = "native nativesdk"
 
-FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}/cracklib.py* \
-	${PYTHON_SITEPACKAGES_DIR}/_cracklib.*"
-
-FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/_cracklib.a"
Signature · 1 line
2.8.1
#43 lore raw

PATCH 33/45 libuser: move to Python 3

In reply to Alexander Kanavin
---
 meta/recipes-extended/libuser/libuser_0.62.bb | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)
meta/recipes-extended/libuser/libuser_0.62.bb +5 -3
index 7a64efe..8590563 100644
@@ -20,11 +20,13 @@ SRC_URI = "https://fedorahosted.org/releases/l/i/libuser/libuser-${PV}.tar.xz \
 SRC_URI[md5sum] = "63e5e5c551e99dc5302b40b80bd6d4f2"
 SRC_URI[sha256sum] = "a58ff4fabb01a25043b142185a33eeea961109dd60d4b40b6a9df4fa3cace20b"
 
-DEPENDS = "popt libpam glib-2.0 docbook-utils-native linuxdoc-tools-native python"
+DEPENDS = "popt libpam glib-2.0 docbook-utils-native linuxdoc-tools-native python3"
 
-inherit autotools gettext pythonnative python-dir pkgconfig
+inherit autotools gettext python3native python3-dir pkgconfig
 
-EXTRA_OEMAKE = "PYTHON_CPPFLAGS=-I${STAGING_INCDIR}/${PYTHON_DIR}"
+export PYTHON
+
+EXTRA_OEMAKE = "PYTHON_CPPFLAGS=-I${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI}"
 
 PACKAGES += "${PN}-python "
 
Signature · 1 line
2.8.1
#44 lore raw

PATCH 34/45 libnewt-python: move to Python 3

In reply to Alexander Kanavin
---
 meta/recipes-extended/newt/libnewt-python_0.52.18.bb | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
meta/recipes-extended/newt/libnewt-python_0.52.18.bb +3 -3
index ba04757..20369ef 100644
@@ -1,10 +1,10 @@
 require recipes-extended/newt/libnewt_${PV}.bb
 
 SUMMARY .= " - python"
-DEPENDS = "libnewt python"
-RDEPENDS_${PN} += "python-core"
+DEPENDS = "libnewt python3"
+RDEPENDS_${PN} += "python3-core"
 
-inherit pythonnative python-dir
+inherit python3native python3-dir
 
 EXTRA_OECONF += "--with-python"
 EXTRA_OEMAKE += "PYTHONVERS=${PYTHON_DIR}"
Signature · 1 line
2.8.1
#45 lore raw

PATCH 35/45 gnome-doc-utils: remove recipe

In reply to Alexander Kanavin

Nothing in oe-core actually requires it.

---
 meta/recipes-gnome/epiphany/epiphany_3.18.4.bb     |  1 -
 .../gnome-desktop/gnome-desktop3_3.18.2.bb         |  2 +-
 meta/recipes-gnome/gnome/gnome-doc-utils.inc       | 29 -------
 .../gnome-doc-utils/sysrooted-pkg-config.patch     | 35 --------
 .../use-usr-bin-env-for-python-in-xml2po.patch     | 30 -------
 .../gnome/gnome-doc-utils/xsltproc_nonet.patch     | 95 ----------------------
 .../recipes-gnome/gnome/gnome-doc-utils_0.20.10.bb | 12 ---
 7 files changed, 1 insertion(+), 203 deletions(-)
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils.inc
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils/sysrooted-pkg-config.patch
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils/use-usr-bin-env-for-python-in-xml2po.patch
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils/xsltproc_nonet.patch
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils_0.20.10.bb
meta/recipes-gnome/epiphany/epiphany_3.18.4.bb +0 -1
index 869569c..f0582ac 100644
@@ -16,7 +16,6 @@ SRC_URI[archive.sha256sum] = "be699d484371111abae754e669187215df73e21533f461e513
 EXTRA_OECONF += " --disable-nss --with-distributor-name=${DISTRO}"
 
 do_configure_prepend() {
-    touch ${S}/gnome-doc-utils.make
     sed -i -e s:help::g ${S}/Makefile.am
 }
 
meta/recipes-gnome/gnome-desktop/gnome-desktop3_3.18.2.bb +1 -1
index 75a99a6..7f00bc6 100644
@@ -10,7 +10,7 @@ inherit gnome pkgconfig upstream-version-is-even gobject-introspection
 SRC_URI[archive.md5sum] = "9a5875247abdb99bad93f1c4230d1d6d"
 SRC_URI[archive.sha256sum] = "ddd46d022de137543a71f50c7392b32f9b98d5d3f2b53040b35f5802de2e7b56"
 
-DEPENDS += "intltool-native gsettings-desktop-schemas gconf libxrandr virtual/libx11 gtk+3 glib-2.0 gnome-doc-utils startup-notification xkeyboard-config iso-codes"
+DEPENDS += "intltool-native gsettings-desktop-schemas gconf libxrandr virtual/libx11 gtk+3 glib-2.0 startup-notification xkeyboard-config iso-codes"
 
 inherit distro_features_check
 REQUIRED_DISTRO_FEATURES = "x11"
meta/recipes-gnome/gnome/gnome-doc-utils.inc deleted +0 -29
deleted file mode 100644
index 0d212c7..0000000
@@ -1,29 +0,0 @@
-SUMMARY = "A collection of documentation utilities for the Gnome project"
-DESCRIPTION = "The GNOME Documentation Build Utilities (gnome-doc- \
-utils) were created to make it easier for application developers to \
-include and create documentation in their releases. They include the \
-xml2po tool which makes it easier to translate and keep up to date \
-translations of documentation."
-LICENSE = "GPLv2 & LGPLv2.1"
-DEPENDS = "intltool-native libxml2 libxslt libxslt-native gnome-doc-utils-native glib-2.0"
-
-inherit gnomebase gettext python-dir pythonnative autotools-brokensep
-
-CLEANBROKEN = "1"
-
-EXTRA_OECONF += "--disable-scrollkeeper"
-
-do_install_append() {
-	chown -R root:root ${D}
-}
-
-do_install_append_class-native () {
-	sed -i -e 's|^#!.*/usr/bin/env python|#! /usr/bin/env nativepython|' ${D}${bindir}/xml2po
-}
-
-FILES_${PN} += "${datadir}/xml* ${PYTHON_SITEPACKAGES_DIR}/*"
-
-RDEPENDS_${PN} = "bash"
-RDEPENDS_${PN}_class-native = ""
-
-BBCLASSEXTEND = "native"
meta/recipes-gnome/gnome/gnome-doc-utils/sysrooted-pkg-config.patch deleted +0 -35
deleted file mode 100644
index 416d698..0000000
@@ -1,35 +0,0 @@
-In cross environment we have to prepend the sysroot to the path found by
-pkgconfig since the path returned from pkgconfig does not have sysroot prefixed
-it ends up using the files from host system. Now usually people have gnome installed
-so the build succeeds but if you dont have gnome installed on build host then
-it wont find the files on host system and packages using gnome-doc-utils wont
-compile.
-
-This should work ok with non sysrooted builds too since in those cases PKG_CONFIG_SYSROOT_DIR
-will be empty
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <[email protected]>
-Signed-off-by: Constantin Musca <[email protected]>
-
-Index: gnome-doc-utils-0.20.10/tools/gnome-doc-utils.make
-===================================================================
---- gnome-doc-utils-0.20.10.orig/tools/gnome-doc-utils.make
-+++ gnome-doc-utils-0.20.10/tools/gnome-doc-utils.make
-@@ -133,11 +133,11 @@ _DOC_ABS_SRCDIR = @abs_srcdir@
- _xml2po ?= `which xml2po`
- _xml2po_mode = $(if $(DOC_ID),mallard,docbook)
- 
--_db2html ?= `$(PKG_CONFIG) --variable db2html gnome-doc-utils`
--_db2omf  ?= `$(PKG_CONFIG) --variable db2omf gnome-doc-utils`
--_chunks  ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl
--_credits ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl
--_ids ?= $(shell $(PKG_CONFIG) --variable xmldir gnome-doc-utils)/gnome/xslt/docbook/utils/ids.xsl
-+_db2html ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable db2html gnome-doc-utils`
-+_db2omf  ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable db2omf gnome-doc-utils`
-+_chunks  ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl
-+_credits ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl
-+_ids ?= ${PKG_CONFIG_SYSROOT_DIR}$(shell $(PKG_CONFIG) --variable xmldir gnome-doc-utils)/gnome/xslt/docbook/utils/ids.xsl
- 
- if ENABLE_SK
- _ENABLE_SK = true
meta/recipes-gnome/gnome/gnome-doc-utils/use-usr-bin-env-for-python-in-xml2po.patch deleted +0 -30
deleted file mode 100644
index 0e196c0..0000000
@@ -1,30 +0,0 @@
-We can't use #!/full/path/to/python -u as this can be longer than shebang
-allows for.  In order to be appropraite for upstream more work would be
-needed to make sure that the main xml2po code doesn't rely on python
-being invoked with -u (force stdin/out/err to be used raw).
-
-Upstream-Status: Inappropriate [Would break behavior on Windows]
-Signed-off-by: Constantin Musca <[email protected]>
-
-Index: gnome-doc-utils-0.20.10/xml2po/xml2po/Makefile.am
-===================================================================
---- gnome-doc-utils-0.20.10.orig/xml2po/xml2po/Makefile.am
-+++ gnome-doc-utils-0.20.10/xml2po/xml2po/Makefile.am
-@@ -7,7 +7,6 @@ CLEANFILES = xml2po
- 
- xml2po: xml2po.py.in
- 	$(AM_V_GEN)sed -e "s/^VERSION =.*/VERSION = \"@VERSION@\"/" \
--	    -e "s+^#!.*python.*+#!$(PYTHON)+" \
- 	  < $(srcdir)/xml2po.py.in > xml2po
- 	$(AM_V_at)chmod +x xml2po
- 
-Index: gnome-doc-utils-0.20.10/xml2po/xml2po/xml2po.py.in
-===================================================================
---- gnome-doc-utils-0.20.10.orig/xml2po/xml2po/xml2po.py.in
-+++ gnome-doc-utils-0.20.10/xml2po/xml2po/xml2po.py.in
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -u
-+#!/usr/bin/env python
- # -*- encoding: utf-8 -*-
- # Copyright (c) 2004, 2005, 2006 Danilo Šegan <[email protected]>.
- # Copyright (c) 2009 Claude Paroz <[email protected]>.
meta/recipes-gnome/gnome/gnome-doc-utils/xsltproc_nonet.patch deleted +0 -95

95 lines not on this page · raw message

meta/recipes-gnome/gnome/gnome-doc-utils_0.20.10.bb deleted +0 -12
deleted file mode 100644
index ed01ea7..0000000
@@ -1,12 +0,0 @@
-require gnome-doc-utils.inc
-LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=eb723b61539feef013de476e68b5c50a \
-		    file://COPYING.LGPL;md5=a6f89e2100d9b6cdffcea4f398e37343"
-
-SRC_URI += "file://xsltproc_nonet.patch \
-            file://use-usr-bin-env-for-python-in-xml2po.patch \
-            file://sysrooted-pkg-config.patch \
-            file://0001-glib-gettext.m4-Update-AM_GLIB_GNU_GETTEXT-to-match-.patch \
-           "
-
-SRC_URI[archive.md5sum] = "3c64ad7bacd617b04999e4a168afaac5"
-SRC_URI[archive.sha256sum] = "cb0639ffa9550b6ddf3b62f3b1add92fb92ab4690d351f2353cffe668be8c4a6"
Signature · 1 line
2.8.1
#46 lore raw

PATCH 36/45 lttng-tools: move to Python 3

In reply to Alexander Kanavin
---
 ...d-look-for-python-3.0-when-building-pytho.patch | 30 ----------------------
 meta/recipes-kernel/lttng/lttng-tools_git.bb       |  7 +++--
 2 files changed, 3 insertions(+), 34 deletions(-)
 delete mode 100644 meta/recipes-kernel/lttng/lttng-tools/Revert-Build-look-for-python-3.0-when-building-pytho.patch
meta/recipes-kernel/lttng/lttng-tools/Revert-Build-look-for-python-3.0-when-building-pytho.patch deleted +0 -30
deleted file mode 100644
index d05c04c..0000000
@@ -1,30 +0,0 @@
-From: Otavio Salvador <[email protected]>
-Date: Fri, 4 Dec 2015 16:11:41 +0000
-Subject: [PATCH] Revert "Build: look for python >= 3.0 when building python bindings"
-Organization: O.S. Systems Software LTDA.
-
-This reverts commit 227703a2ceada3c104edd56756d48455ca4c271a.
-
-Upstream-Status: Pending
-
-Signed-off-by: Otavio Salvador <[email protected]>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 4dee4b4..6608bcd 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -339,7 +339,7 @@ AM_CONDITIONAL([PYTHON_BINDING], [test "x${enable_python_binding:-yes}" = xyes])
- 
- if test "x${enable_python_binding:-yes}" = xyes; then
-   AX_PKG_SWIG($swig_version, [], [ AC_MSG_ERROR([SWIG $swig_version or newer is needed]) ])
--  AM_PATH_PYTHON([3.0])
-+  AM_PATH_PYTHON
- 
-   AC_ARG_VAR([PYTHON_INCLUDE], [Include flags for python, bypassing python-config])
-   AC_ARG_VAR([PYTHON_CONFIG], [Path to python-config])
--- 
-2.1.4
-
meta/recipes-kernel/lttng/lttng-tools_git.bb +3 -4
index 8ef267c..da2b685 100644
@@ -18,16 +18,15 @@ PV = "2.7.1+git${SRCPV}"
 
 PYTHON_OPTION = "am_cv_python_pyexecdir='${libdir}/python${PYTHON_BASEVERSION}/site-packages' \
                  am_cv_python_pythondir='${libdir}/python${PYTHON_BASEVERSION}/site-packages' \
-                 PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}' \
+                 PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \
 "
 PACKAGECONFIG ??= "lttng-ust"
-PACKAGECONFIG[python] = "--enable-python-bindings ${PYTHON_OPTION},,python swig-native"
+PACKAGECONFIG[python] = "--enable-python-bindings ${PYTHON_OPTION},,python3 swig-native"
 PACKAGECONFIG[lttng-ust] = "--enable-lttng-ust, --disable-lttng-ust, lttng-ust"
 PACKAGECONFIG[kmod] = "--enable-kmod, --disable-kmod, kmod"
 PACKAGECONFIG_remove_libc-musl = "lttng-ust"
 
 SRC_URI = "git://git.lttng.org/lttng-tools.git;branch=stable-2.7 \
-           file://Revert-Build-look-for-python-3.0-when-building-pytho.patch \
            file://stop-using-SIGUNUSED.patch \
            file://runtest-2.4.0.patch \
            file://0001-lttng-tools-filter-random-filename-of-tests-output.patch \
@@ -35,7 +34,7 @@ SRC_URI = "git://git.lttng.org/lttng-tools.git;branch=stable-2.7 \
 
 S = "${WORKDIR}/git"
 
-inherit autotools-brokensep ptest pkgconfig useradd python-dir
+inherit autotools-brokensep ptest pkgconfig useradd python3-dir
 
 USERADD_PACKAGES = "${PN}"
 GROUPADD_PARAM_${PN} = "tracing"
Signature · 1 line
2.8.1
#47 lore raw

PATCH 37/45 lttng-ust: move to Python 3

In reply to Alexander Kanavin
---
 meta/recipes-kernel/lttng/lttng-ust_git.bb | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)
meta/recipes-kernel/lttng/lttng-ust_git.bb +8 -1
index 15d925d..f5a12b1 100644
@@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=c963eb366b781252b0bf0fdf1624d9e9 \
 inherit autotools lib_package
 
 DEPENDS = "liburcu util-linux"
-RDEPENDS_${PN}-bin = "python-core"
+RDEPENDS_${PN}-bin = "python3-core"
 
 # For backwards compatibility after rename
 RPROVIDES_${PN} = "lttng2-ust"
@@ -27,6 +27,13 @@ SRC_URI = "git://git.lttng.org/lttng-ust.git;branch=stable-2.7 \
            file://lttng-ust-add-support-for-aarch64_be.patch \
           "
 
+do_install_append() {
+        # Patch python tools to use Python 3; they should be source compatible, but
+        # still refer to Python 2 in the shebang
+        sed -i -e '1s,#!.*python.*,#!${bindir}/python3,' ${D}${bindir}/lttng-gen-tp
+}
+
+
 S = "${WORKDIR}/git"
 
 do_configure_prepend () {
Signature · 1 line
2.8.1
#48 lore raw

PATCH 38/45 systemtap: move to Python 3

In reply to Alexander Kanavin
---
 meta/recipes-kernel/systemtap/systemtap_git.bb | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
meta/recipes-kernel/systemtap/systemtap_git.bb +2 -3
index 97064b8..cf6a96a 100644
@@ -6,13 +6,12 @@ DEPENDS = "elfutils sqlite3 systemtap-native"
 DEPENDS_class-native = "elfutils-native sqlite3-native gettext-native"
 DEPENDS_class-nativesdk = "nativesdk-elfutils nativesdk-sqlite3 nativesdk-gettext"
 
-RDEPENDS_${PN} += "python bash"
-RDEPENDS_${PN}_class-native += "python-native"
-RDEPENDS_${PN}_class-nativesdk += "python-native"
+RDEPENDS_${PN} += "python3-core bash"
 
 EXTRA_OECONF += "--with-libelf=${STAGING_DIR_TARGET} --without-rpm \
             --without-nss --without-avahi --without-dyninst \
             --disable-server --disable-grapher --enable-prologues \
+            --with-python3 \
             ac_cv_prog_have_javac=no \
             ac_cv_prog_have_jar=no "
 
Signature · 1 line
2.8.1
#49 lore raw

PATCH 39/45 libcap-ng: move to Python 3

In reply to Alexander Kanavin
---
 meta/recipes-support/libcap-ng/libcap-ng_0.7.7.bb | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)
meta/recipes-support/libcap-ng/libcap-ng_0.7.7.bb +7 -5
index 5715467..5608f49 100644
@@ -10,16 +10,18 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
 SRC_URI = "http://people.redhat.com/sgrubb/libcap-ng/libcap-ng-${PV}.tar.gz \
            file://python.patch"
 
-inherit lib_package autotools pythonnative
+inherit lib_package autotools python3native
 
 SRC_URI[md5sum] = "3d7d126b29e2869a0257c17c8b0d9b2e"
 SRC_URI[sha256sum] = "615549ce39b333f6b78baee0c0b4ef18bc726c6bf1cca123dfd89dd963f6d06b"
 
-DEPENDS += "swig-native python"
+DEPENDS += "swig-native python3"
 
-EXTRA_OECONF += "--without-python3"
-
-EXTRA_OEMAKE += "PYLIBVER='python${PYTHON_BASEVERSION}' PYINC='${STAGING_INCDIR}/${PYLIBVER}'"
+export PYTHON
+export STAGING_INCDIR
+export STAGING_LIBDIR
+EXTRA_OECONF += "--with-python --with-python3"
+EXTRA_OEMAKE += "PYLIBVER='python${PYTHON_BASEVERSION}${PYTHON_ABI}' PYINC='${STAGING_INCDIR}/${PYLIBVER}'"
 
 PACKAGES += "${PN}-python"
 
Signature · 1 line
2.8.1
#50 lore raw

PATCH 40/45 hwlatdetect: move to Python 3

In reply to Alexander Kanavin
---
 meta/recipes-rt/rt-tests/hwlatdetect_0.96.bb | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
meta/recipes-rt/rt-tests/hwlatdetect_0.96.bb +4 -2
index 025eb63..012b2dd 100644
@@ -6,7 +6,7 @@ LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
 
 require rt-tests.inc
-inherit python-dir
+inherit python3-dir
 
 EXTRA_OEMAKE += "PYLIB=${libdir}/python${PYTHON_BASEVERSION}/dist-packages"
 
@@ -17,8 +17,10 @@ do_compile() {
 do_install() {
         oe_runmake install_hwlatdetect DESTDIR=${D} SBINDIR=${sbindir} \
 	           MANDIR=${mandir} INCLUDEDIR=${includedir}
+
+        sed -i -e '1s,#!.*python.*,#!${bindir}/python3,' ${D}${libdir}/python${PYTHON_BASEVERSION}/dist-packages/hwlatdetect.py
 }
 
 FILES_${PN} += "${libdir}/python${PYTHON_BASEVERSION}/dist-packages/hwlatdetect.py"
-RDEPENDS_${PN} = "python python-subprocess python-textutils"
+RDEPENDS_${PN} = "python3 python3-subprocess python3-textutils"
 RRECOMMENDS_${PN} = "kernel-module-hwlat-detector"
Signature · 1 line
2.8.1
#51 lore raw

PATCH 41/45 python3-mako: add a Python 3 recipe

In reply to Alexander Kanavin

This will be necessary for transiting piglit to Python 3. Python 2 recipe should be kept as it is used by mesa (and gobject-introspection, for now).

---
 meta/recipes-devtools/python/python-mako_1.0.3.bb  |  6 ++++++
 meta/recipes-devtools/python/python3-mako_1.0.3.bb | 24 ++++++++++++++++++++++
 2 files changed, 30 insertions(+)
 create mode 100644 meta/recipes-devtools/python/python3-mako_1.0.3.bb
meta/recipes-devtools/python/python-mako_1.0.3.bb +6 -0
index 9efd700..d4f426d 100644
@@ -22,3 +22,9 @@ RDEPENDS_${PN} = "python-threading \
 RDEPENDS_${PN}_class-native = ""
 
 BBCLASSEXTEND = "native nativesdk"
+
+# The same utility is packaged in python3-mako, so it would conflict
+do_install_append() {
+    rm -f ${D}${bindir}/mako-render
+    rm -df ${D}${bindir}
+}
meta/recipes-devtools/python/python3-mako_1.0.3.bb new file +24 -0
new file mode 100644
index 0000000..c770603
@@ -0,0 +1,24 @@
+SUMMARY = "Templating library for Python"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=deb3ff8e4c17aaf7b80889b6b2bf4c83"
+
+SRC_URI = "https://pypi.python.org/packages/source/M/Mako/Mako-${PV}.tar.gz"
+
+SRC_URI[md5sum] = "a78f20f6366a8a0659ce5532f8614e53"
+SRC_URI[sha256sum] = "7644bc0ee35965d2e146dde31827b8982ed70a58281085fac42869a09764d38c"
+
+UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/mako/"
+UPSTREAM_CHECK_REGEX = "/Mako/(?P<pver>(\d+[\.\-_]*)+)"
+
+S = "${WORKDIR}/Mako-${PV}"
+
+inherit setuptools3
+
+RDEPENDS_${PN} = "python3-threading \
+                  python3-netclient \
+                  python3-html \
+"
+RDEPENDS_${PN}_class-native = ""
+
+BBCLASSEXTEND = "native nativesdk"
Signature · 1 line
2.8.1
#52 lore raw

PATCH 42/45 python3-nose: add a recipe

In reply to Alexander Kanavin

This is needed for updating piglit to use Python 3. Python 2 based recipe can be later moved to meta-oe.

---
 meta/recipes-devtools/python/python3-nose_1.3.7.bb | 24 ++++++++++++++++++++++
 1 file changed, 24 insertions(+)
 create mode 100644 meta/recipes-devtools/python/python3-nose_1.3.7.bb
meta/recipes-devtools/python/python3-nose_1.3.7.bb new file +24 -0
new file mode 100644
index 0000000..a45d2f2
@@ -0,0 +1,24 @@
+SUMMARY = "Extends Python unittest to make testing easier"
+DESCRIPTION = "nose extends the test loading and running features of unittest, \
+making it easier to write, find and run tests."
+SECTION = "devel/python"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://lgpl.txt;md5=a6f89e2100d9b6cdffcea4f398e37343"
+
+SRC_URI = "http://pypi.python.org/packages/source/n/nose/nose-${PV}.tar.gz"
+
+SRC_URI[md5sum] = "4d3ad0ff07b61373d2cefc89c5d0b20b"
+SRC_URI[sha256sum] = "f1bffef9cbc82628f6e7d7b40d7e255aefaa1adb6a1b1d26c69a8b79e6208a98"
+
+UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/nose/"
+UPSTREAM_CHECK_REGEX = "/nose/(?P<pver>(\d+[\.\-_]*)+)"
+
+S = "${WORKDIR}/nose-${PV}"
+
+inherit setuptools3
+
+RDEPENDS_${PN}_class-target = "\
+  python3-unittest \
+  "
+
+BBCLASSEXTEND = "native nativesdk"
Signature · 1 line
2.8.1
#53 lore raw

PATCH 43/45 python3: add = to -L linking option only when the path is absolute

In reply to Alexander Kanavin

Previously it was added also when the path was relative and not prefixed with ./, which was causing issues with building numpy.

---
 meta/recipes-devtools/python/python3/unixccompiler.patch | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
meta/recipes-devtools/python/python3/unixccompiler.patch +3 -3
index 7b90f13..3e2b1d1 100644
@@ -18,9 +18,9 @@ Index: Python-3.3.2/Lib/distutils/unixccompiler.py
  
      def library_dir_option(self, dir):
 -        return "-L" + dir
-+        if dir.startswith("."):
-+            return "-L" + dir
-+        return "-L=" + dir
++        if dir.startswith("/"):
++            return "-L=" + dir
++        return "-L" + dir
  
      def _is_gcc(self, compiler_name):
          return "gcc" in compiler_name or "g++" in compiler_name
Signature · 1 line
2.8.1
#54 lore raw

PATCH 44/45 python-numpy: move recipe to own directory

In reply to Alexander Kanavin

This is done so that patches can be shared with python3-numpy

---
 .../0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch       | 0
 .../{python/python-numpy => python-numpy/files}/aarch64/_numpyconfig.h    | 0
 .../python-numpy/powerpc64 => python-numpy/files/aarch64}/config.h        | 0
 .../{python/python-numpy => python-numpy/files}/add-glibc-check.patch     | 0
 .../{python/python-numpy/mipsel => python-numpy/files/arm}/config.h       | 0
 .../{python/python-numpy/mipsel => python-numpy/files/arm}/numpyconfig.h  | 0
 .../{python/python-numpy => python-numpy/files}/armeb/config.h            | 0
 .../{python/python-numpy => python-numpy/files}/armeb/numpyconfig.h       | 0
 .../{python/python-numpy => python-numpy/files}/mips/_numpyconfig.h       | 0
 .../{python/python-numpy => python-numpy/files}/mips/config.h             | 0
 .../python-numpy/powerpc64 => python-numpy/files/mips64}/_numpyconfig.h   | 0
 .../{python/python-numpy/mips64n32 => python-numpy/files/mips64}/config.h | 0
 .../{python/python-numpy => python-numpy/files}/mips64n32/_numpyconfig.h  | 0
 .../{python/python-numpy/mips64 => python-numpy/files/mips64n32}/config.h | 0
 .../{python/python-numpy/arm => python-numpy/files/mipsel}/config.h       | 0
 .../{python/python-numpy/arm => python-numpy/files/mipsel}/numpyconfig.h  | 0
 .../{python/python-numpy => python-numpy/files}/powerpc/_numpyconfig.h    | 0
 .../{python/python-numpy => python-numpy/files}/powerpc/config.h          | 0
 .../python-numpy/mips64 => python-numpy/files/powerpc64}/_numpyconfig.h   | 0
 .../python-numpy/aarch64 => python-numpy/files/powerpc64}/config.h        | 0
 .../files}/remove-build-path-in-comments.patch                            | 0
 .../{python/python-numpy => python-numpy/files}/x86-64/_numpyconfig.h     | 0
 .../{python/python-numpy => python-numpy/files}/x86-64/config.h           | 0
 .../{python/python-numpy => python-numpy/files}/x86/config.h              | 0
 .../{python/python-numpy => python-numpy/files}/x86/numpyconfig.h         | 0
 meta/recipes-devtools/{python => python-numpy}/python-numpy_1.10.4.bb     | 0
 26 files changed, 0 insertions(+), 0 deletions(-)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/aarch64/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/powerpc64 => python-numpy/files/aarch64}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/add-glibc-check.patch (100%)
 rename meta/recipes-devtools/{python/python-numpy/mipsel => python-numpy/files/arm}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/mipsel => python-numpy/files/arm}/numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/armeb/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/armeb/numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/mips/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/mips/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/powerpc64 => python-numpy/files/mips64}/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/mips64n32 => python-numpy/files/mips64}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/mips64n32/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/mips64 => python-numpy/files/mips64n32}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/arm => python-numpy/files/mipsel}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/arm => python-numpy/files/mipsel}/numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/powerpc/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/powerpc/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/mips64 => python-numpy/files/powerpc64}/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/aarch64 => python-numpy/files/powerpc64}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/remove-build-path-in-comments.patch (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/x86-64/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/x86-64/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/x86/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/x86/numpyconfig.h (100%)
 rename meta/recipes-devtools/{python => python-numpy}/python-numpy_1.10.4.bb (100%)
meta/recipes-devtools/python-numpy/files/0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch renamed from meta/recipes-devtools/python/python-numpy/0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch
rename to meta/recipes-devtools/python-numpy/files/0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch
meta/recipes-devtools/python-numpy/files/aarch64/_numpyconfig.h renamed from meta/recipes-devtools/python/python-numpy/aarch64/_numpyconfig.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/aarch64/_numpyconfig.h
rename to meta/recipes-devtools/python-numpy/files/aarch64/_numpyconfig.h
meta/recipes-devtools/python-numpy/files/aarch64/config.h renamed from meta/recipes-devtools/python/python-numpy/powerpc64/config.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/powerpc64/config.h
rename to meta/recipes-devtools/python-numpy/files/aarch64/config.h
meta/recipes-devtools/python-numpy/files/add-glibc-check.patch renamed from meta/recipes-devtools/python/python-numpy/add-glibc-check.patch +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/add-glibc-check.patch
rename to meta/recipes-devtools/python-numpy/files/add-glibc-check.patch
meta/recipes-devtools/python-numpy/files/arm/config.h renamed from meta/recipes-devtools/python/python-numpy/mipsel/config.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/mipsel/config.h
rename to meta/recipes-devtools/python-numpy/files/arm/config.h
meta/recipes-devtools/python-numpy/files/arm/numpyconfig.h renamed from meta/recipes-devtools/python/python-numpy/mipsel/numpyconfig.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/mipsel/numpyconfig.h
rename to meta/recipes-devtools/python-numpy/files/arm/numpyconfig.h
meta/recipes-devtools/python-numpy/files/armeb/config.h renamed from meta/recipes-devtools/python/python-numpy/armeb/config.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/armeb/config.h
rename to meta/recipes-devtools/python-numpy/files/armeb/config.h
meta/recipes-devtools/python-numpy/files/armeb/numpyconfig.h renamed from meta/recipes-devtools/python/python-numpy/armeb/numpyconfig.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/armeb/numpyconfig.h
rename to meta/recipes-devtools/python-numpy/files/armeb/numpyconfig.h
meta/recipes-devtools/python-numpy/files/mips/_numpyconfig.h renamed from meta/recipes-devtools/python/python-numpy/mips/_numpyconfig.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/mips/_numpyconfig.h
rename to meta/recipes-devtools/python-numpy/files/mips/_numpyconfig.h
meta/recipes-devtools/python-numpy/files/mips/config.h renamed from meta/recipes-devtools/python/python-numpy/mips/config.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/mips/config.h
rename to meta/recipes-devtools/python-numpy/files/mips/config.h
meta/recipes-devtools/python-numpy/files/mips64/_numpyconfig.h renamed from meta/recipes-devtools/python/python-numpy/powerpc64/_numpyconfig.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/powerpc64/_numpyconfig.h
rename to meta/recipes-devtools/python-numpy/files/mips64/_numpyconfig.h
meta/recipes-devtools/python-numpy/files/mips64/config.h renamed from meta/recipes-devtools/python/python-numpy/mips64n32/config.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/mips64n32/config.h
rename to meta/recipes-devtools/python-numpy/files/mips64/config.h
meta/recipes-devtools/python-numpy/files/mips64n32/_numpyconfig.h renamed from meta/recipes-devtools/python/python-numpy/mips64n32/_numpyconfig.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/mips64n32/_numpyconfig.h
rename to meta/recipes-devtools/python-numpy/files/mips64n32/_numpyconfig.h
meta/recipes-devtools/python-numpy/files/mips64n32/config.h renamed from meta/recipes-devtools/python/python-numpy/mips64/config.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/mips64/config.h
rename to meta/recipes-devtools/python-numpy/files/mips64n32/config.h
meta/recipes-devtools/python-numpy/files/mipsel/config.h renamed from meta/recipes-devtools/python/python-numpy/arm/config.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/arm/config.h
rename to meta/recipes-devtools/python-numpy/files/mipsel/config.h
meta/recipes-devtools/python-numpy/files/mipsel/numpyconfig.h renamed from meta/recipes-devtools/python/python-numpy/arm/numpyconfig.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/arm/numpyconfig.h
rename to meta/recipes-devtools/python-numpy/files/mipsel/numpyconfig.h
meta/recipes-devtools/python-numpy/files/powerpc/_numpyconfig.h renamed from meta/recipes-devtools/python/python-numpy/powerpc/_numpyconfig.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/powerpc/_numpyconfig.h
rename to meta/recipes-devtools/python-numpy/files/powerpc/_numpyconfig.h
meta/recipes-devtools/python-numpy/files/powerpc/config.h renamed from meta/recipes-devtools/python/python-numpy/powerpc/config.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/powerpc/config.h
rename to meta/recipes-devtools/python-numpy/files/powerpc/config.h
meta/recipes-devtools/python-numpy/files/powerpc64/_numpyconfig.h renamed from meta/recipes-devtools/python/python-numpy/mips64/_numpyconfig.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/mips64/_numpyconfig.h
rename to meta/recipes-devtools/python-numpy/files/powerpc64/_numpyconfig.h
meta/recipes-devtools/python-numpy/files/powerpc64/config.h renamed from meta/recipes-devtools/python/python-numpy/aarch64/config.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/aarch64/config.h
rename to meta/recipes-devtools/python-numpy/files/powerpc64/config.h
meta/recipes-devtools/python-numpy/files/remove-build-path-in-comments.patch renamed from meta/recipes-devtools/python/python-numpy/remove-build-path-in-comments.patch +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/remove-build-path-in-comments.patch
rename to meta/recipes-devtools/python-numpy/files/remove-build-path-in-comments.patch
meta/recipes-devtools/python-numpy/files/x86-64/_numpyconfig.h renamed from meta/recipes-devtools/python/python-numpy/x86-64/_numpyconfig.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/x86-64/_numpyconfig.h
rename to meta/recipes-devtools/python-numpy/files/x86-64/_numpyconfig.h
meta/recipes-devtools/python-numpy/files/x86-64/config.h renamed from meta/recipes-devtools/python/python-numpy/x86-64/config.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/x86-64/config.h
rename to meta/recipes-devtools/python-numpy/files/x86-64/config.h
meta/recipes-devtools/python-numpy/files/x86/config.h renamed from meta/recipes-devtools/python/python-numpy/x86/config.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/x86/config.h
rename to meta/recipes-devtools/python-numpy/files/x86/config.h
meta/recipes-devtools/python-numpy/files/x86/numpyconfig.h renamed from meta/recipes-devtools/python/python-numpy/x86/numpyconfig.h +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy/x86/numpyconfig.h
rename to meta/recipes-devtools/python-numpy/files/x86/numpyconfig.h
meta/recipes-devtools/python-numpy/python-numpy_1.10.4.bb renamed from meta/recipes-devtools/python/python-numpy_1.10.4.bb +0 -0
similarity index 100%
rename from meta/recipes-devtools/python/python-numpy_1.10.4.bb
rename to meta/recipes-devtools/python-numpy/python-numpy_1.10.4.bb
Signature · 1 line
2.8.1
#55 lore raw

PATCH 45/45 python3-numpy: add a recipe

In reply to Alexander Kanavin

This is needed for updating piglit to use Python 3. Python 2 based recipe can be later moved to meta-oe.

---
 .../python-numpy/python3-numpy_1.10.4.bb           | 101 +++++++++++++++++++++
 1 file changed, 101 insertions(+)
 create mode 100644 meta/recipes-devtools/python-numpy/python3-numpy_1.10.4.bb
meta/recipes-devtools/python-numpy/python3-numpy_1.10.4.bb new file +101 -0
new file mode 100644
index 0000000..dcd23ac
@@ -0,0 +1,101 @@
+SUMMARY = "A sophisticated Numeric Processing Package for Python"
+SECTION = "devel/python"
+LICENSE = "PSF"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=9f4e88b5748e8313caaf33d081ce65a3"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/numpy/numpy-${PV}.tar.gz \
+           file://0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch \
+           file://remove-build-path-in-comments.patch \
+           file://add-glibc-check.patch \
+           ${CONFIGFILESURI} "
+
+CONFIGFILESURI ?= ""
+
+CONFIGFILESURI_aarch64 = " \
+    file://config.h \
+    file://_numpyconfig.h \
+"
+CONFIGFILESURI_arm = " \
+    file://config.h \
+    file://numpyconfig.h \
+"
+CONFIGFILESURI_armeb = " \
+    file://config.h \
+    file://numpyconfig.h \
+"
+CONFIGFILESURI_mipsel = " \
+    file://config.h \
+    file://numpyconfig.h \
+"
+CONFIGFILESURI_x86 = " \
+    file://config.h \
+    file://numpyconfig.h \
+"
+CONFIGFILESURI_x86-64 = " \
+    file://config.h \
+    file://_numpyconfig.h \
+"
+CONFIGFILESURI_mips = " \
+    file://config.h \
+    file://_numpyconfig.h \
+"
+CONFIGFILESURI_powerpc = " \
+    file://config.h \
+    file://_numpyconfig.h \
+"
+CONFIGFILESURI_powerpc64 = " \
+    file://config.h \
+    file://_numpyconfig.h \
+"
+CONFIGFILESURI_mips64 = " \
+    file://config.h \
+    file://_numpyconfig.h \
+"
+CONFIGFILESURI_mips64n32 = " \
+    file://config.h \
+    file://_numpyconfig.h \
+"
+
+S = "${WORKDIR}/numpy-${PV}"
+
+inherit distutils3
+
+# Make the build fail and replace *config.h with proper one
+# This is a ugly, ugly hack - Koen
+do_compile_prepend_class-target() {
+    ${STAGING_BINDIR_NATIVE}/python3-native/python3 setup.py build ${DISTUTILS_BUILD_ARGS} || \
+    true
+    cp ${WORKDIR}/*config.h ${S}/build/$(ls ${S}/build | grep src)/numpy/core/include/numpy/
+}
+
+FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/numpy/core/lib/*.a"
+
+SRC_URI[md5sum] = "90bb9034652cefbada19cf7d141a6a61"
+SRC_URI[sha256sum] = "f7f91842056a7cf680b0eaf8cefc5e46c69e2521e651128d2e6aaaccec8652ae"
+
+# install what is needed for numpy.test()
+RDEPENDS_${PN} = "python3-unittest \
+                  python3-difflib \
+                  python3-pprint \
+                  python3-pickle \
+                  python3-shell \
+                  python3-nose \
+                  python3-doctest \
+                  python3-datetime \
+                  python3-distutils \
+                  python3-misc \
+                  python3-mmap \
+                  python3-netclient \
+                  python3-numbers \
+                  python3-pydoc \
+                  python3-pkgutil \
+                  python3-email \
+                  python3-subprocess \
+                  python3-compression \
+                  python3-ctypes \
+                  python3-threading \
+"
+
+RDEPENDS_${PN}_class-native = ""
+
+BBCLASSEXTEND = "native nativesdk"
Signature · 1 line
2.8.1
#56 lore raw
In reply to Alexander Kanavin
Quoted 10 lines · Alexander Kanavin

This patchset updates recipes to use Python 3 whenever possible. A few items cannot be moved at the moment for various reasons, here they are:

1) Smartpm package manager has not been ported to Python 3 and it is unlikely to happen:
https://github.com/smartpm/smart/issues/4
We need to look into alternatives such as yum or dnf (the 'next generation' fork of yum).

Consequently, rpm's python bindings (required by smartpm) stay at python 2 as well for now, even tough python 3 seems to be supported.

Is there a porting guide or similar that can used to help identify what types of changes are needed. I am not at all familiar with what python 3 needs specifically, but I do expect we will need to port these items.

Quoted 7 lines

2) Scons build system is python 2 only, due to lack of resources.

3) createrepo recipe is using an upstream version from 2007, before createrepo was rewritten on top of yum's python modules.

We need to look into adding yum recipe which will allow updating createrepo to latest upstream. Also, libxml2 is currently a createrepo dependency, and so stays at Python 2 for now.

The yum version of createrepo will not work. We need to port forward the component as appropriate -- or modify smartpm to use a newer version -- assuming we can add missing pieces, as necessary. (key is smartpm and createrepo need to be kept in sync.)

Please create one (or three) defects and assign them to me for smartpm, createrepo, and rpm python3 support. (I doubt I'll be the one doing the work, but I'll do my best to find someone to do the work.)

Quoted 4 lines

4) varous recipes that haven't been ported: kconfig-frontends, mklibs, opkg-utils, ltp, mc, parted, libepoxy, mesa, perf, rt-tests, webkitgtk.

5) LSB spec is implicitly requiring Python 2 (via requirement for '/usr/bin/python').

I expect the LSB will require python 2 for a while. So we will need to continue to ensure that python 2 works, as well as python3.

Thanks for the update above.

--Mark

Quoted 237 lines

6) gobject introspection has been ported to Python 3 in release 1.48. I'll send this update separately, as a part of normal version update patches.

7) piglit has been ported to Python 3 as well in the latest upstream releases, Jussi Kukkonen should take care of it. I've added piglit's python dependencies in their Python 3 versions - python3-mako and python3-numpy, so that the task should be a little easier.

The following changes since commit c7e614c438706fb3ed7520b4990ebb3973366942:

useradd: Fix infinite build loop (2016-05-23 10:33:45 +0100)

are available in the git repository at:

git://git.yoctoproject.org/poky-contrib akanavin/deprecate-python2
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=akanavin/deprecate-python2

Alexander Kanavin (45):
python-native, python3-native: remove the use of exported HOST_SYS and
BUILD_SYS variables
distutils-native-base.bbclass, distutils3-native-base.bbclass: remove python3-dir.bbclass: add a separate class for Python 3 default-versions.inc: drop python-related defaults sip.bbclass: remove
avahi-ui: remove support for building a python module
bind: switch Python dependency to Python 3.x
python-dbus: update to 1.2.4, port to python 3
python3: manipulate all of the config*/Makefile files, not just
config/Makefile
python3: drop 110-enable-zlib.patch
glib: move to Python 3
dbus-test: remove unneeded pygobject dependency
python-pygobject: port to Python 3
neard: do not package python test scripts
bluez5: switch to Python 3
connman: do not install Python test scripts
ofono: drop the custom-made revert to Python 2 from Python 3 packagegroup-core-full-cmdline: drop python-dbus from the list of
services
nfs-utils: switch to Python 3
systemd: drop python dependency for ptests
util-linux: move to Python 3
python-pycairo: move to Python 3
bootchart2: move to Python 3
gdb: move to Python 3
git: remove Python package (to which nothing was packaged)
qemu: remove runtime python dependency
subversion: remove unnecessary python dependency
swig: move to Python 3
python-pyrex: remove unused recipe
python-imaging: remove unused recipe
python-docutils: move to Python 3
cracklib: disable building the python module
libuser: move to Python 3
libnewt-python: move to Python 3
gnome-doc-utils: remove recipe
lttng-tools: move to Python 3
lttng-ust: move to Python 3
systemtap: move to Python 3
libcap-ng: move to Python 3
hwlatdetect: move to Python 3
python3-mako: add a Python 3 recipe
python3-nose: add a recipe
python3: add = to -L linking option only when the path is absolute
python-numpy: move recipe to own directory
python3-numpy: add a recipe

 meta/classes/distutils-common-base.bbclass         |    2 -
 meta/classes/distutils-native-base.bbclass         |    3 -
 meta/classes/distutils-tools.bbclass               |    4 -
 meta/classes/distutils.bbclass                     |    4 -
 meta/classes/distutils3-base.bbclass               |    3 -
 meta/classes/distutils3-native-base.bbclass        |    4 -
 meta/classes/distutils3.bbclass                    |   24 -
 meta/classes/gobject-introspection.bbclass         |    2 -
 meta/classes/python-dir.bbclass                    |    6 +-
 meta/classes/python3-dir.bbclass                   |    5 +
 meta/classes/python3native.bbclass                 |    4 +-
 meta/classes/sip.bbclass                           |   61 -
 meta/conf/distro/include/default-versions.inc      |    5 -
 meta/conf/distro/include/distro_alias.inc          |    2 -
 meta/conf/distro/include/security_flags.inc        |    1 -
 meta/recipes-connectivity/avahi/avahi-ui_0.6.32.bb |   11 +-
 meta/recipes-connectivity/bind/bind_9.10.3-P3.bb   |    4 +-
 meta/recipes-connectivity/bluez5/bluez5.inc        |    6 +-
 meta/recipes-connectivity/connman/connman.inc      |    6 +-
 meta/recipes-connectivity/neard/neard_0.15.bb      |   13 +-
 .../nfs-utils/nfs-utils_1.3.3.bb                   |    6 +-
 meta/recipes-connectivity/ofono/ofono.inc          |    6 +-
 .../ofono/Revert-test-Convert-to-Python-3.patch    | 1270 --------------------
 meta/recipes-connectivity/ofono/ofono_1.17.bb      |    1 -
 meta/recipes-core/dbus/dbus-test_1.10.6.bb         |    2 +-
 meta/recipes-core/glib-2.0/glib.inc                |   11 +-
 meta/recipes-core/libxml/libxml2_2.9.3.bb          |    2 -
 meta/recipes-core/systemd/systemd_229.bb           |    2 +-
 meta/recipes-core/util-linux/util-linux.inc        |   11 +-
 .../bootchart2/bootchart2_0.14.8.bb                |   16 +-
 meta/recipes-devtools/gdb/gdb-common.inc           |    2 +-
 meta/recipes-devtools/gdb/gdb-cross-canadian.inc   |   12 +-
 meta/recipes-devtools/gdb/gdb-cross.inc            |    6 +-
 meta/recipes-devtools/gdb/gdb_7.11.bb              |    6 +-
 meta/recipes-devtools/git/git.inc                  |    7 +-
 ...h-usr-and-so-on-for-libraries-by-default-.patch |    0
 .../files}/aarch64/_numpyconfig.h                  |    0
 .../files/aarch64}/config.h                        |    0
 .../files}/add-glibc-check.patch                   |    0
 .../mipsel => python-numpy/files/arm}/config.h     |    0
 .../files/arm}/numpyconfig.h                       |    0
 .../files}/armeb/config.h                          |    0
 .../files}/armeb/numpyconfig.h                     |    0
 .../files}/mips/_numpyconfig.h                     |    0
 .../files}/mips/config.h                           |    0
 .../files/mips64}/_numpyconfig.h                   |    0
 .../files/mips64}/config.h                         |    0
 .../files}/mips64n32/_numpyconfig.h                |    0
 .../files/mips64n32}/config.h                      |    0
 .../arm => python-numpy/files/mipsel}/config.h     |    0
 .../files/mipsel}/numpyconfig.h                    |    0
 .../files}/powerpc/_numpyconfig.h                  |    0
 .../files}/powerpc/config.h                        |    0
 .../files/powerpc64}/_numpyconfig.h                |    0
 .../files/powerpc64}/config.h                      |    0
 .../files}/remove-build-path-in-comments.patch     |    0
 .../files}/x86-64/_numpyconfig.h                   |    0
 .../files}/x86-64/config.h                         |    0
 .../files}/x86/config.h                            |    0
 .../files}/x86/numpyconfig.h                       |    0
 .../python-numpy_1.10.4.bb                         |    1 -
 .../python-numpy/python3-numpy_1.10.4.bb           |  101 ++
 ...ing-setup.py-force-paths-for-zlib-freetyp.patch |   55 -
 .../allow.to.disable.some.features.patch           |   65 -
 .../python-imaging/fix-freetype-includes.patch     |   30 -
 .../python/python-imaging_1.1.7.bb                 |   45 -
 meta/recipes-devtools/python/python-mako_1.0.3.bb  |    6 +
 ...2-distutils-prefix-is-inside-staging-area.patch |   65 -
 .../python/python-native_2.7.11.bb                 |    4 +-
 .../python/python-pycairo_1.10.0.bb                |   41 -
 .../python/python-pyrex-native_0.9.9.bb            |    5 -
 .../python-pyrex/pyrex-fix-optimized-mode.patch    |   15 -
 meta/recipes-devtools/python/python-pyrex_0.9.9.bb |   22 -
 ...et-the-prefix-to-be-inside-staging-direct.patch |   51 +
 ...{python-dbus_1.2.0.bb => python3-dbus_1.2.4.bb} |   22 +-
 ...n-docutils_0.12.bb => python3-docutils_0.12.bb} |    4 +-
 meta/recipes-devtools/python/python3-mako_1.0.3.bb |   24 +
 .../python/python3-native_3.5.1.bb                 |    3 -
 meta/recipes-devtools/python/python3-nose_1.3.7.bb |   24 +
 .../python/python3-pycairo_1.10.0.bb               |   40 +
 ...c-add-sysroot-path-to-GI_DATADIR-don-t-se.patch |    0
 ...bject_3.18.2.bb => python3-pygobject_3.18.2.bb} |    8 +-
 .../python/python3/110-enable-zlib.patch           |   21 -
 ...2-distutils-prefix-is-inside-staging-area.patch |   49 +-
 .../python/python3/unixccompiler.patch             |    6 +-
 meta/recipes-devtools/python/python3_3.5.1.bb      |    8 +-
 meta/recipes-devtools/python/python_2.7.11.bb      |    3 -
 meta/recipes-devtools/qemu/qemu.inc                |    2 +-
 meta/recipes-devtools/rpm/rpm_5.4+cvs.bb           |    2 +-
 meta/recipes-devtools/rpm/rpm_5.4.16.bb            |    2 +-
 .../subversion/subversion_1.9.3.bb                 |    2 +-
 meta/recipes-devtools/swig/swig.inc                |    7 +-
 meta/recipes-extended/cracklib/cracklib_2.9.5.bb   |   25 +-
 meta/recipes-extended/libuser/libuser_0.62.bb      |    8 +-
 .../newt/libnewt-python_0.52.18.bb                 |    6 +-
 meta/recipes-extended/newt/libnewt_0.52.18.bb      |    3 -
 .../packagegroup-core-full-cmdline.bb              |    1 -
 meta/recipes-gnome/epiphany/epiphany_3.18.4.bb     |    1 -
 .../gnome-desktop/gnome-desktop3_3.18.2.bb         |    2 +-
 meta/recipes-gnome/gnome/gnome-doc-utils.inc       |   29 -
 .../gnome-doc-utils/sysrooted-pkg-config.patch     |   35 -
 .../use-usr-bin-env-for-python-in-xml2po.patch     |   30 -
 .../gnome/gnome-doc-utils/xsltproc_nonet.patch     |   95 --
 .../recipes-gnome/gnome/gnome-doc-utils_0.20.10.bb |   12 -
 .../gobject-introspection_1.46.0.bb                |    2 -
 ...d-look-for-python-3.0-when-building-pytho.patch |   30 -
 meta/recipes-kernel/lttng/lttng-tools_git.bb       |    7 +-
 meta/recipes-kernel/lttng/lttng-ust_git.bb         |    9 +-
 meta/recipes-kernel/perf/perf.bb                   |    2 -
 meta/recipes-kernel/systemtap/systemtap_git.bb     |    5 +-
 meta/recipes-rt/rt-tests/hwlatdetect_0.96.bb       |    5 +-
 meta/recipes-support/libcap-ng/libcap-ng_0.7.7.bb  |   12 +-
 112 files changed, 384 insertions(+), 2198 deletions(-)
 delete mode 100644 meta/classes/distutils-native-base.bbclass
 delete mode 100644 meta/classes/distutils3-native-base.bbclass
 create mode 100644 meta/classes/python3-dir.bbclass
 delete mode 100644 meta/classes/sip.bbclass
 delete mode 100644 meta/recipes-connectivity/ofono/ofono/Revert-test-Convert-to-Python-3.patch
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/aarch64/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/powerpc64 => python-numpy/files/aarch64}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/add-glibc-check.patch (100%)
 rename meta/recipes-devtools/{python/python-numpy/mipsel => python-numpy/files/arm}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/mipsel => python-numpy/files/arm}/numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/armeb/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/armeb/numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/mips/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/mips/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/powerpc64 => python-numpy/files/mips64}/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/mips64n32 => python-numpy/files/mips64}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/mips64n32/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/mips64 => python-numpy/files/mips64n32}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/arm => python-numpy/files/mipsel}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/arm => python-numpy/files/mipsel}/numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/powerpc/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/powerpc/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/mips64 => python-numpy/files/powerpc64}/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy/aarch64 => python-numpy/files/powerpc64}/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/remove-build-path-in-comments.patch (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/x86-64/_numpyconfig.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/x86-64/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/x86/config.h (100%)
 rename meta/recipes-devtools/{python/python-numpy => python-numpy/files}/x86/numpyconfig.h (100%)
 rename meta/recipes-devtools/{python => python-numpy}/python-numpy_1.10.4.bb (98%)
 create mode 100644 meta/recipes-devtools/python-numpy/python3-numpy_1.10.4.bb
 delete mode 100644 meta/recipes-devtools/python/python-imaging/0001-python-imaging-setup.py-force-paths-for-zlib-freetyp.patch
 delete mode 100644 meta/recipes-devtools/python/python-imaging/allow.to.disable.some.features.patch
 delete mode 100644 meta/recipes-devtools/python/python-imaging/fix-freetype-includes.patch
 delete mode 100644 meta/recipes-devtools/python/python-imaging_1.1.7.bb
 delete mode 100644 meta/recipes-devtools/python/python-native/12-distutils-prefix-is-inside-staging-area.patch
 delete mode 100644 meta/recipes-devtools/python/python-pycairo_1.10.0.bb
 delete mode 100644 meta/recipes-devtools/python/python-pyrex-native_0.9.9.bb
 delete mode 100644 meta/recipes-devtools/python/python-pyrex/pyrex-fix-optimized-mode.patch
 delete mode 100644 meta/recipes-devtools/python/python-pyrex_0.9.9.bb
 create mode 100644 meta/recipes-devtools/python/python/0001-distutils-set-the-prefix-to-be-inside-staging-direct.patch
 rename meta/recipes-devtools/python/{python-dbus_1.2.0.bb => python3-dbus_1.2.4.bb} (53%)
 rename meta/recipes-devtools/python/{python-docutils_0.12.bb => python3-docutils_0.12.bb} (92%)
 create mode 100644 meta/recipes-devtools/python/python3-mako_1.0.3.bb
 create mode 100644 meta/recipes-devtools/python/python3-nose_1.3.7.bb
 create mode 100644 meta/recipes-devtools/python/python3-pycairo_1.10.0.bb
 rename meta/recipes-devtools/python/{python-pygobject => python3-pygobject}/0001-configure.ac-add-sysroot-path-to-GI_DATADIR-don-t-se.patch (100%)
 rename meta/recipes-devtools/python/{python-pygobject_3.18.2.bb => python3-pygobject_3.18.2.bb} (72%)
 delete mode 100644 meta/recipes-devtools/python/python3/110-enable-zlib.patch
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils.inc
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils/sysrooted-pkg-config.patch
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils/use-usr-bin-env-for-python-in-xml2po.patch
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils/xsltproc_nonet.patch
 delete mode 100644 meta/recipes-gnome/gnome/gnome-doc-utils_0.20.10.bb
 delete mode 100644 meta/recipes-kernel/lttng/lttng-tools/Revert-Build-look-for-python-3.0-when-building-pytho.patch
#57 lore raw
Quoted 8 lines
Quoted 3 lines

Consequently, rpm's python bindings (required by smartpm) stay at python 2 as well
for now, even tough python 3 seems to be supported.

Is there a porting guide or similar that can used to help identify what types of
changes are needed. I am not at all familiar with what python 3 needs specifically, but I do expect we will need to port these items.

Of course, there's a ton of such guides on the net. Here's the official one:
https://docs.python.org/3/howto/pyporting.html

Quoted 6 lines

The yum version of createrepo will not work. We need to port forward the component as appropriate -- or modify smartpm to use a newer version -- assuming
we can add missing pieces, as necessary. (key is smartpm and createrepo need to
be kept in sync.)

Can you say why it won't work, specifically, if we also replace smartpm with yum or dnf at the same time? The only alternative I see is that we have to fork the old version of createrepo and the abandoned upstream of smartpm, port them to Python 3, and maintain them going forward - not a light undertaking.

Quoted 4 lines

Please create one (or three) defects and assign them to me for smartpm, createrepo, and rpm python3 support. (I doubt I'll be the one doing the work,
but I'll do my best to find someone to do the work.)

Yes, I'll do that now.

Quoted 6 lines
Quoted 2 lines

5) LSB spec is implicitly requiring Python 2 (via requirement for '/usr/bin/python').

I expect the LSB will require python 2 for a while. So we will need to continue
to ensure that python 2 works, as well as python3.

Of course, Python 2 will be supported by upstream at least until 2020, and so it'll be provided by oe-core at least until then. 2.7.12 should appear soon.

Alex

#59 lore raw
In reply to [email protected]
Quoted 19 lines · On 5/25/16 8:01 AM, [email protected] wrote:
Quoted 8 lines
Quoted 3 lines

Consequently, rpm's python bindings (required by smartpm) stay at python 2 as well
for now, even tough python 3 seems to be supported.

Is there a porting guide or similar that can used to help identify what types of
changes are needed. I am not at all familiar with what python 3 needs specifically, but I do expect we will need to port these items.

Of course, there's a ton of such guides on the net. Here's the official one:
https://docs.python.org/3/howto/pyporting.html

Quoted 6 lines

The yum version of createrepo will not work. We need to port forward the component as appropriate -- or modify smartpm to use a newer version -- assuming
we can add missing pieces, as necessary. (key is smartpm and createrepo need to
be kept in sync.)

Quoted 5 lines

Can you say why it won't work, specifically, if we also replace smartpm with yum or dnf at the same time? The only alternative I see is that we have to fork the old version of createrepo and the abandoned upstream of smartpm, port them to Python 3, and maintain them going forward - not a light undertaking.

The interchange format of the newer createrepo is very different then the older format the smartpm uses. Thus they have to be kept in sync. The new format also does not have the extensions we added for the recommended package syntax.

createrepo is very small, and it's not YUM dependent. It simply reads the metadata (via the rpm interface) and dumps out data in an XML format.. then does a few more things as well. So porting the existing one forward shouldn't be difficult. It's just not clear at this point what the best behavior will be to do.. port createrepo forward -- or update smartpm to support the newer format (with appropriate extensions.)

--Mark

Quoted 20 lines
Quoted 4 lines

Please create one (or three) defects and assign them to me for smartpm, createrepo, and rpm python3 support. (I doubt I'll be the one doing the work,
but I'll do my best to find someone to do the work.)

Yes, I'll do that now.

Quoted 6 lines
Quoted 2 lines

5) LSB spec is implicitly requiring Python 2 (via requirement for '/usr/bin/python').

I expect the LSB will require python 2 for a while. So we will need to continue
to ensure that python 2 works, as well as python3.

Of course, Python 2 will be supported by upstream at least until 2020, and so it'll be provided by oe-core at least until then. 2.7.12 should appear soon.

Alex

#60 lore raw
Quoted 10 lines · Mark Hatle

The interchange format of the newer createrepo is very different then the older format the smartpm uses. Thus they have to be kept in sync. The new format also does not have the extensions we added for the recommended package syntax.

createrepo is very small, and it's not YUM dependent. It simply reads the metadata (via the rpm interface) and dumps out data in an XML format.. then does a few more things as well. So porting the existing one forward shouldn't be difficult. It's just not clear at this point what the best behavior will be to do.. port createrepo forward -- or update smartpm to support the newer format (with appropriate extensions.)

I still don't understand why introducing yum/dnf as a replacement for smartpm should be avoided at all costs. Like smartpm, it's fully written in Python, so that theoretically should be less painful that building working binaries.

Alex

#61 lore raw
Quoted 13 lines · Alexander Kanavin
Quoted 10 lines · Mark Hatle

The interchange format of the newer createrepo is very different then the older format the smartpm uses. Thus they have to be kept in sync. The new format also does not have the extensions we added for the recommended package syntax.

createrepo is very small, and it's not YUM dependent. It simply reads the metadata (via the rpm interface) and dumps out data in an XML format.. then does a few more things as well. So porting the existing one forward shouldn't be difficult. It's just not clear at this point what the best behavior will be to do.. port createrepo forward -- or update smartpm to support the newer format (with appropriate extensions.)

Quoted 4 lines

I still don't understand why introducing yum/dnf as a replacement for smartpm should be avoided at all costs. Like smartpm, it's fully written in Python, so that theoretically should be less painful that building working binaries.

I never said it should be avoided at all costs. Yum is dead. So any discussions would be on DNF.

DNF has many library dependencies that smartpm does not have. It also has a larger overhead for other resources. (But with that said, it also has other advantages in some cases, like support for DeltaRPM.)

We should investigate DNF, but at present DNF [and the index format] do not understand the recommended syntax that is used by OE/RPM5. DNF also has some issues with the other items that RPM5 has implemented (self-signed packages, package arch is not 'statically defined', etc.) Smartpm does not have a problem with any of these, and is quite small.

Smartpm however does have an issue (maybe) in that it's resolution code is written in python and likely is much slower then using libsolv [which DNF uses].

So it's not that I'm dismissing DNF, it's that we need to determine what is necessary to move smartpm forward. We need to investigate what it will take to port over DNF... and we need to understand performance impacts (runtime, disk space, and dependency needs.)

--Mark

Quoted 2 lines

Alex

#62 lore raw
In reply to Alexander Kanavin
Quoted 3 lines · Alexander Kanavin

This patchset updates recipes to use Python 3 whenever possible. A few items
cannot be moved at the moment for various reasons, here they are:

I put this through a round of testing on the autobuilder overnight.

I just replied to Maxin about the gst-plugins-bad/bluez issue, the world build also is a bit of a mess:

https://autobuilder.yoctoproject.org/main/builders/nightly-world-lsb/bu
ilds/528/steps/BuildImages/logs/stdio

python3-numpy looks like it can't find various symbols it thinks it should be able to.

There are more gdbus-codegen issues - perhaps that isn't bluez but something else causing them? (triggered gtk3+ and libsecret to fail too) Since various pieces did build is this a dependency issue?

python3-dbus doesn't build on x32:

https://autobuilder.yoctoproject.org/main/builders/nightly-x32/builds/7
98/steps/BuildImages/logs/stdio

Cheers,

Richard