[jira] [Commented] (SVN-4818) Failed to build with SWIG 4
"Yasuhito Futatsuki (Jira)" <[email protected]> Wed, 20 Sep 2023 22:31:00 +0000 (UTC)
| Newsgroups | gmane.comp.version-control.subversion.issues |
|---|---|
| Message-ID | <[email protected]> |
[ https://issues.apache.org/jira/browse/SVN-4818?page=3Dcom.atlassian.j=
ira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=3D177673=
12#comment-17767312 ]=20
Yasuhito Futatsuki commented on SVN-4818:
-----------------------------------------
Because of the reason I described above, we decided that we don't support b=
uilding Python 2 bindings with SWIG 4 (won't fix).=C2=A0
For Python 3, the issue was fixed in r1869853 (between 1.13.0 and 1.14.0) f=
or Unix/Linux and in r177338 (on trunk), r188482 (on 1.14.x branch between =
1.14.0 and 1.14.1) for Windows.
> Next error is inside Ruby bindings:
{{> subversion/bindings/swig/ruby/svn_client.c:1605:21: error: >=E2=80=98SW=
IG_POINTER_NO_NULL=E2=80=99 undeclared (first use in this function); did yo=
u mean =E2=80=98SWIG_POINTER_OWN=E2=80=99?}}
> Looks like the vendored proxy/*.swg files are outdated. I removed some an=
d get passed this one.
It was needed to do "make clean-swig" after autogen.sh and configure, befor=
e building swig bindings.
We added an optional step "Clean Old Bindings Intermediate Source Files" as=
below, in the install instruction described in subversion/bindings/swig/IN=
STALL file.
"Step 2.5 =C2=A0[Optional] Clean Old Bindings Intermediate Source Files
=C2=A0 If you are rebuilding bindings with different version of SWIG from
=C2=A0 previously used, run 'make clean-swig'. =C2=A0This will clean SWIG v=
ersion
=C2=A0 depended intermediate source files. =C2=A0This step also needs if yo=
u are
=C2=A0 using the Subversion distribution tarball and using autogen.sh to
=C2=A0 rebuild configure script, because you might use different version of
=C2=A0 SWIG from one we used to make the tarball."
> Failed to build with SWIG 4
> ---------------------------
>
> Key: SVN-4818
> URL: https://issues.apache.org/jira/browse/SVN-4818
> Project: Subversion
> Issue Type: Bug
> Components: bindings_swig
> Affects Versions: 1.12.0
> Environment: Arch Linux x86_64, SWIG 4.0.0.
> Reporter: Felix Yan
> Priority: Major
> Fix For: trunk, 1.14.1
>
>
> The Python binding failed to build with an error:
> {{Deprecated command line option: -classic. This option is no longer supp=
orted.}}
> =C2=A0After fixing this (by removing -classic from build.conf), a lot of =
new errors like below appeared:
> {{subversion/bindings/swig/python/svn_client.c:6201:128: error: =E2=80=98=
svn_argnum_swig_obj=E2=80=99 undeclared (first use in this function); did y=
ou mean =E2=80=98svn_argnum_obj1=E2=80=99?}}
> After looking up the changelog of SWIG 4, it appears fastunpack becomes d=
efault so I added {{-nofastunpack}} to get around this.
> Next error is inside Ruby bindings:
> {{subversion/bindings/swig/ruby/svn_client.c:1605:21: error: =E2=80=98SWI=
G_POINTER_NO_NULL=E2=80=99 undeclared (first use in this function); did you=
mean =E2=80=98SWIG_POINTER_OWN=E2=80=99?}}
> Looks like the vendored proxy/*.swg files are outdated. I removed some an=
d get passed this one.
> Finally it built fine, but I am stuck at the test suite now. The python b=
inding failed to import correctly:
> {{File "/home/felix/projects/arch/packages/subversion/trunk/src/subversio=
n-1.12.0/subversion/bindings/swig/python/libsvn/core.py", line 32, in _swig=
_setattr_nondynamic}}
> {{method =3D class_type.__swig_setmethods__.get(name, None)}}
> {{AttributeError: type object 'svn_auth_cred_simple_t' has no attribute '=
__swig_setmethods__'}}
> Please let me know how to proceed, thanks!
--
This message was sent by Atlassian Jira
(v8.20.10#820010)