From 019cbded90ade76fdb87d02bd4d444724429fc92 Mon Sep 17 00:00:00 2001 From: Jun Aruga Date: Thu, 21 Apr 2022 22:59:59 +0200 Subject: [PATCH] mkmf: Add a configure option to set verbose mode (V=1 or 0) in mkmf.rb. Note this change is only for `configure.ac`, not for Windows using `win32/configure.bat`. ``` $ ./configure --help | grep mkmf --enable-mkmf-verbose enable verbose in mkmf ``` Run the following command to enable the mkmf verbose mode. ``` $ ./configure --enable-mkmf-verbose $ grep MKMF_VERBOSE config.status S["MKMF_VERBOSE"]="1" ``` In this mkmf verbose mode, when compiling a native extension, the `rake compile` prints the compiling commands such as "gcc -I. <...> path/to/file" instead of "compiling path/to/file". ``` $ git clone https://github.com/deivid-rodriguez/byebug.git $ cd byebug $ bundle install --standalone $ bundle exec rake compile ... gcc -I. <...> path/to/file ... ``` --- configure.ac | 7 +++++++ lib/mkmf.rb | 3 ++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 2b25d7b069..53aa21025e 100644 --- a/configure.ac +++ b/configure.ac @@ -4227,6 +4227,13 @@ AS_IF([test -z "$MANTYPE"], [ ]) AC_SUBST(MANTYPE) +MKMF_VERBOSE=0 +AC_ARG_ENABLE(mkmf-verbose, + AS_HELP_STRING([--enable-mkmf-verbose], [enable verbose in mkmf]), + [MKMF_VERBOSE=1], + [MKMF_VERBOSE=0]) +AC_SUBST(MKMF_VERBOSE) + AC_ARG_ENABLE(rubygems, AS_HELP_STRING([--disable-rubygems], [disable rubygems by default]), [enable_rubygems="$enableval"], [enable_rubygems=yes]) diff --git a/lib/mkmf.rb b/lib/mkmf.rb index 99dcf9da65..a6ec9bae5d 100644 --- a/lib/mkmf.rb +++ b/lib/mkmf.rb @@ -1964,13 +1964,14 @@ SRC def configuration(srcdir) mk = [] + CONFIG['MKMF_VERBOSE'] ||= "0" vpath = $VPATH.dup CONFIG["hdrdir"] ||= $hdrdir mk << %{ SHELL = /bin/sh # V=0 quiet, V=1 verbose. other values don't work. -V = 0 +V = #{CONFIG['MKMF_VERBOSE']} V0 = $(V:0=) Q1 = $(V:1=) Q = $(Q1:0=@)