Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 3 Mar 2010 20:36:41 -0700
From:      Scott Long <scottl@samsco.org>
To:        Ed Schouten <ed@FreeBSD.org>
Cc:        svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org
Subject:   Re: svn commit: r194266 - head/usr.bin/chpass
Message-ID:  <CADA450C-C67C-47DA-BF64-40FFE011B1E9@samsco.org>
In-Reply-To: <200906152105.n5FL50Ju001949@svn.freebsd.org>
References:  <200906152105.n5FL50Ju001949@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

Forcing the entire build to fail if chflags fails breaks installing to an NFS destination.  I haven't tested all possible permutations of src vs dest filesystems mounting, but I don't see how it can work over any type of NFS mount.  What is the reason for forcing this failure?   The NO_FSCHG variable is undocumented, and the failure mode here is pretty useless at helping the user fix the problem.  I'd like to re-add the '-' modifier to the chflags command that you removed.

Scott

On Jun 15, 2009, at 3:05 PM, Ed Schouten wrote:

> Author: ed
> Date: Mon Jun 15 21:05:00 2009
> New Revision: 194266
> URL: http://svn.freebsd.org/changeset/base/194266
> 
> Log:
>  Make the chpass Makefile honour NO_FSCHG.
> 
>  The chpass Makefile tried to set the fschg flag on the binaries, even if
>  NO_FSCHG was passed to the installworld. This meant that if I installed
>  FreeBSD into a Jail, I couldn't installworld from within the Jail
>  anymore.
> 
>  Now that it listens to NO_FSCHG, we can just make it bail out when it
>  fails, just like PRECIOUSPROG does.
> 
> Modified:
>  head/usr.bin/chpass/Makefile
> 
> Modified: head/usr.bin/chpass/Makefile
> ==============================================================================
> --- head/usr.bin/chpass/Makefile	Mon Jun 15 21:03:25 2009	(r194265)
> +++ head/usr.bin/chpass/Makefile	Mon Jun 15 21:05:00 2009	(r194266)
> @@ -39,11 +39,12 @@ MLINKS+= chpass.1 ypchpass.1 chpass.1 yp
> 
> beforeinstall:
> .for i in chpass chfn chsh ypchpass ypchfn ypchsh
> -	[ ! -e ${DESTDIR}${BINDIR}/$i ] || \
> -		chflags noschg ${DESTDIR}${BINDIR}/$i || true
> +	-chflags noschg ${DESTDIR}${BINDIR}/$i
> .endfor
> 
> +.if !defined(NO_FSCHG)
> afterinstall:
> -	-chflags schg ${DESTDIR}${BINDIR}/chpass
> +	chflags schg ${DESTDIR}${BINDIR}/chpass
> +.endif
> 
> .include <bsd.prog.mk>




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CADA450C-C67C-47DA-BF64-40FFE011B1E9>