annotate Mac/BuildScript/scripts/postflight.patch-profile @ 58765:2ba7677bfa95 legacy-trunk

testCopysign was defined twice in test_math; combine the definitions
author Mark Dickinson <dickinsm@gmail.com>
date Sat, 06 Feb 2010 23:11:25 +0000
parents 4fae8168c43b
children e062884765d6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
38252
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
1 #!/bin/sh
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
2
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
3 echo "This script will update your shell profile when the 'bin' directory"
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
4 echo "of python is not early enough of the PATH of your shell."
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
5 echo "These changes will be effective only in shell windows that you open"
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
6 echo "after running this script."
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
7
52004
240231ac79cf Fix issue 5224.
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 49381
diff changeset
8 PYVER="@PYVER@"
240231ac79cf Fix issue 5224.
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 49381
diff changeset
9 PYTHON_ROOT="/Library/Frameworks/Python.framework/Versions/@PYVER@"
38252
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
10
39344
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
11 if [ `id -ur` = 0 ]; then
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
12 # Run from the installer, do some trickery to fetch the information
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
13 # we need.
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
14 theShell="`finger $USER | grep Shell: | head -1 | awk '{ print $NF }'`"
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
15
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
16 else
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
17 theShell="${SHELL}"
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
18 fi
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
19
38252
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
20 # Make sure the directory ${PYTHON_ROOT}/bin is on the users PATH.
39344
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
21 BSH="`basename "${theShell}"`"
38252
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
22 case "${BSH}" in
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
23 bash|ksh|sh|*csh)
39344
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
24 if [ `id -ur` = 0 ]; then
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
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'`
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
26 else
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
27 P="`(exec -l ${theShell} -c 'echo $PATH')`"
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
28 fi
38252
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
29 ;;
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
30 *)
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
31 echo "Sorry, I don't know how to patch $BSH shells"
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
32 exit 0
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
33 ;;
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
34 esac
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
35
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
36 # Now ensure that our bin directory is on $P and before /usr/bin at that
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
37 for elem in `echo $P | tr ':' ' '`
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
38 do
57358
4fae8168c43b Don't use the '==' operator with test, that's an unportable bash-ism.
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 54211
diff changeset
39 if [ "${elem}" = "${PYTHON_ROOT}/bin" ]; then
38252
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
40 echo "All right, you're a python lover already"
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
41 exit 0
57358
4fae8168c43b Don't use the '==' operator with test, that's an unportable bash-ism.
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 54211
diff changeset
42 elif [ "${elem}" = "/usr/bin" ]; then
38252
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
43 break
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
44 fi
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
45 done
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
46
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
47 echo "${PYTHON_ROOT}/bin is not on your PATH or at least not early enough"
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
48 case "${BSH}" in
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
49 *csh)
40060
c339a1a16ec5 MacOSX: add more logic to recognize the correct startup file to patch to the
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 39344
diff changeset
50 if [ -f "${HOME}/.tcshrc" ]; then
c339a1a16ec5 MacOSX: add more logic to recognize the correct startup file to patch to the
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 39344
diff changeset
51 RC="${HOME}/.tcshrc"
c339a1a16ec5 MacOSX: add more logic to recognize the correct startup file to patch to the
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 39344
diff changeset
52 else
c339a1a16ec5 MacOSX: add more logic to recognize the correct startup file to patch to the
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 39344
diff changeset
53 RC="${HOME}/.cshrc"
38252
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
54 fi
40060
c339a1a16ec5 MacOSX: add more logic to recognize the correct startup file to patch to the
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 39344
diff changeset
55 # Create backup copy before patching
c339a1a16ec5 MacOSX: add more logic to recognize the correct startup file to patch to the
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 39344
diff changeset
56 if [ -f "${RC}" ]; then
c339a1a16ec5 MacOSX: add more logic to recognize the correct startup file to patch to the
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 39344
diff changeset
57 cp -fp "${RC}" "${RC}.pysave"
c339a1a16ec5 MacOSX: add more logic to recognize the correct startup file to patch to the
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 39344
diff changeset
58 fi
c339a1a16ec5 MacOSX: add more logic to recognize the correct startup file to patch to the
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 39344
diff changeset
59 echo "" >> "${RC}"
54211
ab23ff2047aa Remove some traces of 'MacPython'
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 52004
diff changeset
60 echo "# Setting PATH for Python ${PYVER}" >> "${RC}"
40060
c339a1a16ec5 MacOSX: add more logic to recognize the correct startup file to patch to the
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 39344
diff changeset
61 echo "# The orginal version is saved in .cshrc.pysave" >> "${RC}"
c339a1a16ec5 MacOSX: add more logic to recognize the correct startup file to patch to the
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 39344
diff changeset
62 echo "set path=(${PYTHON_ROOT}/bin "'$path'")" >> "${RC}"
39344
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
63 if [ `id -ur` = 0 ]; then
40060
c339a1a16ec5 MacOSX: add more logic to recognize the correct startup file to patch to the
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 39344
diff changeset
64 chown "${USER}" "${RC}"
39344
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
65 fi
38252
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
66 exit 0
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
67 ;;
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
68 bash)
39344
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
69 if [ -e "${HOME}/.bash_profile" ]; then
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
70 PR="${HOME}/.bash_profile"
40060
c339a1a16ec5 MacOSX: add more logic to recognize the correct startup file to patch to the
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 39344
diff changeset
71 elif [ -e "${HOME}/.bash_login" ]; then
c339a1a16ec5 MacOSX: add more logic to recognize the correct startup file to patch to the
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 39344
diff changeset
72 PR="${HOME}/.bash_login"
39344
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
73 elif [ -e "${HOME}/.profile" ]; then
38252
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
74 PR="${HOME}/.profile"
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
75 else
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
76 PR="${HOME}/.bash_profile"
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
77 fi
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
78 ;;
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
79 *sh)
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
80 PR="${HOME}/.profile"
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
81 ;;
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
82 esac
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
83
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
84 # Create backup copy before patching
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
85 if [ -f "${PR}" ]; then
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
86 cp -fp "${PR}" "${PR}.pysave"
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
87 fi
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
88 echo "" >> "${PR}"
54211
ab23ff2047aa Remove some traces of 'MacPython'
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 52004
diff changeset
89 echo "# Setting PATH for Python ${PYVER}" >> "${PR}"
38252
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
90 echo "# The orginal version is saved in `basename ${PR}`.pysave" >> "${PR}"
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
91 echo 'PATH="'"${PYTHON_ROOT}/bin"':${PATH}"' >> "${PR}"
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
92 echo 'export PATH' >> "${PR}"
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
93 if [ `id -ur` = 0 ]; then
39344
2f221bdd9f44 Make sure the postinstall action that optionally updates the user's profile
Ronald Oussoren <ronaldoussoren@mac.com>
parents: 38645
diff changeset
94 chown "${USER}" "${PR}"
38252
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
95 fi
75bdd44f85dc An improved script for building the binary distribution on MacOSX.
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
diff changeset
96 exit 0