aboutsummaryrefslogtreecommitdiff
path: root/build2
AgeCommit message (Collapse)AuthorFilesLines
2019-10-29Only use -rdynamic (for backtrace support) on Linux if using glibcBoris Kolpackov1-1/+2
2019-10-29Regenerate options parsing codeBoris Kolpackov1-7/+37
2019-10-28Document default options filesBoris Kolpackov1-8/+40
2019-10-25Add --silent, remap verbosity 0 to 1 while building modules unless silentBoris Kolpackov5-16/+59
Failed that, we may have long periods of seemingly nothing happening (e.g., during implicit bdep sync) while we quietly update the module, which may look like things have hung up.
2019-10-22Add load_builtin_module()Boris Kolpackov1-21/+13
2019-10-22Rename global_mutex_shards to global_mutexesBoris Kolpackov1-3/+3
2019-10-22Move global mutex shards to contextBoris Kolpackov1-15/+12
2019-10-14Implement MSVC installation discovery for version 15 (2017) and laterKaren Arutyunov1-1/+1
In particular, this removes the requirement to build from the Visual Studio command prompt. Note that since MSVC compiler binaries are target-specific (i.e., there are no -m32/-m64 options nor something like /MACHINE), in this case we default to a 64-bit build (a 32-bit build can still be achieved by running from a suitable command prompt). Finally, this mechanism is also used to find Clang bundled with MSVC.
2019-10-06Adapt for building with Clang on WindowsKaren Arutyunov1-2/+2
2019-08-28Cleanup buildfiles some moreBoris Kolpackov1-29/+4
2019-08-28Add build2_cli_load()Karen Arutyunov3-26/+26
2019-08-28Move cxx build system module to separate libraryKaren Arutyunov8-856/+5
2019-08-28Move c build system module to separate libraryKaren Arutyunov5-435/+3
2019-08-28Move cc build system module to separate libraryKaren Arutyunov45-20772/+10
2019-08-28Move bin build system module to separate libraryKaren Arutyunov21-2615/+15
2019-08-27Force use of RPATH instead of RUNPATH on LinuxBoris Kolpackov1-3/+10
RUNPATH messes up our use of dlopen().
2019-08-26Implement auto-import of development build2 buildBoris Kolpackov2-0/+4
2019-08-26Add support for for_install prerequisite-specific var in link ruleBoris Kolpackov2-0/+26
Also reserve for_test.
2019-08-26Implement updating build system modulesBoris Kolpackov1-2/+2
2019-08-26Make target types project-wideBoris Kolpackov3-46/+44
2019-08-23Introduce notion of build contextBoris Kolpackov21-263/+326
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-22Make use of butl::sanitize_identifier()Karen Arutyunov1-9/+2
2019-08-21Make testscripts to ignore user's default options filesKaren Arutyunov6-128/+181
2019-08-21Cleanup context.hxx and its usageBoris Kolpackov7-7/+0
2019-08-21Implement dynamic loading of build system modulesBoris Kolpackov1-41/+44
2019-08-19Revert previous (erroneously pushed to master) commitKaren Arutyunov1-3/+2
2019-08-19Make testscripts to ignore user's default options filesKaren Arutyunov1-2/+3
2019-08-17Revert testing code (link name on Windows)Boris Kolpackov1-2/+1
2019-08-17Add support for default options filesKaren Arutyunov7-6/+304
2019-08-17Add '--std c++11' CLI option in buildfilesKaren Arutyunov1-2/+3
2019-08-16Fix bugs in derive_libs_paths() logicBoris Kolpackov1-23/+29
2019-08-16Cosmetic changesBoris Kolpackov1-2/+2
2019-08-15Redo Windows implementation of install_l() to use uninstall_f()Boris Kolpackov1-2/+2
2019-08-15Fix bug in mkanylink() usageBoris Kolpackov1-5/+5
2019-08-15Minor naming improvementBoris Kolpackov2-6/+6
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 Kolpackov1-8/+26
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 Kolpackov1-52/+20
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-07Improve deadlock diagnostics (suppress stack trace, reword)Boris Kolpackov1-2/+12
2019-08-06Improve module name to file name heuristicsBoris Kolpackov1-25/+101
2019-08-02Regenerate options parsing codeBoris Kolpackov3-1/+40
2019-08-01Move bash build system module to separate libraryKaren Arutyunov9-744/+8
2019-08-01Move version build system module to separate libraryKaren Arutyunov14-1248/+5
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-24Move in build system module to separate libraryBoris Kolpackov12-877/+62