On Wed, Aug 21, 2013 at 10:20 PM, Kim Gräsman <[email protected]> wrote:
> Hi Manuel, > > On Wed, Aug 21, 2013 at 3:15 PM, Manuel Klimek <[email protected]> wrote: > > On Wed, Aug 21, 2013 at 3:06 PM, Kim Gräsman <[email protected]> > wrote: > >> > >> I've wanted to add compilation database support, but the way tooling > >> is wired it seems I need to extract compilation db and source paths > >> from the command-line and pass them to ClangTool::ClangTool. The > >> compilation db is (sort of) handled by FixedCompilationDatabase, but > >> it seems the source paths are assumed to be tool arguments, not Clang > >> arguments. > > > > > > Use a clang plugin if you want to run as part of a build. The code that > has > > your main logic is basically the same, and you can use ASTMatchers and > other > > stuff from tooling in your clang plugin just fine. > > Thanks, but this tool already exists: > http://code.google.com/p/include-what-you-use > > and we'd like to have it act either as part of a build or stand-alone > with a compilation database. It seems hard to combine the two, > currently. > Looking at https://code.google.com/p/include-what-you-use/source/browse/trunk/iwyu.cc#3731, it seems like it should be fairly straight-forward to pull out the main method into its own .cc file, and have 2 .cc files: iwyu_main.cc (the current main code) iwyu_plugin.cc (a clang plugin that hands a new IwyuAction to clang to run) Please let me know if I'm missing something... Cheers, /Manuel > I'm interested in the Tooling approach because it would cut lots of > boilerplate from our setup and make us less exposed to driver changes. > > - Kim >
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
