Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Remove 'using namespace std' from header files, properly namespace all std ↵ | Michael Jones | 2020-09-30 | 1 | -3/+2 |
| | | | | symbols | ||||
* | Make deps=msvc experimentally available on non-Windows. | Nico Weber | 2016-04-06 | 1 | -32/+0 |
| | | | | | | | | | This makes it possible to run most of the clparser tests on non-Windows, and is potentially useful for cross-compiling on non-Windows hosts. Also, the manual didn't document this as Windows-only previously. If you use this on non-Windows, please let me know, else I might undo this change again in the future. | ||||
* | don't alias input/output in ExtractDeps (i.e. actually works now) | Scott Graham | 2015-06-18 | 1 | -2/+3 |
| | |||||
* | propagate include normalization failure to caller instead | Scott Graham | 2015-06-18 | 1 | -2/+3 |
| | |||||
* | Minor style fixes. No functionality change. | Nico Weber | 2013-10-19 | 1 | -1/+2 |
| | |||||
* | add deps_prefix for localized /showIncludes' output parsing | Peter Kümmel | 2013-10-18 | 1 | -2/+2 |
| | |||||
* | Stop `-t msvc -o` from lowercasing paths from /showIncludes output. | Nico Weber | 2013-05-29 | 1 | -3/+2 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | /showIncludes prints absolute paths. If a source file says `#include <WiNdOwS.h>`, /showIncludes will use that spelling in its output for the basename and use the on-disk cache for the directory names in the rest for its output. This makes the .d files created by `-t msvc -o` consistent with the .d files written by gcc and clang. Before this change, `-t msvc -o` would convert this output to lower case. This is a problem if a build step produces a header file with mixed case, such as "RuntimeFeatures.h". Due to the lowercasing, the .d file would contain "runtimefeatures.h", while the build step will create "RuntimeFeatures.h". Due to the case difference, ninja would not realize that regeneration of the .h file would require a rebuild of all source files having the header in the .d file. (On the next build, ninja would rebuild them since stat()ing is not case-sensitive on Windows.) One possible fix for this is to make sure that generators always write generated header files in lower case too, but on Mac gcc doesn't do lower-casing and .d files end up with the case-as-written, so generators would have to be different on Mac and Windows, which is undesirable. If case-insensitve path comparisons are useful, they should be done somewhere else (e.g. in CanonicalizePath()) where they affect both paths read from .d files and paths read from .ninja files. This should then be controlled by a top-level variable. This patch changes behavior, but it only has an effect on generated header files, which aren't common, and it only affects -t msvc, which is still marked as experimental. (cmake doesn't use it yet.) (If a file has both `#include <windows.h>` and `<Windows.h>`, this will now take 2 stat() calls instead of just one, but that should have a negligible cost.) | ||||
* | factor MSVC parsing out of CLWrapper into CLParser | Evan Martin | 2013-04-08 | 1 | -19/+23 |
| | |||||
* | fix spaces in headers for -t msvc | Scott Graham | 2012-09-20 | 1 | -0/+5 |
| | |||||
* | don't emit duplicate headers for msvc helper | Scott Graham | 2012-09-17 | 1 | -2/+2 |
| | |||||
* | pass env block to cl helper | Evan Martin | 2012-08-15 | 1 | -0/+7 |
| | |||||
* | msvc helper: drop system includes | Evan Martin | 2012-08-12 | 1 | -2/+5 |
| | | | | | Drop any #includes that look like they're referencing system headers. This reduces the dependency information considerably. | ||||
* | msvc helper: attempt to filter out when it prints the input filename | Evan Martin | 2012-08-12 | 1 | -0/+6 |
| | | | | This is a heuristic but it appears to work for the Chrome build. | ||||
* | add subprocess-spawning to msvc_helper | Evan Martin | 2012-08-12 | 1 | -0/+9 |
| | | | | | | | | | | Rather than using subprocess.h, reimplement the subprocess code. This allows: 1) using anonymous (instead of named) pipes 2) not using all the completion port craziness 3) printing the output as it happens 4) further variation, like adjusting the environment (in a forthcoming change) without affecting the main subprocess code | ||||
* | add a module for working with MSVC (cl.exe) behavior | Evan Martin | 2012-08-12 | 1 | -0/+29 |
This will be needed for performant builds on Windows. |