我正在为ISC dhcp服务器开发一个补丁,使其能够正确运行Solaris11/ Illumos NIC虚拟名称和Crossbow。
默认情况下,会定义内标识“Solaris”和"_SVR4“,但这适用于所有版本的__sun。我只想在uname返回Solaris11时定义"__SunOS_5_11“,因为这个补丁只适用于Solaris11。我相信正确的方法是在配置脚本中这样做。
在过去的几天里,我一直在尝试破解配置脚本,但无济于事,它相当大。我可以推测它会生成一个包含令牌定义的"config.h“文件。
我相信他们使用的是autoconf和automake,我对它们没有太多的经验。如果任何人有这方面的经验,任何帮助都将不胜感激!
发布于 2014-12-01 11:38:49
正如nos所指出的,我应该在configure.ac中查找
我可以用下面的代码来实现这一点。
# Solaris 11 / Illumos 11 is identified as solaris2.11
AM_CONDITIONAL([SOLARIS_2_11], [test x$host_os = xsolaris2.11])
# If host_os is solaris2.11 then define __SOLARIS_2_11
AM_COND_IF([SOLARIS_2_11],[AC_DEFINE([__SOLARIS_2_11], [1],
[Define if host_os is solaris2.11])]) https://stackoverflow.com/questions/27219377
复制相似问题