次: , 上: Other GNU Tools


9.1 Emacs Lisp

Automakeは,Emacs Lispに対するサポートも供給します.`LISP'プライ マリは.elファイルのリストを保持するために使用されます.このプラ イマリに対して利用可能な接頭辞は`lisp_'と`noinst_'です. lisp_LISPが定義されている場合,configure.acAM_PATH_LISPDIRを実行する必要があります(see Macros).

AutomakeはすべてのEmacs LispソースファイルをAM_PATH_LISPDIRで見 つかった場合はそのEmacsを使用してバイトコンパイルします.

バイトコンパイルされたEmacs Lispファイルは,すべてのEmacsのバージョン の間で移植性があるわけではないので,一種類以上のEmacsバージョンをイン ストールしているサイトがあることが予想される場合,これを止めることに意 味があります.さらに,実際にはバイトコンパイルの利点がないパッケージも 多くあります.しかし,我々はEmacs Lispソースをバイトコンパイルすること を推奨します.恐らく,他の全員がインストールしなくてすむことより,それ ぞれに対して対処するためにそれぞれ設定した方が良いでしょう.

バイトコンパイルを避ける方法は二つあります.歴史的に,我々は以下の内容 を推奨していました.

     lisp_LISP = file1.el file2.el
     ELCFILES =

ELCFILESはAutomakeの内部変数で,通常はバイトコンパイルする必要 があるすべての.elcファイルをリストアップしています.Automakeは lisp_LISPからELCFILESを自動的に定義します.この変数を明 示的に空にしておくことで,バイトコンパイルを妨げます.

Automake 1.8からは,我々は代わりにlisp_DATAを使用することを推奨 しています.以下のようにします.

     lisp_DATA = file1.el file2.el

これら二つの内容が等価ではないことに注意して下さい.Emacsがインストー ルされていない場合,_LISPではそのファイルはインストールされませ んが,_DATAではそのファイルは常にインストールされます.