aboutsummaryrefslogtreecommitdiff
path: root/build2/cc
AgeCommit message (Collapse)AuthorFilesLines
2019-01-16Update copyright yearKaren Arutyunov29-29/+29
2019-01-09Fix bug in cc rules matchingBoris Kolpackov1-1/+1
2019-01-09Tighten cc rules matchingBoris Kolpackov4-15/+21
Specifically, make sure the rule does not match if there is a c-common prerequisites that it doesn't recognize.
2018-12-27Fix logic bug in pkg-config shared/static selectionBoris Kolpackov1-11/+13
2018-12-15Fix line counting in cc::lexerKaren Arutyunov1-1/+1
2018-12-12Fix bug in module interface unit preprocessingBoris Kolpackov1-5/+9
2018-11-30Adapt to inventing path_match_flagsKaren Arutyunov1-4/+3
2018-11-28Add --[no-]mtime-check options to control this behavior at runtimeBoris Kolpackov2-3/+8
By default the checks are enabled only for the staged toolchain.
2018-11-23Revert rename of .exe.d to .d (did not make any difference)Boris Kolpackov1-5/+3
2018-11-22Rename .exe.d to just .d to test Windows interference theoryBoris Kolpackov1-3/+5
2018-11-22Make backwards modification time check permanent, add another experimentBoris Kolpackov2-25/+8
2018-11-21More backwards modification time experimentationBoris Kolpackov1-1/+2
2018-11-20Improve workaround for backwards modification time issueBoris Kolpackov1-9/+9
2018-11-19Extend backwards modification time diagnosticsBoris Kolpackov1-1/+2
2018-11-19Workaround Apple ar fractional second truncation bug on APFSBoris Kolpackov1-0/+16
2018-11-19Finalize workaround for backwards modification time issueBoris Kolpackov2-17/+18
2018-11-19Minor diagnostics tweakBoris Kolpackov1-1/+2
2018-11-16Test workaround theory for backwards mtime issueBoris Kolpackov1-5/+4
2018-11-15Instrument cc:link_rule with backwards mtime detection/diagnosticsBoris Kolpackov1-0/+20
2018-11-06Ignore non-existent /usr/local/{include/,lib/}Boris Kolpackov1-17/+28
This should fix some bizarre yo-yo'ing cases where uninstall removes the directories which in turn triggers a rebuild on the next invocation.
2018-11-05Only search for external tools (compilers, linkers, etc) in PATHBoris Kolpackov1-1/+7
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 Kolpackov1-1/+1
2018-11-02Use rule-specific variables for backlink valueBoris Kolpackov1-4/+4
2018-11-02Use rule-specific variables for module name set on bmi*{} targetsBoris Kolpackov3-13/+21
2018-11-01Add support for rule-specific variables, use to fix cc.type data raceBoris Kolpackov3-11/+16
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 Kolpackov4-482/+681
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 Kolpackov6-172/+203
2018-10-25Fix race in rule synthesis logicBoris Kolpackov1-6/+35
2018-10-24Fix GCC 8 -fimplicit-fallthrough warningsKaren Arutyunov1-0/+3
2018-10-19Suggest override variable (config.x) when tool is not foundBoris Kolpackov3-5/+18
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 Kolpackov2-19/+8
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-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 Kolpackov6-329/+442
2018-09-03Use (native) C and C++ compilers we were built with as defaultsBoris Kolpackov1-5/+14
2018-08-31Add ability to print cc compiler_id valueBoris Kolpackov2-0/+24
2018-08-27Don't insist on install rules for non-file targetsBoris Kolpackov5-8/+8
This helps with (not) installing libu*{} groups.
2018-08-25Implement missing pieces in utility libraries supportBoris Kolpackov9-184/+396
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