我的VS2010版本中有一个perl脚本,它使用几个头文件作为输入自动编码头文件。
换句话说,script.pl读取a.h,b.h,c.h,并生成z.h
如何设置依赖关系,以便在其中一个输入头文件发生更改时重新运行此脚本?
答案 0 :(得分:1)
我不知道基于依赖/文件系统检查自动重新运行它,但是你肯定可以只为项目或解决方案添加一个自定义的预构建步骤,直接调用perl脚本。在VS2010中,转到“项目”菜单,选择“属性...”,然后转到“构建事件”选项卡。在预构建事件命令行框中,键入命令行以调用script.pl。
查看MSDN docs以获取一些有用的宏和构建路径的快捷方式。此外,该页面确实说
注意强>
如果项目是最新的并且没有触发构建,则不会运行预构建事件。
因此,如果项目中的任何文件没有更改,它可能无法运行script.pl,但对a.h
,b.h
或c.h
的更改应该足够了确保生成z.h
。除非您没有将上游头文件添加到项目中......这可能是另一种蠕虫病毒。
如果是这种情况,我想到的解决方法是创建一个名为“HeaderBuild”的第二个虚拟项目,或者其中一个唯一的工作就是包含所需的.h
文件,调用script.pl
和将z.h
输出复制到您的实际项目标题目录。确保虚拟项目在真实项目之前运行,你应该好好去。