make what I mean

jmcnamara on 2005-02-23T11:27:51

I was aware that make has implicit rules and that if you have a simple C program without a makefile, you can still do the following:

$ make hello
cc     hello.c   -o hello
And you end up with an executable.

However, I was surprised when I tried the following for a yacc grammar (again there is no makefile):

$ make foo
yacc  foo.y
mv -f y.tab.c foo.c
cc     foo.c   -o foo
Handy.

Also, in relation to Yacc, here is a footnote from the O'Reilly Lex & Yacc book:

Yacc's use of dot to show where you are in the rule can get confusing if you have rules with dots in them. Some versions of yacc use an underscore rather than a dot, which can be equally confusing if you have rules with underscores in them.
I have a feeling that you could keep going on like this.