Generate callgraphs with Doxygen - minsuk-jang/teamproject GitHub Wiki
doxygen์ ์ฌ์ฉํ์ฌ ์ํธ ์ฐธ์กฐ๊ฐ ์๋ ์ฃผ์์ด ๋ฌ๋ฆฐ ์์ค ์ฝ๋๋ฟ๋ง ์๋๋ผ neovim์ ์๋ ๋ชจ๋ ํจ์์ call ๊ทธ๋ํ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. (ํ์ฌ neovim์ doxygen ์ฃผ์์ ์ฌ์ฉํ์ง ์์ต๋๋ค)
๊ทธ๋ ๊ฒ ํ๊ธฐ ์ํด์๋ neovim ๋ฃจํธ ๋๋ ํ ๋ฆฌ์ ์๋ ์ ์ ํ ์ค์ ํ์ผ์ ๊ฐ์ง๊ณ doxygen ๋ช ๋ น์ ์คํํด์ผ ํฉ๋๋ค.
doxygen configfile
-g
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ doxygen์ผ๋ก ๊ธฐ๋ณธ ์ค์ ํ์ผ์ ์์ฑ ํ ์ ์์ต๋๋ค.
doxygen -g configfilename
call ๊ทธ๋ํ๋ฅผ ์์ฑํ๋ ค๋ฉด doxygen ๊ตฌ์ฑ ํ์ผ์ ๋ค์ ์ต์ ์ ์ค์ ํด์ผ ํฉ๋๋ค.
# This first one is optional
PROJECT_NAME = "Neovim"
OPTIMIZE_OUTPUT_FOR_C = YES
EXTRACT_ALL = YES
EXTRACT_STATIC = YES
# Set only the dirs you want
INPUT = src/ test/
RECURSIVE = YES
SOURCE_BROWSER = YES
HAVE_DOT = YES
# Set according to your system
DOT_NUM_THREADS = 3
CALL_GRAPH = YES
CALLER_GRAPH = YES
(์์ ๋ณ๊ฒฝ ์ฌํญ์ด ์ ์ฉ๋ ๊ธฐ๋ณธ ์ค์ ํ์ผ์ here์์ ์ฐพ์ ์ ์์ต๋๋ค.)
doxygen์ ์์ํ ๋ ์ค์น๋๋ dot
ํ๋ก๊ทธ๋จ (graphviz ๋๊ตฌ ๋ชจ์)์ด ํ์ํฉ๋๋ค.
Doxygen์ ์ด๊ฒ์ ํธ์ถํ์ฌ ๊ทธ๋ํ๋ฅผ ์์ฑํฉ๋๋ค.
**์ฃผ์ : ** ์์ ๊ตฌ์ฑ์ผ๋ก ์ธํด doxygen์ด ์ฝ 30๋ถ ๋์ ์คํ๋๊ณ ์ฝ 2.1GB ์๋น์ ๋ฌธ์๊ฐ ์์ฑ๋ฉ๋๋ค.
callgraphs์ ์ต์ ๋ฒ์ ์ ์ํด์๋ here์ ์ก์ธ์ค ํ ์ ์์ด์ผ ํฉ๋๋ค.