You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Paul Colby (JIRA)" <ji...@apache.org> on 2011/02/01 09:13:29 UTC

[jira] Created: (QPID-3027) PHP binding of Qpid Messaging API

PHP binding of Qpid Messaging API
---------------------------------

                 Key: QPID-3027
                 URL: https://issues.apache.org/jira/browse/QPID-3027
             Project: Qpid
          Issue Type: New Feature
          Components: C++ Client
    Affects Versions: 0.8
            Reporter: Paul Colby


Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.

The rough plan:
1. report relevant bugs / feature requests to SWIG (done).
2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
3. implement qpid::types::Variant <-> PHP typemapping (not started).
4. implement printinfo pragma (should be easy, just need to choose what info to include).
5. create relevant [auto]makefile.

Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Comment Edited] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13490165#comment-13490165 ] 

Paul Colby edited comment on QPID-3027 at 11/4/12 11:43 AM:
------------------------------------------------------------

Ok, so the build error is the result of changes in the PHP development headers.

Somewhere between PHP 5.3.8 and 5.4.7, the signature of the following functions changed:
* {{zend_get_object_classname}}
* {{zend_rsrc_list_get_rsrc_type}}

Now to track down the exact PHP version that changed, and {{#ifdef}} some variable declarations...

*Edit:* changes were in commit [aaa2f1c30b3ba3da3e0030804054ee9c70e80bc7|https://github.com/php/php-src/commit/aaa2f1c30b3ba3da3e0030804054ee9c70e80bc7]

                
      was (Author: pcolby):
    Ok, so the build error is the result of changes in the PHP development headers.

Somewhere between PHP 5.3.8 and 5.4.7, the signature of the following functions changed:
* {{zend_get_object_classname}}
* {{zend_rsrc_list_get_rsrc_type}}

Now to track down the exact PHP version that changed, and #ifdef some variable declarations...
                  
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13466700#comment-13466700 ] 

Paul Colby commented on QPID-3027:
----------------------------------

Works fine on all of my existing test boxes.  I'll setup an FC17 VM to test.
                
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Colby updated QPID-3027:
-----------------------------

    Attachment: FindPHPDev.cmake
                cqpid_php.20110415.diff

Attaching a new version: {{cqpid_php.20110415.diff}}

Main changes in this version:
* CMake support! :)
* fixed typemap error that can occur on some 32-bit platforms.

The CMake support requires a {{FindPHPDev.cmake}} file (attached separately), which should be placed in the CMake {{Modules}} directory (eg {{/usr/share/cmake-2.8/Modules/FindPHPDev.cmake}}).  The PHP module included with CMake only supports PHP4, not 5, and doesn't fetch anywhere near as much {{php-config}} info as the PHP bindings require.

Note also, if you see "undefined variable: r" notices from PHP, then you're probably using a very old version if SWIG (ie pre-2.0)... those notices are benign, so either ignore them, or upgrade SWIG ;)

PS - Diff is against http://svn.apache.org/repos/asf/qpid/trunk/ *r1092662*.

Paul.

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: FindPHPDev.cmake, Makefile, cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Darryl L. Pierce (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13490947#comment-13490947 ] 

Darryl L. Pierce commented on QPID-3027:
----------------------------------------

Okay, this time it's built fine using CMake. I'd like to spend some time testing it, but am unsure what would be the best route. Can you ping me in IRC (Freenode #qpid channel) to go over a test approach? Then we can get this integrated.
                
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.20121105.diff, cqpid_php.20121105-qpid-0.19.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
>   

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] Updated: (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Colby updated QPID-3027:
-----------------------------

    Comment: was deleted

(was: Sample Makefile for early adopters :))

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>         Attachments: Makefile, cqpid_php.20110220.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Darryl L. Pierce (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13465628#comment-13465628 ] 

Darryl L. Pierce commented on QPID-3027:
----------------------------------------

The patch fails to build for me on Fedora 17 x86_64 with Cmake. The steps I took:

1. Copy FindPHPDev.cmake to /usr/share/cmake/Modules/
2. Applied cqpid_php.20120406.diff in the $REPO/qpid directory: patch -p0 < cqpid_php.20120406.diff
3. Created an out-of-tree build environment: mkdir cmake; cd cmake; cmake ../qpid/cpp
4. Run the build: make

The result I see is:

[100%] Building CXX object bindings/qpid/php/CMakeFiles/cqpid_php.dir/phpPHP_wrap.o
/home/mcpierce/Programming/Qpid/cmake/bindings/qpid/php/phpPHP_wrap.cxx: In function ‘qpid::types::Variant zvalToVariant(zval**)’:
/home/mcpierce/Programming/Qpid/cmake/bindings/qpid/php/phpPHP_wrap.cxx:1544:107: error: invalid conversion from ‘char**’ to ‘const char**’ [-fpermissive]
In file included from /home/mcpierce/Programming/Qpid/cmake/bindings/qpid/php/phpPHP_wrap.cxx:742:0:
/usr/include/php/Zend/zend_API.h:337:45: error:   initializing argument 2 of ‘int zend_get_object_classname(const zval*, const char**, zend_uint*)’ [-fpermissive]
/home/mcpierce/Programming/Qpid/cmake/bindings/qpid/php/phpPHP_wrap.cxx:1555:91: error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive]
make[3]: *** [bindings/qpid/php/CMakeFiles/cqpid_php.dir/phpPHP_wrap.o] Error 1
make[2]: *** [bindings/qpid/php/CMakeFiles/cqpid_php.dir/all] Error 2
make[1]: *** [bindings/qpid/php/CMakeFiles/cqpid_php.dir/rule] Error 2
make: *** [cqpid_php] Error 2

Building with automake tools I get:


/bin/sh ../../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../../../qpid/cpp/bindings/qpid/php -I../../../src -I../../../../qpid/cpp/include -I../../../include   -fpic -I../../../../qpid/cpp/include -I../../../include -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -DPHP_QPID_VERSION='"0.19"' -Wno-write-strings -g -O2 -MT cqpid_la-cqpid.lo -MD -MP -MF .deps/cqpid_la-cqpid.Tpo -c -o cqpid_la-cqpid.lo `test -f 'cqpid.cpp' || echo '../../../../qpid/cpp/bindings/qpid/php/'`cqpid.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../../../../qpid/cpp/bindings/qpid/php -I../../../src -I../../../../qpid/cpp/include -I../../../include -fpic -I../../../../qpid/cpp/include -I../../../include -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -I/usr/include/php/ext -I/usr/include/php/ext/date/lib -DPHP_QPID_VERSION=\"0.19\" -Wno-write-strings -g -O2 -MT cqpid_la-cqpid.lo -MD -MP -MF .deps/cqpid_la-cqpid.Tpo -c cqpid.cpp  -fPIC -DPIC -o .libs/cqpid_la-cqpid.o
cqpid.cpp: In function 'qpid::types::Variant zvalToVariant(zval**)':
cqpid.cpp:1544:107: error: invalid conversion from 'char**' to 'const char**' [-fpermissive]
In file included from cqpid.cpp:742:0:
/usr/include/php/Zend/zend_API.h:337:45: error:   initializing argument 2 of 'int zend_get_object_classname(const zval*, const char**, zend_uint*)' [-fpermissive]
cqpid.cpp:1555:91: error: invalid conversion from 'const char*' to 'char*' [-fpermissive]
make[3]: *** [cqpid_la-cqpid.lo] Error 1
make[3]: Leaving directory `/home/mcpierce/Programming/Qpid/automake/bindings/qpid/php'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/mcpierce/Programming/Qpid/automake/bindings/qpid'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/mcpierce/Programming/Qpid/automake/bindings/qpid'
make: *** [all-recursive] Error 1

                
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "jiraposter@reviews.apache.org (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13015832#comment-13015832 ] 

jiraposter@reviews.apache.org commented on QPID-3027:
-----------------------------------------------------



bq.  On 2011-04-04 17:36:13, Steve Huston wrote:
bq.  > Could you also please add the needed pieces for cmake builds?

Will do... I'm working on them at the moment ;)


- Paul


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/462/#review378
-----------------------------------------------------------


On 2011-03-29 14:07:55, Paul Colby wrote:
bq.  
bq.  -----------------------------------------------------------
bq.  This is an automatically generated e-mail. To reply, visit:
bq.  https://reviews.apache.org/r/462/
bq.  -----------------------------------------------------------
bq.  
bq.  (Updated 2011-03-29 14:07:55)
bq.  
bq.  
bq.  Review request for qpid.
bq.  
bq.  
bq.  Summary
bq.  -------
bq.  
bq.  A SWIG-based PHP binding for the Qpid Messaging API.
bq.  
bq.  The SWIG-based binding itself is complete, and working (hence needing review).
bq.  
bq.  This diff includes integration with Qpid's autoconf build system.  I've only just begun learning autoconf / automake, so the build integration definitely needs review too :)
bq.  
bq.  
bq.  This addresses bug QPID-3027.
bq.      https://issues.apache.org/jira/browse/QPID-3027
bq.  
bq.  
bq.  Diffs
bq.  -----
bq.  
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qmf2/Makefile.am 1086164 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qmf2/examples/php/cli/list_agents.php PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qmf2/php/Makefile.am PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qmf2/php/php.i PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/Makefile.am 1086164 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/client.php PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/hello_world.php PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/map_receiver.php PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/map_sender.php PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/server.php PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/web/hello_world.php PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/php/Makefile.am PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/php/php.i PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/php/phpinfo.i PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/swig_php_typemaps.i PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/configure.ac 1086164 
bq.  
bq.  Diff: https://reviews.apache.org/r/462/diff
bq.  
bq.  
bq.  Testing
bq.  -------
bq.  
bq.  
bq.  Thanks,
bq.  
bq.  Paul
bq.  
bq.



> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: Makefile, cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13054807#comment-13054807 ] 

Paul Colby commented on QPID-3027:
----------------------------------

Hi David,

Thanks for the feedback! :)

I have tried it out using the same version of Debian (6.0.1 in fact), but have not been able to reproduce the segfault at all.

It looks to me like you are using a locally-built version of PHP (ie the backtrace includes references to Zend source in your home directory).  Can you please do a quick check using the official Debian PHP interpreter like:

{{/usr/bin/php -r ""}}

And see if that segfault's the same way?

Also, would you mind reporting the output of the following commands:

{{which -a php php-config}}
{{php -r 'phpinfo();' | grep -A7 '^cqpid$'}}

Finally, is this on a 32-bit or 64-bit version of Debian, and did you build using Autotools or CMake?

Thanks! :)

Paul.

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: FindPHPDev.cmake, Makefile, cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Updated] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Colby updated QPID-3027:
-----------------------------

    Attachment: cqpid_php.20121105-qpid-0.19.diff

Attached cqpid_php.20121105-qpid-0.19.diff

This update:
* patches the combined {{bindings/CMakeLists.txt}} file added in r1400781 (ie Qpid 0.19+)
* fixes an error with the {{install}} target for out-of-tree {{cmake}} builds.
                
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.20121105.diff, cqpid_php.20121105-qpid-0.19.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13490197#comment-13490197 ] 

Paul Colby commented on QPID-3027:
----------------------------------

Hmm... does (or will) the PHP work as part of [Apache Qpid Proton|http://qpid.apache.org/proton/] make this SWIG-based PHP binding redundant?
                
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.20121105.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Colby updated QPID-3027:
-----------------------------

    Description: 
Working on a PHP binding for the Qpid Messaging API via SWIG. There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress. 

The rough plan: 
1. report relevant bugs / feature requests to SWIG (done). 
2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces). 
3. implement qpid::types::Variant <-> PHP typemapping (not started). 
4. implement printinfo pragma (should be easy, just need to choose what info to include). 
5. create relevant [auto]makefile. 

Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

  was:  

    
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.20121105.diff, cqpid_php.20121105-qpid-0.19.diff, cqpid_php.20121106.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG. There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress. 
> The rough plan: 
> 1. report relevant bugs / feature requests to SWIG (done). 
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces). 
> 3. implement qpid::types::Variant <-> PHP typemapping (not started). 
> 4. implement printinfo pragma (should be easy, just need to choose what info to include). 
> 5. create relevant [auto]makefile. 
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13491939#comment-13491939 ] 

Paul Colby commented on QPID-3027:
----------------------------------

bq. No, that was a mistake. I must have selected the description by accident while adding my comment yesterday.

No problem.  I've very nearly done the same thing a few times.  I've restored the original description from the history tab (not that I would have been upset if you'd removed it intentionally either).

bq. Do you feel this is a work in progress or is the patch close to if not totally working at this point?

I'd say "close to if not totally working at this point".

Both the cqpid and cqmf2 PHP modules should be fully working, there's just a few areas (particularly in cqmf2) that I've never used, thus never tested.  For example, while I have tested the QMF2 client support, I've never tried writing a QMF2 agent in PHP... _should_ work though.
                
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.20121105.diff, cqpid_php.20121105-qpid-0.19.diff, cqpid_php.20121106.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG. There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress. 
> The rough plan: 
> 1. report relevant bugs / feature requests to SWIG (done). 
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces). 
> 3. implement qpid::types::Variant <-> PHP typemapping (not started). 
> 4. implement printinfo pragma (should be easy, just need to choose what info to include). 
> 5. create relevant [auto]makefile. 
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] Commented: (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12989087#comment-12989087 ] 

Paul Colby commented on QPID-3027:
----------------------------------

Related SWIG bug reports / feature requests:
* Segfault on overloaded methods with different return types - https://sourceforge.net/tracker/?func=detail&aid=3168531&group_id=1645&atid=101645
* Temporary fix for segmentation fault in php.cxx - https://sourceforge.net/tracker/?func=detail&aid=3168603&group_id=1645&atid=301645
* Warn when creating functions that clash with PHP built-ins - https://sourceforge.net/tracker/?func=detail&aid=3168551&group_id=1645&atid=351645
* %rename global function and class method independently - https://sourceforge.net/tracker/?func=detail&aid=3168562&group_id=1645&atid=351645

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Assigned] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Darryl L. Pierce (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Darryl L. Pierce reassigned QPID-3027:
--------------------------------------

    Assignee: Darryl L. Pierce  (was: Ted Ross)
    
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13491096#comment-13491096 ] 

Paul Colby commented on QPID-3027:
----------------------------------

bq. Can you ping me in IRC

I tried that, but you were away... I suspect our timezone differences will make IRC tricky (I'm UTC+11 at the moment).  Let me know you're timezone and I'll see if I can workout a convenient time for chatting.

In the meantime, here's some basic ways you can test the PHP code.

h3. PHP Info
The first thing to check, is that the {{cqpid}} and {{cqmf2}} PHP modules are loaded by PHP.  The easiest way to do this is to run the following command: 

{{php -i}}

This will produce a whole lot of text output describing PHP's configuration and modules, etc.  If you pipe it to a command like {{less}}, and then search for {{cqmf2}}, you will see the following details that have been added by the {{cqmf2}} and {{cqpid}} modules:

{noformat}
cqmf2

SWIG Version => 2.0.8
Targeted PHP Version => 5.4.7 (5.4.7)
PHP Thread Safety => disabled
Compiler Version => gcc 4.7.2
Build Date => Nov  5 2012 02:53:38

cqpid

SWIG Version => 2.0.8
Targeted PHP Version => 5.4.7 (5.4.7)
PHP Thread Safety => disabled
Compiler Version => gcc 4.7.2
Build Date => Nov  5 2012 02:53:34
{noformat}

If that information is not present, then the module was not loaded (the {{install}} target should have created relevant {{/etc/php.d/cqpid.ini}} and {{/etc/php.d/cqmf2.ini}} files to load the module).  Such as:

{code:title=cqpid.ini}
; configuration for PHP Qpid module
extension=/usr/lib64/php/modules/cqpid.so
{code}

If you want some (slightly) prettier output, instead of running {{php -i}} you could setup a simple PHP webpage and run the {{phpinfo()}} function to see the same output as above, but in HTML tables instead.

h3. CLI Examples
Once the modules are loaded (should happen automatically if you do a {{make install}}), the next thing I do is run some of the PHP examples.

First, run a qpidd broker in one terminal:

{{qpidd --auth=no}}

Then, run some of the examples under {{qpid/cpp/bindings/qpid/examples/php/cli}} - these are PHP ports of the existing Qpid examples, so work the same way.

For example:

{code}
[paul@fepoch cli]$ php -f map_sender.php   # Will send a PHP associative array as a map message to the broker.
[paul@fepoch cli]$ php -f map_receiver.php # Will print_r the next message from the broker.
Array
(
    [colours] => Array
        (
            [0] => red
            [1] => green
            [2] => white
        )

    [id] => 987654321
    [name] => Widget
    [percent] => 0.99
    [uuid] => 773bb118-286c-435e-8948-71e57f9e2f97
)
[paul@fepoch cli]$
{code}

This example is particularly interesting since it shows the marshalling of different QVariant types from/to PHP types :)

h3. Web Example
There's also a very basic "hello world" web-based exmaple in {{qpid/cpp/bindings/qpid/examples/php/web}}.  To run that example, simply drop the PHP file into a directory being hosted by a webserver with PHP enabled.  It will present an HTML form allowing you to specify some basic broker parameters, and will then send/receive a message.

h3.  Unit Testing
I'm quite a fan of {{phpunit}} for PHP unit testing, so I'll create some PHP unit tests for this sometime.  Perhaps I'll create them as a separate diff though, since the above patch is already 70kB (and the PHP unit tests will not require any direct code linkage to the Qpid / PHP module source, so can be entirely independent).

h3. Other Issues
The other issue I see, is the requirement for a custom {{FindPHPDev}} CMake module.  I've begun talks on the CMake mailing list in hopes of getting the module included there.  Is this a blocker in the meantime?  There might (probably should) be a way to include the custom CMake module in the Qpid source / build tree for now, but this is not something I've looked into yet.

I look forward to chatting on IRC sometime.
                
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.20121105.diff, cqpid_php.20121105-qpid-0.19.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
>   

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "David Simon (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13055613#comment-13055613 ] 

David Simon commented on QPID-3027:
-----------------------------------

hey Paul,

it is a 32 bit debian squeeze in VirtualBox, just for test it. The debug version of the php was only for the backtrace.

I have just now made a brand new deployment again.

here is your request (though I know that you wanted it about the last deployment):
david@qpid4:~$ which -a php php-config
/usr/bin/php
/usr/bin/php-config

david@qpid4:~$ php -r 'phpinfo();' | grep -A7 '^cqpid$'
cqpid

Qpid Version => 0.11
SWIG Version => 2.0.4
Targeted PHP Version => 5.3.3 (5.3.3-7+squeeze1)
PHP Thread Safety => disabled
Compiler Version => gcc 4.4.5
Build Date => Jun 27 2011 17:27:45

here is my installation process (mostly the relevant lines are copied from the .bash_history):
cd ~

sudo apt-get install cmake libopenais-dev uuid-dev libboost-all-dev php5-cli php5-dev subversion build-essential automake autoconf libtool ruby python sasl2-bin libpcre3-dev 

svn co http://svn.apache.org/repos/asf/qpid/trunk/qpid -r r1092662

cd ~

wget https://issues.apache.org/jira/secure/attachment/12476447/FindPHPDev.cmake

sudo cp FindPHPDev.cmake /usr/share/cmake-2.8/Modules/

wget https://issues.apache.org/jira/secure/attachment/12476446/cqpid_php.20110415.diff
patch -p0 <cqpid_php.20110415.diff 
cd qpid/cpp
./bootstrap 
./configure 
make
sudo make install

here there is a Makefile problem:
............
libtool: install: warning: relinking `acl.la'
libtool: install: (cd /home/david/qpid/cpp/src; /bin/bash /home/david/qpid/cpp/libtool  --tag CXX --mode=relink g++ -Werror -pedantic -Wall -Wextra -Wno-shadow -Wpointer-arith -Wcast-qual -Wcast-align -Wno-long-long -Wvolatile-register-var -Winvalid-pch -Wno-system-headers -Woverloaded-virtual -DQPID_LIBEXEC_DIR=\"/usr/local/libexec/qpid\" -DBOOST_FILESYSTEM_VERSION=2 -g -O2 -no-undefined -module -avoid-version -o acl.la -rpath /usr/local/lib/qpid/daemon qpid/acl/Acl.lo qpid/acl/AclData.lo qpid/acl/AclPlugin.lo qpid/acl/AclReader.lo qpid/acl/AclValidator.lo libqpidbroker.la )
libtool: relink: g++ -shared -nostdlib /usr/lib/gcc/i486-linux-gnu/4.4.5/../../../../lib/crti.o /usr/lib/gcc/i486-linux-gnu/4.4.5/crtbeginS.o  qpid/acl/.libs/Acl.o qpid/acl/.libs/AclData.o qpid/acl/.libs/AclPlugin.o qpid/acl/.libs/AclReader.o qpid/acl/.libs/AclValidator.o   -L/usr/local/lib -lqpidbroker -L/usr/lib/gcc/i486-linux-gnu/4.4.5 -L/usr/lib/gcc/i486-linux-gnu/4.4.5/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/i486-linux-gnu/4.4.5/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/i486-linux-gnu/4.4.5/crtendS.o /usr/lib/gcc/i486-linux-gnu/4.4.5/../../../../lib/crtn.o    -Wl,-soname -Wl,acl.so -o .libs/acl.so
/usr/bin/ld: cannot find -lqpidbroker
collect2: ld returned 1 exit status
libtool: install: error: relink `acl.la' with the above command before installing it
make[3]: *** [install-dmoduleexecLTLIBRARIES] Error 1
make[3]: Leaving directory `/home/david/qpid/cpp/src'
make[2]: *** [install-am] Error 2
make[2]: Leaving directory `/home/david/qpid/cpp/src'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory `/home/david/qpid/cpp/src'
make: *** [install-recursive] Error 1

# that's why I do:

sudo cp src/.libs/libq*.so /lib/

and somehow it hasnt created the cqpid.ini under the /etc/php5/conf.d

I create it.

and the result:

david@qpid4:~$ php -r ""
Segmentation fault

best regards,
David

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: FindPHPDev.cmake, Makefile, cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Assigned: (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Ted Ross (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ted Ross reassigned QPID-3027:
------------------------------

    Assignee: Ted Ross

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: Makefile, cqpid_php.20110220.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Darryl L. Pierce (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13491486#comment-13491486 ] 

Darryl L. Pierce commented on QPID-3027:
----------------------------------------

No, that was a mistaken. I must have selected the description by accident while adding my comment yesterday. My apologies.

I'll apply and build the 20121106 patch in my development repo and give it some preliminary testing. Do you feel this is a work in progress or is the patch close to if not totally working at this point?
                
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.20121105.diff, cqpid_php.20121105-qpid-0.19.diff, cqpid_php.20121106.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
>   

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] Updated: (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Colby updated QPID-3027:
-----------------------------

    Attachment: Makefile

Sample Makefile for early adopters :)

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>         Attachments: Makefile, cqpid_php.20110220.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13466073#comment-13466073 ] 

Paul Colby commented on QPID-3027:
----------------------------------

Thanks Darryl.  I'll look into it :)
                
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Comment Edited] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Darryl L. Pierce (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13491486#comment-13491486 ] 

Darryl L. Pierce edited comment on QPID-3027 at 11/6/12 8:50 PM:
-----------------------------------------------------------------

No, that was a mistake. I must have selected the description by accident while adding my comment yesterday. My apologies.

I'll apply and build the 20121106 patch in my development repo and give it some preliminary testing. Do you feel this is a work in progress or is the patch close to if not totally working at this point?
                
      was (Author: mcpierce):
    No, that was a mistaken. I must have selected the description by accident while adding my comment yesterday. My apologies.

I'll apply and build the 20121106 patch in my development repo and give it some preliminary testing. Do you feel this is a work in progress or is the patch close to if not totally working at this point?
                  
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.20121105.diff, cqpid_php.20121105-qpid-0.19.diff, cqpid_php.20121106.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
>   

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] Commented: (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12996673#comment-12996673 ] 

Paul Colby commented on QPID-3027:
----------------------------------

The SWIG "Segfault on overloaded methods with different return types" issue I reported has just been fixed :)

This means that we won't need to rename/ignore certain overloaded methods when using SWIG 2.0.2+ (when its released; or r12471 in the meantime). So I think the least confusing thing to do is %ignore the offending overloads on for earlier versions of SWIG, rather than %rename them (which would introduce entirely new function names - worth avoiding).

Type-mapping is 99% done... will upload soon! :)

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>         Attachments: cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "David Simon (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13072337#comment-13072337 ] 

David Simon commented on QPID-3027:
-----------------------------------

thank you for the effort.

it works fine with cmake.

David

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: FindPHPDev.cmake, Makefile, cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13066339#comment-13066339 ] 

Paul Colby commented on QPID-3027:
----------------------------------

This is very strange error... the crash happens while destructing static objects in the libqpidmessaging library, and seems to be timing-related... ie only happens if the Qpid Messaging library is loaded and then unloaded very quickly.

However, the problem does not happen if the Qpid Messaging library is built using CMake instead of Autotools.  Moreover, it doesn't matter if the cqpid PHP library is built via CMake or Autotools - the crash still happens in libqpidmessaging or not depending on whether or not *that* library was built via Autotools or CMake.

Of course, that observation may also just be related to subtle differences in timing.  But either way, the problem seems to be with the destruction of very-recently-created static objects within libqpidmessaging - which is more than just a little bit beyond me... (and, I suspect, not specific to my PHP binding).

For now, I suggest you use CMake.  Or don't use the *.ini file at all, but instead load the cqpid PHP library when you actually intend to use it (using the library between creation and destruction alleviates the issue for me).

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: FindPHPDev.cmake, Makefile, cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13067633#comment-13067633 ] 

Paul Colby commented on QPID-3027:
----------------------------------

Regarding the segfault, I've created a very small test case that reproduces the same fault without involving PHP or swig at all, and reported it as a separate issue - https://issues.apache.org/jira/browse/QPID-3364

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: FindPHPDev.cmake, Makefile, cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Commented: (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12991848#comment-12991848 ] 

Paul Colby commented on QPID-3027:
----------------------------------

I've just attached an initial PHP binding.  This includes:
* the basic SWIG interface files.
* three PHP CLI examples (ports of the hello_world, client and server examples from C++ to PHP).
* a basic temporary Makefile (just for initial development).

Still to go:
* Variant mapping.
* map_sender and map_receiver examples (depends on Variant mapping).
* phpinfo implementation.
* integration into Qpid's build system.

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>         Attachments: cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Updated] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (Updated) (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Colby updated QPID-3027:
-----------------------------

    Attachment: cqpid_php.20120406.diff

cqpid_php.20120406.diff

Changes in this version:
* fixed a bug in the conversion of NULL values to QVariants.
* updates to suit current trunk revision (r1310193).
                
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: FindPHPDev.cmake, Makefile, cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Colby updated QPID-3027:
-----------------------------

    Attachment: cqpid_php.20121105.diff

Attached cqpid_php.20121105.diff which adds support for PHP 5.4.0+

I note that for Qpid 0.19+ two relevant files ({{qpid/cpp/bindings/qmf2/CMakeLists.txt}} and {{qpid/cpp/bindings/qpid/CMakeLists.txt}}) have been combined into a single {{qpid/cpp/bindings/CMakeLists.txt}} file.  

I'll make the relevant {{cqpid_php}} changes for that tomorrow, and upload a Qpid 0.19+ patch then.
                
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.20121105.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "David Simon (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13053288#comment-13053288 ] 

David Simon commented on QPID-3027:
-----------------------------------

hi Paul,

on Debian Squeeze with a brand new install there is a segfault when the cqpid.so module is not in use. otherwise seems to be fine.

I followed the instructions, I used the svn revision you mentioned above.

problem:
david@qpid:~$ php -r ""
Segmentation fault

my system description:
david@qpid:~$ php-config
Usage: /usr/bin/php-config [OPTION]
Options:
  --prefix            [/usr]
  --includes          [-I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64]
  --ldflags           []
  --libs              [-lcrypt   -lz -lcrypt -lonig -lssl -ldb -lqdbm -lbz2 -lz -lpcre -lssl -lm -ldl -lnsl  -lxml2 -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lxml2 -lxml2 -lxml2 -lcrypt -lxml2 -lxml2 -lxml2 -lxml2 -lcrypt ]
  --extension-dir     [/usr/lib/php5/20090626+lfs]
  --include-dir       [/usr/include/php5]
  --php-binary        [/usr/bin/php]
  --php-sapis         [cli apache2handler]
  --phpapi            [20090626+lfs]
  --configure-options [--prefix=/usr --with-apxs2=/usr/bin/apxs2 --with-config-file-path=/etc/php5/apache2 --with-config-file-scan-dir=/etc/php5/apache2/conf.d --build=i486-linux-gnu --host=i486-linux-gnu --sysconfdir=/etc --localstatedir=/var --mandir=/usr/share/man --disable-debug --with-regex=php --disable-rpath --disable-static --with-pic --with-layout=GNU --with-pear=/usr/share/php --enable-calendar --enable-sysvsem --enable-sysvshm --enable-sysvmsg --enable-bcmath --with-bz2 --enable-ctype --with-db4 --with-qdbm=/usr --without-gdbm --with-iconv --enable-exif --enable-ftp --with-gettext --enable-mbstring --with-onig=/usr --with-pcre-regex=/usr --enable-shmop --enable-sockets --enable-wddx --with-libxml-dir=/usr --with-zlib --with-kerberos=/usr --with-openssl=/usr --enable-soap --enable-zip --with-mhash=yes --with-exec-dir=/usr/lib/php5/libexec --with-system-tzdata --without-mm --with-curl=shared,/usr --with-enchant=shared,/usr --with-zlib-dir=/usr --with-gd=shared,/usr --enable-gd-native-ttf --with-gmp=shared,/usr --with-jpeg-dir=shared,/usr --with-xpm-dir=shared,/usr/X11R6 --with-png-dir=shared,/usr --with-freetype-dir=shared,/usr --with-imap=shared,/usr --with-imap-ssl --with-interbase=shared,/usr --with-pdo-firebird=shared,/usr --enable-intl=shared --with-ttf=shared,/usr --with-t1lib=shared,/usr --with-ldap=shared,/usr --with-ldap-sasl=/usr --with-mcrypt=shared,/usr --with-mysql=shared,/usr --with-mysqli=shared,/usr/bin/mysql_config --with-pspell=shared,/usr --with-unixODBC=shared,/usr --with-recode=shared,/usr --with-xsl=shared,/usr --with-snmp=shared,/usr --with-sqlite=shared,/usr --with-sqlite3=shared,/usr --with-mssql=shared,/usr --with-tidy=shared,/usr --with-xmlrpc=shared --with-pgsql=shared,/usr]
  --version           [5.3.3-7+squeeze1]
  --vernum            [50303]


here is the gdb backtrace:

david@qpid:~$ gdb php
GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/php...Reading symbols from /usr/lib/debug/usr/bin/php5...done.
(no debugging symbols found)...done.
(gdb) run -r ""
Starting program: /usr/bin/php -r ""
[Thread debugging using libthread_db enabled]

Program received signal SIGSEGV, Segmentation fault.
0x00000000 in ?? ()
(gdb) bt
#0  0x00000000 in ?? ()
#1  0xb7980688 in __cxa_finalize () from /lib/i686/cmov/libc.so.6
#2  0xb7369df4 in __do_global_dtors_aux () from /lib/libqpidmessaging.so.2
#3  0xb73c1ba0 in _fini () from /lib/libqpidmessaging.so.2
#4  0xb7ff571e in ?? () from /lib/ld-linux.so.2
#5  0xb7ff6197 in ?? () from /lib/ld-linux.so.2
#6  0xb7ce0ca4 in ?? () from /lib/i686/cmov/libdl.so.2
#7  0xb7ff07f6 in ?? () from /lib/ld-linux.so.2
#8  0xb7ce109c in ?? () from /lib/i686/cmov/libdl.so.2
#9  0xb7ce0cda in dlclose () from /lib/i686/cmov/libdl.so.2
#10 0x083dcf54 in module_destructor (module=0x8913198) at /home/david/php5-5.3.3/Zend/zend_API.c:2120
#11 0x083e4651 in zend_hash_apply_deleter (ht=0x88c0900, p=0x8912da8) at /home/david/php5-5.3.3/Zend/zend_hash.c:813
#12 0x083e47ff in zend_hash_graceful_reverse_destroy (ht=0x88c0900) at /home/david/php5-5.3.3/Zend/zend_hash.c:848
#13 0x083d4397 in zend_shutdown () at /home/david/php5-5.3.3/Zend/zend.c:831
#14 0x0835b4ac in php_module_shutdown () at /home/david/php5-5.3.3/main/main.c:2166
#15 0x084a7345 in main (argc=3, argv=0xbffff874) at /home/david/php5-5.3.3/sapi/cli/php_cli.c:1391
(gdb) f 1
#1  0xb7980688 in __cxa_finalize () from /lib/i686/cmov/libc.so.6
(gdb) f 10
#10 0x083dcf54 in module_destructor (module=0x8913198) at /home/david/php5-5.3.3/Zend/zend_API.c:2120
2120			DL_UNLOAD(module->handle);
(gdb) 

hope it helps

best regards,
David


> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: FindPHPDev.cmake, Makefile, cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Updated] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Colby updated QPID-3027:
-----------------------------

    Attachment: cqpid_php.20110328.diff

Added cqpid_php.20110328.diff.

* added a QMF2 binding.
* fixed an int-size conversion bug in PHP type-mapping code.
* added the web-based example that was supposed to be in the last update (Subversion was misbehaving).

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: Makefile, cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13056218#comment-13056218 ] 

Paul Colby commented on QPID-3027:
----------------------------------

Thanks David!  I'm now able to reproduce the segfault... I'll investigate further :)

Paul.

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: FindPHPDev.cmake, Makefile, cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Updated: (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Colby updated QPID-3027:
-----------------------------

    Attachment: cqpid_php.20110220.diff

Code-complete PHP binding via SWIG.

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>         Attachments: cqpid_php.20110220.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Issue Comment Edited: (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12997116#comment-12997116 ] 

Paul Colby edited comment on QPID-3027 at 2/20/11 9:38 AM:
-----------------------------------------------------------

Just attached a code-complete version of PHP binding :)  The only thing that remains (AFAIK) is integration with Qpid's build process (and more examples, of course).

The latest diff also includes the map_sender.php and map_receiver.php examples, which show off the Variant <-> PHP type-mapping.

I've also attached my temporary Makefile which can be used for experimenting until the proper build integration is done... if anyone is keen to help with that integration, I'd love to hear from you :)

      was (Author: pcolby78):
    Code-complete PHP binding via SWIG.
  
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>         Attachments: Makefile, cqpid_php.20110220.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Updated: (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Colby updated QPID-3027:
-----------------------------

    Attachment: cqpid_php.20110301.diff

Added cqpid_php.20110301.diff.

The main difference in this version is integration with Qpid's autoconf / automake build system.  This is the first time I've ever worked with autoconf / automake, so there's likely to be something that needs tweaking... ?

Also included in this version is a small fix to key names extracted from PHP associative arrays when converting to Variants (was incorrectly including the trailing '\0' character).

And finally, this version includes a web-based hello_world.php example - ie one that can be hosted by Apache, or some other PHP-enabled web server (the other included examples are meant to be used via PHP's CLI SAPI).

The only thing that remains (apart from probable autoconf / automake tweaks), is CMake support.

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: Makefile, cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13491170#comment-13491170 ] 

Paul Colby commented on QPID-3027:
----------------------------------

Hey Darryl, it appears that you blanked the "Description" field this morning / last night... was that intentional?

Paul.
                
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.20121105.diff, cqpid_php.20121105-qpid-0.19.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
>   

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] Commented: (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12989121#comment-12989121 ] 

Paul Colby commented on QPID-3027:
----------------------------------

Another related SWIG bug report:
* %nspace does not work for PHP - https://sourceforge.net/tracker/?func=detail&aid=3169536&group_id=1645&atid=101645

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "jiraposter@reviews.apache.org (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13015510#comment-13015510 ] 

jiraposter@reviews.apache.org commented on QPID-3027:
-----------------------------------------------------


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/462/#review378
-----------------------------------------------------------


Could you also please add the needed pieces for cmake builds?

- Steve


On 2011-03-29 14:07:55, Paul Colby wrote:
bq.  
bq.  -----------------------------------------------------------
bq.  This is an automatically generated e-mail. To reply, visit:
bq.  https://reviews.apache.org/r/462/
bq.  -----------------------------------------------------------
bq.  
bq.  (Updated 2011-03-29 14:07:55)
bq.  
bq.  
bq.  Review request for qpid.
bq.  
bq.  
bq.  Summary
bq.  -------
bq.  
bq.  A SWIG-based PHP binding for the Qpid Messaging API.
bq.  
bq.  The SWIG-based binding itself is complete, and working (hence needing review).
bq.  
bq.  This diff includes integration with Qpid's autoconf build system.  I've only just begun learning autoconf / automake, so the build integration definitely needs review too :)
bq.  
bq.  
bq.  This addresses bug QPID-3027.
bq.      https://issues.apache.org/jira/browse/QPID-3027
bq.  
bq.  
bq.  Diffs
bq.  -----
bq.  
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qmf2/Makefile.am 1086164 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qmf2/examples/php/cli/list_agents.php PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qmf2/php/Makefile.am PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qmf2/php/php.i PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/Makefile.am 1086164 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/client.php PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/hello_world.php PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/map_receiver.php PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/map_sender.php PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/server.php PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/web/hello_world.php PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/php/Makefile.am PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/php/php.i PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/php/phpinfo.i PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/swig_php_typemaps.i PRE-CREATION 
bq.    http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/configure.ac 1086164 
bq.  
bq.  Diff: https://reviews.apache.org/r/462/diff
bq.  
bq.  
bq.  Testing
bq.  -------
bq.  
bq.  
bq.  Thanks,
bq.  
bq.  Paul
bq.  
bq.



> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: Makefile, cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "jiraposter@reviews.apache.org (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13020273#comment-13020273 ] 

jiraposter@reviews.apache.org commented on QPID-3027:
-----------------------------------------------------


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/462/
-----------------------------------------------------------

(Updated 2011-04-15 11:43:31.835386)


Review request for qpid.


Changes
-------

Implemented CMake support.  Note, update also requires a custom CMake module if building with CMake.  See https://issues.apache.org/jira/browse/QPID-3027 for details, and to download FindPHPDev.cmake.


Summary
-------

A SWIG-based PHP binding for the Qpid Messaging API.

The SWIG-based binding itself is complete, and working (hence needing review).

This diff includes integration with Qpid's autoconf build system.  I've only just begun learning autoconf / automake, so the build integration definitely needs review too :)


This addresses bug QPID-3027.
    https://issues.apache.org/jira/browse/QPID-3027


Diffs (updated)
-----

  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/CMakeLists.txt 1092659 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qmf2/CMakeLists.txt PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qmf2/Makefile.am 1092659 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qmf2/examples/php/cli/list_agents.php PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qmf2/php/CMakeLists.txt PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qmf2/php/Makefile.am PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qmf2/php/php.i PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/CMakeLists.txt 1092659 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/Makefile.am 1092659 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/client.php PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/hello_world.php PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/map_receiver.php PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/map_sender.php PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/cli/server.php PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/examples/php/web/hello_world.php PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/php/CMakeLists.txt PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/php/Makefile.am PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/php/php.i PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/qpid/php/phpinfo.i PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/bindings/swig_php_typemaps.i PRE-CREATION 
  http://svn.apache.org/repos/asf/qpid/trunk/qpid/cpp/configure.ac 1092659 

Diff: https://reviews.apache.org/r/462/diff


Testing
-------


Thanks,

Paul



> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Ted Ross
>         Attachments: FindPHPDev.cmake, Makefile, cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Updated] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Colby updated QPID-3027:
-----------------------------

    Attachment: cqpid_php.20121106.diff

Attached {{cqpid_php.20121106.diff}}

This version adds the {{FindPHPDev}} module as a custom project module under {{qpid/cpp/bindings/CMakeModules}}, so there's no longer any need to add the module under {{/usr/share/cmake*/Modules}} :)
                
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.20121105.diff, cqpid_php.20121105-qpid-0.19.diff, cqpid_php.20121106.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
>   

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] [Updated] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Darryl L. Pierce (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Darryl L. Pierce updated QPID-3027:
-----------------------------------

    Description:     (was: Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.

The rough plan:
1. report relevant bugs / feature requests to SWIG (done).
2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
3. implement qpid::types::Variant <-> PHP typemapping (not started).
4. implement printinfo pragma (should be easy, just need to choose what info to include).
5. create relevant [auto]makefile.

Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.)
    
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.20121105.diff, cqpid_php.20121105-qpid-0.19.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
>   

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


[jira] Updated: (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul Colby updated QPID-3027:
-----------------------------

    Attachment: cqpid_php.diff

Initial C++ Messaging API binding for PHP.

> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>         Attachments: cqpid_php.diff
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] [Commented] (QPID-3027) PHP binding of Qpid Messaging API

Posted by "Paul Colby (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-3027?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13490165#comment-13490165 ] 

Paul Colby commented on QPID-3027:
----------------------------------

Ok, so the build error is the result of changes in the PHP development headers.

Somewhere between PHP 5.3.8 and 5.4.7, the signature of the following functions changed:
* {{zend_get_object_classname}}
* {{zend_rsrc_list_get_rsrc_type}}

Now to track down the exact PHP version that changed, and #ifdef some variable declarations...
                
> PHP binding of Qpid Messaging API
> ---------------------------------
>
>                 Key: QPID-3027
>                 URL: https://issues.apache.org/jira/browse/QPID-3027
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Client
>    Affects Versions: 0.8
>            Reporter: Paul Colby
>            Assignee: Darryl L. Pierce
>         Attachments: cqpid_php.20110220.diff, cqpid_php.20110301.diff, cqpid_php.20110328.diff, cqpid_php.20110415.diff, cqpid_php.20120406.diff, cqpid_php.diff, FindPHPDev.cmake, Makefile
>
>
> Working on a PHP binding for the Qpid Messaging API via SWIG.  There are several PHP-specific issues with C++ and SWIG which I've managed to workaround, so the binding is starting to take shape, but still very much a work in progress.
> The rough plan:
> 1. report relevant bugs / feature requests to SWIG (done).
> 2. clean-up Qpid php.i SWIG interface file (mostly done - just need to implement PHP namespaces).
> 3. implement qpid::types::Variant <-> PHP typemapping (not started).
> 4. implement printinfo pragma (should be easy, just need to choose what info to include).
> 5. create relevant [auto]makefile.
> Of course, there's lots of things to discuss / decide along the way... so I'll post 'em here as they come up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org