aboutsummaryrefslogtreecommitdiff
path: root/build2/cc
AgeCommit message (Collapse)AuthorFilesLines
2019-08-15Implement libs_paths symlinking support on WindowsBoris Kolpackov1-8/+26
Also, temporarily enable libs_paths::link on Windows for testing.
2019-08-14Remove no longer used lambda captureBoris Kolpackov1-1/+1
2019-08-14Use new mkanylink() from libbutlBoris Kolpackov1-52/+20
2019-08-14Enable libs_paths symlinking logic on WindowsBoris Kolpackov2-25/+28
This should currently be noop since all the paths are set to empty.
2019-08-14Make libs_path::link empty instead of import library path for WindowsBoris Kolpackov2-21/+24
We don't really use this anywhere (in particular, the import library name cannot possibly match the clean pattern).
2019-08-06Improve module name to file name heuristicsBoris Kolpackov1-25/+101
2019-07-26Use .gcm extension for both modules and headers in GCCBoris Kolpackov1-12/+1
2019-07-11Improve diagnosticsBoris Kolpackov1-4/+5
2019-07-05Fix incorrect traceBoris Kolpackov1-1/+1
2019-07-05Move config, dist, test, and install modules into libraryKaren Arutyunov5-6/+7
2019-07-04Remove libu{} target groupBoris Kolpackov4-32/+24
The semantics provided by libu{} is rarely required and as result was not yet documented. However, if you are using it, the new way to achieve the same result is to use both libue{} and libul{} explicitly, for example: exe{foo}: libue{foo} lib{foo}: libul{foo} {libue libul}{foo}: cxx{*}
2019-07-02Minor improvementsBoris Kolpackov1-1/+1
2019-07-01Split build system into library and driverBoris Kolpackov28-108/+108
2019-06-27Fix member-group linkup issue in previous fixBoris Kolpackov2-58/+87
We cannot linkup prerequisite targets since we are not matching them.
2019-06-26Fix C/C++ link rule matching ambiguity by seeing-through utility librariesBoris Kolpackov7-45/+151
2019-06-24Constrain access to options to build system driver main() onlyBoris Kolpackov1-2/+2
2019-06-21Add support for [config.]{cc,c,cxx}.aoptions (archive options)Boris Kolpackov4-11/+23
In particular, this can be used to suppress lib.exe warnings, for example: cc.aoptions += /IGNORE:4221
2019-06-19Improve diagnosticsBoris Kolpackov4-13/+17
2019-06-18Fix crashing on unhandled invalid_path thrown by extract_library_dirs()Karen Arutyunov1-23/+31
2019-06-07Fix /usr/local/{include,lib} logic for Mac OS 10.14Boris Kolpackov1-0/+45
Turns out there /usr/include is no more.
2019-06-07Update module/header unit-related notesBoris Kolpackov1-2/+5
2019-06-07Reply with immediate BMI in case of include translationBoris Kolpackov1-31/+22
2019-06-07Complete and normalize paths in cxx.importable_headersBoris Kolpackov1-22/+37
Also add more header unit include/import tests.
2019-06-06Fix cc link rule matching ambiguity wrt to C/C++ sourcesBoris Kolpackov3-19/+30
Considering a C header as C++ source was definitely a bad idea.
2019-06-06Make preprocessing options order consistent across preprocessing and ↵Karen Arutyunov1-5/+5
compilation compiler runs
2019-06-06Add noteBoris Kolpackov1-0/+5
2019-06-06Redo header path normalization/realization logicBoris Kolpackov1-18/+68
We now try to use the normalized path (which preserves symlinks) if possible and fall back to realized otherwise.
2019-06-05Cosmetic changeBoris Kolpackov1-4/+2
2019-06-05Tweak generated header heuristics, add more diagnosticsBoris Kolpackov1-1/+37
2019-06-05Adjust GCC module mapper to new protocolBoris Kolpackov1-44/+79
2019-06-04Fix header dependency generating with ClangKaren Arutyunov1-1/+1
2019-06-03Adapt to renaming traits alias to traits_type for basic_path, basic_url, and ↵Karen Arutyunov6-22/+23
string_table class templates
2019-06-03Add note on GCC optionsBoris Kolpackov1-0/+2
2019-05-25Update comment with VC version mappingBoris Kolpackov1-1/+4
2019-05-15Cleanup clean_extra() mess (pun intended)Boris Kolpackov2-47/+58
2019-05-15Add noteBoris Kolpackov1-0/+3
2019-05-15Add ability to depend on (declared) ad hoc group memberBoris Kolpackov2-28/+33
2019-05-14Fix pdb{} target clashBoris Kolpackov1-3/+10
2019-05-13Remove order dependence in ad hoc group handlingBoris Kolpackov4-63/+64
Also, don't match group_recipe since we neither execute nor access the state.
2019-05-10Minor cleanups and clarificationsBoris Kolpackov1-4/+6
2019-05-07Work around issues in old compilersBoris Kolpackov2-6/+6
2019-05-06Fix uninitialized variable bugBoris Kolpackov1-1/+1
2019-05-03Add config.{c,cxx}.stdBoris Kolpackov2-4/+19
These values override {c,cxx}.std specified at the project level. In particular, this allows us to force a specific standard for all the projects in a build configuration, for example: b create: conf/,cc config.cxx=g++ config.cxx.std=experimental
2019-05-03Support <>-style header specification in importable_headersBoris Kolpackov2-8/+50
2019-05-03Rename [config.]cxx.header_units to importable_headersBoris Kolpackov4-18/+23
2019-05-03Switch back to blocking compiler communicationBoris Kolpackov1-0/+50
2019-05-01Add noteBoris Kolpackov1-0/+4
2019-05-01Redo module mapper logic not to rely on followup commandsBoris Kolpackov2-83/+103
2019-05-01Fix bug in cc::unit_type initializationBoris Kolpackov1-1/+1
2019-04-30Initial take on header unit and include translation supportBoris Kolpackov14-959/+2101