[ 
https://issues.apache.org/jira/browse/PROTON-254?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Keith Wall updated PROTON-254:
------------------------------

    Description: 
Swig generated C code for the Java bindings fails to compile on Visual Studio 
2010 with error message:

C1083: Cannot open include file: 'stdbool.h': No such file or directory

After discussion on list [1], we tried changing bindings/java/CMakeLists.txt to 
use CPLUSPLUS ON directive to CMake in the case where BUILD_WITH_CXX has been 
enabled earlier in the build.

if (BUILD_WITH_CXX)
    SET_SOURCE_FILES_PROPERTIES(python.i PROPERTIES CPLUSPLUS ON)
endif (BUILD_WITH_CXX)

Switching to CPP in this way exposed a number of errors when compiling the CPP 
code resulting from the java.i (casting issues, pointer arithemetic etc - see 
attached make-proton-jni-cxx-errors.txt).  However, even after resolving the 
CPP compilation issues, we then encounter a problem with Swig's handling of 
nested unions when when CPP.  The seeming inability of SWIG (when used with 
CPP) to represent the union means that SWIG does not produce pn_atom_t_u.java.  
JNIMessage.java, which references pn_atom_t_u, consequently fails to compile.

The warning from swig is:

/home/keith/src/proton/proton-c/include/proton/codec.h:91: Warning 312: Nested 
union not currently supported (ignored).

 
[1] 
http://mail-archives.apache.org/mod_mbox/qpid-proton/201302.mbox/%3ccamyv19mgbdvd2wextvpwywtysskadokb7wtj+u-3jkncwdx...@mail.gmail.com%3E






  was:
Swig generated C code for the Java bindings fails to compile on Visual Studio 
2010 with error message:

C1083: Cannot open include file: 'stdbool.h': No such file or directory

After discussion on list [1], we tried changing bindings/java/CMakeLists.txt to 
use CPLUSPLUS ON directive to CMake in the case where BUILD_WITH_CXX has been 
enabled earlier in the build.

if (BUILD_WITH_CXX)
     SET_SOURCE_FILES_PROPERTIES(python.i PROPERTIES CPLUSPLUS ON)
  endif (BUILD_WITH_CXX)

Switching to CPP in this way exposed a number of errors when compiling the CPP 
code resulting from the java.i (casting issues, pointer arithemetic etc - see 
attached make-proton-jni-cxx-errors.txt).  However, even after resolving the 
CPP compilation issues, we then encounter a problem with Swig's handling of 
nested unions when when CPP.  The seeming inability of SWIG (when used with 
CPP) to represent the union means that SWIG does not produce pn_atom_t_u.java.  
JNIMessage.java, which references pn_atom_t_u, consequently fails to compile.

The warning from swig is:

/home/keith/src/proton/proton-c/include/proton/codec.h:91: Warning 312: Nested 
union not currently supported (ignored).

 
[1] 
http://mail-archives.apache.org/mod_mbox/qpid-proton/201302.mbox/%3ccamyv19mgbdvd2wextvpwywtysskadokb7wtj+u-3jkncwdx...@mail.gmail.com%3E






    
> Swig generated c code for java bindings fails to compile on Windows Visual 
> Studio 2010
> --------------------------------------------------------------------------------------
>
>                 Key: PROTON-254
>                 URL: https://issues.apache.org/jira/browse/PROTON-254
>             Project: Qpid Proton
>          Issue Type: Bug
>          Components: proton-c
>    Affects Versions: 0.4
>         Environment: Windows 7
> Visual Studio 2010
>            Reporter: Keith Wall
>         Attachments: make-proton-jni-cxx-errors.txt
>
>
> Swig generated C code for the Java bindings fails to compile on Visual Studio 
> 2010 with error message:
> C1083: Cannot open include file: 'stdbool.h': No such file or directory
> After discussion on list [1], we tried changing bindings/java/CMakeLists.txt 
> to use CPLUSPLUS ON directive to CMake in the case where BUILD_WITH_CXX has 
> been enabled earlier in the build.
> if (BUILD_WITH_CXX)
>     SET_SOURCE_FILES_PROPERTIES(python.i PROPERTIES CPLUSPLUS ON)
> endif (BUILD_WITH_CXX)
> Switching to CPP in this way exposed a number of errors when compiling the 
> CPP code resulting from the java.i (casting issues, pointer arithemetic etc - 
> see attached make-proton-jni-cxx-errors.txt).  However, even after resolving 
> the CPP compilation issues, we then encounter a problem with Swig's handling 
> of nested unions when when CPP.  The seeming inability of SWIG (when used 
> with CPP) to represent the union means that SWIG does not produce 
> pn_atom_t_u.java.  JNIMessage.java, which references pn_atom_t_u, 
> consequently fails to compile.
> The warning from swig is:
> /home/keith/src/proton/proton-c/include/proton/codec.h:91: Warning 312: 
> Nested union not currently supported (ignored).
>  
> [1] 
> http://mail-archives.apache.org/mod_mbox/qpid-proton/201302.mbox/%3ccamyv19mgbdvd2wextvpwywtysskadokb7wtj+u-3jkncwdx...@mail.gmail.com%3E

--
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

Reply via email to