aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2018-02-07Initial work for default update outer operationBoris Kolpackov16-94/+257
While update still uses the old "all update rules update all their prerequisites" assumption, test and install have been fixed not to rely on this.
2018-02-06Increment targe_count for inner operations onlyBoris Kolpackov3-6/+12
2018-02-05Improve /showIncludes parsing diagnosticsBoris Kolpackov1-2/+4
2018-02-05Add tests for auto-generated test inputs/outputsBoris Kolpackov20-57/+129
2018-02-05Rename prerequisite_member::target to prerequisite_member::memberBoris Kolpackov3-23/+23
2018-02-05Fix test and install rules to handle see-through groups correctlyBoris Kolpackov11-132/+297
2018-02-03Work around Clang issueBoris Kolpackov1-0/+2
2018-02-03Work around VC issueBoris Kolpackov1-5/+5
2018-02-03Get rid of action rule override semanticsBoris Kolpackov58-1899/+1935
Instead we now have two more or less separate match states for outer and inner parts of an action.
2018-02-01Diagnose out_base inside src_baseBoris Kolpackov1-0/+8
2018-01-25Don't treat VC non-existent main source file as non-existent headerBoris Kolpackov1-1/+7
2018-01-19Fix bug in header dependency extraction logicBoris Kolpackov1-1/+17
2018-01-19Remove unused codeBoris Kolpackov1-24/+1
2018-01-18Use prefix_map::find_sup/sub()Boris Kolpackov4-21/+11
2018-01-17Add workaround for data race in libstdc++'s ctype<char>::narrow()Karen Arutyunov1-0/+20
2018-01-16Remove unnecessary qualificationBoris Kolpackov1-1/+1
2018-01-08Implement compiler_info cachingBoris Kolpackov11-53/+97
2018-01-08Complete runtime/stdlib detectionBoris Kolpackov11-104/+389
2018-01-05Work around bogus ubsan reportBoris Kolpackov2-2/+3
2018-01-05Initial support for c/cxx runtime/stdlib detectionBoris Kolpackov7-76/+241
2018-01-05Extend find_option_prefix() to return optionBoris Kolpackov3-35/+38
2018-01-05Add cxx.module_name alias for cc.module_nameBoris Kolpackov4-8/+13
2018-01-05Add support for variable aliasesBoris Kolpackov11-63/+168
2018-01-04Load config.build in init(), not boot()Boris Kolpackov13-62/+69
We now make sure the config module is init'ed first.
2018-01-04Fix few undefined behavior (ubsan) bugsBoris Kolpackov2-4/+5
2018-01-02Fix data race (tsan) bugBoris Kolpackov2-12/+15
2018-01-02Fix few undefined behavior (ubsan) bugsBoris Kolpackov9-70/+77
2018-01-01Fix bug in scheduler::wait_idle()Boris Kolpackov1-5/+4
2018-01-01Fix lifetime issue in progress monitoring logicBoris Kolpackov1-2/+3
2018-01-01Fix race in scheduler progress setting logicBoris Kolpackov3-15/+37
2017-12-26Adapt regex to digit(wchar_t) added to libbutlKaren Arutyunov2-2/+4
2017-12-23Use BUILD2_ATOMIC_NON_LOCK_FREE macro to suppress non-lock-free errorsBoris Kolpackov1-1/+7
2017-12-19Remove unused variableKaren Arutyunov1-2/+0
2017-12-17Fix few issues with structured result outputBoris Kolpackov7-18/+23
2017-12-17Diagnose C++ source/output target type mismatch (mxx{} vs cxx{})Boris Kolpackov1-0/+22
2017-12-17Trace non-zero process exit codeBoris Kolpackov4-31/+15
Also convert to using operator<<(ostream,process_exit).
2017-12-17Don't look for group recipe if target state is failedBoris Kolpackov1-2/+3
2017-12-16Improve process execution diagnostics by reusing run_*() APIBoris Kolpackov17-315/+250
2017-12-16Split stream verbosity into components (path, extension)Boris Kolpackov11-85/+112
Use to make sure structured result output always contains absolute target path.
2017-12-16Redo string/stream representation of dir{} name/targetBoris Kolpackov6-46/+170
Now instead of: dir{foo/bar/} We get: foo/dir{bar/} Which feels more consistent with how we print other names/targets. That is, "directory bar/ in directory foo/" similar how foo/exe{bar} is "executable bar in directory foo/".
2017-12-16Generated options code update for previous commitBoris Kolpackov1-8/+14
2017-12-16Add support for structured result output (--structured-result)Boris Kolpackov9-44/+202
2017-12-15Remove unnecessary according to Clang lambda captures to suppress warningsBoris Kolpackov1-4/+4
Apparently, use of a reference to a global variable need not be captured: https://bugs.llvm.org/show_bug.cgi?id=35669
2017-12-15Drop workaround for libpkgconf flags parsing issue (fixed by upstream package)Karen Arutyunov1-53/+2
2017-12-15Adapt to libbutl process API extensionKaren Arutyunov1-17/+23
2017-12-15Update Apple Clang to vanilla Clang version remapping (up to Xcode 9.2)Boris Kolpackov1-2/+14
2017-12-14Fix Windows linking issueBoris Kolpackov1-4/+4
2017-12-13Fix Clang issueBoris Kolpackov1-1/+1
2017-12-13Implement info meta operationBoris Kolpackov24-71/+227
This meta operation can be used to print basic information (name, version, source/output roots, etc) for one or more projects.
2017-12-13Add workaround for libpkgconf flags parsing issueKaren Arutyunov1-0/+50