aboutsummaryrefslogtreecommitdiff
path: root/build2/cc
AgeCommit message (Collapse)AuthorFilesLines
2018-03-20If cc.reprocess is true, define __build2_preprocess during dependency extractionBoris Kolpackov2-14/+42
This can be used to work around separate preprocessing bugs in the compiler.
2018-02-27Improve derivation of binutils pattern from compiler patternBoris Kolpackov1-43/+70
2018-02-26If cc.reprocess is true, then also reprocess when extracting unit infoBoris Kolpackov1-1/+7
2018-02-26Skip multiple CR in CRLF sequence in cc::lexerBoris Kolpackov1-6/+10
2018-02-16Perform ad hoc group resolution instead of resolve_group() in module searchBoris Kolpackov1-5/+15
2018-02-16Fix group link-up race in cc::link_rule::match()Boris Kolpackov1-5/+14
2018-02-16Fix group link-up raceBoris Kolpackov4-15/+27
2018-02-15Improve VC compiler to runtime version mappingBoris Kolpackov1-4/+1
2018-02-15Add support for VC15u6Boris Kolpackov1-1/+3
2018-02-14Don't ignore objX{} and bmiX{} prerequisites in cc::link_ruleBoris Kolpackov3-24/+17
2018-02-14Enable modules support only for VC 15u5 and up, drop hacks for earlierBoris Kolpackov3-43/+7
2018-02-08Update/cleanup comment documentation for inner/outer operation semanticsBoris Kolpackov1-2/+2
2018-02-07Initial work for default update outer operationBoris Kolpackov1-2/+31
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-05Improve /showIncludes parsing diagnosticsBoris Kolpackov1-2/+4
2018-02-05Fix test and install rules to handle see-through groups correctlyBoris Kolpackov2-49/+117
2018-02-03Get rid of action rule override semanticsBoris Kolpackov14-460/+527
Instead we now have two more or less separate match states for outer and inner parts of an action.
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-08Implement compiler_info cachingBoris Kolpackov6-29/+62
2018-01-08Complete runtime/stdlib detectionBoris Kolpackov5-66/+320
2018-01-05Initial support for c/cxx runtime/stdlib detectionBoris Kolpackov5-76/+226
2018-01-05Add cxx.module_name alias for cc.module_nameBoris Kolpackov1-3/+4
2018-01-04Fix few undefined behavior (ubsan) bugsBoris Kolpackov2-4/+5
2017-12-17Diagnose C++ source/output target type mismatch (mxx{} vs cxx{})Boris Kolpackov1-0/+22
2017-12-16Improve process execution diagnostics by reusing run_*() APIBoris Kolpackov6-82/+49
2017-12-15Drop workaround for libpkgconf flags parsing issue (fixed by upstream package)Karen Arutyunov1-53/+2
2017-12-14Fix Windows linking issueBoris Kolpackov1-4/+4
2017-12-13Add workaround for libpkgconf flags parsing issueKaren Arutyunov1-0/+50
2017-12-12Add support for VC 15u5 (compiler version 19.12)Boris Kolpackov2-4/+8
2017-12-11Fix Clang on Windows C runtime library linking logicBoris Kolpackov1-2/+2
2017-12-09Fix git commit id calculationBoris Kolpackov1-1/+1
2017-12-08Improve inconsistent C++ compiler diagnosticsBoris Kolpackov1-2/+16
2017-12-08Link libcmt.lib when building with Clang for win32-msvc targetBoris Kolpackov1-0/+11
2017-12-07Distinguish between "fixed" and "default" target extensionsBoris Kolpackov2-9/+17
This fixes wrong merging of, say, file{README} and file{README.MySQL} (in libmysqlclient).
2017-12-06More work on Clang on Windows/MSVC supportBoris Kolpackov4-151/+147
2017-12-04Remap Clang on Windows target triplet to that of MSVCBoris Kolpackov1-0/+17
2017-12-04Improve cc/bin target mismatch diagnosticsBoris Kolpackov1-3/+7
2017-12-04Recognize empty cc.patternBoris Kolpackov3-6/+6
2017-12-04Improve diagnostics when c-family modules using different toolchainsBoris Kolpackov4-20/+46
We now also warn on toolchain pattern mismatch.
2017-12-04Implement better cross-hinting between c-family modulesBoris Kolpackov4-61/+132
2017-12-01Fix GCC 7 -fimplicit-fallthrough warningsBoris Kolpackov1-7/+3
2017-11-30Implement module sidebuilds cleanup using scope operation callbacksBoris Kolpackov4-17/+68
2017-11-29Reimplement module sidebuilding using an ad hoc subprojectBoris Kolpackov1-30/+82
2017-11-27Add cxx_ prefix to module-related pkg-config variablesBoris Kolpackov1-12/+10
This way we can assume that those are the C++ (language) modules built by the cxx (build system) module.
2017-11-27Add {c,cxx}.class variablesBoris Kolpackov8-270/+378
Compiler class describes a set of compilers that follow more or less the same command line interface. Compilers that don't belong to any of the existing classes are in classes of their own (say, Sun CC would be on its own if we were to support it). Currently defined compiler classes: gcc gcc, clang, clang-apple, icc (on non-Windows) msvc msvc, clang-cl, icc (Windows)
2017-11-24Improve diagnosticsBoris Kolpackov1-2/+11
2017-11-24Fix few bugs in generated header path remapping logicBoris Kolpackov1-6/+11
2017-11-24Add extra library search paths as -L optionsBoris Kolpackov3-37/+45
2017-11-23Fix few typosBoris Kolpackov1-3/+3
2017-11-23Minor changeBoris Kolpackov1-1/+1