Re: careless commits disrupt

From: Julian H. Stacey <jhs_at_berklix.com>
Date: Mon, 22 Oct 2018 23:09:06 +0200
Hi, Reference:
> From:		Stefan Esser <se_at_freebsd.org>
> Date:		Fri, 12 Oct 2018 11:44:59 +0200

Stefan Esser wrote:
> Am 12.10.18 um 07:39 schrieb Dag-Erling Sm�rgrav:
> > Julian H. Stacey <jhs_at_berklix.com> writes:
> >> Stefan Esser <se_at_freebsd.org> writes:
> >>> You should also delete old files:
> >>>
> >>> cd /usr/src
> >>> make delete-old
> >>> make delete-old-libs
> >> I just ran that. It deleted lots of stuff. & I'd only run it 2 days ago.
> >> I should have run it just before buildworld though.
> >> It's not suggested in the top of 
> >>   https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html
> >> just at base of page.
> > 
> > That's because you should *never* run delete-old or delete-old-libs from
> > a source tree that is newer than your installed system.  It may delete
> > files which have been obsoleted by changes you haven't yet built and
> > installed, to the point where you may be unable to build and install
> > those changes.  In this particular case, it will, at the very least,
> > break ssh and svn / svnlite.
> 
> Yes, sorry, running make delete-old-libs before buildworld is no good
> idea, unless the old libraries have been copied to /usr/lib/compat before.
> 
> 
> The advice to run "make delete-old-libs" came from the following message
> from Glen Barber:
> 
> https://lists.freebsd.org/pipermail/freebsd-current/2018-October/071581.html
> 
> But the advice was not to delete old files before make buildworld, but only
> before starting the required port upgrades ...
> 
> 
> I might have mentioned, that I always preserve old shared libraries in
> /usr/lib/compat before running "make delete-old-libs". 

Good idea, are you doing that manually, or do you have a patch to share ?

> This allows to run
> old binaries, but prevents linking of new binaries against these libraries
> (should not matter for make buildworld, but for building ports, which I do
> at in the same script that invokes buildworld for critical kernel modules
> that are to be built from ports).
> 
> No binary or library should reference a library whose path contains
> /compat/ after all upgrades have been performed, obviously ...
> 
> Regards, STefan

Cheers,
Julian
-- 
Julian Stacey, Computer Consultant, Systems Engineer, BSD Linux Unix, Munich.
 Brexit referendum stole 3,700,000 Brits votes abroad, inc. 700,000 in EU.
 Campaign lies, criminal funding, economy & pound down. Time for an honest ref.
	http://exitbrexit.uk	https://www.peoples-vote.uk/petition
		https://eci.ec.europa.eu/002/public/#/initiative
Received on Mon Oct 22 2018 - 19:09:43 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:18 UTC