Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2022-06-24 | Add ability to get common interface options via $x.lib_poptions() | Boris Kolpackov | 1 | -21/+56 | |
Specifically, the output target type may now be omitted for utility libraries (libul{} and libu[eas]{}). In this case, only "common interface" options will be returned for lib{} dependencies. This is primarily useful for obtaining poptions to be passed to tools other than C/C++ compilers (for example, Qt moc). | |||||
2022-05-05 | Recognize -pthread as king of -l in *.libs | Boris Kolpackov | 1 | -6/+8 | |
2022-04-13 | Add automatic interface dependency deduplication in cc::process_libraries() | Boris Kolpackov | 1 | -1/+10 | |
2022-02-15 | Diagnose various misuses of library metadata protocol | Boris Kolpackov | 1 | -0/+9 | |
2022-01-21 | Add another overload of to_target(), declare in functions-name.hxx | Boris Kolpackov | 1 | -3/+2 | |
2021-11-24 | Fix bug in attempt to allow calling cc module functions during match | Boris Kolpackov | 1 | -2/+2 | |
2021-11-24 | Allow calling cc module functions during match | Boris Kolpackov | 1 | -2/+8 | |
An ad hoc recipe with dynamic dependency extraction (depdb-dyndep) executes its depdb preamble during match (but after matching all the prerequisites). | |||||
2021-10-07 | Verify libraries and targets they are linked to a for-install-compatible | Boris Kolpackov | 1 | -1/+1 | |
2021-08-12 | Add ${c,cxx}.deduplicate_export_libs() function | Boris Kolpackov | 1 | -0/+59 | |
This function deduplicates interface library dependencies by removing libraries that are also interface dependencies of the specified libraries. This can result in significantly better build performance for heavily interface-interdependent library families (for example, like Boost). Typical usage: import intf_libs = ... import intf_libs += ... ... import intf_libs += ... intf_libs = $cxx.deduplicate_export_libs($intf_libs) | |||||
2021-08-09 | Merge library hashing and collection into single traversal pass | Boris Kolpackov | 1 | -5/+7 | |
It turns out this is a lot faster on deeply-dependent libraries like Boost while not having any noticeable differences for "sane" projects. | |||||
2021-05-13 | Add ${c,cxx}.find_system_{header,library}() functions | Boris Kolpackov | 1 | -2/+82 | |
2020-12-11 | Add $cxx.obj_modules() which returns object files for binless modules | Boris Kolpackov | 1 | -11/+105 | |
2020-12-04 | Mark Buildfile functions as pure or impure | Boris Kolpackov | 1 | -6/+12 | |
2020-12-03 | Add ability to get absolute library paths from ${c,cxx}.lib_libs() | Boris Kolpackov | 1 | -2/+7 | |
2020-11-23 | Suppress duplicates when extracting library options (GitHub issue #114) | Boris Kolpackov | 1 | -23/+49 | |
2020-11-11 | Add ${c,cxx}.lib_{poptions,libs,rpaths}() functions | Boris Kolpackov | 1 | -0/+231 | |
These functions can be used to query library metadata for options and libraries that should be used when compiling/linking dependent targets, similar to how cc::{compile,link}_rule do it. With this support it should be possible to more or less re-create their semantics in ad hoc recipes. |