如何只在本地修改的文件上运行 PC-Lint(不在 SVN 的服务器上提交)

问题描述 投票:0回答:1

我正在尝试编写脚本以仅在用户本地修改的文件上运行 PC-Lint 静态分析器工具,而不是在整个项目上运行。

为此我需要对所有本地修改的文件运行

Lint
命令

使用 svn 状态

 svn status -u | grep -w M 

命令我得到本地修改文件的列表及其完整路径

例如,如果本地修改的文件是

asn1_common_elements.c
,上面的
svn
命令将给出输出为 M 10014 \实施 sn1der\src sn1_common_elements.c

现在我只需要取文件名

asn1_common_elements.c
并用
LINT
命令作为
LINT asn1_common_elements.log
(而不是
.c
需要更改为
.log
) 我怎样才能做到这一点?

bash shell grep lint pc-lint
1个回答
0
投票

您可以使用 Makefile 的功能只让编译器只编译更改的文件。

在 Makefile 中做这样的事情:

# Create object from C source code
file.o: file.c
    gcc                -c $(CFLAGS) -o $@
    wine lint-nt.exe   file.c

现在 file.c 只有在更改时才会被分析。

© www.soinside.com 2019 - 2024. All rights reserved.