[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

21. Automakeが十分でないとき

Automakeの暗黙の複製意味論は多くの問題が単にいくつかのmakeターゲッ トや規則を`Makefile.in'に加えるだけで取りかかれることを意味する。 Automakeはこれらの追加を無視するだろう。

これを行うことに対して、いくつかの警告がある。Automakeによってす でに使用されているターゲットをオーバーロード(overload)することができるが、 それはしばしば勧められない、特にflatでないパッケージの最上位のディレクト リでは。しかしながら、さまざまな有用なターゲットがあなたの `Makefile.in'で指定できる`-local'バージョンを持っている。 Automakeは標準のターゲットをこれらのユーザが与えたターゲットに補足するだ ろう。

局所的なバージョンをサポートするターゲットはallinfodvicheckinstall-datainstall-execuninstallとさまざまなcleanターゲット(mostlycleancleandistcleanmaintainer-clean)である。 uninstall-exec-localuninstall-data-localターゲットはない ことに注意せよ。単にuninstall-localを使いなさい。データだけや実行 形式だけをアンインストールすることは意味をなさない。

例えば、ここに`/etc'のファイルをインストールする一つの方法がある。

 
install-data-local:
        $(INSTALL_DATA) $(srcdir)/afile /etc/afile

いくつかのターゲットはまたそれらの作業が行われた後に、hookと呼ばれ る、他のターゲットを走らせる手段を持つ。hookは基本的なターゲットにちなん で、`-hook'を付けて名付けられる。hookを許すターゲットは install-datainstall-execdistdistcheck である。

例えば、ここにインストールされたプログラムにハード・リンクを作成する方法 がある。

 
install-exec-hook:
        ln $(bindir)/program $(bindir)/proglink

[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated by Akihiro Sagawa on June, 15 2005 using texi2html 1.70.