aboutsummaryrefslogtreecommitdiff
path: root/build2
AgeCommit message (Collapse)AuthorFilesLines
2018-11-05Only search for external tools (compilers, linkers, etc) in PATHBoris Kolpackov6-11/+42
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-11-05Distinguish between MSVC command line errors and warningsBoris Kolpackov2-2/+5
2018-11-05Resolve /WN /Wall /w option overridesBoris Kolpackov2-7/+73
Failed that, MSVC "helpfully" warns that one is overriding the other.
2018-11-05Handle MSVC command line warningsBoris Kolpackov2-36/+66
2018-11-02Fix typoBoris Kolpackov3-3/+3
2018-11-02Use rule-specific variables for backlink valueBoris Kolpackov3-13/+22
2018-11-02Use rule-specific variables for module name set on bmi*{} targetsBoris Kolpackov3-13/+21
2018-11-01Fix atomic count initializationBoris Kolpackov1-2/+2
2018-11-01Add support for rule-specific variables, use to fix cc.type data raceBoris Kolpackov14-68/+231
2018-10-27Fallback to --version for GCC/Clang-like compilers if -v didn't workBoris Kolpackov1-15/+20
2018-10-26Add config.{c,cxx}.{id,version,target} configuration variablesBoris Kolpackov12-500/+714
These variables allow overriding guessed compiler id/version/target, for example, in case of mis-guesses or when working with compilers that don't report their base (e.g., GCC, Clang) with -v/--version (common in the embedded space).
2018-10-26Add support for libpkgconf 1.5 APIKaren Arutyunov1-2/+41
2018-10-25Redesign cc::compiler_id to make variant customizableBoris Kolpackov9-190/+223
2018-10-25Fix execute_direct() to handle "match failed" caseBoris Kolpackov1-5/+11
2018-10-25Fix race in rule synthesis logicBoris Kolpackov3-11/+50
2018-10-25Fix bug in add_adhoc_member() (set group)Boris Kolpackov1-0/+3
2018-10-24Fix GCC 8 -fimplicit-fallthrough warningsKaren Arutyunov1-0/+3
2018-10-23Treat invalid names as values if they are quotedBoris Kolpackov1-19/+29
2018-10-23Move invalid_argument handler from default_thunk() to call()Boris Kolpackov2-17/+19
This way we let a custom thunk catch derived exception (like invalid_path).
2018-10-19Suggest override variable (config.x) when tool is not foundBoris Kolpackov5-13/+63
2018-10-19Fix bug in binutils pattern derivation logicBoris Kolpackov1-7/+15
2018-10-19Improve inconsistent compiler behavior diagnosticsBoris Kolpackov1-9/+15
2018-10-18Fix bug in binless library linking logicBoris Kolpackov3-27/+16
2018-10-16Raise libcpp version in regex-related check to 7.0.0Karen Arutyunov1-1/+1
2018-09-14Fix uncaught invalid_path exceptionKaren Arutyunov1-18/+25
2018-09-12Bump version to 0.9.0-a.0.z, master is open for businessBoris Kolpackov1-1/+1
2018-09-11Change build.version.stage to falsev0.8.0Boris Kolpackov1-1/+1
2018-09-10Replace libu with libue in buildfilesKaren Arutyunov1-4/+4
2018-09-07Fix binless logic some moreBoris Kolpackov2-15/+16
2018-09-06Fix issues with interaction between binless logic and Windows DLLsBoris Kolpackov4-26/+46
2018-09-05Fix bug in pkgconfig_load()Boris Kolpackov1-1/+1
2018-09-05Only consider common .pc file for binless variant if there is no binfullBoris Kolpackov3-15/+30
2018-09-05Adjust pkg-config logic to cover binless librariesBoris Kolpackov3-131/+234
2018-09-05Create .buildignore file in testscript root working directoryKaren Arutyunov5-12/+112
2018-09-04Check for binless-ness after seeing through to import library memberBoris Kolpackov1-11/+16
This makes a difference for installed libraries since the DLL location might be unknown (empty path).
2018-09-04Initial work on binless (binary-less aka header-only) library supportBoris Kolpackov9-354/+514
2018-09-04Rename .test/test{} to .testscript/testscript{}Boris Kolpackov2-6/+6
2018-09-03Ignore directories with .buildignore file when generating names with ↵Karen Arutyunov1-9/+11
wildcard patterns
2018-09-03Use (native) C and C++ compilers we were built with as defaultsBoris Kolpackov4-7/+44
2018-08-31Add ability to print cc compiler_id valueBoris Kolpackov2-0/+24
2018-08-31Adjust terminology in diagnostic and commentsBoris Kolpackov1-5/+5
2018-08-30Handle missing export directive in export stubBoris Kolpackov2-2/+14
If none were executed, then we assume the requested target is not exported.
2018-08-29Fix typo in diagnosticsBoris Kolpackov1-1/+1
2018-08-28Diagnose NULL test.target variable valueBoris Kolpackov1-9/+19
2018-08-27Don't insist on install rules for non-file targetsBoris Kolpackov7-26/+51
This helps with (not) installing libu*{} groups.
2018-08-27Fix diagnostics bugBoris Kolpackov1-2/+1
2018-08-27Use butl::path_match() for pattern-specific variable matchingBoris Kolpackov1-25/+10
2018-08-25Implement missing pieces in utility libraries supportBoris Kolpackov14-313/+624
In particular, we can now build static libraries out of utility libraries.
2018-08-22Rework code to sidestep Clang 3.8 on FreeBSD 11.0 mis-compilationBoris Kolpackov1-2/+1
2018-08-22Remove unnecessary move()'sBoris Kolpackov1-2/+2