Date: Sun, 25 Jun 2017 20:24:21 -0700 From: Mark Millard <markmi@dsl-only.net> To: Justin Hibbits <jhibbits@freebsd.org> Cc: ppc@freebsd.org Subject: Re: r320347: ABI breakage for 32-bit powerpc, introduction of 64-bit time_t Message-ID: <0D344289-1A8F-4550-B07B-EFA48E058D5B@dsl-only.net> In-Reply-To: <CAHSQbTDe_ex_vJ3JTePnVfafEUegE0s3J3DQtxUfyu5j3Kmc-w@mail.gmail.com> References: <CAHSQbTDe_ex_vJ3JTePnVfafEUegE0s3J3DQtxUfyu5j3Kmc-w@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
[pkg delete -a and pkg remove -a do not work as documented --at least in any context that I've tried. See bugzilla 219979.] On 2017-Jun-25, at 7:34 PM, Justin Hibbits <jhibbits@freebsd.org> wrote: > Hi all, > > Thanks to the testing by Andreas Tobler, and others, 32-bit powerpc targets > (powerpc.powerpc, powerpc.powerpcspe) now use a 64-bit time_t. This is a > significant ABI breakage, and as such should be handled with care. For > one, live in-place updates cannot be done. You must install via an > alternate root. Additionally, all ports, and any local binaries, must be > recompiled with the new ABI, or bad/strange/bizarre things could happen. > > The safest route is to perform a clean install. Second to that, the > following procedure could be used to perform an upgrade: > > * Boot to an alternate medium (CD, DVD, memstick, temporary image on swap, > or another hard drive, etc) > * Mount your runtime filesystems to, e.g., /mnt > * pkg remove -a on your runtime system (in chroot) Unfortunately pkg delete -a and pkg remove -a stop at pkg itself and do not deal with the rest in the order it processes the packages. (pkg need not be last.) See bugzilla 219979. Even if only pkg was left behind it sounds like pkg also needs to be gotten rid of (creating the powerpc pkg bootstrap problem in its place). The force flag (-f) likely can be used to enable pkg to include itself. I've not tried to know if it deals with the other packages that come after it in its order of going through the packages. > * Install to /mnt > * Rebuild all ports > * Reboot to new y2038-safe system As I remember there is not even a minimal powerpc (or powerpc64) repository that provides only a pkg package for the standard pkg bootstrap. So once pkg is gone it can not be used in its own build/installation sequence until that sequence has established pkg as available. This aspect also applies to the clean-install sequence if I remember right: there is no pkg present after that install. What is available tries to find a repository to get a pkg package from --and fails last I knew. It has been a long time since I've dealt with this issue. === Mark Millard markmi at dsl-only.net
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?0D344289-1A8F-4550-B07B-EFA48E058D5B>