Ticket #1012 (closed defect: fixed)

Opened 9 years ago

Last modified 7 years ago

paludis ruby bindings don't compile with ruby 1.9.2

Reported by: stecrocco Owned by:
Priority: MinorRelease Milestone:
Component: bindings/ruby Version: 0.54.4
Keywords: Cc: Marc-Antoine@…
Blocked By: Blocking:
Distribution: Gentoo

Description

Paludis 0.54.4 doesn't compile if the ruby-bindings use flag is enabled and the current ruby interpreter (set with eselect ruby) is ruby 1.9.2. It compiles correctly with ruby 1.8.7 and with ruby 1.9.1. The error message I get is the following:

In file included from /usr/include/ruby-1.9.1/ruby.h:33,
                 from ./paludis_ruby.hh:51,
                 from contents.cc:22:
/usr/include/ruby-1.9.1/ruby/ruby.h:1063: warning: 'void rb_global_variable(VALUE*)' hides constructor for 'struct rb_global_variable'
In file included from /usr/include/ruby-1.9.1/ruby/ruby.h:1327,
                 from /usr/include/ruby-1.9.1/ruby.h:33,
                 from ./paludis_ruby.hh:51,
                 from contents.cc:22:
/usr/include/ruby-1.9.1/ruby/missing.h:169: error: declaration of 'int ffs(int)' throws different exceptions
/usr/include/string.h:523: error: from previous declaration 'int ffs(int) throw ()'
make[4]: *** [libpaludisruby_0.54_la-contents.lo] Error 1
make[4]: *** Waiting for unfinished jobs....
In file included from /usr/include/ruby-1.9.1/ruby.h:33,
                 from ./paludis_ruby.hh:51,
                 from choice.cc:21:
/usr/include/ruby-1.9.1/ruby/ruby.h:1063: warning: 'void rb_global_variable(VALUE*)' hides constructor for 'struct rb_global_variable'
In file included from /usr/include/ruby-1.9.1/ruby/ruby.h:1327,
                 from /usr/include/ruby-1.9.1/ruby.h:33,
                 from ./paludis_ruby.hh:51,
                 from choice.cc:21:
/usr/include/ruby-1.9.1/ruby/missing.h:169: error: declaration of 'int ffs(int)' throws different exceptions
/usr/include/string.h:523: error: from previous declaration 'int ffs(int) throw ()'
make[4]: *** [libpaludisruby_0.54_la-choice.lo] Error 1
make[4]: Leaving directory `/var/tmp/paludis/sys-apps-paludis-0.54.4/work/paludis-0.54.4/ruby'
make[3]: Leaving directory `/var/tmp/paludis/sys-apps-paludis-0.54.4/work/paludis-0.54.4/ruby'
make[2]: Leaving directory `/var/tmp/paludis/sys-apps-paludis-0.54.4/work/paludis-0.54.4/ruby'
In file included from /usr/include/ruby-1.9.1/ruby.h:33,
                 from ./paludis_ruby.hh:51,
                 from action.cc:22:
/usr/include/ruby-1.9.1/ruby/ruby.h:1063: warning: 'void rb_global_variable(VALUE*)' hides constructor for 'struct rb_global_variable'
In file included from /usr/include/ruby-1.9.1/ruby/ruby.h:1327,
                 from /usr/include/ruby-1.9.1/ruby.h:33,
                 from ./paludis_ruby.hh:51,
                 from action.cc:22:
/usr/include/ruby-1.9.1/ruby/missing.h:169: error: declaration of 'int ffs(int)' throws different exceptions
/usr/include/string.h:523: error: from previous declaration 'int ffs(int) throw ()'
make[4]: *** [libpaludisruby_0.54_la-action.lo] Error 1

Attachments

0001-ruby-Fix-build-with-ruby-1.9.patch Download (6.5 KB) - added by keruspe 7 years ago.
Fix build with ruby 1.9.3+

Change History

comment:1 Changed 9 years ago by keruspe

  • Cc Marc-Antoine@… added

It compiles fine with CFLAGS+=" -DHAVE_FFS" (Ruby headers are redefining it when it's not set)

comment:2 Changed 9 years ago by ciaranm

That's something weird with the Ruby headers, rather than something weird with us.

Changed 7 years ago by keruspe

Fix build with ruby 1.9.3+

comment:3 Changed 7 years ago by ciaranm

  • Status changed from new to closed
  • Resolution set to fixed

Thanks

Note: See TracTickets for help on using tickets.