diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 374447f87..cb33a8d24 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -42,6 +42,11 @@ jobs: - name: depends run: bundle install + # Enable the verbose option in mkmf.rb to print the compiling commands. + - name: enable mkmf verbose + run: tool/enable-mkmf-verbose + if: runner.os == 'Linux' || runner.os == 'macOS' + - name: compile run: rake compile -- --enable-debug @@ -129,6 +134,10 @@ jobs: - name: depends run: bundle install + - name: enable mkmf verbose + run: tool/enable-mkmf-verbose + if: runner.os == 'Linux' || runner.os == 'macOS' + - name: compile run: rake compile -- --enable-debug --with-openssl-dir=$HOME/.openssl/${{ matrix.openssl }} diff --git a/tool/enable-mkmf-verbose b/tool/enable-mkmf-verbose new file mode 100755 index 000000000..f715d4080 --- /dev/null +++ b/tool/enable-mkmf-verbose @@ -0,0 +1,17 @@ +#!/bin/sh -eu + +set -x + +gem_home="$(gem environment home)" +mkmf_rb_path="$(find "${gem_home}"/../.. -name mkmf.rb)" + +# Backup the original file. +cp -p "${mkmf_rb_path}" "${mkmf_rb_path}.orig" + +# Replace the target line to set the verbose option. +sed -i -e 's/^V = .*/V = 1/' "${mkmf_rb_path}" +# Check if the sed command above replaced the expected line properly. +grep -q '^V = ' "${mkmf_rb_path}" + +# Print the difference between the original file and modified file. +diff "${mkmf_rb_path}.orig" "${mkmf_rb_path}" || :