私は現在、非常に広範囲にテンプレートを使用し、インスタンシエーション中にメモリの制約に陥っているプロジェクトに取り組んでいます。インスタンス化をいくつかの非常に単純なファイルに分割しました。これらのファイルはすべて、3つのライナーで構成され、インクルードのみで構成されています。automakeで生成されたソース(a foreach)の生成リスト
これらをMakefile.amのルールで生成させることができます。今私はMakefileに生成されるべきファイルのかなり長いリストを持っており、このリストをforeachのような式でリファクタリングしたいと思っています。より具体的に:私は
libfoo_la_SOURCES = $(foreach i,a b ...,$(foreach j,0 1 ...,$i_$j.cpp))
は、しかし、第2の構築物は唯一のautomakeによりに対して警告されていない
ように、より簡潔に表現することができlibfoo_la_SOURCES = a_0.cpp a_1.cpp ... b_0.cpp b_1.cpp ... c_0.cpp c_1.cpp ...
のようなラインを持っているだけでなく、動作しません。この方法で与えられたファイルはコンパイルもクリーンでもありません。
現在、このファイルリストをシェルスクリプトで生成しています。
この繰り返しを実装する方法はありますか?
おかげさまで、10行のshで生成されたMakefileの115行を、20行の携帯makeに縮小しました。 – thiton