diff --git a/meta-openembedded/meta-python/classes/distutils3-base.bbclass b/meta-openembedded/meta-python/classes/distutils3-base.bbclass
index 850c535..4f13ea6 100644
--- a/meta-openembedded/meta-python/classes/distutils3-base.bbclass
+++ b/meta-openembedded/meta-python/classes/distutils3-base.bbclass
@@ -1,6 +1,6 @@
-DEPENDS:append:class-target = " ${PYTHON_PN}-native ${PYTHON_PN}"
-DEPENDS:append:class-nativesdk = " ${PYTHON_PN}-native ${PYTHON_PN}"
-RDEPENDS:${PN} += "${@['', '${PYTHON_PN}-core']['${CLASSOVERRIDE}' == 'class-target']}"
+DEPENDS:append:class-target = " python3-native python3"
+DEPENDS:append:class-nativesdk = " python3-native python3"
+RDEPENDS:${PN} += "${@['', 'python3-core']['${CLASSOVERRIDE}' == 'class-target']}"
 
 inherit distutils-common-base python3native python3targetconfig
 
diff --git a/meta-openembedded/meta-python/classes/distutils3.bbclass b/meta-openembedded/meta-python/classes/distutils3.bbclass
index a6d8e87..909415e 100644
--- a/meta-openembedded/meta-python/classes/distutils3.bbclass
+++ b/meta-openembedded/meta-python/classes/distutils3.bbclass
@@ -27,9 +27,9 @@
         NO_FETCH_BUILD=1 \
         STAGING_INCDIR=${STAGING_INCDIR} \
         STAGING_LIBDIR=${STAGING_LIBDIR} \
-        ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py \
+        ${STAGING_BINDIR_NATIVE}/python3-native/python3 setup.py \
         build --build-base=${B} ${DISTUTILS_BUILD_ARGS} || \
-        bbfatal_log "'${PYTHON_PN} setup.py build ${DISTUTILS_BUILD_ARGS}' execution failed."
+        bbfatal_log "'python3 setup.py build ${DISTUTILS_BUILD_ARGS}' execution failed."
 }
 distutils3_do_compile[vardepsexclude] = "MACHINE"
 
@@ -39,9 +39,9 @@
         STAGING_INCDIR=${STAGING_INCDIR} \
         STAGING_LIBDIR=${STAGING_LIBDIR} \
         PYTHONPATH=${D}${PYTHON_SITEPACKAGES_DIR} \
-        ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py \
+        ${STAGING_BINDIR_NATIVE}/python3-native/python3 setup.py \
         build --build-base=${B} install --skip-build ${DISTUTILS_INSTALL_ARGS} || \
-        bbfatal_log "'${PYTHON_PN} setup.py install ${DISTUTILS_INSTALL_ARGS}' execution failed."
+        bbfatal_log "'python3 setup.py install ${DISTUTILS_INSTALL_ARGS}' execution failed."
 
         # support filenames with *spaces*
         find ${D} -name "*.py" -exec grep -q ${D} {} \; \
diff --git a/meta-openembedded/meta-python/classes/python_mesonpy.bbclass b/meta-openembedded/meta-python/classes/python_mesonpy.bbclass
deleted file mode 100644
index 131fa74..0000000
--- a/meta-openembedded/meta-python/classes/python_mesonpy.bbclass
+++ /dev/null
@@ -1,52 +0,0 @@
-#
-# Copyright OpenEmbedded Contributors
-#
-# SPDX-License-Identifier: MIT
-#
-
-inherit meson setuptools3-base python3targetconfig python_pep517
-
-# meson_do_qa_configure does the wrong thing here because
-# mesonpy runs "meson setup ..." in do_compile context.
-# Make it a dummy function.
-meson_do_qa_configure () {
-    :
-}
-
-# This prevents the meson error:
-# ERROR: Got argument buildtype as both -Dbuildtype and --buildtype. Pick one.
-MESONOPTS:remove = "--buildtype ${MESON_BUILDTYPE}"
-
-CONFIGURE_FILES = "pyproject.toml"
-
-DEPENDS += "python3-wheel-native python3-meson-python-native"
-
-def mesonpy_get_args(d):
-    vars = ['MESONOPTS', 'MESON_CROSS_FILE', 'EXTRA_OEMESON']
-    varlist = []
-    for var in vars:
-        value = d.getVar(var)
-        vallist = value.split()
-        for elem in vallist:
-            varlist.append("-Csetup-args=" + elem)
-    return ' '.join(varlist)
-
-PEP517_BUILD_OPTS = "-Cbuilddir='${B}' ${@mesonpy_get_args(d)}"
-
-# Python pyx -> c -> so build leaves absolute build paths in the code
-INSANE_SKIP:${PN} += "buildpaths"
-INSANE_SKIP:${PN}-src += "buildpaths"
-
-python_mesonpy_do_configure () {
-    python_pep517_do_configure
-}
-
-python_mesonpy_do_compile () {
-    python_pep517_do_compile
-}
-
-python_mesonpy_do_install () {
-    python_pep517_do_install
-}
-
-EXPORT_FUNCTIONS do_configure do_compile do_install
