-
Notifications
You must be signed in to change notification settings - Fork 146
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit f44e97f
Showing
3 changed files
with
204 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
dnl $Id$ | ||
dnl config.m4 for extension libmosquitto | ||
|
||
dnl Comments in this file start with the string 'dnl'. | ||
dnl Remove where necessary. This file will not work | ||
dnl without editing. | ||
|
||
PHP_ARG_WITH(libmosquitto, for libmosquitto support, | ||
[ --with-libmosquitto Include libmosquitto support]) | ||
|
||
|
||
if test "$PHP_LIBMOSQUITTO" != "no"; then | ||
dnl Write more examples of tests here... | ||
|
||
# --with-libmosquitto -> check with-path | ||
SEARCH_PATH="/usr/local /usr" # you might want to change this | ||
SEARCH_FOR="/include/libmosquitto.h" # you most likely want to change this | ||
if test -r $PHP_LIBMOSQUITTO/$SEARCH_FOR; then # path given as parameter | ||
LIBMOSQUITTO_DIR=$PHP_LIBMOSQUITTO | ||
else # search default path list | ||
AC_MSG_CHECKING([for libmosquitto files in default path]) | ||
for i in $SEARCH_PATH ; do | ||
if test -r $i/$SEARCH_FOR; then | ||
LIBMOSQUITTO_DIR=$i | ||
AC_MSG_RESULT(found in $i) | ||
fi | ||
done | ||
fi | ||
|
||
if test -z "$LIBMOSQUITTO_DIR"; then | ||
AC_MSG_RESULT([not found]) | ||
AC_MSG_ERROR([Please reinstall the libmosquitto distribution]) | ||
fi | ||
|
||
# --with-libmosquitto -> add include path | ||
PHP_ADD_INCLUDE($LIBMOSQUITTO_DIR/include) | ||
|
||
# --with-libmosquitto -> check for lib and symbol presence | ||
LIBNAME=libmosquitto # you may want to change this | ||
LIBSYMBOL=mosquitto_init # you most likely want to change this | ||
|
||
PHP_CHECK_LIBRARY($LIBNAME,$LIBSYMBOL, | ||
[ | ||
PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $LIBMOSQUITTO_DIR/lib, LIBMOSQUITTO_SHARED_LIBADD) | ||
AC_DEFINE(HAVE_LIBMOSQUITTOLIB,1,[ ]) | ||
],[ | ||
AC_MSG_ERROR([wrong libmosquitto lib version or lib not found]) | ||
],[ | ||
-L$LIBMOSQUITTO_DIR/lib -lm | ||
]) | ||
|
||
PHP_SUBST(LIBMOSQUITTO_SHARED_LIBADD) | ||
|
||
PHP_NEW_EXTENSION(libmosquitto, libmosquitto.c, $ext_shared) | ||
fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,122 @@ | ||
#ifdef HAVE_CONFIG_H | ||
#include "config.h" | ||
#endif | ||
|
||
#include "php.h" | ||
#include "php_ini.h" | ||
#include "ext/standard/info.h" | ||
#include "php_libmosquitto.h" | ||
|
||
/* {{{ libmosquitto_functions[] */ | ||
const zend_function_entry libmosquitto_functions[] = { | ||
PHP_FE_END /* Must be the last line in libmosquitto_functions[] */ | ||
}; | ||
/* }}} */ | ||
|
||
/* {{{ libmosquitto_module_entry */ | ||
zend_module_entry libmosquitto_module_entry = { | ||
#if ZEND_MODULE_API_NO >= 20010901 | ||
STANDARD_MODULE_HEADER, | ||
#endif | ||
"libmosquitto", | ||
libmosquitto_functions, | ||
PHP_MINIT(libmosquitto), | ||
PHP_MSHUTDOWN(libmosquitto), | ||
PHP_RINIT(libmosquitto), /* Replace with NULL if there's nothing to do at request start */ | ||
PHP_RSHUTDOWN(libmosquitto), /* Replace with NULL if there's nothing to do at request end */ | ||
PHP_MINFO(libmosquitto), | ||
#if ZEND_MODULE_API_NO >= 20010901 | ||
"0.1", /* Replace with version number for your extension */ | ||
#endif | ||
STANDARD_MODULE_PROPERTIES | ||
}; | ||
/* }}} */ | ||
|
||
#ifdef COMPILE_DL_LIBMOSQUITTO | ||
ZEND_GET_MODULE(libmosquitto) | ||
#endif | ||
|
||
/* {{{ PHP_INI | ||
*/ | ||
/* Remove comments and fill if you need to have entries in php.ini | ||
PHP_INI_BEGIN() | ||
STD_PHP_INI_ENTRY("libmosquitto.global_value", "42", PHP_INI_ALL, OnUpdateLong, global_value, zend_libmosquitto_globals, libmosquitto_globals) | ||
STD_PHP_INI_ENTRY("libmosquitto.global_string", "foobar", PHP_INI_ALL, OnUpdateString, global_string, zend_libmosquitto_globals, libmosquitto_globals) | ||
PHP_INI_END() | ||
*/ | ||
/* }}} */ | ||
|
||
/* {{{ php_libmosquitto_init_globals | ||
*/ | ||
/* Uncomment this function if you have INI entries | ||
static void php_libmosquitto_init_globals(zend_libmosquitto_globals *libmosquitto_globals) | ||
{ | ||
libmosquitto_globals->global_value = 0; | ||
libmosquitto_globals->global_string = NULL; | ||
} | ||
*/ | ||
/* }}} */ | ||
|
||
/* {{{ PHP_MINIT_FUNCTION | ||
*/ | ||
PHP_MINIT_FUNCTION(libmosquitto) | ||
{ | ||
/* If you have INI entries, uncomment these lines | ||
REGISTER_INI_ENTRIES(); | ||
*/ | ||
return SUCCESS; | ||
} | ||
/* }}} */ | ||
|
||
/* {{{ PHP_MSHUTDOWN_FUNCTION | ||
*/ | ||
PHP_MSHUTDOWN_FUNCTION(libmosquitto) | ||
{ | ||
/* uncomment this line if you have INI entries | ||
UNREGISTER_INI_ENTRIES(); | ||
*/ | ||
return SUCCESS; | ||
} | ||
/* }}} */ | ||
|
||
/* Remove if there's nothing to do at request start */ | ||
/* {{{ PHP_RINIT_FUNCTION | ||
*/ | ||
PHP_RINIT_FUNCTION(libmosquitto) | ||
{ | ||
return SUCCESS; | ||
} | ||
/* }}} */ | ||
|
||
/* Remove if there's nothing to do at request end */ | ||
/* {{{ PHP_RSHUTDOWN_FUNCTION | ||
*/ | ||
PHP_RSHUTDOWN_FUNCTION(libmosquitto) | ||
{ | ||
return SUCCESS; | ||
} | ||
/* }}} */ | ||
|
||
/* {{{ PHP_MINFO_FUNCTION | ||
*/ | ||
PHP_MINFO_FUNCTION(libmosquitto) | ||
{ | ||
php_info_print_table_start(); | ||
php_info_print_table_header(2, "libmosquitto support", "enabled"); | ||
php_info_print_table_end(); | ||
|
||
/* Remove comments if you have entries in php.ini | ||
DISPLAY_INI_ENTRIES(); | ||
*/ | ||
} | ||
/* }}} */ | ||
|
||
|
||
/* | ||
* Local variables: | ||
* tab-width: 4 | ||
* c-basic-offset: 4 | ||
* End: | ||
* vim600: noet sw=4 ts=4 fdm=marker | ||
* vim<600: noet sw=4 ts=4 | ||
*/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
#ifndef PHP_LIBMOSQUITTO_H | ||
#define PHP_LIBMOSQUITTO_H | ||
|
||
extern zend_module_entry libmosquitto_module_entry; | ||
#define phpext_libmosquitto_ptr &libmosquitto_module_entry | ||
|
||
#ifdef PHP_WIN32 | ||
# define PHP_LIBMOSQUITTO_API __declspec(dllexport) | ||
#elif defined(__GNUC__) && __GNUC__ >= 4 | ||
# define PHP_LIBMOSQUITTO_API __attribute__ ((visibility("default"))) | ||
#else | ||
# define PHP_LIBMOSQUITTO_API | ||
#endif | ||
|
||
#ifdef ZTS | ||
#include "TSRM.h" | ||
#endif | ||
|
||
PHP_MINIT_FUNCTION(libmosquitto); | ||
PHP_MSHUTDOWN_FUNCTION(libmosquitto); | ||
PHP_RINIT_FUNCTION(libmosquitto); | ||
PHP_RSHUTDOWN_FUNCTION(libmosquitto); | ||
PHP_MINFO_FUNCTION(libmosquitto); | ||
|
||
#endif /* PHP_LIBMOSQUITTO_H */ | ||
|
||
/* __footer_here__ */ |