首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jam脚本中文件扩展名的更改

jam脚本中文件扩展名的更改
EN

Stack Overflow用户
提问于 2015-04-09 11:48:20
回答 1查看 57关注 0票数 0

如何从jam脚本中的输入文件中更改扩展名。在linux上我有下面的代码-

代码语言:javascript
复制
for local var in $(objFiles)
{
    local objName = [ SHELL "var1=$(var); echo ${var1%.cpp}.obj" ] ;
    obj $(objName) : $(var) : $(properties) ;
}

for循环中的第一行选择cpp文件名,并将其扩展从<File>.cpp更改为<File>.obj。我需要隐藏这些与windows平台兼容的更改。我认为一些模块在boost构建过程中会提供一些方法来做到这一点,但谷歌搜索在这一点上并没有多大帮助。

在上面的代码中,我应该做哪些更改,以便objName包含obj文件扩展名,并且这些更改在跨平台(特别是win/ linux)中保持兼容。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-09 12:16:08

我不熟悉Boost.Jam,但我怀疑它的工作方式与普通的Jam一样。有几个选择器/替换操作符可以应用于变量。在本例中,您希望使用S=更改文件名后缀:

代码语言:javascript
复制
local objName = $(var:S=.obj) ;

在常规的Jam中,有一个预定义的操作系统相关变量SUFOBJ,应该使用它而不是硬编码".obj“。不确定,它是否也在Boost.Jam中可用。如果是这样,您可以使用:

代码语言:javascript
复制
local objName = $(var:S=$(SUFOBJ)) ;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29537692

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档