automake
[Top][All Lists]
Advanced

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

Re: problem with flex scanner && `make dist'


From: tom fogal
Subject: Re: problem with flex scanner && `make dist'
Date: Mon, 06 Mar 2006 22:27:44 -0500

Sorry for the slow reply, got lost in my inbox.  Perhaps I get too much
mail...

 <address@hidden>Alexandre Duret-Lutz writes:
>>>> "tf" == tom fogal <address@hidden> writes:
>
<snip>
> tf> Unfortunately this seems to cause problems when I make dist.
> tf> Specifically:
>
> tf> make[1]: *** No rule to make target `input/scan.ll', needed by
> tf> `distdir'.  Stop.
>
>[...]
>
> tf> I hope this is enough information to figure out what I've done wrong.
>
>Not for me.  However I doubt the extension of the file has
>anything to do with this problem.  Does input/scan.ll exist in
>the directory this particular make is running?  (You didn't say
>where you ran make dist; is it in a VPATH build?)

I'm not entirely sure what VPATH is.  Apparently some way for make to
find dependencies which are in non-obvious places, according to the
all-knowing google.  I've never consciously set it up, but maybe
automake does this automagically for non-recursive setups?  Maybe I
should explain some more about my build system.

My directory tree is something like:

/
/configure.ac
/Makefile.am
/INSTALL
/README
/ChangeLog
/<etc.>
/tests
/tests/Makefile.am
/src/Makefile.am
/src/parse/Inc.am
/src/ast/Inc.am
[. . .]

The toplevel automakefile (`/Makefile.am', above) is simply a recursive
make call via SUBDIRS, into both `/src' and `/tests'.  The automakefile
in /src (`/src/Makefile.am') is a NONrecursive make which has lines
like

include $(srcdir)/parse/Inc.am

in it.  I'm running `make dist' from the `/' given above.

<snip>
> tf> libAll_a_SOURCES += \
> tf> $(srcdir)/parse/grammar.ypp \
> tf> $(srcdir)/parse/scan.ll
>
>You could use *.lpp or *.yy for consistency.

Thanks, I was unaware that extension was possible.

<snip>
> tf> parser_SOURCES = \
> tf> $(srcdir)/input/grammar.ypp \
> tf> $(srcdir)/input/scan.ll
>
>Those $(srcdir)/ prefixes everywhere seem pointless to me, I'd remove them.

Done.  I also tried removing it from the `include' statements I
mentioned above.  While its working fine in terms of building the
software, I'm still getting the same `make dist' error (well, now
"scan.ll" is replaced by "scan.lpp", but same deal).

Thanks for your help / advice!

-tom




reply via email to

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