mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-04-07 07:18:43 +00:00
python3-ninja: fix ninja_syntax import and version for setuptools build
Fixes issues introduced in commit 16a72067f5 ("python3-ninja: upgrade
1.11.1.1 -> 1.13.0").
Upstream's __init__.py uses a relative import:
from .ninja_syntax import Writer, escape, expand
This requires ninja_syntax.py to be present inside the ninja package
directory. Upstream relies on CMake (via scikit-build-core) to copy
ninja_syntax.py from ninja-upstream/misc/ into the package during
build [1]. Since the OE recipe replaces scikit-build-core with
setuptools (no-scikit-build.patch), CMake is not invoked and this
copy does not happen, causing ImportError at runtime.
Similarly, upstream uses scikit-build-core's generate feature to
create _version.py from the SCM version. With setuptools, this
does not happen automatically, so generate it in do_configure.
[1] https://github.com/scikit-build/ninja-python-distributions/commit/f3b4a786be
Signed-off-by: Jiaying Song <jiaying.song.cn@windriver.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
This commit is contained in:
@@ -14,6 +14,11 @@ DEPENDS += "python3-setuptools-scm-native"
|
||||
|
||||
do_install:append () {
|
||||
rm -rf ${D}${bindir}
|
||||
install -m 0644 ${S}/ninja-upstream/misc/ninja_syntax.py ${D}${PYTHON_SITEPACKAGES_DIR}/ninja/ninja_syntax.py
|
||||
}
|
||||
|
||||
do_configure:prepend() {
|
||||
echo 'version = "${PV}"' > ${S}/src/ninja/_version.py
|
||||
}
|
||||
|
||||
RDEPENDS:${PN} = " \
|
||||
|
||||
Reference in New Issue
Block a user