Clang 源到源的转换

Clang 源到源的转换,clang,llvm-clang,libtooling,Clang,Llvm Clang,Libtooling,我正在进行一些源代码到源代码的转换。我是从铿锵源代码开始做的:铿锵/tools/extra。我要做的是添加一个printf(“helloworld\n”)在主方法的开头。它工作得很好,我以bin/addcode.././test/hello.c的身份运行我的工具,它会变成: #include <stdio.h> int main(){ printf("This is from main ....\n"); return 0; } #包括 int main(){ prin

我正在进行一些源代码到源代码的转换。我是从铿锵源代码开始做的:
铿锵/tools/extra
。我要做的是添加一个
printf(“helloworld\n”)在主方法的开头。它工作得很好,我以
bin/addcode.././test/hello.c
的身份运行我的工具,它会变成:

#include <stdio.h>

int main(){
  printf("This is from main ....\n");

  return 0;
}
#包括
int main(){
printf(“这是来自main…\n”);
返回0;
}
对此:

#include <stdio.h>

int main(){
  printf("Hello World\n");
  printf("This is from main ....\n");

  return 0;
}
#包括
int main(){
printf(“Hello World\n”);
printf(“这是来自main…\n”);
返回0;
}
“添加代码”是我编写的ClangLibTool。
但是这个重写器只向终端写入更改;虽然我想通过修改编译hello.c,并想用clang命令来编译它,
clang-c hello.c
不像我在这里做的那样。

我该怎么做呢?

注册clangplugin使其自动运行,或者只注册
alias clang=add code…|叮当声
?我不擅长shell脚本,只是一个想法。你知道如何注册clang插件,以便在clang尝试编译时自动调用它吗?这里是一个简单的教程。