This is the fix for 5.1, where only the behaviour on upgrade is changed:
If the server was stopped when the upgrade begins, we assume the
administrator is taking manual action, so we do not start the (new)
server at the end of the upgrade.
We still install the start/stop script, so it will be started on reboot.
support-files/mysql.spec.sh:
In the "pre" section of the spec file, check the server status, and write
the result to a file.
In the "post" section, evaluate the status file, and start the server if
it was running during status analysis.
In 5.1, we start the server if there is no status file (which will happen
on first installation, when there is no data directory yet).