vermeille / clang-callgraph Goto Github PK
View Code? Open in Web Editor NEWA tool based on clang which generates a call graph from a given C++ codebase
License: Apache License 2.0
A tool based on clang which generates a call graph from a given C++ codebase
License: Apache License 2.0
This is the current way we're filtering the command arguments before passing it to index.parse()
:
c = [
x for x in cmd['command'].split()
if x.startswith('-I') or x.startswith('-std=') or x.startswith('-D')
] + cfg['clang_args']
I ran into issues with this in cases where -include
was used, or when there was a space between -I
/-include
and the actual path. In my particular case, I found that if I didn't do any argument filtering, but just used cmd['command'].split()[1:-3]
instead of all the arguments, it worked. This filtered out the compiler executable (the first argument) and the '-o output_file source_file` part of the command. While this fixed my issue, this wouldn't generally fix the issue as it's relying on those three tokens being at the end of the command, which is why I didn't submit a PR for it.
I also ran into issues, because some arguments contained single quotes that would have been removed on the command line, i.e. -DFOO='BAR'
, and I needed to do x.replace("'", '')
to fix it.
Hi,
are there any plans to put this package on PyPi?
It would be nice to add some more detail about the dependencies required to run this project. For example, installing clang and installing the clang python library.
I ended up realizing that I needed the libclang dev package (i.e. libclang-13-dev
), not the normal package. I also had to make sure the version of the python library matched the version of libclang
I had installed. For example pip install clang
didn't work, but pip install clang==13.0.1
worked.
Functions defined inside a header included by several source files do have their callgraph copied multiple times.
Please help explain what is Bear in the README....and how does one go about installing the same. Can same be installed using yum like
yum install bear
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.