Autotoolsを使用してDoxygenのドキュメントを生成(およびインストールする)

StackOverflow https://stackoverflow.com//questions/10682603

  •  12-12-2019
  •  | 
  •  

質問

LibToolsを使用しています(libtoolsを使用)、Doxygenを使用してすべてのAPIドキュメントが行われています。

生成されたDoxygenドキュメントのインストールをAutoToolsに統合する簡単な方法があるかどうか疑問に思います。

文書を構築することは十分に簡単なものであることを理解してください。 しかし、私がdoxygenを走らせたら、生成された(例えば).htmlファイルを$(htmldir)に入手するための適切な方法は何ですか?

問題はわからない(知りたいのでも知りたい)ということがあるように思われます。

私は 'html_data= html /**'のようなものです ' bad アイデア

役に立ちましたか?

解決

私は自分自身の自動起源に関する経験があまりないが、このメールスレッドではいくつかの提案が行われます。 http://old.nabble.com/HOW-install-doxygen-generation-html-documentation - TD17029178.html

他のヒント

いくつかの貢献マクロを使用するには、よりコンパクトかもしれません。ここでは、John Calcote PG 246によるAutotools Bookからの例に基づく簡単な方法を把握しました。

次の追加を追加しての真上の設定。

AC_CONFIG_FILES([Makefile
.

AC_CHECK_PROGS([DOXYGEN], [doxygen])
if test -z "$DOXYGEN"; then
   AC_MSG_WARN([Doxygen not found - continue without Doxygen support])
fi
AC_CHECK_PROGS([DOT], [dot])
if test -z "$DOT"; then
   AC_MSG_ERROR([Doxygen needs dot, please install dot first])
fi
AC_CHECK_PROGS([PDFLATEX], [pdflatex])
if test -z "$PDFLATEX"; then
   AC_MSG_ERROR([Doxygen needs pdflatex program, it is part of TeX http://www.tug.org/texlive/acquire-netinstall.html])
fi
AM_CONDITIONAL([HAVE_DOXYGEN], [test -n "$DOXYGEN"])
AM_COND_IF([HAVE_DOXYGEN], [AC_CONFIG_FILES([docs/Doxyfile])])
AM_COND_IF([HAVE_DOXYGEN], [AC_CONFIG_FILES([docs/Makefile])])
. projectdir / docsディレクトリ

2つのファイルを追加する:doxyfile.inとmakefile.am

代替変数を使用するたとえば、次のようなものです。

PROJECT_NAME           = @PACKAGE_NAME@
PROJECT_NUMBER         = @PACKAGE_VERSION@
INPUT                  = @top_srcdir@
.

その後、他のDoxygen構成フィールドを適切に変更します。

LATEX_OUTPUT           = latex
PDF_HYPERLINKS         = YES
USE_PDFLATEX           = YES
.

このようにしてPDFファイルを生成します。

makefile.amは単純であるべきです:

if HAVE_DOXYGEN
directory = $(top_srcdir)/docs/man/man3

man_MANS = $(directory)

$(directory): doxyfile.stamp

doxyfile.stamp: Doxyfile
    $(DOXYGEN) $^
    cd latex && $(MAKE)
    echo Timestamp > $@

CLEANFILES = doxyfile.stamp

all-local: doxyfile.stamp
clean-local:
    -rm -rf $(top_srcdir)/docs/man

endif
.

(これをコピーしながらメイクファイルの字下げを尊重してください。)

これは私のために働いていたようでした。結果のドキュメントはDocsフォルダに生成されます。間違いをしたら私に知らせてください。

オレンベンキキのマクロを使用して、 http://www.ben-kiki.org/oren/doxample/ またはGoogleそれ。このスクリプトは、PDF / HTML / MAN(設定可能)形式のDoxygenドキュメントを作成します。

生成されたヘルプファイルをmakefile.amの* dist_doc_data *リストに追加して、それらをインストールすることができます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top