bug-automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

backward-incompatible bug in recent CVS automake?


From: Harlan Stenn
Subject: backward-incompatible bug in recent CVS automake?
Date: Sat, 21 Sep 2002 00:32:48 -0400
User-agent: EMH/1.10.0 SEMI/1.13.7 (Awazu) FLIM/1.13.2 (Kasanui) XEmacs/21.1 (patch 12) (Channel Islands) (i386--freebsd)

But it may be easier to fix now, and obviate the patch I sent in that hasn't
been applied because I haven't sent in the hardcopy copyright assignment
yet.

Test case:

-Makefile.am:
AUTOMAKE_OPTIONS = foreign

BUILT_SOURCES = sanity

WINNER = Makefile.am

sanity:
        case "${WINNER}" in \
         Makefile.am) \
            touch $@ ; \
            ;;
         first) \
            echo Gronk ;
            ;; \
        esac

-first:
WINNER = first

-configure.ac:
# Process this file with autoconf to produce a configure script.
AC_INIT(FULL-PACKAGE-NAME, VERSION, BUG-REPORT-ADDRESS)
AM_INIT_AUTOMAKE
AC_CONFIG_FILES([Makefile:first:Makefile.in])
AC_OUTPUT

--

The problem is that the Makefile.in gets generated with a rule that looks
like this:

Makefile:  $(srcdir)/Makefile.in first $(top_builddir)/config.status
        cd $(top_builddir) && $(SHELL) ./config.status $@:Makefile.in:first 
$(am__depfiles_maybe)

and feeding Makefile:Makefile.in:first to config.status is:

- rejected by config.status
- in the wrong order

A sufficient fix would be to lose the template list and emit:

 ... config.status $@ $(am__depfiles_maybe)

instead.

H




reply via email to

[Prev in Thread] Current Thread [Next in Thread]