From f54882ad7b57bb8f458bddcbb4f03bd4323c6efd Mon Sep 17 00:00:00 2001 From: Vladimir Prus Date: Sat, 1 Aug 2009 10:33:24 +0000 Subject: [PATCH] Fix improper name of PDB and manifest targets. [SVN r55334] --- src/tools/msvc.jam | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/tools/msvc.jam b/src/tools/msvc.jam index c1fcd8eca..cda37f382 100644 --- a/src/tools/msvc.jam +++ b/src/tools/msvc.jam @@ -1031,11 +1031,13 @@ class msvc-linking-generator : linking-generator if $(result) { - local name = [ $(result[0]).name ] ; + local name-main = [ $(result[0]).name ] ; local action = [ $(result[0]).action ] ; if [ $(property-set).get ] = "on" - { + { + # PDB is 'good' target -- the basename is the same of for main target, with + # .pdb as extension local target = [ class.new file-target $(name) : PDB : $(project) : $(action) ] ; local registered-target = [ virtual-target.register $(target) ] ; if $(target) != $(registered-target) @@ -1047,7 +1049,10 @@ class msvc-linking-generator : linking-generator if [ $(property-set).get ] = "off" { - local target = [ class.new file-target $(name) : MANIFEST : $(project) : $(action) ] ; + # Manifest is evil target. It has .manifest appened to the name of + # main target, including extension. E.g. a.exe.manifest. We use 'exact' + # name because to achieve this effect. + local target = [ class.new file-target $(name-main).manifest exact : MANIFEST : $(project) : $(action) ] ; local registered-target = [ virtual-target.register $(target) ] ; if $(target) != $(registered-target) {