Index: msvc.jam =================================================================== RCS file: /cvsroot/boost/boost/tools/build/v2/tools/msvc.jam,v retrieving revision 1.83 diff -u -r1.83 msvc.jam --- msvc.jam 22 Jun 2006 14:52:49 -0000 1.83 +++ msvc.jam 22 Jun 2006 16:42:28 -0000 @@ -355,12 +355,12 @@ { flags msvc.link .MT $(cond) : $(command[$(i)])$(manifest-tool) -nologo ; } - else - { + else + { flags msvc.link .MT $(cond) : $(manifest-tool) -nologo ; - } + } } - } + } # Set version-specific flags configure-version-specific $(version) : $(condition) ; @@ -571,16 +571,23 @@ flags msvc.compile PCH_HEADER on : ; flags msvc.compile PCH_FILE on : ; +local rule cc-make-cmd-rsp +{ + CC_RSPLINE on $(<) = [ on $(<) return -U$(UNDEFS) $(CFLAGS) $(C++FLAGS) $(OPTIONS) -c $(nl)-D$(DEFINES) $(nl)"-I$(INCLUDES)" -Yu"$(PCH_HEADER:D=)" -Fp"$(PCH_FILE:W)" ] ; +} + rule compile.c ( targets + : sources * : properties * ) { DEPENDS $(<) : [ on $(<) return $(PCH_HEADER) ] ; DEPENDS $(<) : [ on $(<) return $(PCH_FILE) ] ; + cc-make-cmd-rsp $(targets) : $(sources) : $(properties) ; } rule compile.c++ ( targets + : sources * : properties * ) { DEPENDS $(<) : [ on $(<) return $(PCH_HEADER) ] ; DEPENDS $(<) : [ on $(<) return $(PCH_FILE) ] ; + cc-make-cmd-rsp $(targets) : $(sources) : $(properties) ; } rule compile.pch ( targets + : sources * : properties * ) @@ -588,16 +595,15 @@ DEPENDS $(<) : [ on $(<) return $(PCH_SOURCE) ] ; } - # The actions differ only by explicit selection of input language actions compile.c bind PCH_HEADER PCH_FILE { - $(.CC) -TC -U$(UNDEFS) $(CFLAGS) $(OPTIONS) @"@($(<[1]:W).rsp:E=$(nl)"$(>)" $(nl)-D$(DEFINES) $(nl)"-I$(INCLUDES)")" -c -Fo"$(<[1]:W)" -Yu"$(PCH_HEADER:D=)" -Fp"$(PCH_FILE:W)" + $(.CC) @"@($(<[1]:W).rsp:E=$(nl)"$(>)" $(CC_RSPLINE))" -Fo"$(<[1]:W)" -TC } actions compile.c++ bind PCH_HEADER PCH_FILE { - $(.CC) -TP -U$(UNDEFS) $(CFLAGS) $(C++FLAGS) $(OPTIONS) @"@($(<[1]:W).rsp:E=$(nl)"$(>)" $(nl)-D$(DEFINES) $(nl)"-I$(INCLUDES)")" -c -Fo"$(<[1]:W)" -Yu"$(PCH_HEADER:D=)" -Fp"$(PCH_FILE:W)" + $(.CC) @"@($(<[1]:W).rsp:E=$(nl)"$(>)" $(CC_RSPLINE))" -Fo"$(<[1]:W)" -TP } actions compile.pch bind PCH_SOURCE