Annotation of embedaddon/php/ext/skeleton/php_skeleton.h, revision 1.1.1.1
1.1 misho 1: /* __header_here__ */
2:
3: #ifndef PHP_EXTNAME_H
4: #define PHP_EXTNAME_H
5:
6: extern zend_module_entry extname_module_entry;
7: #define phpext_extname_ptr &extname_module_entry
8:
9: #ifdef PHP_WIN32
10: # define PHP_EXTNAME_API __declspec(dllexport)
11: #elif defined(__GNUC__) && __GNUC__ >= 4
12: # define PHP_EXTNAME_API __attribute__ ((visibility("default")))
13: #else
14: # define PHP_EXTNAME_API
15: #endif
16:
17: #ifdef ZTS
18: #include "TSRM.h"
19: #endif
20:
21: PHP_MINIT_FUNCTION(extname);
22: PHP_MSHUTDOWN_FUNCTION(extname);
23: PHP_RINIT_FUNCTION(extname);
24: PHP_RSHUTDOWN_FUNCTION(extname);
25: PHP_MINFO_FUNCTION(extname);
26:
27: PHP_FUNCTION(confirm_extname_compiled); /* For testing, remove later. */
28: /* __function_declarations_here__ */
29:
30: /*
31: Declare any global variables you may need between the BEGIN
32: and END macros here:
33:
34: ZEND_BEGIN_MODULE_GLOBALS(extname)
35: long global_value;
36: char *global_string;
37: ZEND_END_MODULE_GLOBALS(extname)
38: */
39:
40: /* In every utility function you add that needs to use variables
41: in php_extname_globals, call TSRMLS_FETCH(); after declaring other
42: variables used by that function, or better yet, pass in TSRMLS_CC
43: after the last function argument and declare your utility function
44: with TSRMLS_DC after the last declared argument. Always refer to
45: the globals in your function as EXTNAME_G(variable). You are
46: encouraged to rename these macros something shorter, see
47: examples in any other php module directory.
48: */
49:
50: #ifdef ZTS
51: #define EXTNAME_G(v) TSRMG(extname_globals_id, zend_extname_globals *, v)
52: #else
53: #define EXTNAME_G(v) (extname_globals.v)
54: #endif
55:
56: #endif /* PHP_EXTNAME_H */
57:
58: /* __footer_here__ */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>