summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2019-07-29 14:58:47 (GMT)
committerBrad King <brad.king@kitware.com>2019-07-30 14:03:35 (GMT)
commitb61fcdc8bc0d4b7b5104195abcfe03154e35bf52 (patch)
tree36006b5ab82bdca55bea156be65d4cb3401b221d /.github
parente337e60a50f3de8bb04b91b1233ff60377a9c944 (diff)
downloadCMake-b61fcdc8bc0d4b7b5104195abcfe03154e35bf52.zip
CMake-b61fcdc8bc0d4b7b5104195abcfe03154e35bf52.tar.gz
CMake-b61fcdc8bc0d4b7b5104195abcfe03154e35bf52.tar.bz2
fileapi: Compute codemodel compile groups without target-wide settings
Previously we computed the entire description of each source file including all target-wide settings, and then computed compile groups using those complete descriptions. This is inefficient when target-wide settings are large because they are included in comparisons even though they are the same for every source. Instead compute source groups using only the source-specific settings, and then merge the target-wide settings into place only once per unique compile group. This is a slight behavior change in the case that a source-specific compile definition duplicates a target-wide definition. Previously that source would still be grouped with other sources which do not have the definition because they would all get it from the target. Now that source will be in its own compile group even though it ultimately compiles with the same settings as another group. This is acceptable because the source is specified by the project with source-specific settings already. Fixes: #19520
Diffstat (limited to '.github')
0 files changed, 0 insertions, 0 deletions