PHP扩展config.m4文件宏命令

        PHP_ARG_ENABLE  

会自动设置好正确的变量以保证扩展能够被 PHP_NEW_EXTENSION 以共享模式启动。

PHP_ARG_ENABLE(yaf, whether to enable yaf support,

[  --enable-yaf           Enable yaf support])


        AC_ARG_ENABLE

你可以使用AC_ARG_ENABLE来定义一个命令行选项。

这个宏接受三个参数
1.flag_base
2.该选项的帮助说明
3.当configure带该选项运行时所执行的代码,代码中的命令行变量enableval被设为此选项的值

其实应该还有一个就是缺省值。

        AC_DEFINE(name,value,description)
向  php_config.h  添加一行定义: #define name value // description  (这对模块的条件编译很有用。)


        AC_MSG_CHECKING

在执行 configure 命令时输出“checking <message>”等信息。


        AC_MSG_ERROR(message)

在执行 configure 命令时输出一条错误消息 message 并中止脚本的执行。


AC_ADD_INCLUDE(path)
添加一条编译器的包含路径,比如用于模块需要为头文件添加搜索路径。

AC_ADD_LIBRARY_WITH_PATH(libraryname,librarypath)
指定一个库的连接路径。

AC_ARG_WITH(modulename,description,unconditionaltest,conditionaltest)
这是一款比较强大的宏,用于将模块的描述 description 添加到“configure –help”命令的输出里面。PHP 会检查当前执行的 configure 脚本里面有没有–with-<modulename> 这个选项。 如果有则执行 unconditionaltest 语句(比如 –with-myext=yes 等), 此时,选项的值会被包含在 $withval 变量里面。否则就执行 conditionaltest 语句。

PHP_EXTENSION(modulename, [shared])

这个是配置你的扩展时 PHP 必定调用的一个宏。你可以在模块名后面提供第二个参数,用来表明是否将其编译为动态共享模块。这会导致在编译时为你的源码提供一个 COMPILE_DL_<modulename>的定义。


PHP_ADD_BUILD_DIR

加载所需所有C文件, PHP_ADD_BUILD_DIR([$ext_builddir/common])


  PHP_NEW_EXTENSION(example, example.c $EXAMPLE_SOURCES, $ext_shared)

第一个参数是扩展的名称,第二个参数是资源文件。第三个参数 $ext_shared 是由 PHP_ARG_ENABLE/WITH Ϊ PHP_NEW_EXTENSION 设定的。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

pan269

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值