aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-11-17Implement modules pseudo-directive parsing (p1703, p1857)Boris Kolpackov7-54/+148
2020-11-13Minor tracing fix and additionBoris Kolpackov2-1/+4
2020-11-12Assign fixed extensions to wasm{} and pdb{} target typesBoris Kolpackov3-2/+42
2020-11-11Add ${c,cxx}.lib_{poptions,libs,rpaths}() functionsBoris Kolpackov10-105/+391
These functions can be used to query library metadata for options and libraries that should be used when compiling/linking dependent targets, similar to how cc::{compile,link}_rule do it. With this support it should be possible to more or less re-create their semantics in ad hoc recipes.
2020-11-11Make value_traits<bool>::convert() non-modifyingBoris Kolpackov2-2/+5
2020-11-11Expose low-level function registration supportBoris Kolpackov2-4/+24
2020-11-11Add context::current_action()Boris Kolpackov1-1/+9
2020-11-06Fix mistreating test operation timeout as test timeout in some caseKaren Arutyunov2-5/+9
2020-11-06Add support for test timeoutsKaren Arutyunov45-209/+2779
2020-11-06Fix snapshot extraction for subproject symlinked from git submoduleKaren Arutyunov1-3/+20
2020-11-06Resolve warningBoris Kolpackov1-1/+1
2020-11-06Keep executable bit on .wasm files when installingBoris Kolpackov1-2/+4
2020-11-05Initial Emscripten supportBoris Kolpackov6-535/+803
- Target: wasm32-emscripten (wasm32-unknown-emscripten). - Compiler id: clang-emscripten (type clang, variant emscripten, class gcc). - Ability to build executables (.js plus .wasm) and static libraries (.a). Set executable bit on the .js file (so it can be executed with a suitable binfmt interpreter). - Default config.bin.lib for wasm32-emscripten is static instead of both. - Full C++ exception support is enable unless disabled explicitly by the user with -s DISABLE_EXCEPTION_CATCHING=1|2. - The bin module registers the wasm{} target type for wasm32-emscripten.
2020-11-04Minor terminology tweakBoris Kolpackov1-1/+1
2020-11-02Set executable bit for ad hoc buildscript rule executable target on POSIXKaren Arutyunov5-2/+61
2020-10-28Pad config report to maximum name lengthBoris Kolpackov1-10/+32
2020-10-28Add missing $builtin.string(int64)Boris Kolpackov1-0/+1
2020-10-27Tweak dist rule to handle prerequisites outside projectBoris Kolpackov1-7/+21
2020-10-20Add operation callback for adhoc rule match and applyBoris Kolpackov13-44/+95
2020-10-18Make some documentation fixesFrancois Kritzinger2-77/+78
2020-10-15Add ability to specify fallback value for NULL substitutions with in.nullBoris Kolpackov8-20/+73
2020-10-07Add ability to specify extra adhoc files for distributionBoris Kolpackov2-6/+58
2020-10-05Update submodulesBoris Kolpackov2-0/+0
2020-09-29Add bootstrap distribution mode (!config.dist.bootstrap=true)Boris Kolpackov6-277/+476
In this mode the dist meta-operation does not load the project (but does bootstrap it) and adds all the source files into the distribution only ignoring files and directories that start with a dot. This mode is primarily meant for situation where the project cannot (yet) be loaded due to missing dependencies.
2020-09-29Remove stray text from manualBoris Kolpackov1-3/+0
2020-09-28Add $string.trim() functionBoris Kolpackov2-0/+19
2020-09-24Fix target declaration upgrade logicBoris Kolpackov2-12/+10
2020-09-24Give hints for common causes of "no rule to update ..." errorBoris Kolpackov12-50/+121
2020-09-24Add ability to ignore extra variables in specified_config()Boris Kolpackov2-9/+33
2020-09-24Add post-boot module functionBoris Kolpackov3-27/+84
2020-09-24Fix typo in manualBoris Kolpackov1-1/+1
2020-09-22Add ability to skip external modules during bootstrap (--no-external-modules)Boris Kolpackov9-34/+108
2020-09-22Add note about non-global variable overridesBoris Kolpackov1-0/+5
2020-09-21Update config submoduleBoris Kolpackov1-0/+0
2020-09-17Add support for BUILD2_VAR_OVR and BUILD2_DEF_OPT environment variablesKaren Arutyunov3-33/+172
2020-09-15Handle infinite output when extracting metadata (GitHub issue #102)Boris Kolpackov1-2/+22
2020-09-12Regenerate options parsing codeKaren Arutyunov2-15/+15
2020-09-11Add support for default global variable overridesKaren Arutyunov3-6/+47
2020-09-09Fix formatting in man pageBoris Kolpackov2-4/+4
2020-09-09Expand notes on issues with build system modules that require bootstrapBoris Kolpackov1-0/+6
2020-09-08Get rid of warning in static buildBoris Kolpackov1-0/+2
2020-09-08Allow external modules that require bootstrapBoris Kolpackov1-13/+34
2020-09-01Add TODO commentBoris Kolpackov1-0/+2
2020-08-26Add missing symbol exportsBoris Kolpackov2-2/+2
2020-08-26Fix bug in module initialization orderBoris Kolpackov3-26/+21
2020-08-25Add missing move() callBoris Kolpackov1-1/+3
2020-08-25Fix bug in interaction of unmatch logic with target groupsBoris Kolpackov3-3/+23
2020-08-24Only suggest ad hoc path import for path-based targetsBoris Kolpackov1-6/+10
2020-08-24Use representation when passing target_triplet as hintBoris Kolpackov4-3/+4
2020-08-24Add copying version of convert<T>(value)Boris Kolpackov4-12/+52