Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2016-08-12 | Implement support for C compilation | Boris Kolpackov | 1 | -1497/+0 | |
We now have two new modules: cc (c-common) and c. | |||||
2016-08-10 | Add ignore case support for find_option() | Karen Arutyunov | 1 | -4/+1 | |
2016-08-02 | Cosmetic change | Boris Kolpackov | 1 | -3/+3 | |
2016-08-02 | Check for eof before streaming rdbuf | Boris Kolpackov | 1 | -3/+9 | |
2016-08-02 | Filter gratuitous VC cl.exe and link.exe messages | Boris Kolpackov | 1 | -12/+37 | |
2016-07-29 | Suppress VC banners even at verbosity above 2 | Boris Kolpackov | 1 | -2/+1 | |
There is really no use seeing this stuff. | |||||
2016-07-29 | Make /EHsc and /MD default for VC compiler | Boris Kolpackov | 1 | -4/+45 | |
2016-07-23 | Adapt to fdstream extension | Karen Arutyunov | 1 | -134/+138 | |
2016-07-22 | Incorporate target to link rule's depdb | Boris Kolpackov | 1 | -1/+3 | |
Since there is no guarantee that the target is part of the linker's checksum. | |||||
2016-07-21 | Save config vars in order specified rather than alphabetically | Boris Kolpackov | 1 | -1/+1 | |
This way we can group them semantically which results in easier to understand config.build output. | |||||
2016-07-19 | Add import library target libi{}, make libs{} the DLL | Boris Kolpackov | 1 | -2/+2 | |
In the end, having libs{} be the DLL with import library being its member is more natural than making libs{} the import library and having dll{} as its member. | |||||
2016-07-19 | Add support for building DLLs with VC | Boris Kolpackov | 1 | -11/+15 | |
2016-07-18 | Pick liba{}/libs{} before looking up cxx.export.* | Boris Kolpackov | 1 | -25/+45 | |
This way we can specify static library-specific defines which are necessary to handle DLL export. | |||||
2016-07-17 | Redesign obj to exe/lib mapping | Boris Kolpackov | 1 | -17/+63 | |
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) | |||||
2016-07-15 | Name and cleanup extra VC files (.pdb, .ilk, .idb) | Boris Kolpackov | 1 | -6/+51 | |
2016-07-08 | Add dependency on fsdir{} in alias rules | Boris Kolpackov | 1 | -1/+1 | |
This makes sure that a directory with only dir{} target gets cleaned up. | |||||
2016-06-18 | Port to MinGW | Karen Arutyunov | 1 | -6/+32 | |
2016-06-17 | Initial take on DLL support for MinGW toolchain | Boris Kolpackov | 1 | -3/+3 | |
2016-06-11 | Initial VC++ support (static libraries only) | Boris Kolpackov | 1 | -79/+348 | |
2016-04-23 | Revert back to using root scope in src_out()/out_src() | Boris Kolpackov | 1 | -2/+2 | |
Relaxing it to base was not wise since we can have "sideways" prerequisites (those from parallel directories such as brep's ../web/*). | |||||
2016-04-21 | Implement short-circuiting to group state | Boris Kolpackov | 1 | -3/+5 | |
This is necessary to get rid of bogus restarts in inject_prerequisites() where it think a group member was updated since its state changed from unknown to (group's) changed. | |||||
2016-04-19 | Redesign src/out scoping | Boris Kolpackov | 1 | -4/+16 | |
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. | |||||
2016-03-31 | Clean up variable lookup interfaces | Boris Kolpackov | 1 | -1/+1 | |
2016-03-28 | Clean up variable usage | Boris Kolpackov | 1 | -4/+4 | |
2016-03-28 | Add variable cast from lookup | Boris Kolpackov | 1 | -8/+8 | |
2016-03-28 | New variable architecture | Boris Kolpackov | 1 | -8/+8 | |
2016-03-16 | Change prerequisite cleaning "limit" from subdirectories to same project | Boris Kolpackov | 1 | -3/+4 | |
One day we will get this right. | |||||
2016-03-15 | Don't realize() header path if it comes from depdb | Boris Kolpackov | 1 | -2/+4 | |
2016-03-14 | Don't add non-existent/non-updatable headers to depdb | Boris Kolpackov | 1 | -9/+7 | |
2016-03-11 | Implement --config-{guess,sub} options | Boris Kolpackov | 1 | -2/+0 | |
2016-03-10 | Rename cxx.host.* to cxx.target.* | Boris Kolpackov | 1 | -3/+3 | |
2016-03-09 | Use depdb in cxx.link rule | Boris Kolpackov | 1 | -59/+29 | |
2016-03-09 | Force creation of output directory before opening depdb | Boris Kolpackov | 1 | -1/+15 | |
2016-03-08 | Fix depdb/target update race | Boris Kolpackov | 1 | -2/+3 | |
2016-03-07 | Use cxx.checksum value in cxx.compile depdb | Boris Kolpackov | 1 | -11/+11 | |
2016-03-07 | Remove the depdb (.d) files when cleaning | Boris Kolpackov | 1 | -1/+1 | |
2016-03-07 | Implement compiler guessing, including icc and msvc | Boris Kolpackov | 1 | -1/+2 | |
2016-02-29 | Rename level[1-6]() to l[1-6]() | Boris Kolpackov | 1 | -13/+13 | |
2016-02-29 | Implement auxiliary dependency database (.d files), use in cxx.compile | Boris Kolpackov | 1 | -289/+496 | |
This is part of the "High Fidelity Build" work. | |||||
2016-02-15 | Skip until end of -M output instead of just closing pipe | Boris Kolpackov | 1 | -3/+8 | |
Clang 3.7.0 on Fedora didn't like that. | |||||
2016-02-14 | Revert back to only cleaning targets in subdirectories | Boris Kolpackov | 1 | -7/+2 | |
Cleaning everything as long as it is in the same strong amalgamation had some undesirable side effects. For example, in bpkg, upgrading a package (which requires clean/reconfigure) led to all its prerequisite being cleaned as well and then rebuilt. That was very surprising. | |||||
2016-02-12 | <types>/<utility> scheme cleanup | Boris Kolpackov | 1 | -5/+0 | |
2016-02-12 | Don't call realize() on non-existing header paths | Boris Kolpackov | 1 | -7/+9 | |
2016-02-12 | Use path::realize() instead of normalize() for extracted dependencies | Boris Kolpackov | 1 | -1/+9 | |
2016-01-27 | Add support for Mac OS target (-dynamiclib, -install_name, @rpath, .dylib) | Boris Kolpackov | 1 | -2/+10 | |
2016-01-09 | Update copyright year | Boris Kolpackov | 1 | -1/+1 | |
2016-01-05 | Rename build directory/namespace to build2 | Boris Kolpackov | 1 | -0/+794 | |