cvs commit: src Makefile.inc1 ObsoleteFiles.inc src/share/man/man7 build.7

Alexander Leidinger netchild at FreeBSD.org
Tue Aug 2 12:06:38 GMT 2005


Ruslan Ermilov <ru at FreeBSD.org> wrote:

> On Sun, Jul 31, 2005 at 10:23:43AM +0200, Alexander Leidinger wrote:
>> On Sun, 31 Jul 2005 09:31:59 +0200
>> des at des.no (Dag-Erling Sm?rgrav) wrote:
>>
>> > Alexander Leidinger <netchild at FreeBSD.org> writes:
>> > > What's more preferred, the use of ".error", or the way you solved it?
>> >
>> > depends on what you think should happen if a user tries
>> >
>> > # make installworld delete-old
>>
>> Ok, point taken.
>>
>> > BTW, I don't really see why {check,delete}-old-* should be restricted
>> > to native environments.  DESTDIR might point to e.g. an NFS-exported
>> > filesystem from which thin clients of a different architecture boot.
>>
>> Because of ObsoleteFiles.inc:
>> ---snip---
>> .if ${MACHINE_ARCH} != "alpha" && ${MACHINE_ARCH} != "sparc64"
>> # 20040130: libkse renamed to libpthread
>> OLD_FILES+=usr/lib/libkse.a
>> OLD_FILES+=usr/lib/libkse.so
>> .endif
>> ---snip---
>>
>> We could change this to TARGET_ARCH instead, but then the user has to
>> set it, else he removes non-obsolete files. Even when we make it a
>> documented requirement, I don't have a good feeling regarding this.
>> There's too much foot-shooting potential if someone forgets to set it.
>> I think it's more user friendly / ergonomic to keep the current
>> restriction. With the restriction in place you need to have 2
>> files (Makefile.inc1 and ObsoleteFiles.inc) or the NFS exported src
>> directory on one client to remove the old files. This is a little bit
>> more work, but forces the administrator to think a little bit about what
>> he does. It's part of my "as failsafe as possible" design of this
>> feature.
>>
>> I don't object when someone wants to remove the restriction based upon
>> a decission of a majority (committers, user complains, whatever).
>>
> TARGET_ARCH is always set in Makefile.inc1.  It's set to MACHINE_ARCH
> by default.  It should be safe to s/MACHINE_ARCH/TARGET_ARCH/ in
> ObsoleteFiles.inc and remove the condition for nativeness.

I wasn't talking about technical restrictions. I know that TARGET_ARCH is
always set, else the MACHINE_ARCH != TARGET_ARCH check wouldn't work.

When an user calls delete-old with DESTDIR set to the root of a non-native
machine architecture he may remove non-obsolete files when he forgets to set
TARGET_ARCH. I want to prevent this situation. I think "failsafe" is more
important than "POLA" in this case.

Warner said it's unlikely that someone will use this feature in a cross-arch
situation (at least I did understand it this way), so what about waiting
until we get user-feedback for this case?

Bye,
Alexander.

-- 
http://www.Leidinger.net/     Alexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org/        netchild @ FreeBSD.org  : PGP ID = 72077137
The Heineken Uncertainty Principle:
	You can never be sure how many beers you had last night.
fr



More information about the cvs-src mailing list