Issue #22877: PEP 477 - keep 2.7 and 3.x installers in sync.
This commit is contained in:
commit
bbdacdc84f
|
@ -198,7 +198,7 @@ def library_recipes():
|
||||||
LT_10_5 = bool(getDeptargetTuple() < (10, 5))
|
LT_10_5 = bool(getDeptargetTuple() < (10, 5))
|
||||||
|
|
||||||
# Disable for now
|
# Disable for now
|
||||||
if False: # if (getDeptargetTuple() > (10, 5)) and (getVersionTuple() >= (3, 5)):
|
if False: # if getDeptargetTuple() > (10, 5):
|
||||||
result.extend([
|
result.extend([
|
||||||
dict(
|
dict(
|
||||||
name="Tcl 8.5.15",
|
name="Tcl 8.5.15",
|
||||||
|
@ -239,7 +239,7 @@ def library_recipes():
|
||||||
),
|
),
|
||||||
])
|
])
|
||||||
|
|
||||||
if getVersionTuple() >= (3, 3):
|
if PYTHON_3:
|
||||||
result.extend([
|
result.extend([
|
||||||
dict(
|
dict(
|
||||||
name="XZ 5.0.5",
|
name="XZ 5.0.5",
|
||||||
|
@ -369,8 +369,6 @@ def library_recipes():
|
||||||
# Instructions for building packages inside the .mpkg.
|
# Instructions for building packages inside the .mpkg.
|
||||||
def pkg_recipes():
|
def pkg_recipes():
|
||||||
unselected_for_python3 = ('selected', 'unselected')[PYTHON_3]
|
unselected_for_python3 = ('selected', 'unselected')[PYTHON_3]
|
||||||
# unselected if 3.0 through 3.3, selected otherwise (2.x or >= 3.4)
|
|
||||||
unselected_for_lt_python34 = ('selected', 'unselected')[(3, 0) <= getVersionTuple() < (3, 4)]
|
|
||||||
result = [
|
result = [
|
||||||
dict(
|
dict(
|
||||||
name="PythonFramework",
|
name="PythonFramework",
|
||||||
|
@ -439,27 +437,23 @@ def pkg_recipes():
|
||||||
topdir="/Library/Frameworks/Python.framework",
|
topdir="/Library/Frameworks/Python.framework",
|
||||||
source="/empty-dir",
|
source="/empty-dir",
|
||||||
required=False,
|
required=False,
|
||||||
selected=unselected_for_lt_python34,
|
selected='selected',
|
||||||
|
),
|
||||||
|
dict(
|
||||||
|
name="PythonInstallPip",
|
||||||
|
long_name="Install or upgrade pip",
|
||||||
|
readme="""\
|
||||||
|
This package installs (or upgrades from an earlier version)
|
||||||
|
pip, a tool for installing and managing Python packages.
|
||||||
|
""",
|
||||||
|
postflight="scripts/postflight.ensurepip",
|
||||||
|
topdir="/Library/Frameworks/Python.framework",
|
||||||
|
source="/empty-dir",
|
||||||
|
required=False,
|
||||||
|
selected='selected',
|
||||||
),
|
),
|
||||||
]
|
]
|
||||||
|
|
||||||
if getVersionTuple() >= (3, 4):
|
|
||||||
result.append(
|
|
||||||
dict(
|
|
||||||
name="PythonInstallPip",
|
|
||||||
long_name="Install or upgrade pip",
|
|
||||||
readme="""\
|
|
||||||
This package installs (or upgrades from an earlier version)
|
|
||||||
pip, a tool for installing and managing Python packages.
|
|
||||||
""",
|
|
||||||
postflight="scripts/postflight.ensurepip",
|
|
||||||
topdir="/Library/Frameworks/Python.framework",
|
|
||||||
source="/empty-dir",
|
|
||||||
required=False,
|
|
||||||
selected='selected',
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
||||||
if getDeptargetTuple() < (10, 4) and not PYTHON_3:
|
if getDeptargetTuple() < (10, 4) and not PYTHON_3:
|
||||||
result.append(
|
result.append(
|
||||||
dict(
|
dict(
|
||||||
|
@ -977,7 +971,7 @@ def buildPython():
|
||||||
shellQuote(os.path.join(SRCDIR, 'configure')), shellQuote(SDKPATH),
|
shellQuote(os.path.join(SRCDIR, 'configure')), shellQuote(SDKPATH),
|
||||||
UNIVERSALARCHS,
|
UNIVERSALARCHS,
|
||||||
(' ', '--with-computed-gotos ')[PYTHON_3],
|
(' ', '--with-computed-gotos ')[PYTHON_3],
|
||||||
(' ', '--without-ensurepip ')[getVersionTuple() >= (3, 4)],
|
(' ', '--without-ensurepip ')[PYTHON_3],
|
||||||
shellQuote(WORKDIR)[1:-1],
|
shellQuote(WORKDIR)[1:-1],
|
||||||
shellQuote(WORKDIR)[1:-1]))
|
shellQuote(WORKDIR)[1:-1]))
|
||||||
|
|
||||||
|
@ -1159,7 +1153,9 @@ def patchFile(inPath, outPath):
|
||||||
fp.close()
|
fp.close()
|
||||||
|
|
||||||
def patchScript(inPath, outPath):
|
def patchScript(inPath, outPath):
|
||||||
|
major, minor = getVersionMajorMinor()
|
||||||
data = fileContents(inPath)
|
data = fileContents(inPath)
|
||||||
|
data = data.replace('@PYMAJOR@', str(major))
|
||||||
data = data.replace('@PYVER@', getVersion())
|
data = data.replace('@PYVER@', getVersion())
|
||||||
fp = open(outPath, 'w')
|
fp = open(outPath, 'w')
|
||||||
fp.write(data)
|
fp.write(data)
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
PYVER="@PYVER@"
|
PYVER="@PYVER@"
|
||||||
PYMAJOR="3"
|
PYMAJOR="@PYMAJOR@"
|
||||||
FWK="/Library/Frameworks/Python.framework/Versions/${PYVER}"
|
FWK="/Library/Frameworks/Python.framework/Versions/${PYVER}"
|
||||||
RELFWKBIN="../../..${FWK}/bin"
|
RELFWKBIN="../../..${FWK}/bin"
|
||||||
|
|
||||||
|
@ -34,32 +34,36 @@ chmod -R g+w "${FWK}/lib/python${PYVER}/site-packages" "${FWK}/bin"
|
||||||
|
|
||||||
if [ -d /usr/local/bin ] ; then
|
if [ -d /usr/local/bin ] ; then
|
||||||
(
|
(
|
||||||
|
install_links_if_our_fw() {
|
||||||
|
if [ "$(readlink -n ./$1)" = "${RELFWKBIN}/$1" ] ; then
|
||||||
|
shift
|
||||||
|
for fn ;
|
||||||
|
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
|
||||||
|
}
|
||||||
|
|
||||||
cd /usr/local/bin
|
cd /usr/local/bin
|
||||||
|
|
||||||
# Create pipx.y and easy_install-x.y links if /usr/local/bin/pythonx.y
|
# Create pipx.y and easy_install-x.y links if /usr/local/bin/pythonx.y
|
||||||
# is linked to this framework version
|
# is linked to this framework version
|
||||||
if [ "$(readlink -n ./python${PYVER})" = "${RELFWKBIN}/python${PYVER}" ] ; then
|
install_links_if_our_fw "python${PYVER}" \
|
||||||
for fn in "pip${PYVER}" "easy_install-${PYVER}" ;
|
"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
|
# Create pipx link if /usr/local/bin/pythonx is linked to this version
|
||||||
if [ "$(readlink -n ./python${PYMAJOR})" = "${RELFWKBIN}/python${PYMAJOR}" ] ; then
|
install_links_if_our_fw "python${PYMAJOR}" \
|
||||||
for fn in "pip${PYMAJOR}" ;
|
"pip${PYMAJOR}"
|
||||||
do
|
|
||||||
if [ -e "${RELFWKBIN}/${fn}" ] ; then
|
# Create pip and easy_install link if /usr/local/bin/python
|
||||||
rm -f ./${fn}
|
# is linked to this version
|
||||||
ln -s "${RELFWKBIN}/${fn}" "./${fn}"
|
install_links_if_our_fw "python" \
|
||||||
chgrp -h admin "./${fn}"
|
"pip" "easy_install"
|
||||||
chmod -h g+w "./${fn}"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
)
|
)
|
||||||
fi
|
fi
|
||||||
exit 0
|
exit 0
|
||||||
|
|
Loading…
Reference in New Issue