Solaris 10 Makefiles中条件语句的语法是什么?

Solaris 10 Makefiles中条件语句的语法是什么?,makefile,solaris,conditional,Makefile,Solaris,Conditional,我被迫在Solaris 10(SunOS 5.10)中使用/usr/ccs/bin/make ifeq的典型GNUmake语法可用于包含或排除文本,但不适用于Solarismake 在为宏赋值时,我可以使用shstyleif语句,但我正在寻找一种方法,根据环境变量(如GNU的ifeq)在makefile中包含或排除一组文本 有什么想法吗?我还希望您提供有关Solaris 10版本的make的任何文档。联机文档也可从以下位置获得: Solarismake是一个中等复杂的beastie,但它不是GN

我被迫在Solaris 10(SunOS 5.10)中使用
/usr/ccs/bin/make

ifeq
的典型GNU
make
语法可用于包含或排除文本,但不适用于Solaris
make

在为宏赋值时,我可以使用
sh
style
if
语句,但我正在寻找一种方法,根据环境变量(如GNU的
ifeq
)在makefile中包含或排除一组文本


有什么想法吗?我还希望您提供有关Solaris 10版本的
make

的任何文档。联机文档也可从以下位置获得:


Solaris
make
是一个中等复杂的beastie,但它不是GNU make

好吧,它不使用条件句


它确实有条件宏
:=
和增量宏
+=

谢谢,我一直在找。(从主要的oracle文档页面进入联机手册页面并不明显。)事实上,我指的是联机手册页面,这是一个非常明显的地方。如果你没有安装它,链接就在那里。我找不到条件句的例子,所以这个问题。您的回答是否意味着我尝试使用Solaris的make是不可能的?
ifeq
条件是非标准的GNU make扩展。make的其他版本没有(所有)gnumake扩展。对使用您尝试使用的语法无法执行您尝试执行的操作。也许还有其他方法可以实现同样的目标,但你不能像GNU make那样做。(这是使用扩展的缺点;您会被锁定在任何提供扩展的特定实现中。对于开源来说,锁定与专有锁定一样真实;通常,它比专有锁定痛苦得多,因为您拥有源代码。)