--- /dev/null
+CFLAGS=-Wall -Wno-parentheses -DDEBUG_TOKEN
+
+pdsh: main.o gram.o tok.o
+ $(CC) $(CFLAGS) -o $@ $+
+
+# lemon: lemon.o
+
+tok.o: tok.c tok.h gram.h
+
+tok.h: tok.c
+ echo '#ifndef TOK_H_' > $@
+ echo '#define TOK_H_ 1' >> $@
+ echo '#include <stdio.h>' >> $@
+ sed -ne '/START HEADER/,/END HEADER/p' $< >> $@
+ echo '#endif' >> $@
+
+gram.o: gram.c
+ $(CC) $(CFLAGS) -Wno-unused-variable -c -o $@ $+
+
+gram.c gram.h: lemon gram.y lempar.c
+ ./lemon -p gram.y
+ touch gram.h gram.c
+
+main.o: gram.h main.c lemon.h tok.h
+
+clean:
+ rm -f *.o lemon gram.c gram.h par tok.h