[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
現在Automakeは,Texinfoとman pageに対するサポートを提供します.
11.1 Texinfo | ||
11.2 manページ | Man pages |
カレントディレクトリにTexinfoソースを含んでいる場合,`TEXINFOS'プ
ライマリでそれを宣言する必要があります.通常,Texinfoファイルはinfoに
変換されるので,info_TEXINFOS
変数が最も一般的に使用されます.す
べてのTexinfoソースファイルは,`.texi',`.txi',または
`.texinfo'の拡張子で終える必要があります.新しいマニュアルには,
`.texi'を推奨します.
Automakeは,`.info',`.dvi',`.ps',`.pdf',そして
`.html'ファイルを,Texinfoソースからビルドするルールを生成します.
`.info'ファイルはmake all
でビルドされ,make install
でインストールされます(no-installinfo
を使用していない場合に限り
ます.以下を参照してください).それ以外のファイルは,make dvi
,
make ps
,make pdf
,そしてmake html
でビルドを要求
することが可能です.
`.texi'ファイルが`version.texi'を@include
している場
合,そのファイルが自動的に生成されます.ファイル`version.texi'は,
四つのTexinfoのフラグを定義し,それは@value{EDITION}
,
@value{VERSION}
,@value{UPDATED}
,そして
@value{UPDATED-MONTH}
を使用することで参照可能です.
EDITION
VERSION
UPDATED
UPDATED-MONTH
`version.texi'サポートには,mdate-sh
プログラムが必要です.
このプログラムはAutomakeと一緒に供給されていて,automake
が
--add-missing
オプションで呼び出されるとき,自動的に含められます.
複数のTexinfoファイルがあり,`version.texi'の機能を使用したい場合, それぞれのTexinfoファイルに対し個別のバージョンファイルを持たせる必要 があります.Automakeは`vers*.texi'に一致したTexinfoファイル内に含 まれるものを,単純に自動的に生成されたバージョンファイルとして扱います.
infoファイルが,実際には一つ以上の`.texi'ファイルに依存する場合も
あります.例えば,GNU Helloでは,`hello.texi'は`gpl.texi'ファ
イルを含んでいます.texi_TEXINFOS
変数を使用することでこれ
らの依存性をAutomakeに伝えることが可能です.GNU Helloで用いた方法は,
以下のようになっています.
info_TEXINFOS = hello.texi hello_TEXINFOS = gpl.texi |
デフォルトでAutomakeは,ファイル`texinfo.tex'がTexinfoソースと同
じディレクトリに存在することを要求します(これは,TEXINFO_TEX
変
数で変更することが可能です.以下を参照して下さい).しかし,
`configure.ac'でAC_CONFIG_AUX_DIR
を使用した場合
(see section `Finding `configure' Input' in The Autoconf Manual),`texinfo.tex'はそこで探されます.Automakeは,
`--add-missing'が与えられている場合,`texinfo.tex'を供給しま
す.
オプション`no-texinfo.tex'を,`texinfo.tex'を要求することを
止めるために使用することが可能です.しかし,変数TEXINFO_TEX
の使
用は望ましく,それはdvi
,ps
,そしてpdf
ターゲット
を動作させることが可能だからです.
Automakeはinstall-info
ルールを生成します.これを明示的に使用す
る人もいます.デフォルトで,infoページは`make install'でインストー
ルされます.これはno-installinfo
オプションによって止めることが
可能です.
以下の変数はTexinfoのビルドルールで使用されます.
MAKEINFO
makeinfo
プログラムがシステムで見
つかった場合,デフォルトで使用されます.それ以外ではmissing
が代
わりに使用されます.
MAKEINFOHTML
$(MAKEINFO) --html
と定義します.
MAKEINFOFLAGS
$(MAKEINFO)
と$(MAKEINFOHTML)
のそれぞれの呼び出しに渡すユー
ザフラグです.このユーザ変数(see section 2.5 ユーザに対して予約されている変数)は`Makefile'
で定義していることを期待していません.それはユーザが必要に応じて追加フ
ラグを渡すことで使用することが可能です.
AM_MAKEINFOFLAGS
AM_MAKEINFOHTMLFLAGS
makeinfo
の呼び出しで管理者が渡すフラグです.これらは
`Makefile.am'で優先することが可能な管理者用の変数です.
$(AM_MAKEINFOFLAGS)
は`.info'ファイルをビルドするとき
makeinfo
に渡されます.そして,$(AM_MAKEINFOHTMLFLAGS)
は
`.html'ファイルをビルドするときmakeinfo
に使用されます.
例えば以下の設定で,一つのマニュアルに付き,ノードで分離されていない単 一の`.html'ファイルを入手するために使用することが可能です.
AM_MAKEINFOHTMLFLAGS = --no-headers --no-split |
デフォルトで,$(AM_MAKEINFOHTMLFLAGS)
は
$(AM_MAKEINFOFLAGS)
に設定されます.これは,
$(AM_MAKEINFOHTMLFLAGS)
を定義せずに$(AM_MAKEINFOFLAGS)
を
定義すると`.info'と`.html'の両方のファイルが暗黙にビルドされ
ることを意味します.
TEXI2DVI
texi2dvi
で,Texinfoパッケージとともに配布されて
います.
TEXI2PDF
$(TEXI2DVI) --pdf --batch
です.
DVIPS
dvips
です.
TEXINFO_TEX
多くのディレクトリにTexinfoファイルがあるパッケージの場合,Automakeに
パッケージに対して標準的な`texinfo.tex'が見つかる場所を伝える変数
TEXINFO_TEX
を使用することが可能です.この変数の値は,現在の
`Makefile.am'から`texinfo.tex'への相対的なパスにすべきです.
TEXINFO_TEX = ../doc/texinfo.tex |
パッケージにmanページを含めることも可能です(しかし,この件に関しては,
section `Man Pages' in The GNU Coding Standardsを参照してくだ
さい).manページは`MANS'プライマリを使用して宣言します.一般に
man_MANS
変数を使用します.manページは,mandir
の正しいサ
ブディレクトリに,ファイル拡張子に基づいて自動的にインストールされます.
`.1c'のようなファイルの拡張子は,有効な拡張子を探すために処理され,
mandir
の正しいサブディレクトリを決定するために使用されます.有
効なセクション名は,10進数の`0'から`9'と,文字の`l'と
`n'です.
開発者によっては,ソースファイルで`foo.man'のようなファイル名で manページを命名し,ファイルをインストールするときに,例えば `foo.1'のような正しい接尾子を持つものに名前を変更したい時もありま す.Automakeはこのモードもサポートします.有効なセクションに命名された SECTIONに対して,`manSECTIONdir'と命名されている対応 するディレクトリと,対応する`_MANS'変数があります.そのような変数 でリストアップされているファイルは,示されているセクションにインストー ルされます.ファイルに有効な接尾子が既についている場合,それはそのまま インストールされます.それ以外の場合,ファイルの接尾子はセクションに一 致するように変更されます.
例えば,以下のような例を考えます.
man1_MANS = rename.man thesame.1 alsothesame.1c |
この場合は,`rename.man'はインストールする時に`rename.1'に名 前を変更され,他のファイルはその名前のままになります.
デフォルトで,manページは`make install'でインストールされます.し
かし,GNUプロジェクトはmanページを必要としないので,多くの管理者はman
ページを最新にしておきません.この場合,no-installman
オプション
でman ページをデフォルトでインストールしないようにします.ユーザは
`make install-man'によって,明示的にそれらをインストールすること
ができます.
(Texinfoドキュメントとmanページの両方を含んでいる)GNUcpio
では,
ドキュメントを以下のようにして処理しています.
man_MANS = cpio.1 mt.1 EXTRA_DIST = $(man_MANS) |
manページは,現在ソースであると考慮されておらず,そのわけはmanページが 自動的に生成されることが珍しくないからです.このため,それらは自動的に 配布物に含められません.しかし,これは`dist_'接頭辞を使用すること で変更可能です.
`nobase_'接頭辞はmanページに対しては意味が無く利用できません.
[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |