diff --git a/CHANGES.txt b/CHANGES.txt index 353ae86a..05224d5a 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -28,6 +28,7 @@ * Bug 3308203: Incorrect relative paths for gmake sibling static libraries (Adam) * Bug 3277343: SM_SERVERR2 is not always defined by default (Martin Ridgers) * Added os.stat +* Bug 3381149: Path of PCH source file in VS10 not being translated (intyuh) ------- 4.3 diff --git a/src/actions/vstudio/vs2010_vcxproj.lua b/src/actions/vstudio/vs2010_vcxproj.lua index f9b4c60a..d13b472e 100644 --- a/src/actions/vstudio/vs2010_vcxproj.lua +++ b/src/actions/vstudio/vs2010_vcxproj.lua @@ -515,9 +515,10 @@ _p(1,'') for _, file in ipairs(files) do - _p(2,'', path.translate(file.name, "\\")) + local translatedpath = path.translate(file.name, "\\") + _p(2,'', translatedpath) for _, cfginfo in ipairs(configs) do - if config_mappings[cfginfo] and file.name == config_mappings[cfginfo] then + if config_mappings[cfginfo] and translatedpath == config_mappings[cfginfo] then _p(3,'Create', premake.esc(cfginfo.name)) config_mappings[cfginfo] = nil --only one source file per pch end diff --git a/tests/actions/vstudio/test_vs2010_vcxproj.lua b/tests/actions/vstudio/test_vs2010_vcxproj.lua index c28402fc..d5de698a 100644 --- a/tests/actions/vstudio/test_vs2010_vcxproj.lua +++ b/tests/actions/vstudio/test_vs2010_vcxproj.lua @@ -334,7 +334,13 @@ local buffer = get_buffer() test.string_does_not_contain(buffer,debug_config_pch_string) end - + function vs10_vcxproj.pchHeaderAndPchSourceSet_bufferContainPchCreate() + configuration("Debug") + pchheader "foo/dummyHeader.h" + pchsource "foo/dummySource.cpp" + local buffer = get_buffer() + test.string_contains(buffer,debug_config_pch_string) + end function vs10_vcxproj.wholeProgramOptimizationIsNotSetByDefault_bufferDoesNotContainWholeProgramOptimization() local buffer = get_buffer()