からくりブログ

株式会社からくり社員のブログです

Doxygen を使った C ソース静的解析 (その 3:設定編(の設定オプション詳細))

今回は、前回設定を行った設定オプションの意味について解説します。

詳細は doxygen.jp の設定ページ をご覧いただきたいのですが、ここでは私なりにわかりやすく説明しています。Doxygen ドキュメント生成時の負荷や、C 言語ソースに適したオプションについての説明にはなっているかと思います。

  • PROJECT_NAME
    • “My Project” → “ASP”
      • 生成する Doxygen ドキュメントのプロジェクト名を設定できます。デフォルトは “My Project” です。変更したプロジェクト名が、ページのタイトル等として表示されます。
  • PROJECT_NUMBER
    • 3-3.1.0 (新規)
      • プロジェクト番号やリビジョン番号を設定できます。
  • OUTPUT_DIRECTORY
    • ※出力したいディレクトリパスを指定
      • Doxygen ドキュメントが置かれるパスを設定できます。相対パスを指定した場合は、doxygen を実行した場所からの相対パスとなります。空白のままにした場合は、カレントディレクトリが使用されます。
  • CREATE_SUBDIRS
    • NO → YES
      • YES にすることにより、4096 サブディレクトリ (2 段階で) をそれぞれの出力形式のディレクトリ下に作成し、そこに生成したファイルが分配されます。
  • OUTPUT_LANGUAGE
    • English → Japanese
      • Doxygen ドキュメントの記述言語を設定できます。
  • OPTIMIZE_OUTPUT_FOR_C
    • NO → YES
      • YES にすることにより、より C 言語に適合した Doxygen ドキュメントが生成されるようになります。
  • TYPEDEF_HIDES_STRUCT
    • NO → YES
      • YES にすることにより、struct, union, enum の typedef が、typedef として struct, union, enum として Doxygen ドキュメントに出力されるようになります。
  • EXTRACT_ALL
    • NO → YES
      • YES にすることにより、ドキュメント内の要素はすべて Doxygen ドキュメントに出力するものとして扱われます。
  • EXTRACT_PRIVATE
    • NO → YES
      • YES にすることにより、クラスの private メンバーがすべて Doxygen ドキュメントに出力されます。
  • EXTRACT_STATIC
    • NO → YES
      • YES にすることにより、ファイルの static メンバーがすべて Doxygen ドキュメントに出力されます。
  • CASE_SENSE_NAMES
    • NO → YES
      • YES にすることにより、ファイル名が大文字小文字を意識して生成されます。
  • SORT_MEMBER_DOCS
    • YES → NO
      • YES にすることにより、ファイルとクラスのメンバーをアルファベット順で、NO であれば宣言順でソートされます。
  • INPUT
    • ※ASP のあるディレクトリパスを指定
      • ファイル名、ディレクトリ名を設定することにより、Doxygen ドキュメントファイルを指定できます。ファイルやディレクトリを複数指定する場合は、それらをスペースで区切ります。
  • FILE_PATTERNS
    • ※C, C++ 以外の拡張子を削除
      • Doxygen 静的解析対象とする複数のワイルドカード (拡張子) パターンを指定します。C 言語で使用しない不要なワイルドカードパターンを削除するとスッキリします。
  • RECURSIVE
    • NO → YES
      • YES にすることにより、サブディレクトリに対しても入力ファイルの検索が行われます。
  • SOURCE_BROWSER
    • NO → YES
      • YES にすることにより、ソースファイルのリストが生成されます。
  • INLINE_SOURCES
    • NO → YES
      • YES にすることにより、関数、クラス、列挙型の本体が直接 Doxygen ドキュメントにインクルードされます。
  • STRIP_CODE_COMMENTS
    • YES → NO
      • NO にすることにより、特別コメントブロックを隠すことが禁止されます。
  • REFERENCED_BY_RELATION
    • YES → NO
      • NO にすることにより、その関数を参照する関数リストの表示が禁止されます。
  • REFERENCES_RELATION
    • YES → NO
      • NO にすることにより、その関数が使用している要素リストの表示が禁止されます。
  • HTML_TIMESTAMP
    • NO → YES
      • YES にすることにより、各 HTML ページのフッターに、生成日時が出力されます。
  • GENERATE_TREEVIEW
    • NO → YES
      • YES にすることにより、ツリー状のインデックス構造を生成し、階層情報が表示されます。
  • GENERATE_LATEX
    • YES → NO
      • NO にすることにより、LATEX 出力を禁止されます。
  • CLASS_DIAGRAMS
    • YES → NO
      • NO にすることにより、クラス図生成を禁止されます。
  • HAVE_DOT
    • NO → YES
      • YES にすることにより、コマンドパスにある dot ツールが使用されます。
  • CALL_GRAPH
    • NO → YES
      • YES,かつ HAVE_DOT も YES にすることにより、呼び出し依存関係図が生成されます。
  • CALLER_GRAPH
    • NO → YES
      • YES,かつ HAVE_DOT も YES にすることにより、呼び出し元依存関係図が生成されます。
  • DOT_MULTI_TARGETS
    • NO → YES
      • YES にすることにより、dot は一回の実行で複数の出力ファイルを生成するようになります。dot の処理が速くなるようです。
  • DOT_PATH
    • ※Graphviz に含まれる dot.bin のあるディレクトリパスを設定
      • dot ツールのパスを指定できます。

次回は、ASP 環境にもう少し最適化したいと思います。

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>