[PATCH] build: Allow user to specify ruby executable

classic Classic list List threaded Threaded
3 messages Options
Thomas Schneider Thomas Schneider
Reply | Threaded
Open this post in threaded view
|

[PATCH] 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 <[hidden email]>
---
 bindings/Makefile.local |  2 +-
 configure               | 11 ++++++++++-
 test/test-lib.sh        |  2 +-
 3 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/bindings/Makefile.local b/bindings/Makefile.local
index 17b561ca..2ba2775c 100644
--- a/bindings/Makefile.local
+++ b/bindings/Makefile.local
@@ -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
 
diff --git a/configure b/configure
index b177b141..392213b6 100755
--- a/configure
+++ b/configure
@@ -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}
diff --git a/test/test-lib.sh b/test/test-lib.sh
index 5b212514..7e064021 100644
--- a/test/test-lib.sh
+++ b/test/test-lib.sh
@@ -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 () {
--
2.17.0

_______________________________________________
notmuch mailing list
[hidden email]
https://notmuchmail.org/mailman/listinfo/notmuch
Tomi Ollila-2 Tomi Ollila-2
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] build: Allow user to specify ruby executable

On Wed, May 09 2018, Thomas Schneider wrote:

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

LGTM.

Tomi


>
> Signed-off-by: Thomas Schneider <[hidden email]>
> ---
>  bindings/Makefile.local |  2 +-
>  configure               | 11 ++++++++++-
>  test/test-lib.sh        |  2 +-
>  3 files changed, 12 insertions(+), 3 deletions(-)
>
> diff --git a/bindings/Makefile.local b/bindings/Makefile.local
> index 17b561ca..2ba2775c 100644
> --- a/bindings/Makefile.local
> +++ b/bindings/Makefile.local
> @@ -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
>  
> diff --git a/configure b/configure
> index b177b141..392213b6 100755
> --- a/configure
> +++ b/configure
> @@ -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}
> diff --git a/test/test-lib.sh b/test/test-lib.sh
> index 5b212514..7e064021 100644
> --- a/test/test-lib.sh
> +++ b/test/test-lib.sh
> @@ -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 () {
> --
> 2.17.0
>
> _______________________________________________
> notmuch mailing list
> [hidden email]
> https://notmuchmail.org/mailman/listinfo/notmuch
_______________________________________________
notmuch mailing list
[hidden email]
https://notmuchmail.org/mailman/listinfo/notmuch
David Bremner-2 David Bremner-2
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] build: Allow user to specify ruby executable

In reply to this post by Thomas Schneider
Thomas Schneider <[hidden email]> writes:

> 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 <[hidden email]>

pushed to master.

d
_______________________________________________
notmuch mailing list
[hidden email]
https://notmuchmail.org/mailman/listinfo/notmuch