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>