Annotation of embedaddon/php/sapi/embed/php_embed.h, revision 1.1
1.1 ! misho 1: /*
! 2: +----------------------------------------------------------------------+
! 3: | PHP Version 5 |
! 4: +----------------------------------------------------------------------+
! 5: | Copyright (c) 1997-2012 The PHP Group |
! 6: +----------------------------------------------------------------------+
! 7: | This source file is subject to version 3.01 of the PHP license, |
! 8: | that is bundled with this package in the file LICENSE, and is |
! 9: | available through the world-wide-web at the following url: |
! 10: | http://www.php.net/license/3_01.txt |
! 11: | If you did not receive a copy of the PHP license and are unable to |
! 12: | obtain it through the world-wide-web, please send a note to |
! 13: | license@php.net so we can mail you a copy immediately. |
! 14: +----------------------------------------------------------------------+
! 15: | Author: Edin Kadribasic <edink@php.net> |
! 16: +----------------------------------------------------------------------+
! 17: */
! 18: /* $Id: php_embed.h 321634 2012-01-01 13:15:04Z felipe $ */
! 19:
! 20: #ifndef _PHP_EMBED_H_
! 21: #define _PHP_EMBED_H_
! 22:
! 23: #include <main/php.h>
! 24: #include <main/SAPI.h>
! 25: #include <main/php_main.h>
! 26: #include <main/php_variables.h>
! 27: #include <main/php_ini.h>
! 28: #include <zend_ini.h>
! 29:
! 30: #ifdef ZTS
! 31: #define PTSRMLS_D void ****ptsrm_ls
! 32: #define PTSRMLS_DC , PTSRMLS_D
! 33: #define PTSRMLS_C &tsrm_ls
! 34: #define PTSRMLS_CC , PTSRMLS_C
! 35:
! 36: #define PHP_EMBED_START_BLOCK(x,y) { \
! 37: void ***tsrm_ls; \
! 38: php_embed_init(x, y PTSRMLS_CC); \
! 39: zend_first_try {
! 40:
! 41: #else
! 42: #define PTSRMLS_D
! 43: #define PTSRMLS_DC
! 44: #define PTSRMLS_C
! 45: #define PTSRMLS_CC
! 46:
! 47: #define PHP_EMBED_START_BLOCK(x,y) { \
! 48: php_embed_init(x, y); \
! 49: zend_first_try {
! 50:
! 51: #endif
! 52:
! 53: #define PHP_EMBED_END_BLOCK() \
! 54: } zend_catch { \
! 55: /* int exit_status = EG(exit_status); */ \
! 56: } zend_end_try(); \
! 57: php_embed_shutdown(TSRMLS_C); \
! 58: }
! 59:
! 60: #ifndef PHP_WIN32
! 61: #define EMBED_SAPI_API SAPI_API
! 62: #else
! 63: #define EMBED_SAPI_API
! 64: #endif
! 65:
! 66: BEGIN_EXTERN_C()
! 67: EMBED_SAPI_API int php_embed_init(int argc, char **argv PTSRMLS_DC);
! 68: EMBED_SAPI_API void php_embed_shutdown(TSRMLS_D);
! 69: extern EMBED_SAPI_API sapi_module_struct php_embed_module;
! 70: END_EXTERN_C()
! 71:
! 72:
! 73: #endif /* _PHP_EMBED_H_ */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>