Opened 4 weeks ago

Closed 4 weeks ago

#20257 closed defect (fixed)

Subversion FTBFS when building Ruby bindings

Reported by: Douglas R. Reno Owned by: Douglas R. Reno
Priority: normal Milestone: 12.2
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description

This seems to be due to incompatible pointer types. There are a couple of commits upstream that I am going to try to backport. These commits are https://svn.apache.org/viewvc?view=revision&revision=1915239 and https://svn.apache.org/viewvc?view=revision&revision=1915236

Without these we'll get over 20 errors like:

subversion/bindings/swig/ruby/svn_client.c:25865:17: error: passing 
argument 1 of ‘RB_NIL_P’ makes integer from pointer without a cast 
[-Wint-conversion]
25865 |       if (NIL_P(arg9)) {
      |                 ^~~~
      |                 |
      |                 apr_hash_t *
/usr/include/ruby-3.3.0/ruby/internal/special_consts.h:173:16: note: 
expected ‘VALUE’ {aka ‘long unsigned int’} but argument is of type 
‘apr_hash_t *’
  173 | RB_NIL_P(VALUE obj)

Change History (8)

comment:1 by Douglas R. Reno, 4 weeks ago

Owner: changed from blfs-book to Douglas R. Reno
Status: newassigned

comment:2 by Douglas R. Reno, 4 weeks ago

Milestone: 12.312.2
Type: enhancementdefect

comment:3 by Douglas R. Reno, 4 weeks ago

I'm not entirely sure what to do here. Fedora has papered over the problem (see https://bugzilla.redhat.com/show_bug.cgi?id=2259155 and https://src.fedoraproject.org/rpms/subversion/c/376213baeb2838b2af084ac593234ca65625a76c?branch=rawhide), while Arch is still on ruby-3.2 *and* subversion-1.14.2, so they haven't seen the problem. The two patches do not fix the problem. Fedora notes that the issues are harmless.

I think for now I'll try with the CFLAGS that Fedora are using, but we should revisit this at some point.

comment:4 by Douglas R. Reno, 4 weeks ago

I think I've found some more information on how this works. I'm going to force a regeneration of the SWIG files with a touch command to build/generator/swig/*.py

comment:5 by Douglas R. Reno, 4 weeks ago

By regenerating the entire build system after applying my patch, the build now runs. Now waiting to see what the tests come out like.

comment:6 by Douglas R. Reno, 4 weeks ago

Note that the build system needs to be regenerated in order to force a regneration of the SWIG bindings.

comment:7 by Douglas R. Reno, 4 weeks ago

Fixed at 229d383ca3639481745361c516861959766e32f5

I learned a lot about SWIG today.

comment:8 by Douglas R. Reno, 4 weeks ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.