Hi Manuel, On Thu, Aug 22, 2013 at 10:21 AM, Manuel Klimek <[email protected]> wrote: > 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)
Ah, and then build two different binaries out of it? One stand-alone tool and one Clang plugin dylib? Or can they be combined into the same binary? That would be my preference, of course, but I can't quite see the big picture for all the details at this point. > Please let me know if I'm missing something... If anybody's missing something, it's probably me :-) Thanks, - Kim _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
