70 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
| #!/bin/sh
 | |
| #
 | |
| # Install/upgrade pip.
 | |
| #
 | |
| 
 | |
| PYVER="@PYVER@"
 | |
| PYMAJOR="@PYMAJOR@"
 | |
| 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
 | |
|     (
 | |
|         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
 | |
| 
 | |
|         # Create pipx.y and easy_install-x.y links if /usr/local/bin/pythonx.y
 | |
|         #   is linked to this framework version
 | |
|         install_links_if_our_fw "python${PYVER}" \
 | |
|                                     "pip${PYVER}" "easy_install-${PYVER}"
 | |
| 
 | |
|         # Create pipx link if /usr/local/bin/pythonx is linked to this version
 | |
|         install_links_if_our_fw "python${PYMAJOR}" \
 | |
|                                     "pip${PYMAJOR}"
 | |
| 
 | |
|         # Create pip and easy_install link if /usr/local/bin/python
 | |
|         #   is linked to this version
 | |
|         install_links_if_our_fw "python" \
 | |
|                                     "pip" "easy_install"
 | |
|     )
 | |
| fi
 | |
| exit 0
 |