summaryrefslogtreecommitdiffstats
path: root/build2/bin
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright yearKaren Arutyunov2019-01-168-8/+8
|
* Only search for external tools (compilers, linkers, etc) in PATHBoris Kolpackov2018-11-051-4/+13
| | | | | | | Specifically, omit the current executable's directory on Windows since there is no reason for them to be found there automagically and this can lead to surprising behavior (for example, our MinGW GCC being used instead of the user's even though the user's is in PATH before ours).
* Fix typoBoris Kolpackov2018-11-021-1/+1
|
* Add config.{c,cxx}.{id,version,target} configuration variablesBoris Kolpackov2018-10-262-10/+10
| | | | | | | These variables allow overriding guessed compiler id/version/target, for example, in case of mis-guesses or when working with compilers that don't report their base (e.g., GCC, Clang) with -v/--version (common in the embedded space).
* Suggest override variable (config.x) when tool is not foundBoris Kolpackov2018-10-191-6/+41
|
* Don't insist on install rules for non-file targetsBoris Kolpackov2018-08-271-2/+2
| | | | This helps with (not) installing libu*{} groups.
* Fix diagnostics bugBoris Kolpackov2018-08-271-2/+1
|
* Implement missing pieces in utility libraries supportBoris Kolpackov2018-08-255-129/+228
| | | | In particular, we can now build static libraries out of utility libraries.
* Use thin archives if available for utility librariesBoris Kolpackov2018-08-143-34/+116
| | | | | Thin archives are supported by GNU ar since binutils 2.19.1 and LLVM ar since LLVM 3.8.0.
* Implement in moduleBoris Kolpackov2018-07-162-3/+3
| | | | | | | | | | | | | | | | | | | | Given test.in containing something along these lines: foo = $foo$ Now we can do: using in file{test}: in{test.in} file{test}: foo = FOO The alternative variable substitution symbol can be specified with the in.symbol variable and lax (instead of the default strict) mode with in.substitution. For example: file{test}: in.symbol = '@' file{test}: in.substitution = lax
* Add built-in support for Windows module definition files (.def)Boris Kolpackov2018-06-123-0/+35
|
* Update copyright yearKaren Arutyunov2018-05-198-8/+8
|
* Fortify GNU binutils detection against vendor customizationsBoris Kolpackov2018-02-221-11/+16
|
* Don't ignore objX{} and bmiX{} prerequisites in cc::link_ruleBoris Kolpackov2018-02-142-16/+60
|
* Initial work for default update outer operationBoris Kolpackov2018-02-072-0/+4
| | | | | | 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.
* Get rid of action rule override semanticsBoris Kolpackov2018-02-035-29/+35
| | | | | Instead we now have two more or less separate match states for outer and inner parts of an action.
* Improve process execution diagnostics by reusing run_*() APIBoris Kolpackov2017-12-162-10/+11
|
* Distinguish between "fixed" and "default" target extensionsBoris Kolpackov2017-12-071-47/+53
| | | | | This fixes wrong merging of, say, file{README} and file{README.MySQL} (in libmysqlclient).
* Improve cc/bin target mismatch diagnosticsBoris Kolpackov2017-12-041-1/+1
|
* Add extracted from pkg-config prerequisite libraries as prerequisitesBoris Kolpackov2017-08-042-3/+7
|
* Reimplement pkg-config generation with more conservative approach for nowBoris Kolpackov2017-08-011-2/+10
|
* Experimental (and probably broken) pkg-config generation supportBoris Kolpackov2017-07-311-10/+2
|
* Implement support for linking whole archiveBoris Kolpackov2017-07-281-0/+18
|
* Initial infrastructure for utility librariesBoris Kolpackov2017-07-275-48/+173
|
* C++ modules work: add target typesBoris Kolpackov2017-05-315-49/+182
|
* Add hxx extension for headersKaren Arutyunov2017-05-018-45/+45
|
* Pass target to prerequisite searchBoris Kolpackov2017-04-272-10/+10
|
* Implement support for wildcard patternsBoris Kolpackov2017-03-101-0/+8
|
* Only set install variables if install module has been loadedBoris Kolpackov2017-03-041-23/+30
| | | | | While generally a good idea, failing to do this trips up our load generation protection.
* Implement parallel matchBoris Kolpackov2017-03-024-158/+95
|
* Redo library meta-information protocol without match_only()Boris Kolpackov2017-02-141-2/+0
|
* Modify library mate-information protocol not to use lib{} groupBoris Kolpackov2017-02-143-39/+11
|
* Tighten target constness furtherBoris Kolpackov2017-02-131-5/+9
|
* Implement parallel operation executionBoris Kolpackov2017-02-131-15/+2
|
* Use target:as<> instead of static_cast for target castingBoris Kolpackov2017-02-131-3/+3
|
* Pass const target& to recipesBoris Kolpackov2017-02-133-13/+13
|
* Implement target_set locking, including extension updateBoris Kolpackov2017-02-131-2/+2
|
* Store extension in target map key rather than in targetBoris Kolpackov2017-02-131-21/+21
| | | | This is in preparation for locking its modification/access.
* Add bin.vars moduleBoris Kolpackov2017-02-132-71/+97
| | | | Use in cc to make sure hint variables are already registered.
* Add model mutex, make var_pool const by defaultBoris Kolpackov2017-02-133-29/+29
|
* Add default constructors to *_rule classes to make older clang happyKaren Arutyunov2017-01-241-0/+4
|
* Make rules const throughoutBoris Kolpackov2017-01-231-2/+2
|
* Get rid of extension_poolBoris Kolpackov2017-01-192-16/+16
|
* Implement support for narrowing down tests (config.test)Boris Kolpackov2017-01-121-23/+23
|
* Make use of operator<<(ostream, exception)Karen Arutyunov2017-01-091-2/+1
|
* Store platform targets as typed target_tripletBoris Kolpackov2017-01-061-14/+16
|
* Update copyright yearBoris Kolpackov2017-01-058-8/+8
|
* Move exe{} to build2 core, add fallback extensions (existing files)Boris Kolpackov2016-12-163-35/+0
|
* Add support for VC15Karen Arutyunov2016-11-261-1/+1
|
* Fix Clang and VC warningsKaren Arutyunov2016-11-041-1/+5
|