Subject: AC_LIBSOURCE doesn't fail as it should if AC_OUTPUT is not used

From: Stefano Lattarini <[email-masked]>
Date: Mon, 13 Dec 2010 23:35:32 +0100

If configure.ac does not contain a call to AC_OUTPUT, Automake
does not fail as expected when file(s) specified in calls to
macros AC_LIBSOURCE and/or AC_LIBSOURCES do not exist. See the
attached test script.

Now, while the lack of AC_OUTPUT in configure.ac is almost surely
a user error, IMHO it shouldn't prevent Automake from warning about
other errors (in this case, the non-existence of files specified in
calls to macros AC_LIBSOURCE and AC_LIBSOURCES).

Regards,
  Stefano

#! /bin/sh
# Nonexistent source for AC_LIBSOURCE should cause Automake to fail.

. ./defs || Exit 1

set -e

cat >> configure.in << 'END'
AC_PROG_CC
AC_PROG_RANLIB
AC_LIBSOURCE([foobar.c])
AC_LIBSOURCES([bazquux.c])
END

cat > Makefile.am << 'END'
noinst_LIBRARIES = libtu.a
libtu_a_SOURCES =
libtu_a_LIBADD = $(LIBOBJS)
END

$ACLOCAL
AUTOMAKE_fails
grep 'configure\.in:.*required file.*foobar\.c.*' stderr
grep 'configure\.in:.*required file.*bazquux\.c.*' stderr

: