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>

_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to