automake
[Top][All Lists]
Advanced

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

Re: DIST_COMMON broke


From: Derek R. Price
Subject: Re: DIST_COMMON broke
Date: Wed, 07 Feb 2001 16:21:01 -0500

Tom Tromey wrote:

> >>>>> "Pavel" == Pavel Roskin <address@hidden> writes:
>
> >> I'm checking this in.
>
> Pavel> I'm sorry, but the bug seems to be yours. The new test fails
> Pavel> after automake.in changes from revision 1.848 to 1.849.
>
> Oh, I know it is mine..
>
> Pavel> In fact it says directly: "Don't push @inputs onto the dist list."
> Pavel> Not good. Many programs rely on that.
>
> It is more complicated than that.  The &require_file_with_conf_line
> call sometimes pushes onto the dist list.
>
> This area still requires more work.  I think I know another case where
> it can fail: suppose you do `AC_OUTPUT(subdir/foo)' where there is no
> Makefile.am in subdir?  Then I think no rule to rebuild subdir/foo
> will be generated.

You're right.  Here's a test for that too.  Well, if you still want it, re
Pavel's recent email.

Just a note, some of the logic you just mentioned seems to be in
&maybe_push_required_file, but I haven't studied &require_file_internal long
enough to know what it's supposed to be doing.

Also, looking at this area of the code reminds me that I sent a,
unfortunately largish, patch in something over a month ago that hasn't been
reviewed to my knowledge.  The patch was intended to fix a misplaced depcomp
file (a bug which is still present in the current CVS Automake, I might
add), but I had also ended up removing all the "special case '.'" bugs the
code is littered with FIXME comments about (especially around the
&require_file_* functions).  I have only had to alter the patch once (well,
okay, so the test was also broken and I fixed that too), so far, to keep it
in sync with the CVS Automake, but with all the work going on lately this
might get worse.  If somebody could review it and maybe check it in it would
be greatly appreciated.  It cleans up a bunch of code.  I'll include the new
patch in a subsequent email.

Derek

--
Derek Price                      CVS Solutions Architect ( http://CVSHome.org )
mailto:address@hidden     OpenAvenue ( http://OpenAvenue.com )
--
If that plane leaves the ground and you're not with him, you'll regret it.
Maybe not today and maybe not tomorrow, but soon and for the rest of your life.

                - Humphrey Bogart as Rick, _Casablanca_


#! /bin/sh

# A test for failure to include files and targets provided in AC_OUTPUT
# when the subdir doesn't contain a Makefile.am

. $srcdir/defs || exit 1

cat > configure.in << EOF
AM_INIT_AUTOMAKE(nonesuch, nonesuch)
AC_OUTPUT(subdir/bar \
          Makefile)
EOF

: > Makefile.am

mkdir subdir
: > subdir/bar.in

$AUTOMAKE || exit 1

# verify bar.in
grep '^subdir/bar.in:' Makefile.in || exit 1
# yeah, so it eats _all_ the backslashes...
sed '/\\$/{N;s/\\.//g;}' testSubDir/Makefile.in \
        |grep '^DIST_COMMON.*subdir/bar.in' Makefile.in || exit 1

exit 0

reply via email to

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