Opened 11 years ago

Last modified 2 years ago

#37783 new defect

graphviz +universal +ruby fails if ruby19 is -universal

Reported by: jeremyhu (Jeremy Huddleston Sequoia) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.1.2
Keywords: Cc: cooljeanius (Eric Gallager)
Port: graphviz

Description

graphviz has a lib dependency on port:ruby, but it actually tries to use ruby19 if it is installed. This is problematic if ruby19 is not universal:

make[4]: Entering directory `/opt/local/var/macports/build/_Users_jeremy_src_macports_trunk_dports_graphics_graphviz/graphviz/work/graphviz-2.30.0/tclpkg/gv'
/bin/sh ../../libtool  --tag=CXX   --mode=compile /usr/bin/g++-4.2 -DHAVE_CONFIG_H -DWITH_CGRAPH -I. -I../.. -I../../lib/common  -I../.. -I../../lib/gvc -I../../lib/common -I../../lib/cgraph -I../../lib/cdt -I../../lib/pathplan -DDEMAND_LOADING=1 -I/opt/local/include/ruby-1.9.1/x86_64-darwin10 -I/opt/local/include/ruby-1.9.1   -I/opt/local/include -I/opt/local/include  -pipe -O2 -arch x86_64 -arch i386 -c -o libgv_ruby_la-gv_ruby.lo `test -f 'gv_ruby.cpp' || echo './'`gv_ruby.cpp
libtool: compile:  /usr/bin/g++-4.2 -DHAVE_CONFIG_H -DWITH_CGRAPH -I. -I../.. -I../../lib/common -I../.. -I../../lib/gvc -I../../lib/common -I../../lib/cgraph -I../../lib/cdt -I../../lib/pathplan -DDEMAND_LOADING=1 -I/opt/local/include/ruby-1.9.1/x86_64-darwin10 -I/opt/local/include/ruby-1.9.1 -I/opt/local/include -I/opt/local/include -pipe -O2 -arch x86_64 -arch i386 -c gv_ruby.cpp  -fno-common -DPIC -o .libs/libgv_ruby_la-gv_ruby.o
In file included from /opt/local/include/ruby-1.9.1/ruby.h:32,
                 from gv_ruby.cpp:856:
/opt/local/include/ruby-1.9.1/ruby/ruby.h:105: error: size of array 'ruby_check_sizeof_long' is negative
/opt/local/include/ruby-1.9.1/ruby/ruby.h:109: error: size of array 'ruby_check_sizeof_voidp' is negative
In file included from /opt/local/include/ruby-1.9.1/ruby/intern.h:34,
                 from /opt/local/include/ruby-1.9.1/ruby/ruby.h:1382,
                 from /opt/local/include/ruby-1.9.1/ruby.h:32,
                 from gv_ruby.cpp:856:
/opt/local/include/ruby-1.9.1/ruby/st.h:67: error: size of array 'st_check_for_sizeof_st_index_t' is negative
lipo: can't open input file: ./ccEjUox8.out (No such file or directory)
make[4]: *** [libgv_ruby_la-gv_ruby.lo] Error 1

Change History (3)

comment:1 Changed 11 years ago by jeremyhu (Jeremy Huddleston Sequoia)

This is because configure.ac is setup to prefer ruby-1.9:

if test "x$enable_ruby" != "xyes"; then
  use_ruby="No (disabled)"
else
  if test "x$use_swig" != "xYes"; then
    use_ruby="No (swig not available)"
  else
    if test `$SWIG -help 2>&1 | $EGREP -c '\-ruby *- Generate'` = 0; then
      use_ruby="No (swig does not support -ruby option)"
    else
      PKG_CHECK_MODULES(RUBY, [ruby-1.9],[
        AC_CHECK_PROG(RUBY,ruby,ruby)
        if test "x$RUBY" = "x"; then
          use_ruby="No (ruby not available)"
        else
          RUBY_INSTALL_DIR="`$RUBY $srcdir/config/config_ruby.rb vendorarchdir`"
        fi
      ],[
        AC_CHECK_PROG(RUBY,ruby,ruby)
        if test "x$RUBY" = "x"; then
          use_ruby="No (ruby not available)"
        else
          RUBY_CFLAGS="-I`$RUBY $srcdir/config/config_ruby.rb archdir`"

comment:2 Changed 2 years ago by cooljeanius (Eric Gallager)

ruby-1.9 is rather old by this point; would it be possible to make graphviz use a newer version?

comment:3 Changed 2 years ago by cooljeanius (Eric Gallager)

Cc: cooljeanius added
Note: See TracTickets for help on using tickets.