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

4

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

Solaris make不支持通常用于包含或排除文本的ifeq GNU语法。

我可以在分配宏值时使用sh样式if语句,但我正在寻找一种根据环境变量(类似于GNU的ifeq)在makefile中包含或排除一堆文本的方法。

有什么想法吗? 我也希望获得有关Solaris 10版本的make的任何文档。

2个回答

2

谢谢,我一直在寻找这个。从主Oracle文档页面进入在线手册并不是显而易见的。 - aoeu
实际上,我指的是在线手册页面,这是最明显的查找位置。如果您没有安装它,链接就在那里。 - jlliagre

2
Solaris的make是一个相当复杂的工具,但它不是GNU Make。据我所知,它不使用条件语句。它确实有条件宏“:=”和增量宏“+=”。

我找不到条件语句的例子,所以问了这个问题。您的回答是否意味着使用 Solaris 的 make 不能实现我想要做的事情? - aoeu
1
"ifeq" 条件语句是非标准的 GNU Make 扩展。其他版本的 make 没有(所有)GNU make 的扩展功能。是的,你试图使用的语法无法实现你想要的效果。可能有其他方法来实现相同的事情,但你不能像使用 GNU make 那样做。 (这就是使用扩展的缺点;你会被锁定在提供扩展的特定实现中。锁定在开源中与专有软件一样真实;通常比专有锁定更少痛苦,因为你有源代码。) - Jonathan Leffler

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接