The SWIG Python and Perl bindings for Subversion 1.2.1 fail to build
correctly on Win32. I cannot be sure whether this is platform-specific
since I do not have another platform to test on.
I am building with:
Subversion 1.2.1 (r15230) - of course :-)
Visual C++ 6.0 SP6
SWIG 1.3.24
Python 2.3.5
ActivePerl 5.8.6.811
If I try to build the Python bindings, I get output along these lines:
core.c(1736) : error C2632: 'long' followed by 'long' is illegal
.
.
.
[snip (ignoring common warnings)]
.
.
core.c(7860) : warning C4013: 'svn_utf_initialize' undefined; assuming
extern returning int
core.c(7909) : warning C4013: 'svn_utf_stringbuf_to_utf8' undefined;
assuming extern returning int
core.c(7985) : warning C4013: 'svn_utf_string_to_utf8' undefined;
assuming extern returning int
core.c(8048) : warning C4013: 'svn_utf_cstring_to_utf8' undefined;
assuming extern returning int
core.c(8121) : warning C4013: 'svn_utf_cstring_to_utf8_ex' undefined;
assuming extern returning int
core.c(8193) : warning C4013: 'svn_utf_stringbuf_from_utf8' undefined;
assuming extern returning int
core.c(8269) : warning C4013: 'svn_utf_string_from_utf8' undefined;
assuming extern returning int
core.c(8332) : warning C4013: 'svn_utf_cstring_from_utf8' undefined;
assuming extern returning int
core.c(8405) : warning C4013: 'svn_utf_cstring_from_utf8_ex' undefined;
assuming extern returning int
core.c(8465) : warning C4013: 'svn_utf_cstring_from_utf8_fuzzy'
undefined; assuming extern returning int
core.c(8512) : warning C4013: 'svn_utf_cstring_from_utf8_stringbuf'
undefined; assuming extern returning int
core.c(8586) : warning C4013: 'svn_utf_cstring_from_utf8_string'
undefined; assuming extern returning int
If I try to build the Perl bindings, I get output along these lines:
[Output from SWIG]
core.i(499): Warning(453): Can't apply (apr_hash_t *PROPHASH). No
typemaps are defined.
core.i(499): Warning(453): Can't apply (apr_hash_t *PROPHASH). No
typemaps are defined.
core.i(510): Warning(453): Can't apply (apr_array_header_t
**OUTPUT_OF_PROP). No typemaps are defined.
core.i(510): Warning(453): Can't apply (apr_array_header_t
**OUTPUT_OF_PROP). No typemaps are defined.
core.i(510): Warning(453): Can't apply (apr_array_header_t
**OUTPUT_OF_PROP). No typemaps are defined.
[Output from cl]
.
.
.
core.c(2862) : error C2632: 'long' followed by 'long' is illegal
core.c(3775) : error C2632: 'long' followed by 'long' is illegal
core.c(3905) : error C2632: 'long' followed by 'long' is illegal
core.c(8909) : warning C4013: 'svn_utf_initialize' undefined; assuming
extern returning int
core.c(8964) : warning C4013: 'svn_utf_stringbuf_to_utf8' undefined;
assuming extern returning int
core.c(9038) : warning C4013: 'svn_utf_string_to_utf8' undefined;
assuming extern returning int
core.c(9102) : warning C4013: 'svn_utf_cstring_to_utf8' undefined;
assuming extern returning int
core.c(9170) : warning C4013: 'svn_utf_cstring_to_utf8_ex' undefined;
assuming extern returning int
core.c(9248) : warning C4013: 'svn_utf_stringbuf_from_utf8' undefined;
assuming extern returning int
core.c(9322) : warning C4013: 'svn_utf_string_from_utf8' undefined;
assuming extern returning int
core.c(9386) : warning C4013: 'svn_utf_cstring_from_utf8' undefined;
assuming extern returning int
core.c(9454) : warning C4013: 'svn_utf_cstring_from_utf8_ex' undefined;
assuming extern returning int
core.c(9513) : warning C4013: 'svn_utf_cstring_from_utf8_fuzzy'
undefined; assuming extern returning int
core.c(9571) : warning C4013: 'svn_utf_cstring_from_utf8_stringbuf'
undefined; assuming extern returning int
core.c(9641) : warning C4013: 'svn_utf_cstring_from_utf8_string'
undefined; assuming extern returning int
Despite my lack of knowledge about C, I did figure out that in both the
Python and Perl bindings, core.c does not include svn_utf.h, something
which is directly traceable to core.i. But what eludes me is the
significance or insignificance of the "long long" declarations and
typecasts in the core.c files. Of course, the bindings will build if
you remove one of the "extra" "long"s, but what effect does that have
on the bindings? And what do those SWIG warnings mean?
Subversion experts, please enlighten me here.
PS: Everything else on Win32 builds correctly, and therefore I have a
set of Subversion 1.2.1 binaries for Win32 which I am willing to
share.
- James Park (pencil_ethics)
This message is best viewed on a terminal that is 72 characters wide.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Mon Jul 11 12:43:20 2005