aboutsummaryrefslogtreecommitdiff
path: root/build2/test
AgeCommit message (Collapse)AuthorFilesLines
2019-07-05Move config, dist, test, and install modules into libraryKaren Arutyunov54-17444/+0
2019-07-02Add workaround for data race in libstdc++'s locale(const locale&, Facet*) ↵Karen Arutyunov5-3/+55
constructor
2019-07-01Split build system into library and driverBoris Kolpackov22-65/+67
2019-06-24Constrain access to options to build system driver main() onlyBoris Kolpackov1-1/+4
2019-06-19Improve diagnosticsBoris Kolpackov1-1/+1
2019-06-05Add test id verificationKaren Arutyunov1-1/+13
2019-05-25Fix previous workaroundKaren Arutyunov1-2/+2
2019-05-25Work around new is_unsigned_v VC 16.1 implementation in regexBoris Kolpackov1-0/+12
2019-05-23Make fake process exited successfully for safetyBoris Kolpackov1-0/+2
2019-04-09Raise libcpp version in regex-related check to 8.0Karen Arutyunov1-1/+1
2019-04-09Fix Clang 8 "defaulted function deleted" warningsKaren Arutyunov1-1/+0
2019-04-09Add dry-run support to test rulesBoris Kolpackov1-63/+95
2019-04-03Change depdb API and handle system_error thrown by butl::file_mtime()Karen Arutyunov1-1/+1
Previously, debdb operations threw system_error and io_error to signal errors, except for opening which issued diagnostics and failed. Now all operations print the diagnostics and fail on system and IO errors.
2019-03-23Cleanup some files replacing tabs with spacesKaren Arutyunov2-5/+5
2019-03-14Add support for multiple variable overridesBoris Kolpackov1-1/+1
Now we can do: $ b config.cxx.coptions=-O3 config.cxx.coptions=-O0 Or even: $ b config.cxx.coptions=-O3 config.cxx.coptions+=-g
2019-03-13Add workarounds for all cl releases until 20.00Karen Arutyunov1-3/+3
2019-03-08Use new setup for unit testsKaren Arutyunov27-0/+4677
2019-03-07Move bunch of root scope-only data members to root_extraBoris Kolpackov1-2/+2
2019-03-07Add support for alternative build file/directory naming schemeBoris Kolpackov5-19/+31
Now the build/*.build, buildfile, and .buildignore filesystem entries in a project can alternatively (but consistently) be called build2/*.build2, build2file, and .build2ignore. See a note at the beginning of the Project Structure section in the manual for details (motivation, restrictions, etc).
2019-01-24Add testscript sleep builtinKaren Arutyunov2-4/+84
2019-01-16Update copyright yearKaren Arutyunov27-27/+27
2018-11-30Adapt to inventing path_match_flagsKaren Arutyunov1-1/+3
2018-11-17Print id of failed testKaren Arutyunov2-2/+30
2018-11-16Fix GCC maybe used uninitialized warningKaren Arutyunov1-1/+1
2018-11-05Only search for external tools (compilers, linkers, etc) in PATHBoris Kolpackov1-1/+1
Specifically, omit the current executable's directory on Windows since there is no reason for them to be found there automagically and this can lead to surprising behavior (for example, our MinGW GCC being used instead of the user's even though the user's is in PATH before ours).
2018-10-16Raise libcpp version in regex-related check to 7.0.0Karen Arutyunov1-1/+1
2018-09-05Create .buildignore file in testscript root working directoryKaren Arutyunov2-11/+29
2018-09-04Rename .test/test{} to .testscript/testscript{}Boris Kolpackov2-6/+6
2018-08-28Diagnose NULL test.target variable valueBoris Kolpackov1-9/+19
2018-08-07Add support for default extension specification, trailing dot escapingBoris Kolpackov1-7/+12
For example: cxx{*}: extension = cxx cxx{foo} # foo.cxx cxx{foo.test} # foo.test (probably what we want...) cxx{foo.test...} # foo.test.cxx (... is this) cxx{foo..} # foo. cxx{foo....} # foo.. cxx{foo.....} # error (must come in escape pair)
2018-07-17Add --after <ref-file> option for testscript touch builtinKaren Arutyunov1-10/+44
2018-07-14Add testscript mv builtinKaren Arutyunov1-1/+224
2018-06-28Add prerequisite variable visibility specification/enforcementBoris Kolpackov1-4/+4
2018-06-28Implement support for excluded and ad hoc prerequisitesBoris Kolpackov2-1/+7
The inclusion/exclusion is controlled via the 'include' prerequisite-specific variable. Valid values are: false - exclude true - include adhoc - include but treat as an ad hoc input For example: lib{foo}: cxx{win32-utility}: include = ($cxx.targe.class == 'windows') exe{bar}: libs{plugin}: include = adhoc
2018-06-19Adapt to renaming regex_replace_ex() to regex_replace_search()Karen Arutyunov1-6/+7
2018-06-15Minor formatting cleanupKaren Arutyunov1-3/+3
2018-05-19Update copyright yearKaren Arutyunov27-27/+27
2018-05-19Support for deriving target type from file name, handle testscript, buildfileBoris Kolpackov1-1/+2
In particular, instead of: exe{test}: test{testscript} We should now write: exe{test}: testscript
2018-05-18Add workarounds for all releases of VC15Karen Arutyunov1-3/+3
2018-05-18Pass ignore_dangling flag to dir_iterator() ctorKaren Arutyunov2-3/+8
2018-05-16Redo testscript diagnostics not to rely on invalid pathsKaren Arutyunov2-52/+24
2018-05-12Fix inability to run program by relative path in testscriptKaren Arutyunov1-1/+22
2018-04-26Implement forwarded configurations and backlinkingBoris Kolpackov1-4/+28
2018-04-13Add workarounds for VC15u7Boris Kolpackov1-3/+3
2018-03-19Add support for cp builtin -p optionKaren Arutyunov1-12/+53
2018-02-16Add support for detecting dependency cyclesBoris Kolpackov2-12/+12
2018-02-16Fix group link-up raceBoris Kolpackov1-1/+1
2018-02-15Add support for VC15u6Boris Kolpackov1-3/+3
2018-02-12Preprend testscript expressions with ': ' for verbosity >= 3Karen Arutyunov3-22/+13
2018-02-09Preprend testscript expressions with $ for verbosity >= 3Karen Arutyunov1-1/+1