autotools:makefile之间的共享数据

时间:2013-01-31 19:04:55

标签: makefile autotools

这是我的项目树结构:

SRCDIR / Makefile_parent.make
SRCDIR / SRC / Makefile_src.make
SRCDIR /数据/ Makefile_data.make
SRCDIR /其他/ Makefile_other.make

我的问题是如何从我的“Makefile_parent.make”传递一个可读的子makefile文件..我有:

Makefile_parent.make

ParentData = foo
SUBDIRS = src data other

以后,我想从其他makefile中读取它,例如:

Makefile_src.make

GetParentData = $(ParentData)

但是不工作总是空的......有什么想法吗?

1 个答案:

答案 0 :(得分:0)

在Makefile_src.make中,您需要在文件顶部添加此行:

include Makefile_parent.make

然后存在多次包含相同makefile的问题。解决方案(类似于头文件中的#ifndef;))

ifndef MAKEFILE_PARENT_MAKE
MAKEFILE_PARENT_MAKE := 1

...
...
...
...

endif

您需要为您认为可能包含的每个makefile执行此操作,并为每个文件使用不同的变量名。