symbian-qemu-0.9.1-12/python-2.6.1/Mac/BuildScript/scripts/postflight.patch-profile
changeset 1 2fb8b9db1c86
equal deleted inserted replaced
0:ffa851df0825 1:2fb8b9db1c86
       
     1 #!/bin/sh
       
     2 
       
     3 echo "This script will update your shell profile when the 'bin' directory"
       
     4 echo "of python is not early enough of the PATH of your shell."
       
     5 echo "These changes will be effective only in shell windows that you open"
       
     6 echo "after running this script."
       
     7 
       
     8 PYVER=2.6
       
     9 PYTHON_ROOT="/Library/Frameworks/Python.framework/Versions/Current"
       
    10 
       
    11 if [ `id -ur` = 0 ]; then
       
    12 	# Run from the installer, do some trickery to fetch the information
       
    13 	# we need.
       
    14 	theShell="`finger $USER | grep Shell: | head  -1 | awk '{ print $NF }'`"
       
    15 
       
    16 else
       
    17 	theShell="${SHELL}"
       
    18 fi
       
    19 
       
    20 # Make sure the directory ${PYTHON_ROOT}/bin is on the users PATH.
       
    21 BSH="`basename "${theShell}"`"
       
    22 case "${BSH}" in
       
    23 bash|ksh|sh|*csh)
       
    24 	if [ `id -ur` = 0 ]; then
       
    25 		P=`su - ${USER} -c 'echo A-X-4-X@@$PATH@@X-4-X-A' | grep 'A-X-4-X@@.*@@X-4-X-A' | sed -e 's/^A-X-4-X@@//g' -e 's/@@X-4-X-A$//g'`
       
    26 	else
       
    27 		P="`(exec -l ${theShell} -c 'echo $PATH')`"
       
    28 	fi
       
    29 	;;
       
    30 *)
       
    31 	echo "Sorry, I don't know how to patch $BSH shells"
       
    32 	exit 0
       
    33 	;;
       
    34 esac
       
    35 
       
    36 # Now ensure that our bin directory is on $P and before /usr/bin at that
       
    37 for elem in `echo $P | tr ':' ' '`
       
    38 do
       
    39 	if [ "${elem}" == "${PYTHON_ROOT}/bin" ]; then
       
    40 		echo "All right, you're a python lover already"
       
    41 		exit 0
       
    42 	elif [ "${elem}" == "/usr/bin" ]; then
       
    43 		break
       
    44 	fi
       
    45 done
       
    46 
       
    47 echo "${PYTHON_ROOT}/bin is not on your PATH or at least not early enough"
       
    48 case "${BSH}" in
       
    49 *csh)
       
    50 	if [ -f "${HOME}/.tcshrc" ]; then
       
    51 		RC="${HOME}/.tcshrc"
       
    52 	else
       
    53 		RC="${HOME}/.cshrc"
       
    54 	fi
       
    55 	# Create backup copy before patching
       
    56 	if [ -f "${RC}" ]; then
       
    57 		cp -fp "${RC}" "${RC}.pysave"
       
    58 	fi
       
    59 	echo "" >> "${RC}"
       
    60 	echo "# Setting PATH for MacPython ${PYVER}" >> "${RC}"
       
    61 	echo "# The orginal version is saved in .cshrc.pysave" >> "${RC}"
       
    62 	echo "set path=(${PYTHON_ROOT}/bin "'$path'")" >> "${RC}"
       
    63 	if [ `id -ur` = 0 ]; then
       
    64 		chown "${USER}" "${RC}"
       
    65 	fi
       
    66 	exit 0
       
    67 	;;
       
    68 bash)
       
    69 	if [ -e "${HOME}/.bash_profile" ]; then
       
    70 		PR="${HOME}/.bash_profile"
       
    71 	elif [ -e "${HOME}/.bash_login" ]; then
       
    72 		PR="${HOME}/.bash_login"
       
    73 	elif [ -e "${HOME}/.profile" ]; then
       
    74 		PR="${HOME}/.profile"
       
    75 	else
       
    76 		PR="${HOME}/.bash_profile"
       
    77 	fi
       
    78 	;;
       
    79 *sh)
       
    80 	PR="${HOME}/.profile"
       
    81 	;;
       
    82 esac
       
    83 
       
    84 # Create backup copy before patching
       
    85 if [ -f "${PR}" ]; then
       
    86 	cp -fp "${PR}" "${PR}.pysave"
       
    87 fi
       
    88 echo "" >> "${PR}"
       
    89 echo "# Setting PATH for MacPython ${PYVER}" >> "${PR}"
       
    90 echo "# The orginal version is saved in `basename ${PR}`.pysave" >> "${PR}"
       
    91 echo 'PATH="'"${PYTHON_ROOT}/bin"':${PATH}"' >> "${PR}"
       
    92 echo 'export PATH' >> "${PR}"
       
    93 if [ `id -ur` = 0 ]; then
       
    94 	chown "${USER}" "${PR}"
       
    95 fi
       
    96 exit 0