aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2019-08-15Minor naming improvementBoris Kolpackov2-6/+6
2019-08-15Embed build core version into build system modules as load pathBoris Kolpackov3-12/+27
2019-08-15Add support for bin.lib.load_suffixBoris Kolpackov4-10/+39
This allow the creation of yet another symlink to the shared library that is meant to be used for dynamic loading. For example, we may want to embed the main program interface number into its plugins to make sure that we only load compatible versions.
2019-08-15Fix bug in bin.lib.suffix handlingBoris Kolpackov1-19/+13
2019-08-15Implement libs_paths symlinking support on WindowsBoris Kolpackov3-20/+70
Also, temporarily enable libs_paths::link on Windows for testing.
2019-08-14Remove no longer used lambda captureBoris Kolpackov1-1/+1
2019-08-14Use new mkanylink() from libbutlBoris Kolpackov3-90/+61
2019-08-14Enable libs_paths symlinking logic on WindowsBoris Kolpackov2-25/+28
This should currently be noop since all the paths are set to empty.
2019-08-14Make libs_path::link empty instead of import library path for WindowsBoris Kolpackov2-21/+24
We don't really use this anywhere (in particular, the import library name cannot possibly match the clean pattern).
2019-08-12Use new fdstream constructorBoris Kolpackov2-3/+3
2019-08-12Adjust to fdstream constructor changesBoris Kolpackov1-1/+1
2019-08-07Improve deadlock diagnostics (suppress stack trace, reword)Boris Kolpackov7-14/+32
2019-08-07Tighten deadlock monitor notification logicBoris Kolpackov2-24/+27
2019-08-07Make deadlock detection loop more robustBoris Kolpackov2-9/+26
2019-08-07Distinguish between internal/external wait deactivation in schedulerBoris Kolpackov3-22/+38
This turns out to be necessary for the deadlock detection to work properly.
2019-08-06Implement general deadlock detection via monitoring threadBoris Kolpackov2-56/+103
2019-08-06Improve module name to file name heuristicsBoris Kolpackov2-25/+148
2019-08-02Regenerate options parsing codeBoris Kolpackov4-2/+40
2019-08-01Move bash build system module to separate libraryKaren Arutyunov16-69/+189
2019-08-01Move version build system module to separate libraryKaren Arutyunov24-78/+192
2019-08-01Fix linkage failure due to inline functions defined in ↵Karen Arutyunov9-84/+85
libbuild2/algorithm.ixx and referred from libbuild2/target.txx
2019-08-01Combine multiple single-character flags into a single argument for ↵Karen Arutyunov5-8/+8
testscript commands
2019-07-26Use .gcm extension for both modules and headers in GCCBoris Kolpackov1-12/+1
2019-07-26Remove no longer necessary workaround for GCC modules modeBoris Kolpackov1-4/+0
2019-07-25Implement pre-parse mode for parse_names_trailer()Karen Arutyunov2-2/+25
2019-07-25Fix parse_names_trailer() for 'cross with empty LHS' case ({$empty}{x y})Karen Arutyunov1-0/+1
2019-07-25Work around GCC 4.9 deficienciesBoris Kolpackov1-3/+3
2019-07-24Use CLI-generated classes to parse testscript builtin optionsKaren Arutyunov23-425/+5727
2019-07-24Move in build system module to separate libraryBoris Kolpackov32-146/+324
2019-07-22Mention LDLIBS in addition to LIBS as analogous to *.libsBoris Kolpackov1-3/+3
2019-07-22Temporarily map C++ standard to c++17 in cxx-modules-ex GCC branchBoris Kolpackov1-0/+4
2019-07-11Update libpkgconf version constraint to allow 1.6.xKaren Arutyunov2-2/+2
Also adapt to the new libpkgconf git repository location.
2019-07-11Improve diagnosticsBoris Kolpackov1-4/+5
2019-07-05Preserve timestamp when copying backlinkBoris Kolpackov1-1/+2
2019-07-05Fix incorrect traceBoris Kolpackov1-1/+1
2019-07-05Remove dead code (libu{})Boris Kolpackov3-30/+0
2019-07-05Update bootstrap script/batch/make filesBoris Kolpackov4-21/+30
2019-07-05Move config, dist, test, and install modules into libraryKaren Arutyunov92-280/+333
2019-07-05Fix failing testscript cp builtin testKaren Arutyunov1-15/+10
2019-07-04Remove libu{} target groupBoris Kolpackov9-79/+71
The semantics provided by libu{} is rarely required and as result was not yet documented. However, if you are using it, the new way to achieve the same result is to use both libue{} and libul{} explicitly, for example: exe{foo}: libue{foo} lib{foo}: libul{foo} {libue libul}{foo}: cxx{*}
2019-07-02Add workaround for data race in libstdc++'s locale(const locale&, Facet*) ↵Karen Arutyunov7-8/+66
constructor
2019-07-02Add NEWS file entry for library splitBoris Kolpackov1-0/+14
2019-07-02Minor improvementsBoris Kolpackov3-2/+6
2019-07-02Fix export stubBoris Kolpackov1-4/+13
2019-07-01Split build system into library and driverBoris Kolpackov226-1507/+1990
2019-06-27Fix member-group linkup issue in previous fixBoris Kolpackov3-59/+89
We cannot linkup prerequisite targets since we are not matching them.
2019-06-26Fix C/C++ link rule matching ambiguity by seeing-through utility librariesBoris Kolpackov8-45/+159
2019-06-24Improve fallback tree output with ·Boris Kolpackov1-1/+1
2019-06-24Constrain access to options to build system driver main() onlyBoris Kolpackov12-98/+172
2019-06-21Add support for [config.]{cc,c,cxx}.aoptions (archive options)Boris Kolpackov7-15/+50
In particular, this can be used to suppress lib.exe warnings, for example: cc.aoptions += /IGNORE:4221