Often times, rules are used with a 'host' built generator serving as an 'input' with the 'sources' selected by 'extension' being normal source files. However, in this case it is desired that some of the 'sources' selected by 'extension' be built files from the build output directory. 

The xcode gyp generator has no issue with this, but the msvs, make, and ninja gyp generators have various (and different) issues when rule specific variables (RULE_INPUT_xxx) contain paths into the build output directory. These issues manifest as the rule specific variable not being fully expanded, escaped, or converted as other variables are, mostly due to their somewhat special handing. The fixes for these issues feel more like bug fixes and not new function; currently the generators just silently create projects which will not build (except for make, which noisily does not create projects which would build).

The initial motivation for this change was to allow for a target to run a number of built generators with similar interfaces on the same input. Other possible uses include having a target which runs a number of built unit tests, or having the built outputs of one generator be the inputs to another generator.

R=thakis@chromium.org

Review URL: https://codereview.chromium.org/15771002

git-svn-id: http://gyp.googlecode.com/svn/trunk@1643 78cadc50-ecff-11dd-a971-7dbc132099af
ninja: Enable deps mode on non-windows.

We landed ninja 1.3.4, which should have fixed crbug.com/245034. Trying this
again.

BUG=chromium:245034
R=scottmg@chromium.org

Review URL: https://codereview.chromium.org/15713018

git-svn-id: http://gyp.googlecode.com/svn/trunk@1644 78cadc50-ecff-11dd-a971-7dbc132099af