From owner-freebsd-ppc@freebsd.org Mon Jun 26 03:24:31 2017 Return-Path: Delivered-To: freebsd-ppc@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 10068DA0052 for ; Mon, 26 Jun 2017 03:24:31 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id E8C9C2E73 for ; Mon, 26 Jun 2017 03:24:30 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: by mailman.ysv.freebsd.org (Postfix) id E47A7DA004E; Mon, 26 Jun 2017 03:24:30 +0000 (UTC) Delivered-To: ppc@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E41D6DA004D for ; Mon, 26 Jun 2017 03:24:30 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: from asp.reflexion.net (outbound-mail-210-43.reflexion.net [208.70.210.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 962B52E6C for ; Mon, 26 Jun 2017 03:24:29 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: (qmail 14805 invoked from network); 26 Jun 2017 03:24:22 -0000 Received: from unknown (HELO mail-cs-02.app.dca.reflexion.local) (10.81.19.2) by 0 (rfx-qmail) with SMTP; 26 Jun 2017 03:24:22 -0000 Received: by mail-cs-02.app.dca.reflexion.local (Reflexion email security v8.40.1) with SMTP; Sun, 25 Jun 2017 23:24:22 -0400 (EDT) Received: (qmail 18555 invoked from network); 26 Jun 2017 03:24:22 -0000 Received: from unknown (HELO iron2.pdx.net) (69.64.224.71) by 0 (rfx-qmail) with (AES256-SHA encrypted) SMTP; 26 Jun 2017 03:24:22 -0000 Received: from [192.168.1.114] (c-76-115-7-162.hsd1.or.comcast.net [76.115.7.162]) by iron2.pdx.net (Postfix) with ESMTPSA id 149CDEC7925; Sun, 25 Jun 2017 20:24:22 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\)) Subject: Re: r320347: ABI breakage for 32-bit powerpc, introduction of 64-bit time_t From: Mark Millard In-Reply-To: Date: Sun, 25 Jun 2017 20:24:21 -0700 Cc: ppc@freebsd.org Content-Transfer-Encoding: 7bit Message-Id: <0D344289-1A8F-4550-B07B-EFA48E058D5B@dsl-only.net> References: To: Justin Hibbits X-Mailer: Apple Mail (2.3273) X-BeenThere: freebsd-ppc@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Porting FreeBSD to the PowerPC List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 26 Jun 2017 03:24:31 -0000 [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 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