* Oops. Fix a problem running submakes like $(MAKE) $(MFLAGS). 3.78
authorPaul Smith <psmith@gnu.org>
Wed, 22 Sep 1999 05:57:52 +0000 (05:57 +0000)
committerPaul Smith <psmith@gnu.org>
Wed, 22 Sep 1999 05:57:52 +0000 (05:57 +0000)
ChangeLog
main.c

index 25c432d..9a02343 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,12 @@
-1999-09-17  Paul D. Smith  <psmith@gnu.org>
+1999-09-22  Paul D. Smith  <psmith@gnu.org>
 
        * Version 3.78 released.
 
+       * main.c (main): Only fail on multiple --jobserver-fds options if
+       they aren't all the same.  Some makefiles use things like
+       $(MAKE) $(MFLAGS) which will cause multiple, identical copies of
+       --jobserver-fds to show up.
+
 1999-09-16  Paul D. Smith  <psmith@gnu.org>
 
        * main.c (define_makeflags): Zero out FLAGSTRING to avoid
diff --git a/main.c b/main.c
index 132421b..ec92f01 100644 (file)
--- a/main.c
+++ b/main.c
@@ -1321,8 +1321,9 @@ int main (int argc, char ** argv)
   {
     char *cp;
 
-    if (jobserver_fds->idx > 1)
-      fatal (NILF, _("internal error: multiple --jobserver-fds options"));
+    for (i=1; i < jobserver_fds->idx; ++i)
+      if (!streq (jobserver_fds->list[0], jobserver_fds->list[i]))
+        fatal (NILF, _("internal error: multiple --jobserver-fds options"));
 
     /* Now parse the fds string and make sure it has the proper format.  */