lto: no sub-make when --jobserver-auth= is missing
authorMartin Liska <mliska@suse.cz>
Mon, 26 Oct 2020 17:56:52 +0000 (18:56 +0100)
committerMartin Liska <mliska@suse.cz>
Tue, 27 Oct 2020 07:29:46 +0000 (08:29 +0100)
We newly correctly detect that a job server is not active for
a LTO linking:

lto-wrapper: warning: jobserver is not available: '--jobserver-auth=' is not present in 'MAKEFLAGS'

In that situation we should not call make -f abc.mk as it can leed
to N^2 LTRANS units.

gcc/ChangeLog:

* lto-wrapper.c (run_gcc): Do not use sub-make when jobserver is
not detected properly.

gcc/lto-wrapper.c

index b2af3ca..fe10f4f 100644 (file)
@@ -1582,7 +1582,11 @@ run_gcc (unsigned argc, char *argv[])
     {
       const char *jobserver_error = jobserver_active_p ();
       if (jobserver && jobserver_error != NULL)
-       warning (0, jobserver_error);
+       {
+         warning (0, jobserver_error);
+         parallel = 0;
+         jobserver = 0;
+       }
       else if (!jobserver && jobserver_error == NULL)
        {
          parallel = 1;