2013-07-05 49 views

回答

3

该语法没有在make的POSIX标准中定义,因此它不会在GNU make以外的make版本中可用。当然,GNU make本身是可移植的,所以它可以并且经常用于非GNU系统,所以从这个意义上讲它可以移植到非GNU系统:-)。

+0

感谢MadScientist。你会碰巧知道替代'ifeq($(原产地FOO),未定义)'? – jww

+2

'ifeq','define'等也是GNU的唯一设施。除'include'之外的所有预处理器操作都是额外的功能。当涉及到力量和灵活性时,“make”的标准非常贫乏;这可能就是为什么(据我所知),没有一个“make”程序能够完全实现标准,没有附加功能。这也是为什么我个人的'make'规则之一是,不用费心编写可移植的makefile,而是使用可移植的'make'。 – MadScientist