aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
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
2020-08-18Add ability to mark config.* variables as "unsaved" (always transient)Boris Kolpackov5-19/+40
2020-08-17Add mvfile() filesystem utility functionBoris Kolpackov3-19/+33
2020-08-16Add support for post-configure and pre-disfigure hooksBoris Kolpackov7-27/+131
2020-08-16Add ability to initialize bootstrapped modules after loading root.buildBoris Kolpackov8-34/+64
2020-08-16Redo modules map as vectorBoris Kolpackov4-53/+84
2020-08-13Fix assertion failure in to_stream() for target key without extensionKaren Arutyunov1-2/+2
Also fix a similar assertion.
2020-08-13Add few more run() overloadsBoris Kolpackov1-2/+17
2020-08-12Adjust linker arguments for LTO parallelizationMatthew Krupcale1-0/+54
GCC 10+ and Clang 4+ support controlling the number of LTO threads/jobs used during linking. Use the build2 scheduler to allocate up to the number of hardware threads to the GCC or Clang linker processes when -flto=auto or -flto=thin is specified, respectively. Otherwise, GCC or Clang will attempt to spawn the number of hardware threads detected for each linker process, which could result in up to n^2 linker threads on a CPU with n hardware threads.
2020-08-12Add iterator-based versions of find_option{,_prefix}Matthew Krupcale2-3/+61
This allows one to use all of the properties of iterators to manipulate the found option.
2020-08-12Add int64 and int64s variable typesBoris Kolpackov6-2/+118
2020-08-11Add another variable_pool::insert() overloadBoris Kolpackov1-0/+9