]> git.ipfire.org Git - thirdparty/autoconf.git/commitdiff
Document another make bug.
authorEric Blake <ebb9@byu.net>
Thu, 21 Aug 2008 15:32:21 +0000 (09:32 -0600)
committerEric Blake <ebb9@byu.net>
Thu, 21 Aug 2008 15:32:21 +0000 (09:32 -0600)
* doc/autoconf.texi (The Make Macro SHELL): Mention bug in BSD
make, GNU make <= 3.80.

Signed-off-by: Eric Blake <ebb9@byu.net>
ChangeLog
doc/autoconf.texi

index 9b396f91f42783dbc9a07c58fa8af3badc56f9d2..772a4e3decf0634739813b9f41add3a022c69af3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2008-08-21  Eric Blake  <ebb9@byu.net>
 
+       Document another make bug.
+       * doc/autoconf.texi (The Make Macro SHELL): Mention bug in BSD
+       make, GNU make <= 3.80.
+
        Tweak wording about SHELL in Makefile.
        * doc/autoconf.texi (The Make Macro SHELL): Stronger wording on
        the importance of proper SHELL settings.
index 5e5c1ae6ba9480b8dbbaa4069355fb58c29701c6..907bb83a97282ac1cffeea351546b45eda2b5261 100644 (file)
@@ -16368,6 +16368,23 @@ $ @kbd{env SHELL=/bin/tcsh FOO=bar gmake -e}  # GNU make
 bar
 @end example
 
+Conversely, @command{make} is not supposed to export any changes to the
+macro @code{SHELL} to child processes.  Again, many implementations
+break this rule:
+
+@example
+$ @kbd{cat Makefile}
+all:
+        @@echo $(SHELL)
+        @@printenv SHELL
+$ @kbd{env SHELL=sh make -e SHELL=/bin/ksh}   # BSD Make, GNU make 3.80
+/bin/ksh
+/bin/ksh
+$ @kbd{env SHELL=sh gmake -e SHELL=/bin/ksh}  # GNU make 3.81
+/bin/ksh
+sh
+@end example
+
 @node Comments in Make Rules
 @section Comments in Make Rules
 @cindex Comments in @file{Makefile} rules