diff --git a/makefile b/makefile index 3f3c3c2..a4f1b8a 100644 --- a/makefile +++ b/makefile @@ -67,7 +67,7 @@ y%.c y%.h: awk.h proto.h awkgram.y ytab.h: ytab.c proctab.c: maketab - ./maketab >proctab.c + ./maketab ytab.h >proctab.c maketab: ytab.h maketab.c $(CC) $(CFLAGS) maketab.c -o maketab diff --git a/maketab.c b/maketab.c index bb8e317..dbe3d24 100644 --- a/maketab.c +++ b/maketab.c @@ -125,8 +125,12 @@ int main(int argc, char *argv[]) for (i = SIZE; --i >= 0; ) names[i] = ""; - if ((fp = fopen("ytab.h", "r")) == NULL) { - fprintf(stderr, "maketab can't open ytab.h!\n"); + if (argc != 2) { + fprintf(stderr, "usage: maketab YTAB_H\n"); + exit(1); + } + if ((fp = fopen(argv[1], "r")) == NULL) { + fprintf(stderr, "maketab can't open %s!\n", argv[1]); exit(1); } printf("static char *printname[%d] = {\n", SIZE);