summaryrefslogtreecommitdiffstats
path: root/src/bindings
diff options
context:
space:
mode:
authorStefan Radomski <radomski@tk.informatik.tu-darmstadt.de>2013-03-21 19:43:11 (GMT)
committerStefan Radomski <radomski@tk.informatik.tu-darmstadt.de>2013-03-21 19:43:11 (GMT)
commit0efd7ba068cc6fd1400f74d9a3165912586d7828 (patch)
treec6c954404458fd088c9147d04845626c4706f421 /src/bindings
parent6f428356f98aae08121d99370c606125be4dd1d6 (diff)
downloaduscxml-0efd7ba068cc6fd1400f74d9a3165912586d7828.zip
uscxml-0efd7ba068cc6fd1400f74d9a3165912586d7828.tar.gz
uscxml-0efd7ba068cc6fd1400f74d9a3165912586d7828.tar.bz2
Compiled PHP module on MacOSX as well
Diffstat (limited to 'src/bindings')
-rw-r--r--src/bindings/swig/php/CMakeLists.txt42
-rw-r--r--src/bindings/swig/php/uscxml.i2
2 files changed, 43 insertions, 1 deletions
diff --git a/src/bindings/swig/php/CMakeLists.txt b/src/bindings/swig/php/CMakeLists.txt
index 95c98e5..1337a24 100644
--- a/src/bindings/swig/php/CMakeLists.txt
+++ b/src/bindings/swig/php/CMakeLists.txt
@@ -8,6 +8,46 @@ else()
return()
endif()
+# copied from cmake's FindPHP4.cmake and adapted
+if(APPLE)
+ # this is a hack for now
+ set(PHP_MODULE_CXX_FLAGS "${CMAKE_SHARED_MODULE_CREATE_CXX_FLAGS} -Wl,-flat_namespace")
+ foreach(symbol
+ __efree
+ __emalloc
+ __estrdup
+ __object_init
+ __object_init_ex
+ __zend_get_parameters_array_ex
+ __zend_list_find
+ __zval_copy_ctor
+ __zval_copy_ctor_func
+ _add_property_zval_ex
+ _alloc_globals
+ _compiler_globals
+ _convert_to_double
+ _convert_to_long
+ _convert_to_boolean
+ _gc_remove_zval_from_buffer
+ _zend_get_constant
+ _zend_lookup_class
+ _zend_register_long_constant
+ _zval_is_true
+ _zend_error
+ _zend_hash_find
+ __zend_hash_add_or_update
+ _zend_register_internal_class_ex
+ _zend_register_list_destructors_ex
+ _zend_register_resource
+ _zend_rsrc_list_get_rsrc_type
+ _zend_wrong_param_count
+ _zval_used_for_init
+ )
+ set(PHP_MODULE_CXX_FLAGS
+ "${PHP_MODULE_CXX_FLAGS},-U,${symbol}")
+ endforeach()
+endif()
+
#message(FATAL_ERROR "PHP_LDFLAGS: ${PHP_LDFLAGS}")
include_directories(${CMAKE_CURRENT_SOURCE_DIR})
@@ -23,7 +63,9 @@ foreach(PHP_LIBRARY ${PHP_LIBRARIES})
SWIG_LINK_LIBRARIES(uscxmlNativePHP ${PHP_LIBRARY})
endforeach()
+set_target_properties(uscxmlNativePHP PROPERTIES LINK_FLAGS ${PHP_MODULE_CXX_FLAGS})
#set_target_properties(uscxmlNativePHP PROPERTIES LINK_FLAGS ${PHP_LDFLAGS})
+
set_target_properties(uscxmlNativePHP PROPERTIES FOLDER "Bindings")
SWIG_LINK_LIBRARIES(uscxmlNativePHP uscxml)
diff --git a/src/bindings/swig/php/uscxml.i b/src/bindings/swig/php/uscxml.i
index a545a7a..d432ec1 100644
--- a/src/bindings/swig/php/uscxml.i
+++ b/src/bindings/swig/php/uscxml.i
@@ -28,7 +28,7 @@ using namespace uscxml;
%}
-%rename(toString) operator<<;
+//%rename(toString) operator<<;
//***********************************************