aboutsummaryrefslogtreecommitdiff
path: root/works/life/compile-principle-experiment/3/makefile
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2021-11-24 20:43:52 +0800
committercrupest <crupest@outlook.com>2021-11-24 20:43:52 +0800
commit1ea48b1fcb7ac64935018b1ced2d0f11982872ea (patch)
tree42c69714653addebbdb1cf0122e2ebda918dbc16 /works/life/compile-principle-experiment/3/makefile
parent224d5fec9b9377faa4bf8d3da0e37f675ef5ea03 (diff)
downloadcrupest-1ea48b1fcb7ac64935018b1ced2d0f11982872ea.tar.gz
crupest-1ea48b1fcb7ac64935018b1ced2d0f11982872ea.tar.bz2
crupest-1ea48b1fcb7ac64935018b1ced2d0f11982872ea.zip
import(life): Add compile principle experiment 3.
Diffstat (limited to 'works/life/compile-principle-experiment/3/makefile')
-rw-r--r--works/life/compile-principle-experiment/3/makefile22
1 files changed, 22 insertions, 0 deletions
diff --git a/works/life/compile-principle-experiment/3/makefile b/works/life/compile-principle-experiment/3/makefile
new file mode 100644
index 0000000..cf6333c
--- /dev/null
+++ b/works/life/compile-principle-experiment/3/makefile
@@ -0,0 +1,22 @@
+main: main.o lex.o syn.o
+ cc lex.o syn.o main.o -o main
+
+main.o: main.c main.h syn.h
+ cc -c -o main.o main.c
+
+lex.c: lex.l
+ flex -o lex.c lex.l
+
+lex.o: lex.c syn.h main.h
+ cc -c -o lex.o lex.c
+
+syn.c syn.h: syn.y
+ bison syn.y -d -o syn.c
+
+syn.o: syn.c syn.h main.h
+ cc -c -o syn.o syn.c
+
+PHONY: clean
+
+clean:
+ rm -f *.o lex.c syn.c syn.h main