]> Savannah Git Hosting - gnulib.git/commitdiff
gnulib-tool: Support running testdirs on Android.
authorBruno Haible <bruno@clisp.org>
Wed, 23 Jan 2019 04:11:54 +0000 (05:11 +0100)
committerBruno Haible <bruno@clisp.org>
Fri, 25 Jan 2019 01:14:20 +0000 (02:14 +0100)
* build-aux/test-driver.diff: New file.
* gnulib-tool (func_create_testdir, func_create_megatestdir): Patch
build-aux/test-driver after running automake.

ChangeLog
build-aux/test-driver.diff [new file with mode: 0644]
gnulib-tool

index a8e03c53bc36f88de1ae4a4ec9f88b5bf30d594d..7ba92a91926b27d81b892bb60d3e459e140deb15 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2019-01-23  Bruno Haible  <bruno@clisp.org>
+
+       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  <akim@lrde.epita.fr>
 
        relocatable-prog: avoid warnings from Automake
diff --git a/build-aux/test-driver.diff b/build-aux/test-driver.diff
new file mode 100644 (file)
index 0000000..2daab79
--- /dev/null
@@ -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
index 9545796fd48c2153da65c81295257112211fac67..44cfeb3e03a28e5852b74ea3c721c8c3116f219c 100755 (executable)
@@ -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
 }