From 425ee42259b04956aae20afc5204775ae6e79744 Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Wed, 23 Jan 2019 05:11:54 +0100 Subject: [PATCH] gnulib-tool: Support running testdirs on Android. * build-aux/test-driver.diff: New file. * gnulib-tool (func_create_testdir, func_create_megatestdir): Patch build-aux/test-driver after running automake. --- ChangeLog | 7 +++++++ build-aux/test-driver.diff | 14 +++++++++++++ gnulib-tool | 40 +++++++++++++++++++++++--------------- 3 files changed, 45 insertions(+), 16 deletions(-) create mode 100644 build-aux/test-driver.diff diff --git a/ChangeLog b/ChangeLog index a8e03c53bc..7ba92a9192 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2019-01-23 Bruno Haible + + gnulib-tool: Support running testdirs on Android. + * build-aux/test-driver.diff: New file. + * gnulib-tool (func_create_testdir, func_create_megatestdir): Patch + build-aux/test-driver after running automake. + 2019-01-23 Akim Demaille relocatable-prog: avoid warnings from Automake diff --git a/build-aux/test-driver.diff b/build-aux/test-driver.diff new file mode 100644 index 0000000000..2daab79c7c --- /dev/null +++ b/build-aux/test-driver.diff @@ -0,0 +1,14 @@ +--- test-driver.bak 2019-01-23 03:22:06.672283432 +0100 ++++ test-driver 2019-01-23 04:23:21.201060757 +0100 +@@ -104,7 +104,10 @@ + trap "st=143; $do_exit" 15 + + # Test script is run here. +-"$@" >$log_file 2>&1 ++case "$1" in ++ *.sh) sh "$@" >$log_file 2>&1 ;; ++ *) "$@" >$log_file 2>&1 ;; ++esac + estatus=$? + + if test $enable_hard_errors = no && test $estatus -eq 99; then diff --git a/gnulib-tool b/gnulib-tool index 9545796fd4..44cfeb3e03 100755 --- a/gnulib-tool +++ b/gnulib-tool @@ -6654,27 +6654,32 @@ func_create_testdir () if test -n "$distributed_built_sources" || test -n "$tests_distributed_built_sources"; then (cd "$testdir" ./configure || func_exit 1 - if test -n "$distributed_built_sources"; then - cd "$sourcebase" - echo 'built_sources: $(BUILT_SOURCES)' >> Makefile - $MAKE AUTOCONF="${AUTOCONF}" AUTOHEADER="${AUTOHEADER}" ACLOCAL="${ACLOCAL}" AUTOMAKE="${AUTOMAKE}" AUTORECONF="${AUTORECONF}" AUTOPOINT="${AUTOPOINT}" LIBTOOLIZE="${LIBTOOLIZE}" \ - built_sources \ - || func_exit 1 - cd .. - fi - if test -n "$tests_distributed_built_sources"; then - cd "$testsbase" - echo 'built_sources: $(BUILT_SOURCES)' >> Makefile - $MAKE AUTOCONF="${AUTOCONF}" AUTOHEADER="${AUTOHEADER}" ACLOCAL="${ACLOCAL}" AUTOMAKE="${AUTOMAKE}" AUTORECONF="${AUTORECONF}" AUTOPOINT="${AUTOPOINT}" LIBTOOLIZE="${LIBTOOLIZE}" \ - built_sources \ - || func_exit 1 - cd .. - fi + if test -n "$distributed_built_sources"; then + cd "$sourcebase" + echo 'built_sources: $(BUILT_SOURCES)' >> Makefile + $MAKE AUTOCONF="${AUTOCONF}" AUTOHEADER="${AUTOHEADER}" ACLOCAL="${ACLOCAL}" AUTOMAKE="${AUTOMAKE}" AUTORECONF="${AUTORECONF}" AUTOPOINT="${AUTOPOINT}" LIBTOOLIZE="${LIBTOOLIZE}" \ + built_sources \ + || func_exit 1 + cd .. + fi + if test -n "$tests_distributed_built_sources"; then + cd "$testsbase" + echo 'built_sources: $(BUILT_SOURCES)' >> Makefile + $MAKE AUTOCONF="${AUTOCONF}" AUTOHEADER="${AUTOHEADER}" ACLOCAL="${ACLOCAL}" AUTOMAKE="${AUTOMAKE}" AUTORECONF="${AUTORECONF}" AUTOPOINT="${AUTOPOINT}" LIBTOOLIZE="${LIBTOOLIZE}" \ + built_sources \ + || func_exit 1 + cd .. + fi $MAKE AUTOCONF="${AUTOCONF}" AUTOHEADER="${AUTOHEADER}" ACLOCAL="${ACLOCAL}" AUTOMAKE="${AUTOMAKE}" AUTORECONF="${AUTORECONF}" AUTOPOINT="${AUTOPOINT}" LIBTOOLIZE="${LIBTOOLIZE}" \ distclean \ || func_exit 1 ) || func_exit 1 fi + (cd "$testdir" + if test -f build-aux/test-driver; then + patch build-aux/test-driver < "$gnulib_dir"/build-aux/test-driver.diff || func_exit 1 + fi + ) || func_exit 1 } # func_create_megatestdir megatestdir allmodules @@ -6775,6 +6780,9 @@ func_create_megatestdir () func_execute_command ${AUTOCONF} || func_exit 1 func_execute_command ${AUTOMAKE} --add-missing --copy || func_exit 1 rm -rf autom4te.cache + if test -f build-aux/test-driver; then + patch build-aux/test-driver < "$gnulib_dir"/build-aux/test-driver.diff || func_exit 1 + fi ) || func_exit 1 } -- 2.39.5