there's no need to fork/exec to execute comments
authorespie <espie@openbsd.org>
Sun, 9 Jul 2017 15:28:00 +0000 (15:28 +0000)
committerespie <espie@openbsd.org>
Sun, 9 Jul 2017 15:28:00 +0000 (15:28 +0000)
okay millert@

usr.bin/make/engine.c

index f6684cf..2b1437c 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: engine.c,v 1.52 2017/01/29 10:04:13 espie Exp $ */
+/*     $OpenBSD: engine.c,v 1.53 2017/07/09 15:28:00 espie Exp $ */
 /*
  * Copyright (c) 2012 Marc Espie.
  *
@@ -784,6 +784,10 @@ do_run_command(Job *job)
        /* always flush for other stuff */
        fflush(stdout);
 
+       /* Optimization: bypass comments entirely */
+       if (*cmd == '#')
+               return false;
+
        /* Fork and execute the single command. If the fork fails, we abort.  */
        switch (cpid = fork()) {
        case -1: