On 3/5/2012 1:30 PM, Sean Silva wrote:
Personally, I think that even with the gcc-like syntax, it is still too burdensome to pass args. `-fplugin-arg-plugin-bar=baz` is a lot of typing just for one arg. People just won't do that manually: they will write a script to do it for them. That suggests that the best plan of action would be to just write a simple python script that builds the command-line and execs clang with the right args.

Usage would be:
clang-plugin++ ../../Debug+Asserts/lib/libPrintFunctionNames.so -w --mylongopt=foo --some-arg -- -O3 -c file.cc -Wall
Any args after `--` are passed directly to clang as normal args.

This means that you can do `CXX=clang-plugin++ /path/to/plugin.so --foo -q --` in a makefile and it will Just Work. It also adds a useful layer of indirection which allows for more flexibility in changing how clang actually processes the args.

My expectation is that most uses of plugins would not be one-off invocations but rather a verbose export CC/CXX setting prior to configure or via settings done in a Makefile like so: <http://hg.mozilla.org/mozilla-central/file/tip/config/static-checking-config.mk>.

--
Joshua Cranmer
News submodule owner
DXR coauthor

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to