Index: pylib/gyp/generator/make.py |
diff --git a/pylib/gyp/generator/make.py b/pylib/gyp/generator/make.py |
index 16462be79d0674fe2178c6c3c8d0729c79262ab3..5cf2fe76be2841b218fe6cd5ef10d347a1531b4e 100644 |
--- a/pylib/gyp/generator/make.py |
+++ b/pylib/gyp/generator/make.py |
@@ -1741,15 +1741,15 @@ $(obj).$(TOOLSET)/$(TARGET)/%%.o: $(obj)/%%%s FORCE_DO_CMD |
# - Make .INTERMEDIATE depend on the intermediate. |
# - The intermediate file depends on the inputs and executes the |
# actual command. |
- # |
- # For an explanation of the problem and several solutions that don't |
- # work, see this: |
- # http://www.gnu.org/software/hello/manual/automake/Multiple-Outputs.html |
+ # - The intermediate recipe will 'touch' the intermediate file. |
+ # - The multi-output rule will have an do-nothing recipe. |
intermediate = "%s.intermediate" % (command if command else self.target) |
self.WriteLn('%s: %s' % (' '.join(outputs), intermediate)) |
+ self.WriteLn('\t%s' % '@:'); |
self.WriteLn('%s: %s' % ('.INTERMEDIATE', intermediate)) |
self.WriteLn('%s: %s%s' % |
(intermediate, ' '.join(inputs), force_append)) |
+ actions.insert(0, '$(call do_cmd,touch)') |
if actions: |
for action in actions: |