Go to the first, previous, next, last section, table of contents.


Automakeが不十分なとき

Automakeの暗黙のコピーの意味は,単純にいくつかのmakeターゲットと `Makefile.in'の規則を加えることで,多くの問題が解決可能だということ を意味します.Automakeはこれらの追加を無視します.

これを行なうときにはいくつか注意することがあります.すでにAutomakeで使用 されているターゲットをオーバーロードすることが可能ですが,特にサブディレ クトリのあるパッケージのトップディレクトリでは,あまり勧められません.し かし,様々な有用なターゲットには,`Makefile.in'で指定可能な, `-local'バージョンがあります.Automakeはこれらのユーザが提供するター ゲットを用いて標準ターゲットを補足します.

ローカルバージョンをサポートするターゲットは,allinfodvipspdfcheckinstall-datainstall-execuninstallinstalldirsinstallcheck,そして様々なcleanターゲット (mostlycleancleandistclean,そして maintainer-clean)です.uninstall-exec-localuninstall-data-localターゲットが無いことに注意してください. uninstall-localだけを使用してください.データだけ,あるいは実行可 能プログラムだけをアンインストールすることには意味がありません.

例えば,ファイルを`/etc'にインストールする一つの方法は,以下のよう になります.

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

ターゲットには,hookと呼ばれる,その仕事が終った後にもう一つのター ゲットを実行する方法もあります.フックは,主要なターゲットに`-hook' を追加して命名します.フックが可能なターゲットは,install-datainstall-execuninstalldist,そして distcheckです.

例えば,インストールしたプログラムにハードリンクを作成する方法は,以下の ようになります.

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


Go to the first, previous, next, last section, table of contents.