.ll ファイルを生成するように メークファイルを修正するには、まずは .c から .o を作成するための規則を使って、.c から .ll を作成するルールを記述します。たとえば、以下の例から、その次の例を記述できます。
# Rule for making .o from .c in ../src. %.o: ../src/%.c $(COMPILE.c) -o $@ $<
# Rule for making .ll from .c in ../src. %.ll: ../src/%.c cc $(CFLAGS) $(CPPFLAGS) $(FOO) $<
上記の例では、コンパイラオプション (CFLAGS と CPPFLAGS) 用のメークマクロに -Zll フラグが指定されていなければなりません。
接尾辞規則を使用する場合、.ll をサフィックスとして定義する必要があります。そのため、ユーザーによっては、% ルールの使用を好むかもしれません。
適切な .o ファイルが make 変数 FOO_OBJS に含まれている場合、以下の行によって FOO_LLS を作成できます。
FOO_LLS = ${FOO_OBJS:%.o=%.ll}
あるいは、それらがサブディレクトリ ll にある場合は、以下のようになります。
FOO_LLS = ${FOO_OBJS:%.o=ll/%.ll}
サブディレクトリ ll/ に .ll ファイルを保存したい場合、以下のラベルにより、メークファイルに自動的にこのファイルを作成させることができます。
.INIT: @if [ ! -d ll ]; then mkdir ll; fi