-1

我有一个由 [Microsoft] nmake 构建的 makefile。它引用另一个文件作为包含。我无法修改包含的文件。问题是两者都使用的用户定义宏之一不太适合包含使用。我怎样才能重新定义这个宏只在它在包含中使用的地方?

我试过类似的东西:

`B=$(A)

A=$(C)

!include myfile.make

A=$(B)`

nmake,但是不喜欢这样。还有另一种方法可以做到这一点吗?

4

1 回答 1

0

我刚刚运行了一个测试用例,我得到的行为与您的描述不符。

假设我有两个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 回答