]> granicus.if.org Git - php/commitdiff
MFH: properly export functions
authorRob Richards <rrichards@php.net>
Fri, 26 Dec 2008 20:28:43 +0000 (20:28 +0000)
committerRob Richards <rrichards@php.net>
Fri, 26 Dec 2008 20:28:43 +0000 (20:28 +0000)
ext/simplexml/php_simplexml.h
ext/simplexml/php_simplexml_exports.h
ext/simplexml/simplexml.c

index 309f0186c5b3baee733fc89b42a241340e33a00b..531786967f26fdd2faa21a1d1566e67e11c9d9e2 100644 (file)
@@ -77,7 +77,19 @@ typedef struct {
 #define SIMPLEXML_G(v) (simplexml_globals.v)
 #endif
 
-ZEND_API zend_class_entry *sxe_get_element_class_entry();
+#ifdef PHP_WIN32
+#ifdef SIMPLEXML_EXPORTS
+#define PHP_SXE_API __declspec(dllexport)
+#else
+#define PHP_SXE_API __declspec(dllimport)
+#endif /* SIMPLEXML_EXPORTS */
+#elif defined(__GNUC__) && __GNUC__ >= 4
+#define PHP_SXE_API __attribute__ ((visibility("default")))
+#else
+#define PHP_SXE_API
+#endif /* PHP_WIN32 */
+
+PHP_SXE_API zend_class_entry *sxe_get_element_class_entry();
 
 #endif
 
index 5daef99a92a43adecda1a07be4ec190740d62877..61f6309becfa25e928382b362e80d61cc596e907 100755 (executable)
@@ -39,7 +39,7 @@
        } \
 }
 
-ZEND_API zend_object_value sxe_object_new(zend_class_entry *ce TSRMLS_DC);
+PHP_SXE_API zend_object_value sxe_object_new(zend_class_entry *ce TSRMLS_DC);
 /* {{{ php_sxe_fetch_object()
  */
 static inline php_sxe_object *
index 1819d56f5c58ee10654e1b3f8b2f9f1af943f64f..f470d6e25365e8f72a4f640b0ac813feb16941f3 100644 (file)
@@ -40,7 +40,7 @@
 
 zend_class_entry *sxe_class_entry = NULL;
 
-ZEND_API zend_class_entry *sxe_get_element_class_entry() /* {{{ */
+PHP_SXE_API zend_class_entry *sxe_get_element_class_entry() /* {{{ */
 {
        return sxe_class_entry;
 }
@@ -2082,7 +2082,7 @@ php_sxe_register_object(php_sxe_object *intern TSRMLS_DC)
 
 /* {{{ sxe_object_new()
  */
-ZEND_API zend_object_value
+PHP_SXE_API zend_object_value
 sxe_object_new(zend_class_entry *ce TSRMLS_DC)
 {
        php_sxe_object    *intern;
@@ -2344,7 +2344,7 @@ static int php_sxe_iterator_current_key(zend_object_iterator *iter, char **str_k
 }
 /* }}} */
 
-ZEND_API void php_sxe_move_forward_iterator(php_sxe_object *sxe TSRMLS_DC) /* {{{ */
+PHP_SXE_API void php_sxe_move_forward_iterator(php_sxe_object *sxe TSRMLS_DC) /* {{{ */
 {
        xmlNodePtr      node = NULL;
        php_sxe_object  *intern;