aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2019-09-30Add support for `case` pattern alternativesBoris Kolpackov5-33/+97
case <pattern>[ | <pattern>...]
2019-09-30Allow multiple `case` for single line/blockBoris Kolpackov3-43/+122
2019-09-30Pattern matching support (switch): multiple values implementationBoris Kolpackov4-37/+113
2019-09-30Pattern matching support (switch): single value implementationBoris Kolpackov5-46/+369
2019-09-27Adapt to bracket expressions in wildcard patternsKaren Arutyunov5-42/+54
2019-09-27Add support for testscript builtin escapingKaren Arutyunov3-4/+50
2019-09-27Move testscript builtins to libbutlKaren Arutyunov21-7525/+443
2019-09-19Fix crashing on testscript command redirect overridesKaren Arutyunov3-4/+132
2019-09-18Rename importable_headers variable to translatable_headersBoris Kolpackov6-38/+37
This name aligns better with the post-Cologne importable/translatable semantics.
2019-09-18Temporarily force c++17 if using GCC modules branchBoris Kolpackov1-1/+5
The use of 2a-isms in the standard library are breaking things on a regular basic.
2019-09-05Improve /showIncludes parsing to handle internal (debug?) builds of MSVCBoris Kolpackov1-5/+17
2019-09-05Tighten versioned shared library cleanup logicBoris Kolpackov1-12/+23
2019-09-04Add support for native shared library versioning on LinuxBoris Kolpackov3-30/+126
Now we can do: lib{foo}: bin.lib.version = linux@1.2 And end up with libfoo.so.1.2 libfoo.so.1 -> libfoo.so.1.2
2019-08-30Make build_installed constBoris Kolpackov3-5/+4
2019-08-30Cutoff diagnostics stack when switching to nested contextBoris Kolpackov3-26/+51
2019-08-29Work around VC14 miscompilationKaren Arutyunov1-0/+8
2019-08-28Export dependency on -lpthreadBoris Kolpackov1-0/+6
2019-08-28Make lib{build2} "implied interface dependency" of modulesBoris Kolpackov8-44/+30
This makes our compilation and linking command lines a little bit saner.
2019-08-28Cleanup buildfiles some moreBoris Kolpackov2-31/+10
2019-08-28Reduce repetition in buildfilesBoris Kolpackov3-17/+4
2019-08-28Add/update some module descriptionsKaren Arutyunov7-3/+25
2019-08-28Add build2_cli_load()Karen Arutyunov3-26/+26
2019-08-28Move cxx build system module to separate libraryKaren Arutyunov19-91/+211
2019-08-28Move c build system module to separate libraryKaren Arutyunov16-68/+196
2019-08-28Move cc build system module to separate libraryKaren Arutyunov56-242/+350
2019-08-28Move bin build system module to separate libraryKaren Arutyunov36-179/+271
2019-08-28Redo build_installed without requiring linking whole archiveBoris Kolpackov6-24/+21
2019-08-27Temporary fix for multiple whole archive linking issueBoris Kolpackov1-9/+3
2019-08-27Force use of RPATH instead of RUNPATH on LinuxBoris Kolpackov2-4/+19
RUNPATH messes up our use of dlopen().
2019-08-27Propagate global var overrides to module build contextBoris Kolpackov3-6/+14
2019-08-27Redo module context pointerBoris Kolpackov2-9/+11
2019-08-27Reorder dependencies in buildfileBoris Kolpackov1-4/+6
2019-08-27Change bootstrap target on Windows from i686 to x86_64Boris Kolpackov3-4/+4
Seeing that we have dropped 32-bit baseutils, this feels like the correct default.
2019-08-27Tweak cross-compilation detection in buildfileBoris Kolpackov1-4/+11
2019-08-27Don't set import.build2 variable in cross-compiled build2Karen Arutyunov2-7/+8
2019-08-26Implement auto-import of development build2 buildBoris Kolpackov10-11/+96
2019-08-26Add support for for_install prerequisite-specific var in link ruleBoris Kolpackov4-0/+31
Also reserve for_test.
2019-08-26Improve diagnostics in import_module()Boris Kolpackov1-20/+25
2019-08-26Fix bug in import_search()Boris Kolpackov1-2/+2
2019-08-26Fix bug in scope::find_target_key()Boris Kolpackov1-1/+8
2019-08-26Improve diagnosticsBoris Kolpackov1-1/+1
2019-08-26Fix typoKaren Arutyunov1-1/+2
2019-08-26Suppress gcc's 'control reaches end of non-void function' warningKaren Arutyunov1-1/+1
2019-08-26Implement updating build system modulesBoris Kolpackov11-34/+211
2019-08-26Factor target name processing code from parser to scopeBoris Kolpackov4-50/+91
2019-08-26Make target types project-wideBoris Kolpackov12-99/+124
2019-08-25Split import into search and load stepsBoris Kolpackov3-49/+89
This allows us to load things in a separate context.
2019-08-23Introduce notion of build contextBoris Kolpackov111-2096/+2444
All non-const global state is now in class context and we can now have multiple independent builds going on at the same time.
2019-08-23Disable dynamic build system module loading in bootstrap buildBoris Kolpackov3-8/+19
We don't really need it so why jump through hoops like trying to portably link -ldl, etc.
2019-08-22Link -ldl in bootstrap script/makefileBoris Kolpackov2-2/+2