mirror of
https://git.yoctoproject.org/poky
synced 2026-04-03 02:02:21 +02:00
python3-pip-native: install scripts in ${bindir}
The naïve approach of simply unzipping the built wheel is not
sufficient. 'pip install' would normally have created the
[console_scripts] from entry-points.txt in ${D}${bindir}.
For bootstrapping purposes, hardcode the scripts and install them into
${D}${bindir}. Skip the ${bindir}/pip variant.
[YOCTO #14739]
(From OE-Core rev: 5b58328b610273fea42c144cd590e638c0dc1e4e)
Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
d98a804617
commit
3a4f842307
@@ -24,6 +24,23 @@ do_install:class-native() {
|
||||
install -d ${D}${PYTHON_SITEPACKAGES_DIR}
|
||||
unzip -d ${D}${PYTHON_SITEPACKAGES_DIR} ${PYPA_WHEEL} || \
|
||||
bbfatal_log "Failed to unzip wheel: ${PYPA_WHEEL}. Check the logs."
|
||||
|
||||
# pip install would normally generate [console_scripts] in ${bindir}
|
||||
install -d ${D}/${bindir}
|
||||
# We will skip the ${bindir}/pip variant as we would just remove it in the do_install:append
|
||||
cat << EOF >> ${D}/${bindir}/pip3 | tee ${D}/${bindir}/pip${PYTHON_BASEVERSION}
|
||||
#!/bin/sh
|
||||
'''exec' ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} "\$0" "\$@"
|
||||
' '''
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
from pip._internal.cli.main import main
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
||||
EOF
|
||||
chmod 0755 ${D}${bindir}/pip3 ${D}${bindir}/pip${PYTHON_BASEVERSION}
|
||||
}
|
||||
|
||||
do_install:append() {
|
||||
|
||||
Reference in New Issue
Block a user