aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2019-08-26Add support for for_install prerequisite-specific var in link ruleBoris Kolpackov4-0/+31
Also reserve for_test.
2019-08-26Improve diagnostics in import_module()Boris Kolpackov1-20/+25
2019-08-26Fix bug in import_search()Boris Kolpackov1-2/+2
2019-08-26Fix bug in scope::find_target_key()Boris Kolpackov1-1/+8
2019-08-26Improve diagnosticsBoris Kolpackov1-1/+1
2019-08-26Fix typoKaren Arutyunov1-1/+2
2019-08-26Suppress gcc's 'control reaches end of non-void function' warningKaren Arutyunov1-1/+1
2019-08-26Implement updating build system modulesBoris Kolpackov11-34/+211
2019-08-26Factor target name processing code from parser to scopeBoris Kolpackov4-50/+91
2019-08-26Make target types project-wideBoris Kolpackov12-99/+124
2019-08-25Split import into search and load stepsBoris Kolpackov3-49/+89
This allows us to load things in a separate context.
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