aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2019-08-23Introduce notion of build contextBoris Kolpackov111-2096/+2444
All non-const global state is now in class context and we can now have multiple independent builds going on at the same time.
2019-08-23Disable dynamic build system module loading in bootstrap buildBoris Kolpackov3-8/+19
We don't really need it so why jump through hoops like trying to portably link -ldl, etc.
2019-08-22Link -ldl in bootstrap script/makefileBoris Kolpackov2-2/+2
2019-08-22Make use of butl::sanitize_identifier()Karen Arutyunov1-9/+2
2019-08-21Make testscripts to ignore user's default options filesKaren Arutyunov12-137/+192
2019-08-21Cleanup context.hxx and its usageBoris Kolpackov32-341/+341
2019-08-21Implement dynamic loading of build system modulesBoris Kolpackov11-107/+381
2019-08-20Add build.version.interfaceBoris Kolpackov4-6/+23
This build system interface version should be embedded into build system modules as load_suffix.
2019-08-19Revert previous (erroneously pushed to master) commitKaren Arutyunov7-14/+11
2019-08-19Make testscripts to ignore user's default options filesKaren Arutyunov7-11/+14
2019-08-19Minor cleanupsBoris Kolpackov3-172/+186
2019-08-17Tweak deadlock detection thread wait timeBoris Kolpackov1-3/+3
2019-08-17Revert testing code (link name on Windows)Boris Kolpackov1-2/+1
2019-08-17Add support for default options filesKaren Arutyunov8-8/+312
2019-08-17Add '--std c++11' CLI option in buildfilesKaren Arutyunov2-3/+4
2019-08-16Fix bugs in derive_libs_paths() logicBoris Kolpackov1-23/+29
2019-08-16Minor cleanupsBoris Kolpackov3-25/+20
2019-08-16Cosmetic changesBoris Kolpackov1-2/+2
2019-08-15Redo Windows implementation of install_l() to use uninstall_f()Boris Kolpackov3-58/+64
2019-08-15Fix bug in Windows implementation of install_l()Boris Kolpackov1-3/+3
2019-08-15Fix bug in mkanylink() usageBoris Kolpackov2-6/+14
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