Date: Sat, 13 Mar 2004 11:57:49 +0100 From: Oliver Eikemeier <eikemeier@fillmore-labs.com> To: Matthias Andree <ma@dt.e-technik.uni-dortmund.de> Cc: ports@freebsd.org Subject: Re: ports/64037 and the alleged && -> ; failure from March 2002 Message-ID: <4052E92D.7050000@fillmore-labs.com> In-Reply-To: <20040313102423.GA6018@merlin.emma.line.org> References: <20040313002807.GA13745@merlin.emma.line.org> <40525BE9.2050208@fillmore-labs.com> <20040313102423.GA6018@merlin.emma.line.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Matthias Andree wrote: > On Sat, 13 Mar 2004, Oliver Eikemeier wrote: >=20 >>I don't agree with the arguments, but I don't understand >> >>- Switch from ; to && in order to not hide cd errors or run the make=20 >>command in >> the wrong directory. >> >>either. Both give >> >> cd: can't cd to /nonexistent >> *** Error code 2 >> >>and stop the build, or do you do use make -i regularly? >=20 > Is it guaranteed that make will always under all circumstances run the > shell with the "-e" flag? And if it does, does GNU make from the ports > do that as well? The '&&' variant will do The Right Thing=AE with and > without the -e flag passed down the /bin/sh, whereas a 'cd /nonexistent= ; > rm -rf * .??*' will happily erase the current working directory if > /nonexistent is non-existent and the shell is run without -e. make will run the shell with -e unless the line starts with `-' or `-i' is given. GNU make is not used for ports Makefiles, only for the ones in the distribution, and you don't want to Patch Them All(tm), do you? Finally I'm not sure if simply ignoring the following command is the right thing to do. I can construct an example where this is fatal too, but IMHO all such examples would be pathological. -Oliver
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4052E92D.7050000>