9f405c0369d3: Use a special serial execution context that blocks on execution when using -j1. parallel-execution
Benjamin Smedberg <benjamin@smedbergs.us> - Fri, 20 Feb 2009 09:37:40 -0500 - rev 142
Push 79 by bsmedberg@mozilla.com at 2009-02-20 14:37 +0000
Use a special serial execution context that blocks on execution when using -j1.
a4329e57ff78: Correctly implement separate MAKEFLAGS and actual command line handling so the command line overrides the MAKEFLAGS. optparse is weird parallel-execution
Benjamin Smedberg <benjamin@smedbergs.us> - Fri, 20 Feb 2009 09:16:09 -0500 - rev 141
Push 78 by bsmedberg@mozilla.com at 2009-02-20 14:16 +0000
Correctly implement separate MAKEFLAGS and actual command line handling so the command line overrides the MAKEFLAGS. optparse is weird
b22e68988ccc: Much better context management: we can assert that everything is done within a context as we "finish" it, and we can use multiple contexts without having to wait on each one sequentially. I need to write some more tests, but this has me feeling pretty good. parallel-execution
Benjamin Smedberg <benjamin@smedbergs.us> - Thu, 19 Feb 2009 23:32:16 -0500 - rev 140
Push 78 by bsmedberg@mozilla.com at 2009-02-20 14:16 +0000
Much better context management: we can assert that everything is done within a context as we "finish" it, and we can use multiple contexts without having to wait on each one sequentially. I need to write some more tests, but this has me feeling pretty good.
1d0ad43d2ff7: Pass -j options down, and then ignore them in submakes unless they are -j1... this isn't quite right, but is closer. parallel-execution
Benjamin Smedberg <benjamin@smedbergs.us> - Thu, 19 Feb 2009 22:52:35 -0500 - rev 139
Push 78 by bsmedberg@mozilla.com at 2009-02-20 14:16 +0000
Pass -j options down, and then ignore them in submakes unless they are -j1... this isn't quite right, but is closer.
da00388c96e1: Switch from threads to waitpid, and take deferred Windows pain. parallel-execution
Benjamin Smedberg <benjamin@smedbergs.us> - Thu, 19 Feb 2009 22:42:31 -0500 - rev 138
Push 77 by bsmedberg@mozilla.com at 2009-02-20 03:42 +0000
Switch from threads to waitpid, and take deferred Windows pain.
7e3690d47d4d: Initial implementation of parallel execution. This passes the testsuite, but has some issues. In particular, hitting Ctrl-C during execution tends to not kill everything in a process chain and leaves submakes as running orphans. parallel-execution
Benjamin Smedberg <benjamin@smedbergs.us> - Thu, 19 Feb 2009 22:17:38 -0500 - rev 137
Push 77 by bsmedberg@mozilla.com at 2009-02-20 03:42 +0000
Initial implementation of parallel execution. This passes the testsuite, but has some issues. In particular, hitting Ctrl-C during execution tends to not kill everything in a process chain and leaves submakes as running orphans. I chose threads for process.py primarily because there wasn't a simple way to wait for multiple processes in Windows. I think it's probably a bad choice and I'm going to go back to single-threaded using os.waitpid and some hacky Windows equivalent.
9c0fa7855fb0: Rename remake() (which looks like a public method) to _beingremade() which is clearly private.
Benjamin Smedberg <benjamin@smedbergs.us> - Thu, 19 Feb 2009 10:48:08 -0500 - rev 136
Push 77 by bsmedberg@mozilla.com at 2009-02-20 03:42 +0000
Rename remake() (which looks like a public method) to _beingremade() which is clearly private.
fcb8d4ddd21b: Run submakes within this process if we can.
Benjamin Smedberg <benjamin@smedbergs.us> - Wed, 18 Feb 2009 23:06:22 -0500 - rev 135
Push 76 by bsmedberg@mozilla.com at 2009-02-19 04:06 +0000
Run submakes within this process if we can.
ca40dbbeb55a: Be more careful about blacklisting shell builtins.
Benjamin Smedberg <benjamin@smedbergs.us> - Wed, 18 Feb 2009 18:02:40 -0500 - rev 134
Push 75 by bsmedberg@mozilla.com at 2009-02-18 23:21 +0000
Be more careful about blacklisting shell builtins.
7df5ab3b364f: Skip the shell when there aren't any special metacharacters to worry about.
Benjamin Smedberg <benjamin@smedbergs.us> - Wed, 18 Feb 2009 17:27:01 -0500 - rev 133
Push 75 by bsmedberg@mozilla.com at 2009-02-18 23:21 +0000
Skip the shell when there aren't any special metacharacters to worry about.
f20d24d3c106: Revert debugging code that was accidentally committed.
Benjamin Smedberg <benjamin@smedbergs.us> - Wed, 18 Feb 2009 15:30:43 -0500 - rev 132
Push 74 by bsmedberg@mozilla.com at 2009-02-18 20:30 +0000
Revert debugging code that was accidentally committed.
2d1c99f936f2: Factor out command execution a bit in preparation for recursive-make-within-one-process.
Benjamin Smedberg <benjamin@smedbergs.us> - Wed, 18 Feb 2009 15:23:39 -0500 - rev 131
Push 74 by bsmedberg@mozilla.com at 2009-02-18 20:30 +0000
Factor out command execution a bit in preparation for recursive-make-within-one-process.
67dc20b5210f: Unify command execution in regular and pattern rules.
Benjamin Smedberg <benjamin@smedbergs.us> - Wed, 18 Feb 2009 12:05:13 -0500 - rev 130
Push 73 by bsmedberg@mozilla.com at 2009-02-18 17:05 +0000
Unify command execution in regular and pattern rules.
bc238aefc4d9: Implement -C without actually issuing an os.chdir. This is preparation for same-process recursion.
Benjamin Smedberg <benjamin@smedbergs.us> - Wed, 18 Feb 2009 09:43:55 -0500 - rev 129
Push 72 by bsmedberg@mozilla.com at 2009-02-18 14:44 +0000
Implement -C without actually issuing an os.chdir. This is preparation for same-process recursion.
450813b7b94a: Implement --no-print-directory, and log $(shell) execution... turns out that NSS uses $(shell $(MAKE) --no-print-directory echo-some-variable) and really expects not to have complete control over the output, which is terrifying.
Benjamin Smedberg <benjamin@smedbergs.us> - Tue, 17 Feb 2009 21:02:22 -0500 - rev 128
Push 71 by bsmedberg@mozilla.com at 2009-02-18 02:04 +0000
Implement --no-print-directory, and log $(shell) execution... turns out that NSS uses $(shell $(MAKE) --no-print-directory echo-some-variable) and really expects not to have complete control over the output, which is terrifying.
a080d25e64a6: Don't try to regenerate included makefiles which would always be rebuilt.
Benjamin Smedberg <benjamin@smedbergs.us> - Tue, 17 Feb 2009 19:28:15 -0500 - rev 127
Push 70 by bsmedberg@mozilla.com at 2009-02-18 00:28 +0000
Don't try to regenerate included makefiles which would always be rebuilt.
51a1e6e5e804: When the target of a double-colon rule is present and there are no prerequisites listed, we always remake the target. For a single-colon rule, we never remake the target. This little but important behavior difference eluded me!
Benjamin Smedberg <benjamin@smedbergs.us> - Tue, 17 Feb 2009 15:30:51 -0500 - rev 126
Push 70 by bsmedberg@mozilla.com at 2009-02-18 00:28 +0000
When the target of a double-colon rule is present and there are no prerequisites listed, we always remake the target. For a single-colon rule, we never remake the target. This little but important behavior difference eluded me!
c8a5d22af417: More non-evaluation of conditionals when they can't be active.
Benjamin Smedberg <benjamin@smedbergs.us> - Tue, 17 Feb 2009 15:05:54 -0500 - rev 125
Push 69 by bsmedberg@mozilla.com at 2009-02-17 20:06 +0000
More non-evaluation of conditionals when they can't be active.
2545f3385285: Don't evaluate conditionals if they are initialized in an inactive conditional context.
Benjamin Smedberg <benjamin@smedbergs.us> - Tue, 17 Feb 2009 15:02:41 -0500 - rev 124
Push 69 by bsmedberg@mozilla.com at 2009-02-17 20:06 +0000
Don't evaluate conditionals if they are initialized in an inactive conditional context.
17169ca68e03: Implement automatic wildcard expansion in targets and prerequisites. I hate this, but NSS uses it, and I hate NSS more.
Benjamin Smedberg <benjamin@smedbergs.us> - Tue, 17 Feb 2009 14:46:34 -0500 - rev 123
Push 69 by bsmedberg@mozilla.com at 2009-02-17 20:06 +0000
Implement automatic wildcard expansion in targets and prerequisites. I hate this, but NSS uses it, and I hate NSS more.
(0) -100 -50 -20 +20 +50 +100 tip