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