我正在为 ISC dhcp 服务器开发一个补丁,以使其能够与 Solaris 11/Illumos NIC 个性名称和 Crossbow VNIC 一起正确运行。
默认情况下,定义了标记“__sun”和“_SVR4”,但这适用于所有版本的 Solaris。我只想在 uname 返回 Solaris 11 时定义“__SunOS_5_11”,因为此补丁仅适用于 Solaris 11。我相信正确的方法是在配置脚本中执行此操作。
过去几天我一直试图破译配置脚本,但没有成功,它相当大。我可以推测它会生成一个包含 token 定义的“config.h”文件。
我相信他们正在使用 autoconf 和 automake,但我对此没有太多经验。如果有人有这方面的经验,任何帮助将不胜感激!
最佳答案
正如 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])])
关于c - ISC-DHCP,在配置脚本中定义新 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27219377/