mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
Issue #19551: PEP 453 - OS X installer now installs or upgrades pip by default.
This commit is contained in:
parent
7bc4b3bee3
commit
41ab6c3b1a
4 changed files with 120 additions and 1 deletions
65
Mac/BuildScript/scripts/postflight.ensurepip
Executable file
65
Mac/BuildScript/scripts/postflight.ensurepip
Executable file
|
@ -0,0 +1,65 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# Install/upgrade pip.
|
||||
#
|
||||
|
||||
PYVER="@PYVER@"
|
||||
PYMAJOR="3"
|
||||
FWK="/Library/Frameworks/Python.framework/Versions/${PYVER}"
|
||||
RELFWKBIN="../../..${FWK}/bin"
|
||||
|
||||
umask 022
|
||||
|
||||
"${FWK}/bin/python${PYVER}" -m ensurepip --upgrade
|
||||
|
||||
"${FWK}/bin/python${PYVER}" -Wi \
|
||||
"${FWK}/lib/python${PYVER}/compileall.py" \
|
||||
-f -x badsyntax \
|
||||
"${FWK}/lib/python${PYVER}/site-packages"
|
||||
|
||||
"${FWK}/bin/python${PYVER}" -Wi -O \
|
||||
"${FWK}/lib/python${PYVER}/compileall.py" \
|
||||
-f -x badsyntax \
|
||||
"${FWK}/lib/python${PYVER}/site-packages"
|
||||
|
||||
chgrp -R admin "${FWK}/lib/python${PYVER}/site-packages" "${FWK}/bin"
|
||||
chmod -R g+w "${FWK}/lib/python${PYVER}/site-packages" "${FWK}/bin"
|
||||
|
||||
# We do not know if the user selected the Python command-line tools
|
||||
# package that installs symlinks to /usr/local/bin. So we assume
|
||||
# that the command-line tools package has already completed or was
|
||||
# not selected and we will only install /usr/local/bin symlinks for
|
||||
# pip et al if there are /usr/local/bin/python* symlinks to our
|
||||
# framework bin directory.
|
||||
|
||||
if [ -d /usr/local/bin ] ; then
|
||||
(
|
||||
cd /usr/local/bin
|
||||
# Create pipx.y and easy_install-x.y links if /usr/local/bin/pythonx.y
|
||||
# is linked to this framework version
|
||||
if [ "$(readlink -n ./python${PYVER})" = "${RELFWKBIN}/python${PYVER}" ] ; then
|
||||
for fn in "pip${PYVER}" "easy_install-${PYVER}" ;
|
||||
do
|
||||
if [ -e "${RELFWKBIN}/${fn}" ] ; then
|
||||
rm -f ./${fn}
|
||||
ln -s "${RELFWKBIN}/${fn}" "./${fn}"
|
||||
chgrp -h admin "./${fn}"
|
||||
chmod -h g+w "./${fn}"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
# Create pipx link if /usr/local/bin/pythonx is linked to this version
|
||||
if [ "$(readlink -n ./python${PYMAJOR})" = "${RELFWKBIN}/python${PYMAJOR}" ] ; then
|
||||
for fn in "pip${PYMAJOR}" ;
|
||||
do
|
||||
if [ -e "${RELFWKBIN}/${fn}" ] ; then
|
||||
rm -f ./${fn}
|
||||
ln -s "${RELFWKBIN}/${fn}" "./${fn}"
|
||||
chgrp -h admin "./${fn}"
|
||||
chmod -h g+w "./${fn}"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
)
|
||||
fi
|
||||
exit 0
|
Loading…
Add table
Add a link
Reference in a new issue