ラベル クロスリファレンス の投稿を表示しています。 すべての投稿を表示
ラベル クロスリファレンス の投稿を表示しています。 すべての投稿を表示

androidのmailingリストを眺めていたら、kernelのクロスリファレンスができるサイト情報
があったので、忘れないためにも情報を残しておく。
kenrelソースまで確認してメソッドや実装を調べる場合、本家の場合だといまいちなので
OpenGrokで作成されている以下サイトは本当にありがたい。


ソースブラウザとして
LXR,global,OpenGrokがあるが、OpenGrokだけはつかったことが
なかったのでいい機会に覚えようと思う。

OpenGrokとLXR,globalの比較はOpenGrokがダウンロードできる以下のサイトに情報がある。
http://hub.opensolaris.org/bin/view/Project+opengrok/



本家
https://sites.google.com/site/devcollaboration/codesearch


・android3系がないが、メージャーとなっているヴァージョンは使えるので問題ない。
http://tools.oesf.biz/android-2.2_r1.1/
http://tools.oesf.biz/android-2.3_r1.0/
http://tools.oesf.biz/android-2.3.7_r1.0/
http://tools.oesf.biz/android-4.0.1_r1.0/
http://tools.oesf.biz/android-4.0.3_r1.0/
http://tools.oesf.biz/android-4.0.4_r1.0/
http://tools.oesf.biz/android-4.1.1_r1.0/
ソースのクロスリファイレンスを作成するツールとしてglobal tag systemをLXRがある。
apacheサーバを立てているとこれらを利用してソース解析が用意にできる。
LXR、global tag systemもどちらもapacheの公開ディレクトリの設定を変更して運用
する必要があるので設定方法の記述は省略。


global tag system
http://www.gnu.org/software/global/

LXR
http://sourceforge.net/projects/lxr/

LXRで作成されたlinux kernelソースのクロスリファレンス
http://lxr.oss.org.cn/



global tag systemの使い方

ソースブラウザにしたいターゲットソースがあるディレクトリで以下を実行
1.gtags -v
2.htags -safFn


cやjavaの混在環境(android)の場合は先にfindコマンドでファイルリストを作成しておく
1.find . type f -print >filelist
2.gtags -f >filelist
3.htags -safFn


・cflow(関数コールツリー)との連携

cflow
http://www.gnu.org/software/cflow/


1.gtags -v
2.cflow --tree --format=posix `global -P` > cflow.out
3.cflow --tree --format=posix --reverse `global -PP >cflow-r.out
4.htags -safFn --cflow=cflow.out --callee-tree=cflow-r.out

About