build: Allow user to specify ruby executable

This way, one can build for a different Ruby than $PATH/ruby
(e. g. different versions, or Ruby in other paths).

Signed-off-by: Thomas Schneider <qsx@chaotikum.eu>
This commit is contained in:
Thomas Schneider 2018-05-09 14:38:48 +02:00 committed by David Bremner
parent a07b28a488
commit b2e4778ea4
3 changed files with 12 additions and 3 deletions

View file

@ -9,7 +9,7 @@ ifeq ($(HAVE_RUBY_DEV),1)
EXTRA_LDFLAGS="$(NO_UNDEFINED_LDFLAGS)" \
LIBNOTMUCH="../../lib/$(LINKER_NAME)" \
NOTMUCH_SRCDIR='$(NOTMUCH_SRCDIR)' \
ruby extconf.rb --vendor
$(RUBY) extconf.rb --vendor
$(MAKE) -C $(dir)/ruby
endif

11
configure vendored
View file

@ -62,6 +62,7 @@ CXXFLAGS=${CXXFLAGS:-\$(CFLAGS)}
LDFLAGS=${LDFLAGS:-}
XAPIAN_CONFIG=${XAPIAN_CONFIG:-}
PYTHON=${PYTHON:-}
RUBY=${RUBY:-ruby}
# We don't allow the EMACS or GZIP Makefile variables inherit values
# from the environment as we do with CC and CXX above. The reason is
@ -118,6 +119,8 @@ Other environment variables can be used to control configure itself,
library. [$XAPIAN_CONFIG]
PYTHON Name of python command to use in
configure and the test suite.
RUBY Name of ruby command to use in
configure and the test suite.
Additionally, various options can be specified on the configure
command line.
@ -621,7 +624,7 @@ fi
have_ruby_dev=0
if [ $WITH_RUBY = "1" ] ; then
printf "Checking for ruby development files... "
if ruby -e "require 'mkmf'"> /dev/null 2>&1; then
if ${RUBY} -e "require 'mkmf'"> /dev/null 2>&1; then
printf "Yes.\n"
have_ruby_dev=1
else
@ -1027,6 +1030,9 @@ WARN_CFLAGS=${WARN_CFLAGS}
# Name of python interpreter
PYTHON = ${python}
# Name of ruby interpreter
RUBY = ${RUBY}
# The prefix to which notmuch should be installed
# Note: If you change this value here, be sure to ensure that the
# LIBDIR_IN_LDCONFIG value below is still set correctly.
@ -1234,6 +1240,9 @@ NOTMUCH_HAVE_MAN=$((have_sphinx))
# Name of python interpreter
NOTMUCH_PYTHON=${python}
# Name of ruby interpreter
NOTMUCH_RUBY=${RUBY}
# Are the ruby development files (and ruby) available? If not skip
# building/testing ruby bindings.
NOTMUCH_HAVE_RUBY_DEV=${have_ruby_dev}

View file

@ -1003,7 +1003,7 @@ test_python() {
}
test_ruby() {
MAIL_DIR=$MAIL_DIR ruby -I $NOTMUCH_SRCDIR/bindings/ruby> OUTPUT
MAIL_DIR=$MAIL_DIR $NOTMUCH_RUBY -I $NOTMUCH_SRCDIR/bindings/ruby> OUTPUT
}
test_C () {