This bug is distinct from #26031 that I just reported.

Summary:
========

"make check" does not export the value of $(EXEEXT) to individual
tests when they are run. The tests require this information, for
example when they are shell scripts starting up executable programs
to be tested.

To reproduce:
=============

Please see the attached minimal example testing2-0.0.tar.gz

The following succeeds:

$ ./configure
$ make check

The following fails (note: it is important to run "make clean" before
"./configure ac_cv_exeext=.exe", because otherwise the generated
execuable src/someprogram will not be cleaned up):

$ make clean
$ ./configure ac_cv_exeext=.exe
$ make check

The check/test-suite.log (also attached) basically says that
../src/someprogram was not found. Although the test script
check/mytest2.sh specified ../src/someprogram$EXEEXT, the EXEEXT
setting was not exported to the script.

The following succeeds:

$ ./configure ac_cv_exeext=.exe
$ make EXEEXT=.exe check

But it seems wrong that EXEEXT should have to be specified *both* at
configure and make time.

Proposed solution:
==================

The problem goes away if the maintainer inserts

"export EXEEXT"

at the beginning of check/Makefile.am. However, I believe this should
be inserted automatically by automake, because EXEEXT must normally be
available to tests.

Attachment: testing2-0.0.tar.gz
Description: gzip compressed data, from Unix, last modified: Wed Mar 8 15:41:08 2017, max compression

========================================
   testing2 0.0: check/test-suite.log
========================================

# TOTAL: 1
# PASS:  0
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: mytest2.sh
================

./mytest2.sh: 7: ./mytest2.sh: ../src/someprogram: not found
failure
FAIL mytest2.sh (exit status: 1)

Reply via email to