[1621] in Release_7.7_team
Re: 8.2.17 compiler workaround
daemon@ATHENA.MIT.EDU (Greg Hudson)
Thu Jan 28 12:05:10 1999
To: Jonathon Weiss <jweiss@MIT.EDU>
Cc: Greg Hudson <ghudson@MIT.EDU>, release-team@MIT.EDU
In-Reply-To: Your message of "Thu, 28 Jan 1999 03:02:51 EST."
<199901280802.DAA07025@speaker-for-the-dead.mit.edu>
Date: Thu, 28 Jan 1999 12:04:59 EST
From: Greg Hudson <ghudson@MIT.EDU>
> I'd prefer that "add release; unscrew-8.2.17.sh" work
Okay, though without the .sh.
> 1) people end up running old binaries off the packs against new
> libraries (the reverse skew)
This could only be a problem if Sun screwed up. If a library version
numer doesn't change, old programs should always continue to work with
new libraries. So we should test to make sure that the 8.2.15 crontab
utilities and ld work after the script is run, but it isn't a big
concern.
> Is there a reason you are linking some things off onto the packs
> rather than just bringing new copies local?
Simply because that's what the release will do. If we're going to let
people run the script pre-release, then we'd want to copy them local
(total size 300K) instead.
I'll have to go into E40 and test this, but perhaps you're looking for
something like:
#!/bin/sh
force=false
while getopts f opt; do
case $opt in
f)
force=true
;;
\?)
echo "Usage: $0 [-f]" 1>&2
exit 1
;;
esac
done
case $force in
false)
version=`awk '{a=$5}; END{print a}' /etc/athena/version`
case "$version" in
8.2.[0-9]|8.2.1[0-5])
;;
*)
echo "Your workstation version is $version. This" 1>&2
echo "script is only for machines running 8.2.0 through" 1>&2
echo "8.2.15." 1>&2
exit 1
;;
esac
true)
;;
esac
os=/afs/dev.mit.edu/system/sun4x_56/os
for i in ld.so.2 lddbg.so.4 bsm.so.1 elf.so.1; do
cp -p $os/usr/lib/lib$i /usr/lib/lib$i.new
mv /usr/lib/lib$i.new /usr/lib/lib$i
done
echo "/usr/lib updated. ld, crontab, at, atq, and atrm should now work with"
echo "8.2.17 system packs."