php写扩展时config.m4 怎么写

本身不是很聪明的,当时为了弄懂这个文件应该怎么写,记得花了好几天,为了避免大家搜索资料浪费时间,我把遇到的问题,心中的疑惑记下来

比如我的扩展需要引入libevent应该怎么办,我需要做什么样的检查,语法应该怎么写?

1
2
3
4
5
6
7
  PHP_ARG_WITH(nsq, for nsq support,
   Make sure that the comment is aligned:
   [  --with-nsq             Include nsq support],no,no)

  PHP_ARG_WITH(libevent-path, for libevent support,
   Make sure that the comment is aligned:
   [  --with-libevent-path[=DIR]             you libevent path],no,no)

PHP_ARG_WITH 有5个参数:
第一个参数为扩展名或者参数名,
第二个为执行.configure时的提示信息,
第三个参数为执行./configure –help 时参数的帮助信息,
第四个参数为$PHP_NSQ的默认值,动态编译时$PHP_NSQ的值是yes,动态编译是装完php后,在单独编译.so扩展
静态编译要选择–with-nsq后为yes,静态编译是安装php时候一起编译安装该扩展
第五个参数标名是不是扩展,比如我上面nsq是扩展名称,libevent-path是扩展需要的参数名,而不是扩展名,所以后面第五个参数就填no

未完待续。。。

发表评论

电子邮件地址不会被公开。 必填项已用*标注