Visual c++ 比亚姆';s cxxflags选项是否删除尾部减号?

Visual c++ 比亚姆';s cxxflags选项是否删除尾部减号?,visual-c++,boost,boost-build,bjam,Visual C++,Boost,Boost Build,Bjam,我正在尝试将Visual C++编译器选项/Zc:wchar\u t-(请注意将其关闭)传递给bjam,boost的构建工具如下: bjam --build-type=complete runtime-link=shared variant=debug toolset=msvc-8.0 cxxflags="/Zc:wchar_t-" threading=multi debug-symbols=on debug-store=database --with-program_options stage

我正在尝试将Visual C++编译器选项
/Zc:wchar\u t-
(请注意将其关闭)传递给bjam,boost的构建工具如下:

bjam --build-type=complete runtime-link=shared variant=debug toolset=msvc-8.0 cxxflags="/Zc:wchar_t-" threading=multi debug-symbols=on debug-store=database --with-program_options stage
但是,当我检查包含生成的编译器选项的*.rsp文件时(在
..\boost\u 1\u 44\u 0\bin.v2\libs\program\u options\build\msvc-8.0\debug\debug store database\threading multi\options\u description.obj.rsp
),它将始终包含
/Zc:wchar\u t
作为选项,无论我是使用
-
还是不使用指定

是否有
cxflags
从passed选项中删除尾部减号的功能


注意
tools\build\v2\tools\msvc.jam
中已经设置了
/Zc:
,这导致当我使用cxxflags指定RSP文件时,该选项在RSP文件中被提供了两次,但使用cxxflags的选项始终会删除尾部的负号,而——如果我编辑msvc.jam——msvc.jam中的一个将被逐字记录,减号将被保留

简单的回答是:是的,bjam把事情搞砸了


你可以手工破解
.jam
文件来提供这个选项,然后它就可以工作了。(是的,我会提供确切的位置,但我已经失去了测试环境。)

我使用了一种解决方法。添加空格以避免删除尾随字符-

cxxflags="/Zc:wchar_t- "