aboutsummaryrefslogtreecommitdiff
path: root/build/root.build
AgeCommit message (Collapse)AuthorFilesLines
2022-07-05Switch to using libpkg-config instead of libpkgconf by defaultBoris Kolpackov1-0/+8
The use of (now deprecated) libpkgconf is still possible by setting config.build2.libpkgconf to true. Note that libpkgconf is known to have issues on Windows and Mac OS so this should only be used on Linux and maybe BSDs. Also note that we will only keep this until upstream (again) breaks backwards compatibility at which point we will drop this support.
2022-01-17Use UTF-8 as default input/source charset for C/C++ compilationBoris Kolpackov1-1/+1
2021-07-07Disable GCC -Wstringop-overread (false positives in GCC 11, bug 101361)Boris Kolpackov1-1/+2
2021-04-20Disable bunch of bogus GCC warningsBoris Kolpackov1-0/+2
2020-12-14Suppress VC's 'character cannot be represented in current code page' warning ↵Karen Arutyunov1-1/+1
(C4819)
2020-06-12Make order of imports stable in saved host build configurationBoris Kolpackov1-0/+6
2020-02-07Drop copyright notice from source codeKaren Arutyunov1-1/+0
2019-10-14Implement MSVC installation discovery for version 15 (2017) and laterKaren Arutyunov1-0/+4
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-3/+3
2019-07-01Split build system into library and driverBoris Kolpackov1-1/+1
2019-03-08Use new setup for unit testsKaren Arutyunov1-6/+0
2019-01-16Update copyright yearKaren Arutyunov1-1/+1
2018-12-03Suppress MSVC warnings at project levelBoris Kolpackov1-0/+6
2018-11-28Add config.hxx.in config header, move stage status thereBoris Kolpackov1-0/+2
2018-09-03Use (native) C and C++ compilers we were built with as defaultsBoris Kolpackov1-0/+5
2018-05-19Update copyright yearKaren Arutyunov1-1/+1
2017-07-29Refine utility library semantics with "see through" themeBoris Kolpackov1-0/+2
2017-07-28Use utility library to arrange unit testingBoris Kolpackov1-3/+3
2017-05-01Add hxx extension for headersKaren Arutyunov1-1/+1
2017-03-03Remove no longer necessary cli target type definitionBoris Kolpackov1-8/+2
2017-01-12Don't by default treat exe{} in tests/ as testsBoris Kolpackov1-2/+1
2017-01-09Implement test.target variableBoris Kolpackov1-0/+4
The plan is to use it for the portable path conversions.
2017-01-05Update copyright yearBoris Kolpackov1-1/+1
2016-12-14Add support for cxx.std=latest, use when building build2Boris Kolpackov1-1/+1
2016-12-09Initial parallel scheduler implementation, use to run testscripsBoris Kolpackov1-2/+3
2016-11-30Add support for typed/untyped concatenated expansionBoris Kolpackov1-1/+1
2016-08-30Build infrastructure updateBoris Kolpackov1-0/+14
2016-08-30Add support for target visibility, use for dist, test, installBoris Kolpackov1-2/+1
This means we can no longer write: install = false Now it should be: *: install = false
2016-08-30Remove backwards-compatibility kludgesBoris Kolpackov1-8/+1
2016-08-27Clean up library export, make c and cxx modules project root onlyBoris Kolpackov1-1/+2
So now c and cxx modules can only be loaded in project root scope (normally root.build). Also, the c.std and cxx.std must now be set *before* loading the module to take effect. This means we won't be able to handle old buildfiles anymore but old versions of build2 should be able to handle new *.std placement.
2016-04-23Backwards-compatibility fixesBoris Kolpackov1-1/+7
2016-04-12Change text.exe to exe{*}:test (BC change)Boris Kolpackov1-1/+2
2016-01-09Update copyright yearBoris Kolpackov1-1/+1
2015-12-14Search out_root before src_root for headersBoris Kolpackov1-1/+1
2015-12-14Add support for variable prepend operator: =+Boris Kolpackov1-1/+1
2015-12-03Use 'extension' variable for cxx target types, .*xx extensions by defaultBoris Kolpackov1-4/+4
One can also do: define cpp: cxx cpp{*}: extension = cpp cpp{foo}: # foo.cpp
2015-11-30Add install supportBoris Kolpackov1-5/+3
2015-09-08Implement single quote supportBoris Kolpackov1-0/+7
2015-06-24Implement proper target type detection in dependency injectionBoris Kolpackov1-0/+5
2015-06-18Add headers to buildfiles, move tests/build/ to tests/Boris Kolpackov1-0/+4
2015-04-28Make config module implicitly load config.build if existsBoris Kolpackov1-2/+0
2015-04-01Implement initial C++ configuration supportBoris Kolpackov1-0/+5
2015-03-25Configure/disfigure src_root saving/removing support; fsdir{} injectionBoris Kolpackov1-3/+1
We can now build out-of-tree.
2015-03-20New consolidated load/match/build loopBoris Kolpackov1-2/+1
2015-03-18Implement complete root/base detection, basic module supportBoris Kolpackov1-0/+4
This is the initial groundwork for the configuration support.