Do not call CollapseFullPath for PDB file names
commite358a878d675c1937039cce98c6ccc30e01275f0
authorking <king>
Thu, 17 Sep 2009 12:42:27 +0000 (17 12:42 +0000)
committerking <king>
Thu, 17 Sep 2009 12:42:27 +0000 (17 12:42 +0000)
tree00419327214f97f7c8a64e6821cd8383bea7fad3
parentb4c821a0a0000059251b75f031d57e6673b00519
Do not call CollapseFullPath for PDB file names

Some vendor tools convert PDB file names given on the command line to
lower-case before creating the file.  When CMake places a mixed-case PDB
file name into the build system, the file does not exist the first time
and it is written with mixed case.  After the first build though the
native tool has created a lower-case version of the file.  If CMake does
CollapseFullPath again, the file exists so the actual-case lookup gets
the lower-case name.  This causes the build files to change so the
project rebuilds.

The solution is to avoid calling CollapseFullPath for files generated by
the build.  In the case of PDB files we already construct them from
paths that have been collapsed, so we can just skip the call altogether.
See issue #9350.
Source/cmMakefileExecutableTargetGenerator.cxx
Source/cmMakefileLibraryTargetGenerator.cxx
Source/cmMakefileTargetGenerator.cxx