summaryrefslogtreecommitdiffstats
path: root/build2/bin/rule.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Implement missing pieces in utility libraries supportBoris Kolpackov2018-08-251-10/+14
| | | | In particular, we can now build static libraries out of utility libraries.
* Update copyright yearKaren Arutyunov2018-05-191-1/+1
|
* Initial work for default update outer operationBoris Kolpackov2018-02-071-0/+2
| | | | | | 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-031-16/+8
| | | | | Instead we now have two more or less separate match states for outer and inner parts of an action.
* 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
|
* Initial infrastructure for utility librariesBoris Kolpackov2017-07-271-20/+7
|
* C++ modules work: add target typesBoris Kolpackov2017-05-311-0/+14
|
* Add hxx extension for headersKaren Arutyunov2017-05-011-6/+6
|
* Pass target to prerequisite searchBoris Kolpackov2017-04-271-2/+2
|
* Implement parallel matchBoris Kolpackov2017-03-021-44/+11
|
* 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-141-27/+11
|
* 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-131-2/+2
|
* Implement target_set locking, including extension updateBoris Kolpackov2017-02-131-2/+2
|
* Add model mutex, make var_pool const by defaultBoris Kolpackov2017-02-131-8/+8
|
* Get rid of extension_poolBoris Kolpackov2017-01-191-2/+2
|
* Update copyright yearBoris Kolpackov2017-01-051-1/+1
|
* Cleanup match_result messBoris Kolpackov2016-11-041-11/+19
|
* Redesign obj to exe/lib mappingBoris Kolpackov2016-07-171-30/+31
| | | | | | | | | | | | | | | | | | | Specifically: * objso{} and libso{} target types have been renamed to objs{} and libs{} * obje{} has been added (so now we have obje{}, obja{}, and objs{}) * obje{} is now used for building exe{} * object file extensions have been changed to use "hierarchical extensions" that reflect the extension of the corresponding exe/lib target (instead of the -so suffix we used), specifically: obje{}: foo.o, (UNIX), foo.exe.o (MinGW), foo.exe.obj (Windows) obja{}: foo.a.o (UNIX, MinGW), foo.lib.obj (Windows) objs{}: foo.so.o (UNIX), foo.dylib.o (Darwin), foo.dll.o (MinGW), foo.dll.obj (Windows)
* Redesign src/out scopingBoris Kolpackov2016-04-191-2/+2
| | | | | | | | | | We no longer enter paths from the src tree into scope map. Instead, targets from the src tree now include their out tree directory (in essence their "configuration"). This is then used to find a target's scope. See the comment in class target for details. The result of this change is that we can now again build multiple configurations (out trees) for same project at once.
* Add variable cast from lookupBoris Kolpackov2016-03-281-2/+2
|
* New variable architectureBoris Kolpackov2016-03-281-2/+2
|
* <types>/<utility> scheme cleanupBoris Kolpackov2016-02-121-2/+2
|
* Update copyright yearBoris Kolpackov2016-01-091-1/+1
|
* Rename build directory/namespace to build2Boris Kolpackov2016-01-051-0/+145