When building GNU gettext on Cygwin, I see this test failure in the gnulib tests:
FAIL: test-execute.sh ===================== test-execute-main: test-execute-child.exe subprocess failed test-execute-child:./.libs/lt-test-execute-child.c:236: FATAL: couldn't find ./test-execute-child. ../../../gettext-tools/gnulib-tests/test-execute-main.c:476: assertion 'ret == 0' failed ../../../gettext-tools/gnulib-tests/test-execute.sh: line 4: 7692 Aborted (core dumped) ${CHECKER} ./test-execute-main${EXEEXT} ./test-execute-child${EXEEXT} $i test-execute.sh: test case 21 failed FAIL test-execute.sh (exit status: 1) It seems to be an problem in the libtool wrapper for the test-execute-child program. The test case 21, that fails, is the one where the current directory is changed. This patch fixes it. 2021-08-25 Bruno Haible <br...@clisp.org> execute tests: Fix test failure when libtool is in use. * modules/execute-tests (Makefile.am): Link test-execute-child without using libtool. * modules/spawn-pipe-tests (Makefile.am): Link test-spawn-pipe-child without using libtool. * modules/system-quote-tests (Makefile.am): Link test-system-quote-child without using libtool. diff --git a/modules/execute-tests b/modules/execute-tests index c9421302b..735f55c94 100644 --- a/modules/execute-tests +++ b/modules/execute-tests @@ -28,6 +28,7 @@ test_execute_main_LDADD = $(LDADD) @LIBINTL@ $(LIBTHREAD) # The test-execute-child program must be a real executable, not a libtool # wrapper script, and should link against as few libraries as possible. # Therefore don't link it against any libraries other than -lc. +test_execute_child_LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ test_execute_child_LDADD = TESTS += test-execute-script diff --git a/modules/spawn-pipe-tests b/modules/spawn-pipe-tests index 5dbd28d74..a204031a6 100644 --- a/modules/spawn-pipe-tests +++ b/modules/spawn-pipe-tests @@ -22,6 +22,7 @@ test_spawn_pipe_main_LDADD = $(LDADD) @LIBINTL@ $(LIBTHREAD) # The test-spawn-pipe-child program must be a real executable, not a libtool # wrapper script, and should link against as few libraries as possible. # Therefore don't link it against any libraries other than -lc. +test_spawn_pipe_child_LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ test_spawn_pipe_child_LDADD = TESTS += test-spawn-pipe-script diff --git a/modules/system-quote-tests b/modules/system-quote-tests index 4e2782a9a..22f08389f 100644 --- a/modules/system-quote-tests +++ b/modules/system-quote-tests @@ -22,4 +22,5 @@ test_system_quote_main_LDADD = $(LDADD) @LIBINTL@ $(LIB_MBRTOWC) # The test-system-quote-child program must be a real executable, not a libtool # wrapper script, and should link against as few libraries as possible. # Therefore don't link it against any libraries other than -lc. +test_system_quote_child_LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ test_system_quote_child_LDADD =