Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2017-03-10 | Implement support for wildcard patterns | Boris Kolpackov | 1 | -0/+8 | |
2017-03-04 | Only set install variables if install module has been loaded | Boris Kolpackov | 1 | -23/+30 | |
While generally a good idea, failing to do this trips up our load generation protection. | |||||
2017-03-02 | Implement parallel match | Boris Kolpackov | 4 | -158/+95 | |
2017-02-14 | Redo library meta-information protocol without match_only() | Boris Kolpackov | 1 | -2/+0 | |
2017-02-14 | Modify library mate-information protocol not to use lib{} group | Boris Kolpackov | 3 | -39/+11 | |
2017-02-13 | Tighten target constness further | Boris Kolpackov | 1 | -5/+9 | |
2017-02-13 | Implement parallel operation execution | Boris Kolpackov | 1 | -15/+2 | |
2017-02-13 | Use target:as<> instead of static_cast for target casting | Boris Kolpackov | 1 | -3/+3 | |
2017-02-13 | Pass const target& to recipes | Boris Kolpackov | 3 | -13/+13 | |
2017-02-13 | Implement target_set locking, including extension update | Boris Kolpackov | 1 | -2/+2 | |
2017-02-13 | Store extension in target map key rather than in target | Boris Kolpackov | 1 | -21/+21 | |
This is in preparation for locking its modification/access. | |||||
2017-02-13 | Add bin.vars module | Boris Kolpackov | 2 | -71/+97 | |
Use in cc to make sure hint variables are already registered. | |||||
2017-02-13 | Add model mutex, make var_pool const by default | Boris Kolpackov | 3 | -29/+29 | |
2017-01-24 | Add default constructors to *_rule classes to make older clang happy | Karen Arutyunov | 1 | -0/+4 | |
2017-01-23 | Make rules const throughout | Boris Kolpackov | 1 | -2/+2 | |
2017-01-19 | Get rid of extension_pool | Boris Kolpackov | 2 | -16/+16 | |
2017-01-12 | Implement support for narrowing down tests (config.test) | Boris Kolpackov | 1 | -23/+23 | |
2017-01-09 | Make use of operator<<(ostream, exception) | Karen Arutyunov | 1 | -2/+1 | |
2017-01-06 | Store platform targets as typed target_triplet | Boris Kolpackov | 1 | -14/+16 | |
2017-01-05 | Update copyright year | Boris Kolpackov | 8 | -8/+8 | |
2016-12-16 | Move exe{} to build2 core, add fallback extensions (existing files) | Boris Kolpackov | 3 | -35/+0 | |
2016-11-26 | Add support for VC15 | Karen Arutyunov | 1 | -1/+1 | |
2016-11-04 | Fix Clang and VC warnings | Karen Arutyunov | 1 | -1/+5 | |
2016-11-04 | Cleanup match_result mess | Boris Kolpackov | 2 | -15/+23 | |
2016-11-04 | Implement auxiliary data storage pad in target | Boris Kolpackov | 2 | -1/+3 | |
2016-11-04 | Various design/implementation cleanups | Boris Kolpackov | 1 | -2/+2 | |
2016-08-30 | Add support for target visibility, use for dist, test, install | Boris Kolpackov | 1 | -2/+1 | |
This means we can no longer write: install = false Now it should be: *: install = false | |||||
2016-08-30 | Remove backwards-compatibility kludges | Boris Kolpackov | 1 | -3/+0 | |
2016-08-29 | Implement initial support for library versioning | Boris Kolpackov | 1 | -0/+6 | |
Currently we only support platform-independent versions that get appended to the library name. The magic incantation is this: lib{foo}: bin.lib.version = @-1.2 This will produce libfoo-1.2.so, libfoo-1.2.dll, etc. In the future we will support things like this: lib{foo}: bin.lib.version = linux@1.2.3 freebsd@1.2 windows@1.2 | |||||
2016-08-26 | Add pkg-config support for import installed | Boris Kolpackov | 1 | -2/+2 | |
Redesign library importing/exporting while at it. | |||||
2016-08-22 | Cache process_path, use fallback search directory for binutils | Boris Kolpackov | 3 | -63/+111 | |
2016-08-19 | Implement uninstall operation | Boris Kolpackov | 1 | -0/+1 | |
2016-08-17 | Add config.bin.{prefix,suffix} convenience values | Boris Kolpackov | 1 | -8/+18 | |
These can be used to specify for both lib and exe. | |||||
2016-08-17 | Add support for config.bin.{lib,exe}.{prefix,suffix} | Boris Kolpackov | 1 | -13/+33 | |
This replaces the bin.libprefix functionality. | |||||
2016-08-12 | Rename module to init | Boris Kolpackov | 2 | -6/+6 | |
2016-08-12 | Add support for ordering modules in config.build | Boris Kolpackov | 1 | -0/+4 | |
2016-08-12 | Implement c/cxx toolchain cross-hinting | Boris Kolpackov | 1 | -42/+29 | |
2016-08-12 | Implement support for C compilation | Boris Kolpackov | 2 | -64/+196 | |
We now have two new modules: cc (c-common) and c. | |||||
2016-07-21 | Add backwards-compatibility hack for ranlib | Boris Kolpackov | 1 | -0/+3 | |
2016-07-21 | Save default/hinted ar/ld/rc values as commented out | Boris Kolpackov | 3 | -21/+35 | |
This way, when we, for example, change the C++ compiler (which hinted these values), they will be automatically adjusted as well. | |||||
2016-07-20 | Print project name and out_root in config reports | Boris Kolpackov | 1 | -16/+16 | |
2016-07-20 | Move ar/ranlib to bin.ar sub-module, load in cxx unless shared-only build | Boris Kolpackov | 2 | -68/+111 | |
This way we don't load/configure what we don't need. | |||||
2016-07-19 | Add import library target libi{}, make libs{} the DLL | Boris Kolpackov | 3 | -36/+81 | |
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-17 | Redesign obj to exe/lib mapping | Boris Kolpackov | 4 | -95/+141 | |
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-11 | Add bin.rc module (resource compiler) | Boris Kolpackov | 4 | -24/+178 | |
2016-07-11 | Add bin.ld sub-module | Boris Kolpackov | 4 | -20/+235 | |
2016-07-09 | Add config.bin.pattern, pass it as hint from cxx module | Boris Kolpackov | 1 | -16/+95 | |
With this change we normally no longer need to specify config.bin.ar explicitly when cross-compiling or set it to lib.exe for VC. | |||||
2016-07-01 | Port to MSVC | Karen Arutyunov | 1 | -1/+1 | |
2016-06-27 | Add config.bin.target var/hint, use to decide libso{} install mode | Boris Kolpackov | 1 | -57/+152 | |
Normally the user doesn't need to specify config.bin.target explicitly since the cxx module will hint it. We now also have the whole set of target's components: bin.target.{cpu,vendor,system,version,class} | |||||
2016-06-27 | Get rid of extern "C" in module boot()/init() | Boris Kolpackov | 2 | -16/+16 | |
We will have a separate (extern "C") register() function that will return the pointers to these two. This way we can still throw exceptions from boot() and init(). |