aboutsummaryrefslogtreecommitdiff
path: root/build2
AgeCommit message (Collapse)AuthorFilesLines
2018-07-16Implement in moduleBoris Kolpackov17-112/+760
Given test.in containing something along these lines: foo = $foo$ Now we can do: using in file{test}: in{test.in} file{test}: foo = FOO The alternative variable substitution symbol can be specified with the in.symbol variable and lax (instead of the default strict) mode with in.substitution. For example: file{test}: in.symbol = '@' file{test}: in.substitution = lax
2018-07-16Resolve function overload via the argument reversal to untypedBoris Kolpackov4-212/+77
2018-07-14Add testscript mv builtinKaren Arutyunov1-1/+224
2018-07-11Force reprocessing for module interface units if compiling with VCBoris Kolpackov1-0/+10
2018-07-10Fix bug in dist checksum implementationBoris Kolpackov1-3/+6
2018-07-10Add support for archive checksum generation during distributionBoris Kolpackov2-23/+186
Now we can do: $ b dist: ... \ config.dist.archives='tar.gz zip' \ config.dist.checksums='sha1 sha256' And end up with .tar.gz.sha1, .tar.gz.sha256, .zip.sha1, and .zip.sha256 checksum files in addition to archives.
2018-07-09Regenerate options parsing codeBoris Kolpackov3-3/+20
2018-07-05Add backlink to generated options parsing codeBoris Kolpackov1-0/+5
2018-07-03Enter config.dist.uncommitted in dist module, make omittedBoris Kolpackov2-9/+13
One side-effect of doing this in the version module (where it is still used and enforced) was that dist module configuration (e.g., in an amalgamation) did not include this variable (and which was then duplicated in each subproject).
2018-06-29Use depdb to track changes to cli compiler, options, etcBoris Kolpackov4-22/+123
2018-06-28Workaround for VC14 bugBoris Kolpackov1-0/+4
2018-06-28Add prerequisite variable visibility specification/enforcementBoris Kolpackov7-21/+106
2018-06-28Implement support for excluded and ad hoc prerequisitesBoris Kolpackov30-283/+597
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-25Minor note on Apple Clang to vanilla Clang version mappingBoris Kolpackov1-6/+8
2018-06-20Add $process.run() and $process.run_regex() functionsBoris Kolpackov8-12/+315
$process.run(<prog>[ <args>...]) Return trimmed stdout. $process.run_regex(<prog>[ <args>...], <pat> [, <fmt>]) Return stdout lines matched and optionally processed with regex. Each line of stdout (including the customary trailing blank) is matched (as a whole) against <pat> and, if successful, returned, optionally processed with <fmt>, as an element of a list.
2018-06-20Fix race in phase switch during failureBoris Kolpackov1-0/+3
2018-06-19Adapt to renaming regex_replace_ex() to regex_replace_search()Karen Arutyunov2-30/+31
2018-06-15Minor formatting cleanupKaren Arutyunov1-3/+3
2018-06-15Add note on acl/noacl switch in baseutilsBoris Kolpackov1-0/+3
2018-06-15Use portable environment variable manipulation functionsKaren Arutyunov3-20/+17
2018-06-15Add sanity checkBoris Kolpackov3-1/+5
2018-06-14Fix typoBoris Kolpackov1-1/+1
2018-06-13Open depdb earlier to detect and diagnose missing output directoryBoris Kolpackov1-2/+5
2018-06-13Fix diagnostics bugBoris Kolpackov1-1/+1
2018-06-12If target type doesn't use extensions, factor it back into nameBoris Kolpackov1-0/+13
2018-06-12Add built-in support for Windows module definition files (.def)Boris Kolpackov4-5/+82
2018-06-12Remove output if ld failsBoris Kolpackov1-5/+7
This helps link.exe which leaves broken the output around.
2018-06-09Handle fsdir{} prerequsites during installationBoris Kolpackov3-0/+52
2018-06-09Minor diagnostics improvementBoris Kolpackov1-1/+6
2018-06-05Fix localization issue in GCC system header search path extractionBoris Kolpackov1-5/+5
2018-06-01Remove redundant header includeKaren Arutyunov1-1/+0
2018-06-01Fix uncaught invalid_path exceptionKaren Arutyunov1-6/+16
2018-05-28Fix localized /showIncludes parsing some moreBoris Kolpackov1-11/+27
2018-05-26Only print column if printed lineBoris Kolpackov1-4/+6
2018-05-25Fix target locking race in search_library()Boris Kolpackov1-0/+8
2018-05-25Change default install filter to only accept prerequisites from amalgamationBoris Kolpackov5-23/+47
2018-05-25Fix postponed group/member state raceBoris Kolpackov2-6/+20
2018-05-25Fix link rule to synthesize identical dependency for clean and updateBoris Kolpackov1-11/+44
2018-05-24Skip auto-generated header mapping if include path is not normalizableBoris Kolpackov1-30/+37
2018-05-24Fix bug in TU checksum depdb saving logic in case of reprocess=trueBoris Kolpackov3-5/+5
2018-05-24Better handling of translated massages in VC's /showIncludes outputBoris Kolpackov1-19/+27
2018-05-24Add note on *-gcc-{ar,ranlib,etc} situationBoris Kolpackov1-1/+2
2018-05-23Add dist to list of modules bootstrapped by default by create meta-operationBoris Kolpackov2-5/+5
2018-05-23Fix bug in inner project bootstrap during configure/disfigureBoris Kolpackov2-6/+13
2018-05-19Update copyright yearKaren Arutyunov190-191/+191
2018-05-19Clean up version module (remove doc_rule, tighten manifest target type)Boris Kolpackov3-148/+1
2018-05-19Get rid of doc{version} and types for testscript and manifest in buildfilesKaren Arutyunov2-4/+4
2018-05-19Add missing build2/version/utility.?xx filesBoris Kolpackov2-0/+103
2018-05-19Implement manifest installation rule in version moduleBoris Kolpackov4-62/+87
2018-05-19Add lower-level pre/post installation hooks to install::file_ruleBoris Kolpackov2-5/+47