From 390f3edabfb1f68ed9766245291c5f44ea00cc38 Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Fri, 17 Jan 2020 14:16:32 +0000 Subject: python: remove Python 2 and all supporting classes Python 2 ceased being maintained on the 1st January 2020. We've already removed all users of it from oe-core so the final step is to move the recipe and supporting classes to meta-python2. The following are removed in this commit: - python and python-native 2.7.17 - python-setuptools - The classes pythonnative, pythondir, distutils, setuptools Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- meta/classes/distutils-base.bbclass | 4 -- meta/classes/distutils.bbclass | 87 ------------------------------------- meta/classes/python-dir.bbclass | 5 --- meta/classes/pythonnative.bbclass | 27 ------------ meta/classes/setuptools.bbclass | 3 -- 5 files changed, 126 deletions(-) delete mode 100644 meta/classes/distutils-base.bbclass delete mode 100644 meta/classes/distutils.bbclass delete mode 100644 meta/classes/python-dir.bbclass delete mode 100644 meta/classes/pythonnative.bbclass delete mode 100644 meta/classes/setuptools.bbclass (limited to 'meta/classes') diff --git a/meta/classes/distutils-base.bbclass b/meta/classes/distutils-base.bbclass deleted file mode 100644 index 9f398d7051..0000000000 --- a/meta/classes/distutils-base.bbclass +++ /dev/null @@ -1,4 +0,0 @@ -DEPENDS += "${@["${PYTHON_PN}-native ${PYTHON_PN}", ""][(d.getVar('PACKAGES') == '')]}" -RDEPENDS_${PN} += "${@['', '${PYTHON_PN}-core']['${CLASSOVERRIDE}' == 'class-target']}" - -inherit distutils-common-base pythonnative diff --git a/meta/classes/distutils.bbclass b/meta/classes/distutils.bbclass deleted file mode 100644 index 3759b58263..0000000000 --- a/meta/classes/distutils.bbclass +++ /dev/null @@ -1,87 +0,0 @@ -inherit distutils-base - -DISTUTILS_BUILD_ARGS ?= "" -DISTUTILS_STAGE_HEADERS_ARGS ?= "--install-dir=${STAGING_INCDIR}/${PYTHON_DIR}" -DISTUTILS_STAGE_ALL_ARGS ?= "--prefix=${STAGING_DIR_HOST}${prefix} \ - --install-data=${STAGING_DATADIR}" -DISTUTILS_INSTALL_ARGS ?= "--root=${D} \ - --prefix=${prefix} \ - --install-lib=${PYTHON_SITEPACKAGES_DIR} \ - --install-data=${datadir}" - -DISTUTILS_PYTHON = "python" -DISTUTILS_PYTHON_class-native = "nativepython" - -distutils_do_configure() { - if [ "${CLEANBROKEN}" != "1" ] ; then - NO_FETCH_BUILD=1 \ - ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py clean ${DISTUTILS_BUILD_ARGS} - fi -} - -distutils_do_compile() { - NO_FETCH_BUILD=1 \ - STAGING_INCDIR=${STAGING_INCDIR} \ - STAGING_LIBDIR=${STAGING_LIBDIR} \ - ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py build ${DISTUTILS_BUILD_ARGS} || \ - bbfatal_log "'${PYTHON_PN} setup.py build ${DISTUTILS_BUILD_ARGS}' execution failed." -} - -distutils_stage_headers() { - install -d ${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR} - ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install_headers ${DISTUTILS_STAGE_HEADERS_ARGS} || \ - bbfatal_log "'${PYTHON_PN} setup.py install_headers ${DISTUTILS_STAGE_HEADERS_ARGS}' execution for stage_headers failed." -} - -distutils_stage_all() { - STAGING_INCDIR=${STAGING_INCDIR} \ - STAGING_LIBDIR=${STAGING_LIBDIR} \ - install -d ${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR} - PYTHONPATH=${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR} \ - ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install ${DISTUTILS_STAGE_ALL_ARGS} || \ - bbfatal_log "'${PYTHON_PN} setup.py install ${DISTUTILS_STAGE_ALL_ARGS}' execution for stage_all failed." -} - -distutils_do_install() { - install -d ${D}${PYTHON_SITEPACKAGES_DIR} - STAGING_INCDIR=${STAGING_INCDIR} \ - STAGING_LIBDIR=${STAGING_LIBDIR} \ - PYTHONPATH=${D}${PYTHON_SITEPACKAGES_DIR} \ - ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install ${DISTUTILS_INSTALL_ARGS} || \ - bbfatal_log "'${PYTHON_PN} setup.py install ${DISTUTILS_INSTALL_ARGS}' execution failed." - - # support filenames with *spaces* - # only modify file if it contains path and recompile it - find ${D} -name "*.py" -exec grep -q ${D} {} \; \ - -exec sed -i -e s:${D}::g {} \; \ - -exec ${STAGING_BINDIR_NATIVE}/python-native/python -mcompileall {} \; - - for i in ${D}${bindir}/* ${D}${sbindir}/*; do - if [ -f "$i" ]; then - sed -i -e s:${PYTHON}:${USRBINPATH}/env\ ${DISTUTILS_PYTHON}:g $i - sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i - fi - done - - rm -f ${D}${PYTHON_SITEPACKAGES_DIR}/easy-install.pth - rm -f ${D}${PYTHON_SITEPACKAGES_DIR}/site.py* - - # - # FIXME: Bandaid against wrong datadir computation - # - if [ -e ${D}${datadir}/share ]; then - mv -f ${D}${datadir}/share/* ${D}${datadir}/ - rmdir ${D}${datadir}/share - fi - - # Fix backport modules - if [ -e ${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/backports/__init__.py ] && - [ -e ${D}${PYTHON_SITEPACKAGES_DIR}/backports/__init__.py ]; then - rm ${D}${PYTHON_SITEPACKAGES_DIR}/backports/__init__.py; - rm ${D}${PYTHON_SITEPACKAGES_DIR}/backports/__init__.pyc; - fi -} - -EXPORT_FUNCTIONS do_configure do_compile do_install - -export LDSHARED="${CCLD} -shared" diff --git a/meta/classes/python-dir.bbclass b/meta/classes/python-dir.bbclass deleted file mode 100644 index a11dc350be..0000000000 --- a/meta/classes/python-dir.bbclass +++ /dev/null @@ -1,5 +0,0 @@ -PYTHON_BASEVERSION = "2.7" -PYTHON_ABI = "" -PYTHON_DIR = "python${PYTHON_BASEVERSION}" -PYTHON_PN = "python" -PYTHON_SITEPACKAGES_DIR = "${libdir}/${PYTHON_DIR}/site-packages" diff --git a/meta/classes/pythonnative.bbclass b/meta/classes/pythonnative.bbclass deleted file mode 100644 index 0e9019d1e2..0000000000 --- a/meta/classes/pythonnative.bbclass +++ /dev/null @@ -1,27 +0,0 @@ - -inherit python-dir - -PYTHON="${STAGING_BINDIR_NATIVE}/python-native/python" -# PYTHON_EXECUTABLE is used by cmake -PYTHON_EXECUTABLE="${PYTHON}" -EXTRANATIVEPATH += "python-native" -DEPENDS_append = " python-native " - -# python-config and other scripts are using distutils modules -# which we patch to access these variables -export STAGING_INCDIR -export STAGING_LIBDIR - -# Packages can use -# find_package(PythonInterp REQUIRED) -# find_package(PythonLibs REQUIRED) -# which ends up using libs/includes from build host -# Therefore pre-empt that effort -export PYTHON_LIBRARY="${STAGING_LIBDIR}/lib${PYTHON_DIR}${PYTHON_ABI}.so" -export PYTHON_INCLUDE_DIR="${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI}" - -# suppress host user's site-packages dirs. -export PYTHONNOUSERSITE = "1" - -# autoconf macros will use their internal default preference otherwise -export PYTHON diff --git a/meta/classes/setuptools.bbclass b/meta/classes/setuptools.bbclass deleted file mode 100644 index a923ea3c4a..0000000000 --- a/meta/classes/setuptools.bbclass +++ /dev/null @@ -1,3 +0,0 @@ -inherit distutils - -DEPENDS += "python-setuptools-native" -- cgit 1.2.3-korg