Fix building with Ruby 1.9.1 or 1.9.3.

(cherry picked from commit e159235799)
v3.5.13-sru
Darrell Anderson 12 years ago committed by Slávek Banko
parent 619fa66f7e
commit 91993677f4

@ -1539,32 +1539,66 @@ AM_CONDITIONAL(compile_kross_python,
# Check for Ruby # Check for Ruby
if test "x$compile_kross" = "xyes" ; then if test "x$compile_kross" = "xyes" ; then
AC_CHECK_PROGS([RUBY], [ruby ruby1.8 ruby18], ruby) AC_CHECK_PROGS([RUBY], [ruby ruby1.8 ruby18 ruby1.9 ruby19], ruby)
if test -n "$RUBY"; then if test -n "$RUBY"; then
AC_MSG_CHECKING(for Ruby dirs) AC_MSG_CHECKING(for Ruby dirs)
RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"archdir"@:>@)'` # Note: pkgconfig file exists only for ruby >= 1.9.3
RUBY_SITEARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitearchdir"@:>@)'` if test -n "$PKGCONFIG"; then
RUBY_SITEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitelibdir"@:>@)'` RUBY_VERSION=`$PKGCONFIG ruby --modversion 2>/dev/null`
RUBY_INCLUDEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"rubyincludedir"@:>@)'` if test -n "$RUBY_VERSION"; then
RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"libdir"@:>@)'` RUBY_CFLAGS=`$PKGCONFIG ruby --cflags`
RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'` else
RUBY_ENABLESHARED=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"ENABLE_SHARED"@:>@)'` RUBY_VERSION=`$PKGCONFIG ruby-1.9 --modversion 2>/dev/null`
RUBY_CFLAGS=`$PKGCONFIG ruby-1.9 --cflags`
fi
if test -z "$RUBY_VERSION"; then
# pkgconfig file does not exist but might be 1.9.1: RUBY_VERSION defined in ruby/version.h
if test -n "$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"rubyhdrdir"@:>@)'"; then
# rubyhdrdir parameter works only in >=1.9.1; this is 1.9.1
RUBY_MAJOR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"['MAJOR']"@:>@)'`
RUBY_MINOR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"['MINOR']"@:>@)'`
RUBY_TEENY=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"['TEENY']"@:>@)'`
if test "$RUBY_MAJOR" == "1" && test "$RUBY_MINOR" == "9"; then
RUBY_VERSION="$RUBY_MAJOR.$RUBY_MINOR.$RUBY_TEENY"
fi
fi
fi
if test -n "$RUBY_VERSION"; then
RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"archdir"@:>@)'`
RUBY_SITEARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"sitearchdir"@:>@)'`
RUBY_SITEDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"sitelibdir"@:>@)'`
RUBY_RUBYLIBDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"rubylibdir"@:>@)'`
RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"libdir"@:>@)'`
RUBY_INCLUDEDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"rubyhdrdir"@:>@)'`
RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'`
AC_DEFINE_UNQUOTED(HAVE_RUBY_1_9, 1, [Defines if your system has Ruby 1.9.x])
fi
fi
if test -z "$RUBY_VERSION"; then
RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"archdir"@:>@)'`
RUBY_SITEARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitearchdir"@:>@)'`
RUBY_SITEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitelibdir"@:>@)'`
RUBY_RUBYLIBDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"rubylibdir"@:>@)'`
RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"libdir"@:>@)'`
RUBY_INCLUDEDIR=$RUBY_ARCHDIR
RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'`
fi
AC_MSG_RESULT([ AC_MSG_RESULT([
archdir $RUBY_ARCHDIR, archdir $RUBY_ARCHDIR,
sitearchdir $RUBY_SITEARCHDIR, sitearchdir $RUBY_SITEARCHDIR,
sitedir $RUBY_SITEDIR, sitedir $RUBY_SITEDIR,
includedir $RUBY_INCLUDEDIR, rubylibdir $RUBY_RUBYLIBDIR,
libdir $RUBY_LIBDIR, libdir $RUBY_LIBDIR,
librubyarg $RUBY_LIBRUBYARG, includedir $RUBY_INCLUDEDIR,
rubysharedenabled $RUBY_ENABLESHARED]) librubyarg $RUBY_LIBRUBYARG,
cflags $RUBY_CFLAGS])
AC_SUBST(RUBY_ARCHDIR) AC_SUBST(RUBY_ARCHDIR)
AC_SUBST(RUBY_SITEARCHDIR) AC_SUBST(RUBY_SITEARCHDIR)
AC_SUBST(RUBY_SITEDIR) AC_SUBST(RUBY_RUBYLIBDIR)
AC_SUBST(RUBY_INCLUDEDIR) AC_SUBST(RUBY_INCLUDEDIR)
AC_SUBST(RUBY_LIBDIR) AC_SUBST(RUBY_SITEDIR)
AC_SUBST(RUBY_LIBRUBYARG) AC_SUBST(RUBY_CFLAGS)
AC_SUBST(RUBY_ENABLESHARED)
AC_MSG_CHECKING(for Ruby header) AC_MSG_CHECKING(for Ruby header)

@ -25,10 +25,11 @@ AM_CONDITIONAL(compile_kross_python,
# Check for Ruby # Check for Ruby
if test "x$compile_kross" = "xyes" ; then if test "x$compile_kross" = "xyes" ; then
AC_CHECK_PROGS([RUBY], [ruby ruby1.8 ruby18], ruby) AC_CHECK_PROGS([RUBY], [ruby ruby1.8 ruby18 ruby1.9 ruby19], ruby)
if test -n "$RUBY"; then if test -n "$RUBY"; then
AC_MSG_CHECKING(for Ruby dirs) AC_MSG_CHECKING(for Ruby dirs)
# Note: pkgconfig file exists only for ruby >= 1.9.3
if test -n "$PKGCONFIG"; then if test -n "$PKGCONFIG"; then
RUBY_VERSION=`$PKGCONFIG ruby --modversion 2>/dev/null` RUBY_VERSION=`$PKGCONFIG ruby --modversion 2>/dev/null`
if test -n "$RUBY_VERSION"; then if test -n "$RUBY_VERSION"; then
@ -37,13 +38,26 @@ if test "x$compile_kross" = "xyes" ; then
RUBY_VERSION=`$PKGCONFIG ruby-1.9 --modversion 2>/dev/null` RUBY_VERSION=`$PKGCONFIG ruby-1.9 --modversion 2>/dev/null`
RUBY_CFLAGS=`$PKGCONFIG ruby-1.9 --cflags` RUBY_CFLAGS=`$PKGCONFIG ruby-1.9 --cflags`
fi fi
if test -z "$RUBY_VERSION"; then
# pkgconfig file does not exist but might be 1.9.1: RUBY_VERSION defined in ruby/version.h
if test -n "$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"rubyhdrdir"@:>@)'"; then
# rubyhdrdir parameter works only in >=1.9.1; this is 1.9.1
RUBY_MAJOR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"['MAJOR']"@:>@)'`
RUBY_MINOR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"['MINOR']"@:>@)'`
RUBY_TEENY=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"['TEENY']"@:>@)'`
if test "$RUBY_MAJOR" == "1" && test "$RUBY_MINOR" == "9"; then
RUBY_VERSION="$RUBY_MAJOR.$RUBY_MINOR.$RUBY_TEENY"
fi
fi
fi
if test -n "$RUBY_VERSION"; then if test -n "$RUBY_VERSION"; then
RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"archdir"@:>@)'` RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"archdir"@:>@)'`
RUBY_SITEARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"sitearchdir"@:>@)'` RUBY_SITEARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"sitearchdir"@:>@)'`
RUBY_SITEDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"sitelibdir"@:>@)'` RUBY_SITEDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"sitelibdir"@:>@)'`
RUBY_RUBYLIBDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"rubylibdir"@:>@)'`
RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"libdir"@:>@)'` RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"libdir"@:>@)'`
RUBY_INCLUDEDIR=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"rubyhdrdir"@:>@)'`
RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'` RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",RbConfig::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'`
RUBY_ENABLESHARED=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"ENABLE_SHARED"@:>@)'`
AC_DEFINE_UNQUOTED(HAVE_RUBY_1_9, 1, [Defines if your system has Ruby 1.9.x]) AC_DEFINE_UNQUOTED(HAVE_RUBY_1_9, 1, [Defines if your system has Ruby 1.9.x])
fi fi
fi fi
@ -51,26 +65,25 @@ if test "x$compile_kross" = "xyes" ; then
RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"archdir"@:>@)'` RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"archdir"@:>@)'`
RUBY_SITEARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitearchdir"@:>@)'` RUBY_SITEARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitearchdir"@:>@)'`
RUBY_SITEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitelibdir"@:>@)'` RUBY_SITEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitelibdir"@:>@)'`
RUBY_INCLUDEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"rubyincludedir"@:>@)'` RUBY_RUBYLIBDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"rubylibdir"@:>@)'`
RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"libdir"@:>@)'` RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"libdir"@:>@)'`
RUBY_INCLUDEDIR=$RUBY_ARCHDIR
RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'` RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'`
RUBY_ENABLESHARED=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"ENABLE_SHARED"@:>@)'`
fi fi
AC_MSG_RESULT([ AC_MSG_RESULT([
archdir $RUBY_ARCHDIR, archdir $RUBY_ARCHDIR,
sitearchdir $RUBY_SITEARCHDIR, sitearchdir $RUBY_SITEARCHDIR,
sitedir $RUBY_SITEDIR, sitedir $RUBY_SITEDIR,
includedir $RUBY_INCLUDEDIR, rubylibdir $RUBY_RUBYLIBDIR,
libdir $RUBY_LIBDIR, libdir $RUBY_LIBDIR,
librubyarg $RUBY_LIBRUBYARG, includedir $RUBY_INCLUDEDIR,
rubysharedenabled $RUBY_ENABLESHARED]) librubyarg $RUBY_LIBRUBYARG,
cflags $RUBY_CFLAGS])
AC_SUBST(RUBY_ARCHDIR) AC_SUBST(RUBY_ARCHDIR)
AC_SUBST(RUBY_SITEARCHDIR) AC_SUBST(RUBY_SITEARCHDIR)
AC_SUBST(RUBY_SITEDIR) AC_SUBST(RUBY_RUBYLIBDIR)
AC_SUBST(RUBY_INCLUDEDIR) AC_SUBST(RUBY_INCLUDEDIR)
AC_SUBST(RUBY_LIBDIR) AC_SUBST(RUBY_SITEDIR)
AC_SUBST(RUBY_LIBRUBYARG)
AC_SUBST(RUBY_ENABLESHARED)
AC_SUBST(RUBY_CFLAGS) AC_SUBST(RUBY_CFLAGS)
AC_MSG_CHECKING(for Ruby header) AC_MSG_CHECKING(for Ruby header)

Loading…
Cancel
Save