[cfe-dev] Learning how to use and deploy 'scan-build'

Laszlo Nagy via cfe-dev cfe-dev at lists.llvm.org
Fri Nov 11 06:38:30 PST 2016


you will need the `share` directory content too, otherwise the html report
won't work as expected... but the CMakeLists.txt file has an install
target, which is a very good reference what you need to install. to use
that has an additional benefit: your distribution is going to be very
similar to other distributions, so users can use documentation written
elsewhere.

On Sat, Nov 12, 2016 at 1:26 AM, Aleksei Sidorin via cfe-dev <
cfe-dev at lists.llvm.org> wrote:

> Hello Martin!
>
> 11.11.2016 16:48, Martin J. O'Riordan via cfe-dev пишет:
>
> I am working on adding ‘scan-build’ to the set of tools we include with
> our release of ‘clang’, and trying to determine the minimal set of
> components needed to be able to successfully use ‘scan-build’.  The
> documentation for this is fairly thin, so there are many things I am having
> to learn.
>
>
>
> Currently we just provide the compiler itself, along with the headers and
> libraries for our SHAVE target.  I would like to add a lot of the
> additional tools and utilities that CLang/LLVM provide with future
> versions, ‘scan-build’ is one of these, and ‘clang-tidy’, etc., but not a
> complete set.
>
>
>
> In addition to the ‘scan-build’ Perl script itself, I also need the ‘
> ccc-analyzer’ and ‘c++-analyzer’ Perl scripts, and this appears to run
> without error; but I would like to know are their other components that I
> need to ensure that it is fully functional?
>
> As I remember, Perl scan-build doesn't have any additional dependencies.
>
>
>
> I would like to know what is the “core set” of analysers?  I listed the
> full set of analysers in ‘clang’ v3.9.0 and some of these names are
> prefixed with ‘core.’ so I presume these are the ones that comprise the
> core set?
>
> The "core" set is responsible for basic modelling of some functions in
> path-sensitive mode, they are not the analyzer core itself. Shortly,
> analyzer has two kinds of checkers - AST/CFG based (fast) and
> path-sensitive (slow but more powerful). If you need any path-sensitive
> checkers, you should also enable "core" checkers for more precise modelling.
>
> // TODO: enable "core" automatically in such cases?
>
> When enabling others I presume I have to add a comma-separated list to the
> ‘-enable-checker’ option, for example ‘debug.Stats,unix.Malloc’.  The
> names in the list of checks are formed with separating dot characters, does
> selecting something like ‘security’ enable all the checkers in the ‘
> security.*’ group, or do I have to enable them one at a time?
>
> To enable a full package, you should just point it. Example:
> "-enable-checker core,security"
>
>
>
> Sorry if this is all answered in some part of the documentation I haven’t
>  found, and please point me at it.
>
> You can find some additional information on http://clang-analyzer.llvm.org
>
>
>
> Thanks,
>
>
>
>             MartinO
>
>
>
>
> _______________________________________________
> cfe-dev mailing listcfe-dev at lists.llvm.orghttp://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>
>
>
> --
> Best regards,
> Aleksei Sidorin
> Software Engineer,
> IMSWL-IMCG, SRR, Samsung Electronics
>
>
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20161112/7808e342/attachment.html>


More information about the cfe-dev mailing list