メイクファイルで変数をあるレベルから次のレベルに渡すためのヘルプを探しています。さまざまなターゲット アーキテクチャで実行するためにビルドする必要があるソース ツリーがあります。より高いレベルのメイクファイルをきれいに保つために、アーキテクチャ固有の情報を含む個別のメイクファイルを作成し、include ディレクティブを使用して必要なものだけを含めました:)
メイクファイルの後半で、ソース ファイルをビルドするために別のディレクトリに転送します。ビルドが失敗し、アーキテクチャ固有の変数が渡されていないことが原因であることがわかりました。
ifeq ($(ARCH), my_arch) |
include build/my_archdefs.mk | section 1
endif |
<more commands>
debug:
$(MAKE) -C src debug
コード ツリーを構築するための makefile は、src ディレクトリにあります。応急処置として、上記のセクション 1 を下位レベルの makefile に含めました。この場合、変数 ARCH が継承されていないことに気付きました。
関連していると思われるいくつかのリンクを以下に示しますが、これを機能させるために何をする必要があるかわかりません。 http://www.gnu.org/software/make/manual/html_node/Options_002fRecursion.html#Options_002fRecursion http://www.gnu.org/software/make/manual/html_node/Include.html
必要な情報は上で参照したリンクに潜んでいるように思えますが、表示されていません。どんなポインタでも大歓迎です。
ありがとう。