aboutsummaryrefslogtreecommitdiff
path: root/build2/cc/link.cxx
AgeCommit message (Collapse)AuthorFilesLines
2018-02-03Get rid of action rule override semanticsBoris Kolpackov1-2108/+0
Instead we now have two more or less separate match states for outer and inner parts of an action.
2017-12-16Improve process execution diagnostics by reusing run_*() APIBoris Kolpackov1-21/+4
2017-12-14Fix Windows linking issueBoris Kolpackov1-4/+4
2017-12-11Fix Clang on Windows C runtime library linking logicBoris Kolpackov1-2/+2
2017-12-08Link libcmt.lib when building with Clang for win32-msvc targetBoris Kolpackov1-0/+11
2017-12-06More work on Clang on Windows/MSVC supportBoris Kolpackov1-137/+134
2017-11-27Add {c,cxx}.class variablesBoris Kolpackov1-15/+15
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-24Add extra library search paths as -L optionsBoris Kolpackov1-1/+12
2017-11-21Recursively check timestamps of libraries we are linkingBoris Kolpackov1-6/+27
2017-11-09Initial support for prerequisite-specific variables, use for bin.wholeBoris Kolpackov1-3/+5
2017-11-09Fix bug in handling of empty target name prefixes (e.g., bin.lib.prefix)Boris Kolpackov1-1/+1
2017-10-06Fix old .ilk files cleanupKaren Arutyunov1-2/+2
2017-10-06Fix old libs cleanup not to remove unrelated filesKaren Arutyunov1-2/+8
2017-10-03Adapt to modularization of libbutlKaren Arutyunov1-2/+2
2017-09-25Get rid of pkgconfig moduleKaren Arutyunov1-5/+2
2017-08-04Implement sidebuilding of installed modulesBoris Kolpackov1-2/+4
2017-08-01Reimplement pkg-config generation with more conservative approach for nowBoris Kolpackov1-1/+26
2017-07-31Experimental (and probably broken) pkg-config generation supportBoris Kolpackov1-49/+71
2017-07-29Create libu{} and obj{} groups even if they don't existBoris Kolpackov1-3/+3
Failed that target-type/pattern-specific variables for groups may not have effect.
2017-07-29Refine utility library semantics with "see through" themeBoris Kolpackov1-4/+6
2017-07-29Delete archive before regeneratingBoris Kolpackov1-0/+11
2017-07-28Implement support for linking whole archiveBoris Kolpackov1-27/+82
2017-07-27Initial infrastructure for utility librariesBoris Kolpackov1-167/+238
2017-07-27Fix to print to diagnostics stream instead of std::cerrKaren Arutyunov1-4/+3
2017-06-20Fix bug in bmi{} rule chainingBoris Kolpackov1-2/+8
2017-06-08Implement rule chaining for modulesBoris Kolpackov1-237/+287
2017-06-02Link support for modules: link object member, synthesize rulesBoris Kolpackov1-40/+78
2017-06-01Implement module interface unit compilation for Clang and VCBoris Kolpackov1-15/+1
2017-05-31C++ modules work: add target typesBoris Kolpackov1-1/+1
2017-05-30Rework C/C++ standard translation in preparation for experimental/modulesBoris Kolpackov1-1/+1
Also fix bug in clang-apple versioning.
2017-05-25Extract C++ modules informationBoris Kolpackov1-1/+1
For now we do it for every translation unit in order to test our C++ lexer and parser.
2017-05-25Add compiler_id enumBoris Kolpackov1-9/+11
2017-05-01Add hxx extension for headersKaren Arutyunov1-13/+13
2017-04-28Improve versioned library cleanupBoris Kolpackov1-2/+4
2017-04-28Automatically cleanup previous versioned librariesBoris Kolpackov1-4/+53
2017-04-27Pass target to prerequisite searchBoris Kolpackov1-6/+6
2017-04-24Add change flag in addition to timestamp in Windows manifest logicBoris Kolpackov1-6/+8
Essentially the same idea as with using target_state::changed in case the timestamps are equal (due to insufficient resolution).
2017-04-10Adapt to process_error changeKaren Arutyunov1-3/+3
2017-04-01Rename target triplet "macosx" class to "macos"Boris Kolpackov1-3/+3
2017-03-02Implement parallel matchBoris Kolpackov1-228/+306
2017-02-14Redo library meta-information protocol without match_only()Boris Kolpackov1-65/+58
2017-02-14Modify library mate-information protocol not to use lib{} groupBoris Kolpackov1-11/+11
2017-02-13Do some naming cleanupsBoris Kolpackov1-1/+1
2017-02-13Use target:as<> instead of static_cast for target castingBoris Kolpackov1-13/+13
2017-02-13Tighten code that operates during both search/match and executeBoris Kolpackov1-2/+2
2017-02-13Pass const target& to recipesBoris Kolpackov1-59/+63
2017-02-13Implement target_set locking, including extension updateBoris Kolpackov1-2/+2
2017-02-13Store extension in target map key rather than in targetBoris Kolpackov1-1/+1
This is in preparation for locking its modification/access.
2017-02-13Pass const scope& where modification should not happenBoris Kolpackov1-7/+13
2017-02-13Add model mutex, make var_pool const by defaultBoris Kolpackov1-11/+11