-1

[Microsoft]nmakeによってビルドされるmakefileがあります。別のファイルをインクルードとして参照します。含まれているファイルを変更できません。問題は、両方で使用されるユーザー定義マクロの1つが、インクルードでの使用に適していないことです。インクルードで使用されている場合にのみ、このマクロを再定義するにはどうすればよいですか?

私は次のようなことを試しました:

`B = $(A)

A = $(C)

!myfile.makeを含める

A = $(B) `

nmakeは、しかし、これが好きではありませんでした。これを行う別の方法はありますか?

4

1 に答える 1

0

テストケースを実行したところ、得られた動作があなたの説明と一致しません。

2つのmakefileがあるとします...

nuit.mak:

A=17

!include nuit-a.mak

A=5

all: child main

main:
    @echo A = $(A)

そしてnuit-a.mak:

child:
    @echo A = $(A)

これが私が見る結果です:

c:\dev\make>nmake -f nuit.mak main

A = 5

c:\dev\make>nmake -f nuit.mak child

A = 17

c:\dev\make>nmake -f nuit.mak all

A = 17
A = 5
于 2011-05-14T19:21:37.220 に答える